Lines Matching refs:which
44 This document describes some BFD internal information which may be
67 BFD is a library which provides a single interface to read and write
83 The first interface is the set of generic functions which programs using
85 directly or indirectly into calls to routines which are specific to a
90 The second interface is the set of functions which appear in the target
96 target vector}. The set of functions which appear in a particular
99 The third interface is a set of oddball functions which are typically
103 requires some action which the BFD generic interface does not provide.
109 The fourth interface is the set of BFD support functions which are
118 by the manner in which it is used.
145 within BFD which use the generic structures and which work with all
148 For several object file formats the linker needs additional hooks which
184 relocation describes an action which the linker must take to modify the
186 a pointer to a howto structure which describes how to perform the
194 represents an archive file as a file which contains a list of
197 within the archive which corresponds to a particular entry in the
203 Most object file formats have information which BFD can not represent in
206 There is often explicit information which BFD can not represent. For
213 In some cases there is also implicit information which BFD can not
221 format which is outside of the BFD library.
226 in the manner which BFD does it today.
260 All externally visible functions should have names which start with
263 the end of @file{bfd-in.h}, which mostly declare functions required by
267 All functions which need to be visible from one file to another within
281 which may or may not be declared in system header files. Warnings about
291 vector}. This is simply a set of function pointers which implement
321 how the target vector is named in command line options for tools which
371 as S-records which do not record the architecture of the data.
379 Flags which may appear in the @samp{flags} field of a BFD with this
383 Flags which may appear in the @samp{flags} field of a section within a
387 A character which the C compiler normally puts before a symbol. For
389 @samp{_foo} for a function named @samp{foo} in the C source, in which
403 vectors which use the same sets of functions.
421 Every target vector has three arrays of function pointers which are
448 Set the format of a BFD which was created for output. This is called by
471 These macros take a single argument, which is a prefix applied to a set
487 with the same argument, calling a set of functions which is defined in
491 the description of the function pointers which it defines. The function
492 pointers will be described using the name without the prefix which the
502 functions which don't easily fit into other categories.
512 @samp{_bfd_generic_close_and_cleanup}, which simply returns true.
515 Free any cached information associated with the BFD which can be
521 @samp{_bfd_generic_free_cached_info}, which simply returns true.
532 @samp{_bfd_generic_get_section_contents}, which does a @samp{bfd_seek}
542 @samp{bfd_generic_get_section_contents_in_window}, which uses
552 The @samp{BFD_JUMP_TABLE_COPY} macro is used for functions which are
553 called when copying BFDs, and for a couple of functions which deal with
580 store extra symbol information by allocating space which is larger than
590 ELF assembler uses it to set flags which appear in the e_flags field of
596 information about the BFD which can not be otherwise represented by BFD
605 The @samp{BFD_JUMP_TABLE_CORE} macro is used for functions which deal
607 interesting for targets which have core file support.
611 Given a core file, this returns the command which was run to produce the
615 Given a core file, this returns the signal number which produced the
627 The @samp{BFD_JUMP_TABLE_ARCHIVE} macro is used for functions which deal
660 routine. This function is more interesting in targets which do not
674 is called by routines which read the archive symbol table or the archive
709 The @samp{BFD_JUMP_TABLE_SYMBOLS} macro is used for functions which deal
714 Return a sensible upper bound on the amount of memory which will be
778 where it simply returns a symbol which will be placed in the
785 information which the caller can use to extract complete symbol
789 and just use generic support which is based on using standard
801 The @samp{BFD_JUMP_TABLE_RELOCS} macro is used for functions which deal
806 Return a sensible upper bound on the amount of memory which will be
829 The @samp{BFD_JUMP_TABLE_WRITE} macro is used for functions which deal
899 The @samp{BFD_JUMP_TABLE_DYNAMIC} macro is used for functions which read
904 Return a sensible upper bound on the amount of memory which will be
918 Return a sensible upper bound on the amount of memory which will be
942 files live in the object directory---the directory from which you run
1000 there are header files which contain function definitions. These header
1002 once per file which includes them.
1018 It is difficult to debug programs which use BFD, since there is no way
1019 to describe which version of a particular function you are looking at.
1022 Programs which use BFD wind up incorporating two or more slightly
1023 different versions of the same function, which wastes space in the
1032 The following is a list of the files which are compiled multiple times.
1063 COFF target. It implements code which handles COFF magic numbers as
1072 routines which swap COFF structures between internal and external
1077 macros which affect @file{coffswap.h} as well, mostly describing whether
1083 for ECOFF. It is included by the ECOFF target files (of which there are
1091 It is controlled by the @samp{ARCH_SIZE} macro which is defined to be
1104 and @file{elf64-target.h}, one of which is included by every ELF target.
1116 Like @file{freebsd.h}, except that there are several files which include
1126 @file{nlm32.c} and @file{nlm64.c}, both of which define the macro
1141 routines, and also defines some macros which control @file{coffcode.h}
1164 A relocation is an action which the linker must take when linking. It
1174 area of memory which holds the value of @samp{p} to the value of the
1177 Slightly more complex relocations may include an addend, which is a
1220 S-records). The generic linker code, which is used by all targets which
1222 @samp{bfd_get_relocated_section_contents}, which for most targets turns
1223 into a call to @samp{bfd_generic_get_relocated_section_contents}, which
1225 is still widely used, which makes it difficult to change, since it is
1246 are expected to write a @samp{relocate_section} function which will
1254 little; any relocations which require special handling can be handled
1269 flexible enough to represent any relocation which should be handled by
1290 If your target uses the new linker, which is recommended, add any
1311 doing a link in which the output object file format is S-records.
1341 which simply calls the target vector entry point
1369 howto structure. Some mechanism would be used to determine which type
1388 @samp{bfd_generic_get_relocated_section_contents} function which is
1440 portion of the file which corresponds to the program segment may include
1448 On a system which supports dynamic paging, such as any native Unix
1455 would have to shift the contents around within the page, which is too
1473 ignored. In particular, programs which use BFD currently have no direct
1482 There is a hook which may be used to explicitly define the program
1492 In general, functions which do not read external data from the ELF file
1494 ELF structures, which are defined in @file{include/elf/internal.h}. The
1498 The file @file{elfcode.h} contains functions which operate on the
1507 @samp{elf_backend_relocate_section}, which is required to relocate the
1511 The core file support is in @file{elfcore.h}, which is compiled twice,
1513 support only work on a native system which has the @file{sys/procfs.h}
1558 name which a user of the BFD tool would use to specify the object file
1565 Define @samp{ELF_MACHINE_CODE} to the magic number which should appear
1575 processor specific supplement. For a processor which will only be used
1576 in an embedded system, or which has no memory management hardware, this
1588 must be stored in the section contents, which makes relocatable links
1592 a global array. The instructions which load the value of @samp{a[1000]}
1593 will most likely use a relocation which refers to the symbol
1597 If you are adding support for a RISC chip which uses two or more
1601 in which the addend may have to be updated. It can be done---the MIPS
1617 Either way, this is a macro defined as the name of a function which
1630 information which may be needed outside of the BFD code. In particular
1647 generic linker support, which requires converting all symbols and
1650 @samp{bfd_perform_relocation}, which will use the howto structures you
1661 @samp{elf_backend_relocate_section} as the name of a function which will
1665 relocations which computes the value of each relocation and calls
1680 There are many other macros which may be defined in
1687 Several processor specific hook functions which may be defined as
1693 There are a few processor specific constants which may also be defined.
1705 Dynamic linking support, which involves processor specific relocations
1790 set of functions which appear in a particular target vector.
1826 Load Memory Address. This is the address at which a section will be
1830 NetWare Loadable Module. Used to describe the format of an object which
1831 be loaded into NetWare, which is some kind of PC based network server
1862 A library of functions which may be used by many executables without
1877 A set of functions which implement support for a particular object file