Copyright (C) 2000-2012 |
GNU Info (bfd.info)Relocating the section contentsRelocating the section contents ............................... The `_bfd_final_link' function should look through the `link_order' structures attached to each section of the output file. Each `link_order' structure should either be handled specially, or it should be passed to the function `_bfd_default_link_order' which will do the right thing (`_bfd_default_link_order' is defined in `linker.c'). For efficiency, a `link_order' of type `bfd_indirect_link_order' whose associated section belongs to a BFD of the same format as the output BFD must be handled specially. This type of `link_order' describes part of an output section in terms of a section belonging to one of the input files. The `_bfd_final_link' function should read the contents of the section and any associated relocs, apply the relocs to the section contents, and write out the modified section contents. If performing a relocateable link, the relocs themselves must also be modified and written out. The functions `_bfd_relocate_contents' and `_bfd_final_link_relocate' provide some general support for performing the actual relocations, notably overflow checking. Their arguments include information about the symbol the relocation is against and a `reloc_howto_type' argument which describes the relocation to perform. These functions are defined in `reloc.c'. The a.out function which handles reading, relocating, and writing section contents is `aout_link_input_section'. The actual relocation is done in `aout_link_input_section_std' and `aout_link_input_section_ext'. automatically generated by info2www version 1.2.2.9 |