blob: f5125393695bc139b51ccca6e4cf335538026d49 [file] [log] [blame]
Zachary Turner93839cb2016-06-02 05:07:49 +00001//===- EnumTables.cpp - Enum to string conversion tables --------*- C++ -*-===//
2//
Chandler Carruth2946cd72019-01-19 08:50:56 +00003// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
Zachary Turner93839cb2016-06-02 05:07:49 +00006//
7//===----------------------------------------------------------------------===//
8
Adrian McCarthy6b6b8c42017-01-25 22:38:55 +00009#include "llvm/DebugInfo/PDB/Native/EnumTables.h"
10#include "llvm/DebugInfo/PDB/Native/RawConstants.h"
Zachary Turner93839cb2016-06-02 05:07:49 +000011
12using namespace llvm;
13using namespace llvm::pdb;
14
15#define PDB_ENUM_CLASS_ENT(enum_class, enum) \
16 { #enum, std::underlying_type < enum_class > ::type(enum_class::enum) }
17
18#define PDB_ENUM_ENT(ns, enum) \
19 { #enum, ns::enum }
20
21static const EnumEntry<uint16_t> OMFSegMapDescFlagNames[] = {
22 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, Read),
23 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, Write),
24 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, Execute),
25 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, AddressIs32Bit),
26 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, IsSelector),
27 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, IsAbsoluteAddress),
28 PDB_ENUM_CLASS_ENT(OMFSegDescFlags, IsGroup),
29};
30
31namespace llvm {
32namespace pdb {
33ArrayRef<EnumEntry<uint16_t>> getOMFSegMapDescFlagNames() {
34 return makeArrayRef(OMFSegMapDescFlagNames);
35}
36}
37}