83 switch (
TI.getSimpleMode()) {
96 assert(
false &&
"invalid simple type mode!");
105 return Session.getSymbolCache().findSymbolByTypeIndex(Referent);
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
static bool isInheritanceKind(const MemberPointerInfo &MPI, PointerToMemberRepresentation P1, PointerToMemberRepresentation P2)
PointerToMemberRepresentation getRepresentation() const
NativeRawSymbol(NativeSession &PDBSession, PDB_SymType Tag, SymIndexId SymbolId)
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
SymIndexId getTypeId() const override
bool isPointerToDataMember() const override
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
bool isPointerToMemberFunction() const override
SymIndexId getClassParentId() const override
~NativeTypePointer() override
bool isReference() const override
bool isVirtualInheritance() const override
bool isConstType() const override
bool isSingleInheritance() const override
bool isMultipleInheritance() const override
bool isMemberPointer() const
bool isRValueReference() const override
NativeTypePointer(NativeSession &Session, SymIndexId Id, codeview::TypeIndex TI)
bool isUnalignedType() const override
bool isVolatileType() const override
uint64_t getLength() const override
std::optional< codeview::PointerRecord > Record
bool isRestrictedType() const override
This class implements an extremely fast bulk output stream that can only output to a stream.
@ PointerToMemberFunction
PointerToMemberRepresentation
Equivalent to CV_pmtype_e.
@ MultipleInheritanceData
@ SingleInheritanceFunction
@ VirtualInheritanceFunction
@ MultipleInheritanceFunction
void dumpSymbolField(raw_ostream &OS, StringRef Name, T Value, int Indent)
PDB_SymType
These values correspond to the SymTagEnum enumeration, and are documented here: https://msdn....
LLVM_ABI void dumpSymbolIdField(raw_ostream &OS, StringRef Name, SymIndexId Value, int Indent, const IPDBSession &Session, PdbSymbolIdField FieldId, PdbSymbolIdField ShowFlags, PdbSymbolIdField RecurseFlags)
This is an optimization pass for GlobalISel generic memory operations.
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Implement std::hash so that hash_code can be used in STL containers.