LLVM  15.0.0git
NativeTypeTypedef.cpp
Go to the documentation of this file.
4 
5 using namespace llvm;
6 using namespace llvm::codeview;
7 using namespace llvm::pdb;
8 
9 NativeTypeTypedef::NativeTypeTypedef(NativeSession &Session, SymIndexId Id,
10  codeview::UDTSym Typedef)
11  : NativeRawSymbol(Session, PDB_SymType::Typedef, Id),
12  Record(std::move(Typedef)) {}
13 
15 
16 void NativeTypeTypedef::dump(raw_ostream &OS, int Indent,
17  PdbSymbolIdField ShowIdFields,
18  PdbSymbolIdField RecurseIdFields) const {
19  NativeRawSymbol::dump(OS, Indent, ShowIdFields, RecurseIdFields);
20  dumpSymbolField(OS, "name", getName(), Indent);
21  dumpSymbolIdField(OS, "typeId", getTypeId(), Indent, Session,
22  PdbSymbolIdField::Type, ShowIdFields, RecurseIdFields);
23 }
24 
25 std::string NativeTypeTypedef::getName() const {
26  return std::string(Record.Name);
27 }
28 
31 }
NativeTypeTypedef.h
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:17
llvm::pdb::NativeTypeTypedef::dump
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
Definition: NativeTypeTypedef.cpp:16
llvm::pdb::PdbSymbolIdField::Type
@ Type
llvm::pdb::NativeTypeTypedef::~NativeTypeTypedef
~NativeTypeTypedef() override
llvm::pdb::PDB_SymType
PDB_SymType
These values correspond to the SymTagEnum enumeration, and are documented here: https://msdn....
Definition: PDBTypes.h:243
llvm::pdb::NativeTypeTypedef::getName
std::string getName() const override
Definition: NativeTypeTypedef.cpp:25
llvm::pdb::NativeTypeTypedef::getTypeId
SymIndexId getTypeId() const override
Definition: NativeTypeTypedef.cpp:29
llvm::raw_ostream
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:54
llvm::pdb
Definition: ConcreteSymbolEnumerator.h:20
llvm::pdb::dumpSymbolField
void dumpSymbolField(raw_ostream &OS, StringRef Name, T Value, int Indent)
Definition: PDBExtras.h:47
llvm::pdb::dumpSymbolIdField
void dumpSymbolIdField(raw_ostream &OS, StringRef Name, SymIndexId Value, int Indent, const IPDBSession &Session, PdbSymbolIdField FieldId, PdbSymbolIdField ShowFlags, PdbSymbolIdField RecurseFlags)
Definition: PDBSymbol.cpp:202
llvm::pdb::NativeSession::getSymbolCache
SymbolCache & getSymbolCache()
Definition: NativeSession.h:113
llvm::move
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Definition: STLExtras.h:1663
llvm::Record
Definition: Record.h:1508
uint32_t
llvm::pdb::SymbolCache::findSymbolByTypeIndex
SymIndexId findSymbolByTypeIndex(codeview::TypeIndex TI) const
Definition: SymbolCache.cpp:158
std
Definition: BitVector.h:851
llvm::pdb::NativeRawSymbol::dump
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
Definition: NativeRawSymbol.cpp:21
llvm::pdb::NativeSession
Definition: NativeSession.h:32
llvm::codeview
Definition: AppendingTypeTableBuilder.h:22
llvm::pdb::PdbSymbolIdField
PdbSymbolIdField
Definition: IPDBRawSymbol.h:24
llvm::pdb::PDB_SymType::Typedef
@ Typedef
PDBExtras.h
llvm::pdb::NativeRawSymbol::Session
NativeSession & Session
Definition: NativeRawSymbol.h:232
llvm::AMDGPU::VGPRIndexMode::Id
Id
Definition: SIDefines.h:232
llvm::codeview::UDTSym
Definition: SymbolRecord.h:864
llvm::pdb::NativeRawSymbol
Definition: NativeRawSymbol.h:21
NativeSession.h