eld Manual
Table Of Contents
- eld Manual
- Legal Notices
- Contents
- What’s New in This Manual
- Manual Information
- New and Changed Information
- About This Manual
- Notation Conventions
- 1 Introduction to eld
- 2 eld Input and Output
- 3 Binding of References
- Overview
- Presetting Loadfiles
- To Preset or Not to Preset, and Creation of the LIC
- Handling Unresolved References
- Using User Libraries
- Creating Import Libraries
- Ignoring Optional Libraries
- Merging Symbols Found in Input Linkfiles
- Accepting Multiply-Defined Symbols
- Using the -cross_dll_cleanup option
- Specifying Which Symbols to Export, and Creating the Export Digest
- Public Libraries and DLLs
- The Public Library Registry
- 4 Other eld Processing
- Adjusting Loadfiles: The -alf Option
- Additional rules about -alf
- The -set and -change Options
- eld Functionality for 64-Bit
- Checking the C++ Language Dialect
- Renaming Symbols
- Creating Linker-Defined Symbols
- Updating Or Stripping DWARF Symbol Table Information
- Modifying the Data Sections that Contain Stack Unwinding Information
- Creating the MCB
- Processing of Floating Point Versions and Data Models
- Specification of the Main Entry Point
- Specifying Runtime Search Path Information for DLLs
- Merging Source RTDUs
- 5 Summary of Linker Options
- 6 Output Listings and Error Handling
- A TNS/E Native Object Files
- Glossary
- Index
TNS/E Native Object Files
eld Manual—527255-009
A-8
Summary of the Contents of an Object File
Text Sections
Text sections contain application-defined executable code (procedures). The
object file design also allows them to contain data, but that is not expected to
happen. In linkfiles, there can be any number of text sections. Their names must
begin either .text or .restext, corresponding to whether they contain non-resident or
resident text, respectively. In loadfiles, all the sections that had names beginning
.text are combined into a single section named .text, and similarly for .restext, and
the .restext section (if it exists) comes before the .text section. A text section is
required in a program, because there must be a main entry point. Text sections in
a loadfile can contain branch stubs, which are generated by the linker when a
procedure call would need to jump farther than its instruction format allows.
.hash Section
This is a hash table for looking up symbols in the .dynsym section. It is required in
loadfiles and import libraries.
.dynsym Section
This is the dynamic symbol table. It contains information about symbols
referenced in this loadfile or exported from this loadfile, other than globalized
symbols. It is required in loadfiles and import libraries.
.dynstr Section
This is a string space that is pointed at from the .dynsym section. It is required in
loadfiles and import libraries.
.hashval Section
This contains precomputed hash values for the symbols listed in the .dynsym
section. It is required in loadfiles.
.rela.dyn Section
This is the dynamic relocation table. It contains descriptions of the relocation sites
within this loadfile whose targets are the symbols listed in the .dynsym section.
.gateway Section
This contains gateways. A gateway is created for each procedure entry point that
has the CALLABLE or KERNEL_CALLABLE attribute.
.data Section
This contains application-defined initialized data, but doesn’t have either of the
restrictions that make it possible to put data into the .rdat
a or .sdata section.










