enum DWARFSectionKind

Description

The enum of section identifiers to be used in internal interfaces. Pre-standard implementation of package files defined a number of section identifiers with values that clash definitions in the DWARFv5 standard. See https://gcc.gnu.org/wiki/DebugFissionDWP and Section 7.3.5.3 in DWARFv5. The following identifiers are the same in the proposal and in DWARFv5: - DW_SECT_INFO = 1 (.debug_info.dwo) - DW_SECT_ABBREV = 3 (.debug_abbrev.dwo) - DW_SECT_LINE = 4 (.debug_line.dwo) - DW_SECT_STR_OFFSETS = 6 (.debug_str_offsets.dwo) The following identifiers are defined only in DWARFv5: - DW_SECT_LOCLISTS = 5 (.debug_loclists.dwo) - DW_SECT_RNGLISTS = 8 (.debug_rnglists.dwo) The following identifiers are defined only in the GNU proposal: - DW_SECT_TYPES = 2 (.debug_types.dwo) - DW_SECT_LOC = 5 (.debug_loc.dwo) - DW_SECT_MACINFO = 7 (.debug_macinfo.dwo) DW_SECT_MACRO for the .debug_macro.dwo section is defined in both standards, but with different values, 8 in GNU and 7 in DWARFv5. This enum defines constants to represent the identifiers of both sets. For DWARFv5 ones, the values are the same as defined in the standard. For pre-standard ones that correspond to sections being deprecated in DWARFv5, the values are chosen arbitrary and a tag "_EXT_" is added to the names. The enum is for internal use only. The user should not expect the values to correspond to any input/output constants. Special conversion functions, serializeSectionKind() and deserializeSectionKind(), should be used for the translation.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFUnitIndex.h:56

Enumerators

NameValueComment
DW_SECT_EXT_unknown0Denotes a value read from an index section that does not correspond to any of the supported standards.
DW_SECT_INFO1
DW_SECT_ABBREV3
DW_SECT_LINE4
DW_SECT_LOCLISTS5
DW_SECT_STR_OFFSETS6
DW_SECT_MACRO7
DW_SECT_RNGLISTS8
DW_SECT_EXT_TYPES2
DW_SECT_EXT_LOC9
DW_SECT_EXT_MACINFO10