LLVM: llvm::dwarf_linker Namespace Reference (original) (raw)
| Classes | |
|---|---|
| class | AddressesMap |
| AddressesMap represents information about valid addresses used by debug information. More... | |
| class | DWARFFile |
| This class represents DWARF information for source file and it's address map. More... | |
| class | DWARFLinkerBase |
| The base interface for DWARFLinker implementations. More... | |
| class | IndexedValuesMap |
| This class stores values sequentually and assigns index to the each value. More... | |
| class | StringPool |
| class | StringPoolEntryInfo |
| Typedefs | |
|---|---|
| using | RangesTy = AddressRangesMap |
| Mapped value in the address map is the offset to apply to the linked address. | |
| using | StringEntry = StringMapEntry<EmptyStringSetTag> |
| StringEntry keeps data of the string: the length, external offset and a string body which is placed right after StringEntry. |
| Enumerations | |
|---|---|
| enum class | DebugSectionKind : uint8_t { DebugInfo = 0 , DebugLine, DebugFrame, DebugRange, DebugRngLists, DebugLoc, DebugLocLists, DebugARanges, DebugAbbrev, DebugMacinfo, DebugMacro, DebugAddr, DebugStr, DebugLineStr, DebugStrOffsets, DebugPubNames, DebugPubTypes, DebugNames, AppleNames, AppleNamespaces, AppleObjC, AppleTypes, NumberOfEnumEntries } |
| List of tracked debug tables. More... |
| Functions | |
|---|---|
| static constexpr const StringLiteral & | getSectionName (DebugSectionKind SectionKind) |
| Return the name of the section. | |
| LLVM_ABI std::optional< DebugSectionKind > | parseDebugTableName (StringRef Name) |
| Recognise the table name and match it with the DebugSectionKind. | |
| Error | finiteLoop (function_ref< Expected< bool >()> Iteration, size_t MaxCounter=100000) |
| This function calls Iteration() until it returns false. | |
| StringRef | guessDeveloperDir (StringRef SysRoot) |
| Make a best effort to guess the Xcode.app/Contents/Developer path from an SDK path. | |
| bool | isInToolchainDir (StringRef Path) |
| Make a best effort to determine whether Path is inside a toolchain. | |
| bool | isPathAbsoluteOnWindowsOrPosix (const Twine &Path) |
◆ RangesTy
Mapped value in the address map is the offset to apply to the linked address.
Definition at line 24 of file AddressesMap.h.
◆ StringEntry
StringEntry keeps data of the string: the length, external offset and a string body which is placed right after StringEntry.
Definition at line 23 of file StringPool.h.
◆ DebugSectionKind
List of tracked debug tables.
| Enumerator |
|---|
| DebugInfo |
| DebugLine |
| DebugFrame |
| DebugRange |
| DebugRngLists |
| DebugLoc |
| DebugLocLists |
| DebugARanges |
| DebugAbbrev |
| DebugMacinfo |
| DebugMacro |
| DebugAddr |
| DebugStr |
| DebugLineStr |
| DebugStrOffsets |
| DebugPubNames |
| DebugPubTypes |
| DebugNames |
| AppleNames |
| AppleNamespaces |
| AppleObjC |
| AppleTypes |
| NumberOfEnumEntries |
Definition at line 28 of file DWARFLinkerBase.h.
◆ finiteLoop()
◆ getSectionName()
| constexpr const StringLiteral & llvm::dwarf_linker::getSectionName ( DebugSectionKind SectionKind) | staticconstexpr |
|---|
◆ guessDeveloperDir()
◆ isInToolchainDir()
| bool llvm::dwarf_linker::isInToolchainDir ( StringRef Path) | inline |
|---|
◆ isPathAbsoluteOnWindowsOrPosix()
| bool llvm::dwarf_linker::isPathAbsoluteOnWindowsOrPosix ( const Twine & Path) | inline |
|---|
◆ parseDebugTableName()
| std::optional< DebugSectionKind > llvm::dwarf_linker::parseDebugTableName | ( | llvm::StringRef | SecName | ) |
|---|
Recognise the table name and match it with the DebugSectionKind.
Definition at line 16 of file DWARFLinkerBase.cpp.
References AppleNames, AppleNamespaces, AppleObjC, AppleTypes, llvm::StringSwitch< T, R >::Case(), DebugAbbrev, DebugAddr, DebugARanges, DebugFrame, DebugInfo, DebugLine, DebugLineStr, DebugLoc, DebugLocLists, DebugMacinfo, DebugMacro, DebugNames, DebugPubNames, DebugPubTypes, DebugRange, DebugRngLists, DebugStr, DebugStrOffsets, llvm::StringSwitch< T, R >::Default(), llvm::StringRef::find_first_not_of(), getSectionName(), and llvm::StringRef::substr().
Referenced by llvm::dwarf_linker::parallel::SectionDescriptor::setSizesForSectionCreatedByAsmPrinter().
◆ SectionKindsNum
| size_t llvm::dwarf_linker::SectionKindsNum | staticconstexpr |
|---|
◆ SectionNames
Initial value:
= {
"debug_info", "debug_line", "debug_frame", "debug_ranges",
"debug_rnglists", "debug_loc", "debug_loclists", "debug_aranges",
"debug_abbrev", "debug_macinfo", "debug_macro", "debug_addr",
"debug_str", "debug_line_str", "debug_str_offsets", "debug_pubnames",
"debug_pubtypes", "debug_names", "apple_names", "apple_namespac",
"apple_objc", "apple_types"}
Definition at line 57 of file DWARFLinkerBase.h.
Referenced by llvm::DWARFFormValue::dumpAddressSection(), and getSectionName().