brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · c8df2c3 Raw
39 lines · cpp
1//===- EnumTables.cpp - Enum to string conversion tables --------*- C++ -*-===//2//3// 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-exception6//7//===----------------------------------------------------------------------===//8 9#include "llvm/DebugInfo/PDB/Native/EnumTables.h"10#include "llvm/DebugInfo/PDB/Native/RawConstants.h"11#include "llvm/Support/ScopedPrinter.h"12 13using namespace llvm;14using namespace llvm::pdb;15 16#define PDB_ENUM_CLASS_ENT(enum_class, enum)                                   \17  { #enum, std::underlying_type_t<enum_class>(enum_class::enum) }18 19#define PDB_ENUM_ENT(ns, enum)                                                 \20  { #enum, ns::enum }21 22static const EnumEntry<uint16_t> OMFSegMapDescFlagNames[] = {23    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, Read),24    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, Write),25    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, Execute),26    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, AddressIs32Bit),27    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, IsSelector),28    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, IsAbsoluteAddress),29    PDB_ENUM_CLASS_ENT(OMFSegDescFlags, IsGroup),30};31 32namespace llvm {33namespace pdb {34ArrayRef<EnumEntry<uint16_t>> getOMFSegMapDescFlagNames() {35  return ArrayRef(OMFSegMapDescFlagNames);36}37}38}39