LLVM: lib/CodeGen/AsmPrinter/CodeViewDebug.cpp File Reference (original) (raw)

Go to the source code of this file.

Functions
static CPUType mapArchToCVCPUType (Triple::ArchType Type)
static StringRef getPrettyScopeName (const DIScope *Scope)
static std::string formatNestedName (ArrayRef< StringRef > QualifiedNameComponents, StringRef TypeName)
static StringRef removeTemplateArgs (StringRef Name)
static bool isNonTrivial (const DICompositeType *DCTy)
static FunctionOptions getFunctionOptions (const DISubroutineType *Ty, const DICompositeType *ClassTy=nullptr, StringRef SPName=StringRef(""))
static void addLocIfNotPresent (SmallVectorImpl< const DILocation * > &Locs, const DILocation *Loc)
static SourceLanguage MapDWARFLanguageToCVLang (dwarf::SourceLanguageName DWLName)
static SourceLanguage MapDWARFLanguageToCVLang (dwarf::SourceLanguage DWLang)
static void emitNullTerminatedSymbolName (MCStreamer &OS, StringRef S, unsigned MaxFixedRecordLength=0xF00)
static Version parseVersion (StringRef Name)
static TypeIndex getStringIdTypeIdx (GlobalTypeTableBuilder &TypeTable, StringRef S)
static bool canUseReferenceType (const DbgVariableLocation &Loc)
static bool needsReferenceType (const DbgVariableLocation &Loc)
static bool shouldEmitUdt (const DIType *T)
static PointerToMemberRepresentation translatePtrToMemberRep (unsigned SizeInBytes, bool IsPMF, unsigned Flags)
static CallingConvention dwarfCCToCodeView (unsigned DwarfCC)
Given a DWARF calling convention, get the CodeView equivalent.
static MemberAccess translateAccessFlags (unsigned RecordTag, unsigned Flags)
static MethodOptions translateMethodOptionFlags (const DISubprogram *SP)
static MethodKind translateMethodKindFlags (const DISubprogram *SP, bool Introduced)
static TypeRecordKind getRecordKind (const DICompositeType *Ty)
static ClassOptions getCommonClassOptions (const DICompositeType *Ty)
Return ClassOptions that should be present on both the forward declaration and the defintion of a tag type.
static bool shouldAlwaysEmitCompleteClassType (const DICompositeType *Ty)
static bool isUsableDebugLoc (DebugLoc DL)
static StringRef getSymbolName (SymbolKind SymKind)
static bool isFloatDIType (const DIType *Ty)
void forEachJumpTableBranch (const MachineFunction *MF, bool isThumb, const std::function< void(const MachineJumpTableInfo &, const MachineInstr &, int64_t)> &Callback)

addLocIfNotPresent()

canUseReferenceType()

dwarfCCToCodeView()

emitNullTerminatedSymbolName()

forEachJumpTableBranch()

formatNestedName()

getCommonClassOptions()

getFunctionOptions()

getPrettyScopeName()

getRecordKind()

getStringIdTypeIdx()

getSymbolName()

isFloatDIType()

isNonTrivial()

isUsableDebugLoc()

mapArchToCVCPUType()

Definition at line 114 of file CodeViewDebug.cpp.

References llvm::Triple::aarch64, llvm::codeview::ARM64, llvm::codeview::ARMNT, llvm::codeview::MIPS, llvm::Triple::mipsel, llvm::codeview::Pentium3, llvm::report_fatal_error(), llvm::Triple::thumb, llvm::codeview::Unknown, llvm::Triple::UnknownArch, llvm::codeview::X64, llvm::Triple::x86, and llvm::Triple::x86_64.

Referenced by llvm::CodeViewDebug::beginModule().

MapDWARFLanguageToCVLang() [1/2]

MapDWARFLanguageToCVLang() [2/2]

needsReferenceType()

parseVersion()

Version parseVersion ( StringRef Name) static

removeTemplateArgs()

shouldAlwaysEmitCompleteClassType()

shouldEmitUdt()

translateAccessFlags()

translateMethodKindFlags()

translateMethodOptionFlags()

translatePtrToMemberRep()

Definition at line 1965 of file CodeViewDebug.cpp.

References llvm::DINode::FlagPtrToMemberRep, llvm::codeview::GeneralData, llvm::codeview::GeneralFunction, llvm_unreachable, llvm::codeview::MultipleInheritanceData, llvm::codeview::MultipleInheritanceFunction, llvm::codeview::SingleInheritanceData, llvm::codeview::SingleInheritanceFunction, llvm::codeview::Unknown, llvm::codeview::VirtualInheritanceData, and llvm::codeview::VirtualInheritanceFunction.