Home | History | Annotate | Download | only in bfd

Lines Matching defs:in

12    This program is distributed in the hope that it will be useful,
30 alignments of fields in structures on disk, and the occasional
33 Coff in all its varieties is implemented with a few common
35 example, The 88k bcs coff format is implemented in the file
43 The Intel i960 processor version of coff is implemented in
57 and add the lines to @file{targets.c} and @file{Makefile.in}
59 structures in @file{../include/coff/foo.h} so that they match
61 @code{#ifdef}s to the code in @file{coff/internal.h} and
70 what you've done to Cygnus. Then your stuff will be in the
86 The generic routines are in @file{coffgen.c}. These routines
88 specific code; the hooks are in a @code{bfd_coff_backend_data}
91 The essentially similar target-specific routines are in
97 Some of the Coff targets then also have additional routines in
105 manipulate the i960 relocs. This code is not in
112 In the standard Coff object format, section names are limited to
113 the eight bytes available in the @code{s_name} field of the
120 extension is defined in section 4 of the Microsoft PE/COFF
128 Note that this implies that the extension can only be used in object
137 and in practice it works, although some tools that parse PE files
141 The functionality is supported in BFD by code implemented under
143 defined, the format does not support long section names in any way.
146 @code{_bfd_coff_set_long_section_names}, in the Coff backend data
148 in output BFDs at runtime; if it is false, as it will be by default
161 in-place will retain whatever format it had on input.
166 default (but still accepted in input BFDs). The header @file{coffcode.h}
168 used in the backends to initialise the backend data structure fields
174 Each flavour of coff supported in BFD has its own header file
176 an internal description of the coff layout, in
180 internal form. This is all performed in the
184 to override the definitions of various packing routines in
185 @file{coffcode.h}. E.g., the size of line number entry in coff is
210 enough to keep all the information available in a coff symbol
218 internal form. It also fixes up all the pointers in the table
219 (represented in the file by offsets from the first symbol in
220 the table) into physical pointers to elements in the new
223 pointer to another structure in the symbol table at one moment
224 may be the size in bytes of a structure at the next. Another
227 string points to the value in the auxent (the real filename)
234 the file in the string table. This pass moves all strings
239 is inspected in turn, and a decision made (using the
240 @code{sclass} field) about the various flags to set in the
259 Symbol tables are provided for writing to the back end in a
266 (@code{C_FILE}) to point to the next file place holder in the
267 list. It also marks each @code{offset} field in the list with
273 symbol physically at 0x120, but in a section starting at
285 generated when the symbol table was read in to create the
302 The hidden information for an <<asymbol>> is described in a
309 . {* Remembers the offset from the first symbol in the file for
385 '0', return an even number. Result undefined in all other cases. */
401 to long section names in the backend data struct simultaneously. */
498 should probably mirror the changes in styp_to_sec_flags(). */
649 should be set up properly in gas (or whatever assembler is in use),
670 information. STYP_* are the COFF section flags which appear in
671 COFF files. IMAGE_SCN_* are the PE section flags which appear in
732 should probably mirror the changes in sec_to_styp_flags(). */
873 g++. g++ will emit each template expansion in its own section.
904 /* Unfortunately, the PE format stores essential information in
917 /* This is not mirrored in sec_to_styp_flags(), but there
947 In the case of gas-generated (at least until that
1004 names like .text$foo__Fv (in the case of a
1033 types (they're used in DLLs and C++, but we
1072 it when reading it in. */
1186 /* Process each flag bit in styp_flags in turn. */
1196 are also in pei_section_data (abfd, section)->pe_flags. */
1233 _bfd_error_handler (_("%B: Warning: Ignoring section flag IMAGE_SCN_MEM_NOT_PAGED in section %s"),
1309 g++. g++ will emit each template expansion in its own section.
1349 Special entry points for gdb to swap in coff symbol table parts:
1649 But the mips keeps extra stuff in it's opthdr, so dont check
1797 /* We don't need to set up n_name, n_value, or n_scnum in the native
1800 in case this symbol winds up getting written out. The value 0
1829 /* Extract ALIGN from 2**ALIGN stored in section header. */
1835 /* TI tools puts the alignment power in bits 8-11. */
1884 /* In a PE image file, the s_paddr field holds the virtual size of a
1941 When we see one, we correct the reloc and line number counts in the
2064 /* Set the flags field from the COFF header read in. */
2086 dependent because the magic numbers are defined in the target
2623 the @code{offset} field in the symbol table supplied. The
2704 undefined symbols live in the table. Check the reloc
2756 we don't have in our symbol table. */
2873 /* We may want to output in a different COFF version. */
2930 See also the comment in coff_set_arch_mach_hook(). */
3205 /* A start address may have been added to the original file. In this
3221 /* XCOFF handles overflows in the reloc and line number count fields
3230 /* PE requires the sections to be in memory order when listed in
3232 sections. The sections apparently do not have to be in the
3233 right order in the image file itself, but we do need to get the
3286 in it, so arbitrarily set it to section 1 (indexing is
3350 /* Make sure we skip empty sections in a PE image. */
3355 /* Align the sections in the file to the same boundary on
3356 which they are aligned in virtual memory. I960 doesn't
3357 do this (FIXME) so we can stay in sync with Intel. 960
3406 /* In demand paged files the low order bits of the file offset
3445 size, in case the caller only writes out data to the
3453 incremented in coff_set_section_contents. This is right for
3625 /* We store the actual reloc count in the first reloc's addr. */
3637 /* Indicate in each section->line_filepos its actual file address. */
3707 /* Handle long section names as in PE. This must be compatible
3708 with the code in coff_write_symbols and _bfd_coff_final_link. */
3723 the offset of the long name in the string table is that we
3786 /* In PEI, relocs come in the .reloc section. */
3824 /* TI COFF puts the alignment power in bits 8-11 of the flags. */
3851 /* PE stores COMDAT section information in the symbol table. If
3853 the symbol in the symbol table and modify it. */
3868 /* Remember the location of the first symbol in this
3926 section in the symbol table. In order to make this
3928 symbol we found in the search above. It's OK to
3949 /* XCOFF handles overflows in the reloc and line number count fields
3981 /* Don't include the internal abs section in the section count */
3983 /* We will NOT put a fucking timestamp in the header here. Every time you
3984 put it back, I will come in and take it out again. I'm sorry. This
4030 /* Target id is used in TI COFF v1 and later; COFF0 won't use this field,
4357 /* Note that peicode.h fills in a PEAOUTHDR, not an AOUTHDR.
4414 number of shared libraries in the section. This code counts the
4422 - a (four byte) word holding the length of this record, in words,
4480 Creating the linenumber table is done by reading in the entire
4485 function is an offset from the first line in the function. The
4486 base of the line number information for the table is stored in
4576 (_("%B: warning: illegal symbol index 0x%lx in line number entry %d"),
4588 (_("%B: warning: illegal symbol index 0x%lx in line number entry %d"),
4600 (_("%B: warning: illegal symbol in line number entry %d"),
4689 /* Slurp in the symbol table, converting it to generic form. Note
4705 /* Read in the symbol table. */
4709 /* Allocate enough room for all the symbols in cached form. */
4765 /* In PE, 0x68 (104) denotes a section symbol. */
4767 /* In PE, 0x69 (105) denotes a weak external symbol. */
4847 case C_DWARF: /* A label in a dwarf section. */
4848 case C_INFO: /* A label in a comment section. */
4923 the value to the index in that section. */
5006 /* C_LINE in regular coff is 0x68. NT has taken over this storage
5017 case C_HIDDEN: /* Ext symbol in dmert public lib. */
5066 in
5130 /* In some cases in a DLL generated by the Microsoft linker, the
5160 Reading a coff relocation table is done in the following stages:
5164 o Process each relocation in turn; first swap it from the
5167 o Turn the symbol referenced in the relocation's symbol index
5174 structure, in a back end specific way. For instance, the 386
5252 (_("%B: warning: illegal symbol index %ld in relocs"),
5270 /* The symbols definitions that we have read in have been
5272 refering to the symbols in the raw data have not been
5284 /* Fill in the cache_ptr->howto field from dst.r_type. */
5346 /* This section has relocs made up by us, they are not in the
5391 /* This works even if abort is not declared in any header file. */
5553 /* COFF0 differs in file/section header size and relocation entry size. */
5595 /* COFF1 differs in section header size. */
5677 coff_bigobj_swap_filehdr_out (bfd *abfd, void * in, void * out)
5679 struct internal_filehdr *filehdr_in = (struct internal_filehdr *) in;
5703 struct internal_syment *in = (struct internal_syment *) in1;
5707 in->_n._n_n._n_zeroes = 0;
5708 in->_n._n_n._n_offset = H_GET_32 (abfd, ext->e.e.e_offset);
5715 memcpy (in->_n._n_name, ext->e.e_name, SYMNMLEN);
5719 in->n_value = H_GET_32 (abfd, ext->e_value);
5720 in->n_scnum = H_GET_32 (abfd, ext->e_scnum);
5721 in->n_type = H_GET_16 (abfd, ext->e_type);
5722 in->n_sclass = H_GET_8 (abfd, ext->e_sclass);
5723 in->n_numaux = H_GET_8 (abfd, ext->e_numaux);
5729 struct internal_syment *in = (struct internal_syment *) inp;
5732 if (in->_n._n_name[0] == 0)
5735 H_PUT_32 (abfd, in->_n._n_n._n_offset, ext->e.e.e_offset);
5742 memcpy (ext->e.e_name, in->_n._n_name, SYMNMLEN);
5746 H_PUT_32 (abfd, in->n_value, ext->e_value);
5747 H_PUT_32 (abfd, in->n_scnum, ext->e_scnum);
5749 H_PUT_16 (abfd, in->n_type, ext->e_type);
5750 H_PUT_8 (abfd, in->n_sclass, ext->e_sclass);
5751 H_PUT_8 (abfd, in->n_numaux, ext->e_numaux);
5766 union internal_auxent *in = (union internal_auxent *) in1;
5774 memcpy (in->x_file.x_fname, ext->File.Name,
5778 memcpy (in->x_file.x_fname, ext->File.Name, sizeof (ext->File.Name));
5786 in->x_scn.x_scnlen = H_GET_32 (abfd, ext->Section.Length);
5787 in->x_scn.x_nreloc =
5789 in->x_scn.x_nlinno =
5791 in->x_scn.x_checksum = H_GET_32 (abfd, ext->Section.Checksum);
5792 in->x_scn.x_associated = H_GET_16 (abfd, ext->Section.Number)
5794 in->x_scn.x_comdat = H_GET_8 (abfd, ext->Section.Selection);
5800 in->x_sym.x_tagndx.l = H_GET_32 (abfd, ext->Sym.WeakDefaultSymIndex);
5815 union internal_auxent * in = (union internal_auxent *) inp;
5823 memcpy (ext->File.Name, in->x_file.x_fname, sizeof (ext->File.Name));
5832 H_PUT_32 (abfd, in->x_scn.x_scnlen, ext->Section.Length);
5833 H_PUT_16 (abfd, in->x_scn.x_nreloc,
5835 H_PUT_16 (abfd, in->x_scn.x_nlinno,
5837 H_PUT_32 (abfd, in->x_scn.x_checksum, ext->Section.Checksum);
5838 H_PUT_16 (abfd, in->x_scn.x_associated & 0xffff,
5840 H_PUT_16 (abfd, (in->x_scn.x_associated >> 16),
5842 H_PUT_8 (abfd, in->x_scn.x_comdat, ext->Section.Selection);
5848 H_PUT_32 (abfd, in->x_sym.x_tagndx.l, ext->Sym.WeakDefaultSymIndex);