enoft Manual
TNS/E Native Object Files
eNOFT Manual—527507-005
A-17
The DWARF Symbol Table
programs (not even by the linker's -alf or -alfp options). So, such relocation table
entries may be omitted by the linker when it creates a main program.
In loadfiles, the elements of the .rela and .rela.gblzd sections are sorted by target
symbol index. In particular, that means that all the entries with the same target symbol
are consecutive. This includes the case of relocation types whose names begin
R_IA_64_REL, which don't have a target symbol, so that the target symbol index is 0.
The DWARF Symbol Table
The DWARF symbol table contains information used by debuggers and by the COBOL
compiler, whereas the .symtab, .dynsym, and .dynsym.gblzd sections contain
information used by the linker and runtime loader.
The DWARF symbol table information in an import library that represents a single DLL
is the same as the DWARF symbol table information that is present in the
corresponding DLL. There is no DWARF symbol table information in the import library
that represents the implicit libraries.
A file may be "stripped", meaning that it doesn't have debugging information in it. This
means that the DWARF symbol table is not present. Note that it is even possible for a
linkfile to be stripped. In other words, even after being stripped, a linkfile can still be
processed by the linker, because the DWARF symbol table does not contain any
information that is required by the linker. An import library can be stripped even if the
corresponding DLL is not stripped.
DWARF information is updated by the linker corresponding to the effect of its -rename
option. That is, the DWARF information does not look like what the compiler or
assembler originally generated, but rather reflects how the symbol table information
was changed by the -rename option.
DWARF Object File Sections
Here is a summary of the purposes of the DWARF sections that we use:
.debug_info
This is the main section of DWARF information. It is a tree of nodes, each node
contains various attributes.
.debug_abbrev
This section provides additional information required to decode the information in the
.debug_info section, including information about implementation-defined material.
.debug_line
This section contains information that tells how to map things to source line numbers.
.debug_line_nsk
This has a format similar to .debug_line, but to represent EDIT line numbers rather
than sequential line numbers.










