Other eld Processing
eld Manual—527255-009
4-14
Creating Linker-Defined Symbols
Creating Linker-Defined Symbols
Predefined Symbols
on page A-14 lists the symbols that are automatically defined by
the linker when it creates a loadfile, and what they mean. The linker resolves
references to these symbols by using the value of the symbol as if it was an address.
As mentioned in
Creating the MCB
on page 4-15,
eld
reports an error if you define a
symbol named
_MC
B. For other linker-defined symbols the linker puts out a warning if
they are defined by the user. Note that, if such a symbol is defined by the user, then
the linker uses the symbol defined in the linkfile in the usual way, rather than creating
its own symbol of this name with a special meaning.
Updating Or Stripping DWARF Symbol Table Information
The linker concatenates the DWARF symbol tables of its input linkfiles into the DWARF
symbol table of its output file.
The linker fills in the addresses of symbols found in the DWARF symbol table
information. Such relocation sites are described in linkfiles by the same kinds of
relocation table entries as any other data, so that the linker doesn’t need to understand
the format of the DWARF symbol table to do this. In loadfiles, the addresses in the
DWARF symbol table are the usual addresses, not segment-relative addresses.
When there are multiple copies of a symbol, the DWARF addresses for the unused
copies are set to -1, as discussed in
Accepting Multiply-Defined Symbols
on
page 3-17.
The
stripping
of symbols information means that the linker does not create the DWARF
symbol table information in its output file(s). The reason to do this is to make object
files smaller, when the user is not concerned with debugging. For compatibility with the
past, this can be done with either the
-s
or
-x
option. In our TNS/R implementations,
-s
strips all the symbols information, whereas
-x
strips only the symbols information
that the linker doesn’t need, but the distinction has disappeared with the segregation of
the debugging information into the DWARF symbol table. In other words, the TNS/E
linker does not depend on information in the DWARF symbol table for any of its other
activities.
When the linker is creating a linkfile and stripping the DWARF symbol table the linker
also omits the corresponding relocation table sections.
When the linker is creating an import library, that import library may or may not contain
DWARF symbol table information. See
Creating Import Libraries
on page 3-11.
The
-strip
option tells the linker to remove the DWARF symbol table from a loadfile
or import library that already exists. This option creates a new file in place of the old
file.
It is possible for the command stream to have multiple
-strip
options. Each one is
executed independently, if the previous one succeeds. The only other options allowed
with the
-strip
option are
-must_use_oname, -no_verbose,
-no_version_check, -obey, -stdin, -temp_o, -verbose
, and
-warn
. If
Содержание eld
Страница 4: ......
Страница 8: ...Contents eld Manual 527255 009 iv ...
Страница 12: ...What s New in This Manual eld Manual 527255 009 viii Changes to the 527255 005 Manual ...
Страница 34: ...Introduction to eld eld Manual 527255 009 1 14 Example of Use ...
Страница 54: ...eld Input and Output eld Manual 527255 009 2 20 Using Archives ...
Страница 98: ...Other eld Processing eld Manual 527255 009 4 20 Merging Source RTDUs ...
Страница 242: ...Output Listings and Error Handling eld Manual 527255 009 6 132 Glossary of Errors ...