Lines Matching full:which
21 This document describes some BFD internal information which may be
44 BFD is a library which provides a single interface to read and write
60 The first interface is the set of generic functions which programs using
62 directly or indirectly into calls to routines which are specific to a
67 The second interface is the set of functions which appear in the target
73 target vector}. The set of functions which appear in a particular
76 The third interface is a set of oddball functions which are typically
80 requires some action which the BFD generic interface does not provide.
86 The fourth interface is the set of BFD support functions which are
95 by the manner in which it is used.
122 within BFD which use the generic structures and which work with all
125 For several object file formats the linker needs additional hooks which
161 relocation describes an action which the linker must take to modify the
163 a pointer to a howto structure which describes how to perform the
171 represents an archive file as a file which contains a list of
174 within the archive which corresponds to a particular entry in the
180 Most object file formats have information which BFD can not represent in
183 There is often explicit information which BFD can not represent. For
190 In some cases there is also implicit information which BFD can not
198 format which is outside of the BFD library.
203 in the manner which BFD does it today.
237 All externally visible functions should have names which start with
240 the end of @file{bfd-in.h}, which mostly declare functions required by
244 All functions which need to be visible from one file to another within
258 which may or may not be declared in system header files. Warnings about
268 vector}. This is simply a set of function pointers which implement
298 how the target vector is named in command line options for tools which
346 as S-records which do not record the architecture of the data.
354 Flags which may appear in the @samp{flags} field of a BFD with this
358 Flags which may appear in the @samp{flags} field of a section within a
362 A character which the C compiler normally puts before a symbol. For
364 @samp{_foo} for a function named @samp{foo} in the C source, in which
378 vectors which use the same sets of functions.
396 Every target vector has three arrays of function pointers which are
423 Set the format of a BFD which was created for output. This is called by
446 These macros take a single argument, which is a prefix applied to a set
462 with the same argument, calling a set of functions which is defined in
466 the description of the function pointers which it defines. The function
467 pointers will be described using the name without the prefix which the
477 functions which don't easily fit into other categories.
487 @samp{_bfd_generic_close_and_cleanup}, which simply returns true.
490 Free any cached information associated with the BFD which can be
496 @samp{_bfd_generic_free_cached_info}, which simply returns true.
507 @samp{_bfd_generic_get_section_contents}, which does a @samp{bfd_seek}
517 @samp{bfd_generic_get_section_contents_in_window}, which uses
527 The @samp{BFD_JUMP_TABLE_COPY} macro is used for functions which are
528 called when copying BFDs, and for a couple of functions which deal with
555 store extra symbol information by allocating space which is larger than
565 ELF assembler uses it to set flags which appear in the e_flags field of
571 information about the BFD which can not be otherwise represented by BFD
580 The @samp{BFD_JUMP_TABLE_CORE} macro is used for functions which deal
582 interesting for targets which have core file support.
586 Given a core file, this returns the command which was run to produce the
590 Given a core file, this returns the signal number which produced the
602 The @samp{BFD_JUMP_TABLE_ARCHIVE} macro is used for functions which deal
635 routine. This function is more interesting in targets which do not
649 is called by routines which read the archive symbol table or the archive
684 The @samp{BFD_JUMP_TABLE_SYMBOLS} macro is used for functions which deal
689 Return a sensible upper bound on the amount of memory which will be
753 where it simply returns a symbol which will be placed in the
760 information which the caller can use to extract complete symbol
764 and just use generic support which is based on using standard
776 The @samp{BFD_JUMP_TABLE_RELOCS} macro is used for functions which deal
781 Return a sensible upper bound on the amount of memory which will be
804 The @samp{BFD_JUMP_TABLE_WRITE} macro is used for functions which deal
874 The @samp{BFD_JUMP_TABLE_DYNAMIC} macro is used for functions which read
879 Return a sensible upper bound on the amount of memory which will be
893 Return a sensible upper bound on the amount of memory which will be
917 files live in the object directory---the directory from which you run
975 there are header files which contain function definitions. These header
977 once per file which includes them.
993 It is difficult to debug programs which use BFD, since there is no way
994 to describe which version of a particular function you are looking at.
997 Programs which use BFD wind up incorporating two or more slightly
998 different versions of the same function, which wastes space in the
1007 The following is a list of the files which are compiled multiple times.
1038 COFF target. It implements code which handles COFF magic numbers as
1047 routines which swap COFF structures between internal and external
1052 macros which affect @file{coffswap.h} as well, mostly describing whether
1058 for ECOFF. It is included by the ECOFF target files (of which there are
1066 It is controlled by the @samp{ARCH_SIZE} macro which is defined to be
1079 and @file{elf64-target.h}, one of which is included by every ELF target.
1091 Like @file{freebsd.h}, except that there are several files which include
1101 @file{nlm32.c} and @file{nlm64.c}, both of which define the macro
1116 routines, and also defines some macros which control @file{coffcode.h}
1139 A relocation is an action which the linker must take when linking. It
1149 area of memory which holds the value of @samp{p} to the value of the
1152 Slightly more complex relocations may include an addend, which is a
1195 S-records). The generic linker code, which is used by all targets which
1197 @samp{bfd_get_relocated_section_contents}, which for most targets turns
1198 into a call to @samp{bfd_generic_get_relocated_section_contents}, which
1200 is still widely used, which makes it difficult to change, since it is
1221 are expected to write a @samp{relocate_section} function which will
1229 little; any relocations which require special handling can be handled
1244 flexible enough to represent any relocation which should be handled by
1265 If your target uses the new linker, which is recommended, add any
1286 doing a link in which the output object file format is S-records.
1316 which simply calls the target vector entry point
1344 howto structure. Some mechanism would be used to determine which type
1363 @samp{bfd_generic_get_relocated_section_contents} function which is
1415 portion of the file which corresponds to the program segment may include
1423 On a system which supports dynamic paging, such as any native Unix
1430 would have to shift the contents around within the page, which is too
1448 ignored. In particular, programs which use BFD currently have no direct
1457 There is a hook which may be used to explicitly define the program
1467 In general, functions which do not read external data from the ELF file
1469 ELF structures, which are defined in @file{include/elf/internal.h}. The
1473 The file @file{elfcode.h} contains functions which operate on the
1482 @samp{elf_backend_relocate_section}, which is required to relocate the
1486 The core file support is in @file{elfcore.h}, which is compiled twice,
1488 support only work on a native system which has the @file{sys/procfs.h}
1533 name which a user of the BFD tool would use to specify the object file
1540 Define @samp{ELF_MACHINE_CODE} to the magic number which should appear
1550 processor specific supplement. For a processor which will only be used
1551 in an embedded system, or which has no memory management hardware, this
1563 must be stored in the section contents, which makes relocatable links
1567 a global array. The instructions which load the value of @samp{a[1000]}
1568 will most likely use a relocation which refers to the symbol
1572 If you are adding support for a RISC chip which uses two or more
1576 in which the addend may have to be updated. It can be done---the MIPS
1592 Either way, this is a macro defined as the name of a function which
1605 information which may be needed outside of the BFD code. In particular
1622 generic linker support, which requires converting all symbols and
1625 @samp{bfd_perform_relocation}, which will use the howto structures you
1636 @samp{elf_backend_relocate_section} as the name of a function which will
1640 relocations which computes the value of each relocation and calls
1655 There are many other macros which may be defined in
1662 Several processor specific hook functions which may be defined as
1668 There are a few processor specific constants which may also be defined.
1680 Dynamic linking support, which involves processor specific relocations
1748 guess at the number of program segments which will be required, in
1782 set of functions which appear in a particular target vector.
1818 Load Memory Address. This is the address at which a section will be
1822 NetWare Loadable Module. Used to describe the format of an object which
1823 be loaded into NetWare, which is some kind of PC based network server
1854 A library of functions which may be used by many executables without
1869 A set of functions which implement support for a particular object file