ChangeLog-2008 revision 1.1 1 1.1 christos 2008-12-29 Arnold Metselaar <arnold.metselaar (a] planet.nl>
2 1.1 christos
3 1.1 christos * coff-z80.c (r_imm32): Fix copy-paste bug that caused z80-objdump to
4 1.1 christos issue warnings about stabs debugging symbols rather than to show them.
5 1.1 christos
6 1.1 christos 2008-12-23 Jon Beniston <jon (a] beniston.com>
7 1.1 christos
8 1.1 christos * Makefile.am: Add LM32 object files and dependencies.
9 1.1 christos * Makefile.in: Regenerate.
10 1.1 christos * archures.c: Add LM32 architechiture info.
11 1.1 christos * targets.c: Likewise.
12 1.1 christos * reloc.c: Likewise.
13 1.1 christos * bfd-in2.h: Regenerate.
14 1.1 christos * config.bfd: Add LM32 targets.
15 1.1 christos * configure.in: Likewise.
16 1.1 christos * configure: Regenerate.
17 1.1 christos * cpu-lm32.c: New file.
18 1.1 christos * elf32-lm32.c: New file.
19 1.1 christos
20 1.1 christos 2008-12-23 H.J. Lu <hongjiu.lu (a] intel.com>
21 1.1 christos
22 1.1 christos PR ld/7036
23 1.1 christos * elfxx-ia64.c (elfNN_ia64_relax_section): Assume linker will
24 1.1 christos always insert 32byte between the .plt and .text sections after
25 1.1 christos the first relaxation pass.
26 1.1 christos
27 1.1 christos 2008-12-23 Nick Clifton <nickc (a] redhat.com>
28 1.1 christos
29 1.1 christos PR 7093
30 1.1 christos * elf32-arm.c (bfd_elf32_arm_init_maps): Only process ARM ELF
31 1.1 christos object files.
32 1.1 christos
33 1.1 christos 2008-12-23 Tristan Gingold <gingold (a] adacore.com>
34 1.1 christos
35 1.1 christos * mach-o.c (bfd_mach_o_make_bfd_section): Use the standard ELF name
36 1.1 christos .eh_frame for __TEXT.__eh_frame so that it is recognized by gdb.
37 1.1 christos Use shorter sections name for well known sections.
38 1.1 christos (bfd_mach_o_scan_read_dylinker): Only put dylinker name in the
39 1.1 christos section content.
40 1.1 christos (bfd_mach_o_scan_read_segment): Use shorter sections name for
41 1.1 christos well known segments.
42 1.1 christos (bfd_mach_o_scan_read_command): Ignore some new commands.
43 1.1 christos (bfd_mach_o_openr_next_archived_file): Use more descriptive names
44 1.1 christos for members filename.
45 1.1 christos (bfd_mach_o_fat_extract): New function to easily extract members
46 1.1 christos of a fat binary.
47 1.1 christos * mach-o.h (bfd_mach_o_load_command_type): Add new constants.
48 1.1 christos (bfd_mach_o_dylinker_command): Fix comment and reindent.
49 1.1 christos (bfd_mach_o_fat_extract): New prototype.
50 1.1 christos
51 1.1 christos 2008-12-23 Johan Olmutz Nielsen <jnielsen (a] ddci.com>
52 1.1 christos
53 1.1 christos * coffcode.h (coff_write_object_contents): Always initialise
54 1.1 christos section.s_page.
55 1.1 christos
56 1.1 christos 2008-12-23 Andreas Schwab <schwab (a] suse.de>
57 1.1 christos
58 1.1 christos * elf32-m68k.c (elf_m68k_discard_copies): Use SYMBOL_CALLS_LOCAL.
59 1.1 christos (elf_m68k_relocate_section): Use SYMBOL_CALLS_LOCAL and
60 1.1 christos SYMBOL_REFERENCES_LOCAL.
61 1.1 christos (elf_m68k_relocate_section): Likewise.
62 1.1 christos
63 1.1 christos 2008-12-23 Nick Clifton <nickc (a] redhat.com>
64 1.1 christos
65 1.1 christos * elf-bfd.h (struct bfd_elf_section_data): Remove indirect_relocs
66 1.1 christos field.
67 1.1 christos (_bfd_elf_make_ifunc_reloc_section): Remove prototype.
68 1.1 christos * elf.c (swap_out_syms): Remove STT_IFUNC support.
69 1.1 christos (elf_find_function): Likewise.
70 1.1 christos * elf32-arm.c (arm_elf_find_function): Likewise.
71 1.1 christos (elf32_arm_adjust_dynamic_symbol): Likewise.
72 1.1 christos (elf32_arm_swap_symbol_in): Likewise.
73 1.1 christos (elf32_arm_is_function_type): Likewise.
74 1.1 christos * elf32-i386.c (is_indirect_symbol): Delete.
75 1.1 christos (elf_i386_check_relocs): Remove STT_IFUNC support.
76 1.1 christos (allocate_dynrelocs): Likewise.
77 1.1 christos (elf_i386_relocate_section): Likewise.
78 1.1 christos * elf64-x86-64.c (is_indirect_symbol): Delete.
79 1.1 christos (elf64_x86_64_check_relocs): Remove STT_IFUNC support.
80 1.1 christos (allocate_dynrelocs): Likewise.
81 1.1 christos (elf64_x86_64_relocate_section): Likewise.
82 1.1 christos * elfcode.h (elf_slurp_symbol_table): Likewise.
83 1.1 christos * elflink.c (_bfd_elf_adjust_symbol): Likewise.
84 1.1 christos (get_ifunc_reloc_section_name): Delete.
85 1.1 christos (_bfd_elf_make_ifunc_reloc_section): Delete.
86 1.1 christos * syms.c (BSF_INDIRECT_FUNCTION): Delete.
87 1.1 christos (bfd_print_symbol_vandf): Remove STT_IFUNC support.
88 1.1 christos (bfd_decode_symclass): Likewise.
89 1.1 christos * bfd-in2.h: Regenerate.
90 1.1 christos
91 1.1 christos 2008-12-20 Hans-Peter Nilsson <hp (a] axis.com>
92 1.1 christos
93 1.1 christos * elf32-cris.c (cris_elf_howto_table): Add entry for R_CRIS_32_IE.
94 1.1 christos (cris_reloc_map): Similarly.
95 1.1 christos (cris_elf_relocate_section, cris_elf_gc_sweep_hook)
96 1.1 christos (cris_elf_check_relocs): Handle R_CRIS_32_IE.
97 1.1 christos * reloc.c (bfd_reloc_code_type): Add entry for R_CRIS_32_IE.
98 1.1 christos * bfd-in2.h, libbfd.h: Regenerate.
99 1.1 christos
100 1.1 christos 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
101 1.1 christos
102 1.1 christos * configure: Regenerate.
103 1.1 christos
104 1.1 christos 2008-12-17 Hans-Peter Nilsson <hp (a] axis.com>
105 1.1 christos
106 1.1 christos * elf32-cris.c (elf_cris_copy_indirect_symbol): Return without
107 1.1 christos action for symbols other than bfd_link_hash_indirect.
108 1.1 christos (cris_elf_relocate_section) <R_CRIS_8, R_CRIS_16, R_CRIS_32>: Add missing
109 1.1 christos gate h != NULL for h->def_regular test.
110 1.1 christos
111 1.1 christos 2008-12-15 Hans-Peter Nilsson <hp (a] axis.com>
112 1.1 christos
113 1.1 christos * elf32-cris.c (elf_cris_copy_indirect_symbol): New function.
114 1.1 christos (elf_backend_copy_indirect_symbol): Define to above.
115 1.1 christos
116 1.1 christos * elf32-cris.c (struct elf_cris_pcrel_relocs_copied): New member
117 1.1 christos r_type. Fix formatting.
118 1.1 christos (cris_elf_relocate_section) <R_CRIS_8_PCREL, R_CRIS_16_PCREL>
119 1.1 christos <R_CRIS_32_PCREL>: Also break early if the symbol doesn't get
120 1.1 christos emitted as a dynamic one.
121 1.1 christos (cris_elf_check_relocs) <R_CRIS_7, R_CRIS_16, R_CRIS_32>: Fork
122 1.1 christos from PCREL relocs code and simplify; don't fall through.
123 1.1 christos <R_CRIS_8_PCREL, R_CRIS_16_PCREL, R_CRIS_32_PCREL>: Simplify for
124 1.1 christos pcrel only. For non-local or overridable symbols in a DSO, always
125 1.1 christos keep count of relocs, not just when -Bsymbolic. Don't emit
126 1.1 christos message nor mark as TEXTREL here.
127 1.1 christos (elf_cris_discard_excess_dso_dynamics): Emit warning and mark as
128 1.1 christos TEXTREL here, if there are nondiscarded pcrel relocs.
129 1.1 christos
130 1.1 christos * elf32-cris.c (elf_cris_got_elt_size) <symtab_hdr>: Initialize
131 1.1 christos using ibfd, not abfd.
132 1.1 christos
133 1.1 christos 2008-12-11 Alan Modra <amodra (a] bigpond.net.au>
134 1.1 christos
135 1.1 christos PR 7041
136 1.1 christos * elf64-ppc.c (func_desc_adjust): Correct logic making fake function
137 1.1 christos descriptors. Similarly correct making function descriptors dynamic.
138 1.1 christos
139 1.1 christos 2008-12-10 Alan Modra <amodra (a] bigpond.net.au>
140 1.1 christos
141 1.1 christos * elf32-spu.h (struct spu_elf_params): Add num_regions.
142 1.1 christos * elf32-spu.c (spu_elf_auto_overlay): Handle multiple overlay regions.
143 1.1 christos
144 1.1 christos 2008-12-10 Alan Modra <amodra (a] bigpond.net.au>
145 1.1 christos
146 1.1 christos * elf32-spu.g (struct spu_elf_params, enum _ovly_flavour): New.
147 1.1 christos (spu_elf_setup): Declare.
148 1.1 christos (spu_elf_create_sections, spu_elf_size_stubs): Update prototype.
149 1.1 christos (spu_elf_build_stubs, spu_elf_check_vma): Likewise.
150 1.1 christos * elf32-spu.c (struct spu_link_hash_table): Add "params". Remove
151 1.1 christos various other fields now in "params". Adjust code throughout.
152 1.1 christos (struct call_info, struct function_info): Move earlier in file.
153 1.1 christos (struct spu_elf_stack_info): Likewise.
154 1.1 christos (spu_elf_setup): New function.
155 1.1 christos (spu_elf_create_sections): Remove args other than "info".
156 1.1 christos (spu_elf_size_stubs, spu_elf_build_stubs, spu_elf_check_vma): Likewise.
157 1.1 christos (maybe_needs_stubs): Remove "output_bfd" arg. Adjust all calls.
158 1.1 christos (interesting_section): Similarly with "obfd" arg.
159 1.1 christos (needs_ovl_stub): Adjust output_section test.
160 1.1 christos (allocate_spuear_stubs): Likewise.
161 1.1 christos (OVL_STUB_SIZE): Don't define.
162 1.1 christos (ovl_stub_size): New function, use in place of OVL_STUB_SIZE.
163 1.1 christos (build_stub): Test params->ovly_flavour rather than OVL_STUB_SIZE.
164 1.1 christos (spu_elf_auto_overlay): Remove args other than "info". Make use
165 1.1 christos of size returned from spu_elf_load_ovl_mgr.
166 1.1 christos (spu_elf_stack_analysis): Remove args other than "info".
167 1.1 christos (spu_elf_relocate_section): Tidy setting of "ea".
168 1.1 christos
169 1.1 christos 2008-12-10 Alan Modra <amodra (a] bigpond.net.au>
170 1.1 christos
171 1.1 christos * elf32-spu.c (find_function_stack_adjust): Don't limit number
172 1.1 christos of insns scanned. Correct sp tests. Handle "fsmbi" and "andbi".
173 1.1 christos (mark_detached_root): New function.
174 1.1 christos (build_call_tree): Call it.
175 1.1 christos (sort_calls): Don't do void* arithmetic.
176 1.1 christos (define_ovtab_symbol): Don't abort on symbols defined in linker scripts.
177 1.1 christos (discover_functions): Consider STT_SECTION symbols too.
178 1.1 christos (collect_lib_sections): Don't cut short call tree traversal
179 1.1 christos when function size is too large.
180 1.1 christos
181 1.1 christos 2008-12-09 Tom Tromey <tromey (a] redhat.com>
182 1.1 christos
183 1.1 christos * pef.c (bfd_pef_parse_traceback_table): Add parens to placate gcc
184 1.1 christos 4.4.
185 1.1 christos
186 1.1 christos 2008-12-09 Tristan Gingold <gingold (a] adacore.com>
187 1.1 christos
188 1.1 christos * cpu-avr.c (compatible): Makes avr-6 compatible only with itself.
189 1.1 christos
190 1.1 christos 2008-12-04 Andreas Krebbel <Andreas.Krebbel (a] de.ibm.com>
191 1.1 christos
192 1.1 christos * elf64-s390.c (elf_s390_check_relocs): Initialize
193 1.1 christos htab->elf.dynobj if necessary.
194 1.1 christos
195 1.1 christos 2008-12-03 Nick Clifton <nickc (a] redhat.com>
196 1.1 christos
197 1.1 christos * syms.c (struct bfd_symbol): Add new flag BSF_INDIRECT_FUNCTION.
198 1.1 christos Remove redundant flag BFD_FORT_COMM_DEFAULT_VALUE. Renumber flags
199 1.1 christos to remove gaps.
200 1.1 christos (bfd_print_symbol_vandf): Return 'i' for BSF_INDIRECT_FUNCTION.
201 1.1 christos (bfd_decode_symclass): Likewise.
202 1.1 christos * elf.c (swap_out_syms): Translate BSF_INDIRECT_FUNCTION into
203 1.1 christos STT_IFUNC.
204 1.1 christos (elf_find_function): Treat STT_IFUNC in the same way as STT_FUNC.
205 1.1 christos (_bfd_elf_is_function_type): Likewise.
206 1.1 christos * elf32-arm.c (arm_elf_find_function): Likewise.
207 1.1 christos (elf32_arm_adjust_dynamic_symbol): Likewise.
208 1.1 christos (elf32_arm_swap_symbol_in): Likewise.
209 1.1 christos (elf32_arm_additional_program_headers): Likewise.
210 1.1 christos * elf32-i386.c (is_indirect_symbol): New function.
211 1.1 christos (elf_i386_check_relocs): Also generate dynamic relocs for
212 1.1 christos relocations against STT_IFUNC symbols.
213 1.1 christos (allocate_dynrelocs): Likewise.
214 1.1 christos (elf_i386_relocate_section): Likewise.
215 1.1 christos * elf64-x86-64.c (is_indirect_symbol): New function.
216 1.1 christos (elf64_x86_64_check_relocs): Also generate dynamic relocs for
217 1.1 christos relocations against STT_IFUNC symbols.
218 1.1 christos (allocate_dynrelocs): Likewise.
219 1.1 christos (elf64_x86_64_relocate_section): Likewise.
220 1.1 christos * elfcode.h (elf_slurp_symbol_table): Translate STT_IFUNC into
221 1.1 christos BSF_INDIRECT_FUNCTION.
222 1.1 christos * elflink.c (_bfd_elf_adjust_dynamic_reloc_section): Add support
223 1.1 christos for STT_IFUNC symbols.
224 1.1 christos (get_ifunc_reloc_section_name): New function.
225 1.1 christos (_bfd_elf_make_ifunc_reloc_section): New function.
226 1.1 christos * elf-bfd.h (struct bfd_elf_section_data): Add indirect_relocs field.
227 1.1 christos * bfd-in2.h: Regenerate.
228 1.1 christos
229 1.1 christos 2008-12-02 Tristan Gingold <gingold (a] adacore.com>
230 1.1 christos
231 1.1 christos * config.bfd: Add x86_64-*-darwin*
232 1.1 christos
233 1.1 christos 2008-11-28 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca>
234 1.1 christos
235 1.1 christos * hpux-core.c: Don't include sys/file.h.
236 1.1 christos
237 1.1 christos 2008-11-28 Joshua Kinard <kumba (a] gentoo.org>
238 1.1 christos
239 1.1 christos * aoutx.h (NAME): Add case statements for bfd_mach_mips14000,
240 1.1 christos bfd_mach_mips16000.
241 1.1 christos * archures.c (bfd_architecture): Add .#defines for bfd_mach_mips14000,
242 1.1 christos bfd_mach_mips16000.
243 1.1 christos * bfd-in2.h: Regenerate.
244 1.1 christos * cpu-mips.c: Add enums I_mips14000, I_mips16000.
245 1.1 christos (arch_info_struct): Add refs to R14000, R16000.
246 1.1 christos * elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips14000,
247 1.1 christos bfd_mach_mips16000.
248 1.1 christos (mips_mach_extensions): Map R14000, R16000 to R10000.
249 1.1 christos
250 1.1 christos 2008-11-27 M R Swami Reddy <MR.Swami.Reddy (a] nsc.com>
251 1.1 christos
252 1.1 christos * Add PIC support for CR16 target.
253 1.1 christos * elf32-cr16.c (R_CR16_GOT_REGREL20, R_CR16_GOTC_REGREL20 and
254 1.1 christos R_CR16_GLOB_DAT): New macros
255 1.1 christos (cr16_elf_howto_table): Add entries for for R_CR16_GOT_REGREL20,
256 1.1 christos R_CR16_GOTC_REGREL20 and R_CR16_GLOB_DAT.
257 1.1 christos (cr16_reloc_map): Ditto
258 1.1 christos (_bfd_cr16_elf_create_got_section): New function to create GOT section.
259 1.1 christos (_bfd_cr16_elf_create_dynamic_sections): New function to create dynamic
260 1.1 christos section.
261 1.1 christos (_bfd_cr16_elf_adjust_dynamic_symbol): New function to adjust symbol
262 1.1 christos defined by dynamic object.
263 1.1 christos (_bfd_cr16_elf_size_dynamic_sections): New function to find the size of
264 1.1 christos dynamic sections.
265 1.1 christos (_bfd_cr16_elf_finish_dynamic_symbol): New function to handle dynamic
266 1.1 christos symbols.
267 1.1 christos (_bfd_cr16_elf_finish_dynamic_symbol): New function to handle dynamic
268 1.1 christos sections.
269 1.1 christos (bfd_cr16_elf32_create_embedded_relocs): New function to create
270 1.1 christos embedded relocs in .emreloc section in memory for .data.rel section.
271 1.1 christos (_bfd_cr16_elf_reloc_type_class): New function for classify reloc types.
272 1.1 christos (cr16_elf_check_relocs): New function for checking reloc types in first
273 1.1 christos phase.
274 1.1 christos (cr16_elf_final_link_relocate): Update for handling the new reloc types
275 1.1 christos R_CR16_GOT_REGREL20 and R_CR16_GOTC_REGREL20.
276 1.1 christos (elf32_cr16_relax_section): Update relax implementation.
277 1.1 christos * reloc.c (bfd_reloc_code_type): Add entries for R_CR16_GOT_REGREL20,
278 1.1 christos R_CR16_GOTC_REGREL20 and R_CR16_GLOB_DAT.
279 1.1 christos * bfd-in.h (bfd_boolean bfd_cr16_elf32_create_embedded_relocs): Declared
280 1.1 christos * libbfd.h, bfd-in2.h: Regenerate.
281 1.1 christos
282 1.1 christos 2008-11-26 Alan Modra <amodra (a] bigpond.net.au>
283 1.1 christos
284 1.1 christos PR 7047
285 1.1 christos * configure.in: Bump version.
286 1.1 christos * configure: Regenerate.
287 1.1 christos * elflink.c (_bfd_elf_link_assign_sym_version): Continue matching
288 1.1 christos against version nodes when a global match is a wildcard. Similarly
289 1.1 christos continue matching on local wildcard matches, rather than only
290 1.1 christos continuing for "*". Have any global wildcard match override a
291 1.1 christos local wildcard match. Correct logic hiding unversioned symbol.
292 1.1 christos (bfd_elf_size_dynamic_sections): Update for changes to struct
293 1.1 christos bfd_elf_version_expr.
294 1.1 christos
295 1.1 christos 2008-11-25 Joel Brobecker <brobecker (a] adacore.com>
296 1.1 christos
297 1.1 christos * configure.in: Deactivate large-file support on native x86-solaris
298 1.1 christos as well unless the user explicitly requested it.
299 1.1 christos * configure: Regenerate.
300 1.1 christos
301 1.1 christos 2008-11-25 Joseph Myers <joseph (a] codesourcery.com>
302 1.1 christos
303 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Do not turn
304 1.1 christos branches to undefine weak symbols into branches to the next
305 1.1 christos instruction if creating PLT entries for those symbols.
306 1.1 christos
307 1.1 christos 2008-11-25 Nick Clifton <nickc (a] redhat.com>
308 1.1 christos
309 1.1 christos * elflink.c (is_reloc_section): New function. Returns true if the
310 1.1 christos given name matches the name of the reloc-containing section
311 1.1 christos associated with the given section.
312 1.1 christos (get_dynamic_reloc_section_name): New function. Computes the name
313 1.1 christos of the section that contains the dynamic relocs associated with
314 1.1 christos the given section.
315 1.1 christos (_bfd_elf_get_dynamic_reloc_section): New function. Returns a
316 1.1 christos pointer to the section containing the dynamic relocs associated
317 1.1 christos with the given section.
318 1.1 christos (_bfd_elf_make_dynamic_reloc_section): New function. Creates a
319 1.1 christos section to contain the dynamic relocs associated with a given
320 1.1 christos section.
321 1.1 christos * elf-bfd.h: Prototype the new functions.
322 1.1 christos * elf-m10300.c (mn10300_elf_check_relocs): Use new functions.
323 1.1 christos (mn10300_elf_final_link_relocs): Likewise.
324 1.1 christos * elf32-arm.c (reloc_section_p): Delete - replaced by new
325 1.1 christos functions.
326 1.1 christos (elf32_arm_final_link_relocate): Use new functions.
327 1.1 christos (elf32_arm_check_relocs): Likewise.
328 1.1 christos * elf32-cris.c (cris_elf_relocate_section): Likewise.
329 1.1 christos (elf_cris_check_relocs): Likewise.
330 1.1 christos * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
331 1.1 christos * elf32-i370.c (i370_elf_check_relocs): Likewise.
332 1.1 christos (i370_elf_relocate_section): Likewise.
333 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Likewise.
334 1.1 christos * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
335 1.1 christos (m32r_elf_check_relocs): Likewise.
336 1.1 christos * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
337 1.1 christos * elf32_ppc.c (ppc_elf_check_relocs): Likewise.
338 1.1 christos (ppc_elf_relocate_section): Likewise.
339 1.1 christos * elf32-s390.c (elf_s390_check_relocs): Likewise.
340 1.1 christos * elf32-sh.c (sh_elf_relocate_section): Likewise.
341 1.1 christos (sh_elf_check_relocs): Likewise.
342 1.1 christos * elf32-vax.c (elf_vax_check_relocs): Likewise.
343 1.1 christos (elf_vax_relocate_section): Likewise.
344 1.1 christos * elf64-alpha.c (elf64_alpha_check_relocs): Likewise.
345 1.1 christos * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
346 1.1 christos * elf64-s390.c (elf_s390_check_relocs): Likewise.
347 1.1 christos * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
348 1.1 christos * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
349 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
350 1.1 christos * elf32-bfin.c (bfin_check_relocs): Remove redundant local
351 1.1 christos variable 'sreloc'.
352 1.1 christos (bfin_relocate_section): Likewise.
353 1.1 christos * elf32-v850.c (v850_elf_check_relocs): Likewise.
354 1.1 christos
355 1.1 christos 2008-11-23 Hans-Peter Nilsson <hp (a] axis.com>
356 1.1 christos
357 1.1 christos Implement TLS for CRIS.
358 1.1 christos * elf32-cris.c: Include limits.h.
359 1.1 christos (TLSHOWTO16): Redefine in terms of and move contents to...
360 1.1 christos (TLSHOWTO16X): New macro.
361 1.1 christos (TLSHOWTO16S, LGOT_REG_NDX, LGOT_DTP_NDX, LGOT_ALLOC_NELTS_FOR)
362 1.1 christos (elf_cris_hash_entry): New macros.
363 1.1 christos (cris_elf_howto_table): Make R_CRIS_16_DTPREL,
364 1.1 christos R_CRIS_16_GOT_TPREL, R_CRIS_16_TPREL check overflow for signed,
365 1.1 christos not unsigned values.
366 1.1 christos (cris_info_to_howto_rela): Make r_type a enum elf_cris_reloc_type,
367 1.1 christos not unsigned int.
368 1.1 christos (struct elf_cris_link_hash_entry): New members reg_got_refcount,
369 1.1 christos tprel_refcount, and dtp_refcount.
370 1.1 christos (struct elf_cris_link_hash_table): New member dtpmod_refcount.
371 1.1 christos (elf_cris_link_hash_newfunc): Initialize new members.
372 1.1 christos (elf_cris_link_hash_table_create): Similar.
373 1.1 christos (cris_final_link_relocate, elf_cris_reloc_type_class): Use a
374 1.1 christos temporary variable when testing the relocation type.
375 1.1 christos (cris_elf_gc_mark_hook): Ditto. Add default case where needed.
376 1.1 christos (cris_elf_gc_sweep_hook): Ditto. Handle reference-counting for
377 1.1 christos the new assembly-generated relocs. Rewrite refcount handling to
378 1.1 christos set temporary variables to pointers to reloc-specific variables
379 1.1 christos and entry size and common code for the update.
380 1.1 christos (additional_relocation_error_msg_count): New variable.
381 1.1 christos (cris_elf_relocate_section): Use a function-local variable srelgot
382 1.1 christos for the .rela.got section instead of looking it up for every need.
383 1.1 christos Make r_type a enum elf_cris_reloc_type, not int. Actually set
384 1.1 christos symname for non-local symbols. Handle new assembly-generated
385 1.1 christos relocs. For overflow, emit additional messages for the new 16-bit
386 1.1 christos relocs as well as R_CRIS_16_GOTPLT and R_CRIS_16_GOT.
387 1.1 christos (elf_cris_finish_dynamic_symbol): Use elf_cris_finish_dynamic_symbol
388 1.1 christos instead of plain casts. Check new hash entry member
389 1.1 christos reg_got_refcount when checking whether to emit a GOT entry.
390 1.1 christos (elf_cris_finish_dynamic_sections): Update head comment to warn
391 1.1 christos about emitting relocs here. Use a temporary variable when testing
392 1.1 christos the relocation type.
393 1.1 christos (elf_cris_discard_excess_program_dynamics)
394 1.1 christos (elf_cris_adjust_gotplt_to_got): Handle reference counting change
395 1.1 christos regarding h->reg_got_refcount.
396 1.1 christos (cris_elf_check_relocs): Rewrite refcount handling to set
397 1.1 christos temporary variables and entry size and common code for the update
398 1.1 christos for local symbols. Use new macro elf_cris_hash_entry. Adjust
399 1.1 christos allocation for change in reference counting of GOT entries for
400 1.1 christos local symbols.
401 1.1 christos (elf_cris_size_dynamic_sections): Adjust calculated size of
402 1.1 christos .got.plt and .rela.got if we need a GOT entry for a
403 1.1 christos R_CRIS_DTPMOD relocation.
404 1.1 christos (elf_cris_got_elt_size): New function.
405 1.1 christos (elf_backend_got_elt_size): Define.
406 1.1 christos
407 1.1 christos 2008-11-21 Sterling Augustine <sterling (a] tensilica.com>
408 1.1 christos
409 1.1 christos * xtensa-isa.c (xtensa_state_is_shared_or): New function.
410 1.1 christos
411 1.1 christos 2008-11-21 Hans-Peter Nilsson <hp (a] axis.com>
412 1.1 christos
413 1.1 christos * elf-bfd.h (struct elf_backend_data): New member got_elt_size.
414 1.1 christos (_bfd_elf_default_got_elt_size): Declare.
415 1.1 christos * elflink.c (struct alloc_got_off_arg): Replace member got_elt_size
416 1.1 christos by new member info.
417 1.1 christos (elf_gc_allocate_got_offsets): Adjust for calling bed->got_elt_size
418 1.1 christos to get the element size instead of using a gofarg entry.
419 1.1 christos (bfd_elf_gc_common_finalize_got_offsets): Similar.
420 1.1 christos (_bfd_elf_default_got_elt_size): New function.
421 1.1 christos * elfxx-target.h: New macro elf_backend_got_elt_size.
422 1.1 christos (elfNN_bed): Use it.
423 1.1 christos
424 1.1 christos 2008-11-20 Tristan Gingold <gingold (a] adacore.com>
425 1.1 christos
426 1.1 christos * bfdwin.c: Fix comment.
427 1.1 christos
428 1.1 christos 2008-11-20 Tristan Gingold <gingold (a] adacore.com>
429 1.1 christos
430 1.1 christos * bfd.c (is32bit): Use architecture information for non-ELF
431 1.1 christos targets.
432 1.1 christos
433 1.1 christos 2008-11-20 Alan Modra <amodra (a] bigpond.net.au>
434 1.1 christos
435 1.1 christos * elf32-ppc.c (allocate_dynrelocs): Always use tlsld_got for
436 1.1 christos TLS_LD even when symbol is used with other TLS reloc types.
437 1.1 christos (ppc_elf_relocate_section): Bypass symbol checks when using tlsld_got.
438 1.1 christos Leave addend zero on LD DTPMOD dynamic reloc.
439 1.1 christos
440 1.1 christos 2008-11-19 Bob Wilson <bob.wilson (a] acm.org>
441 1.1 christos
442 1.1 christos * xtensa-modules.c (sysregs): Add MMID, VECBASE, EPC5, EPC6, EPC7,
443 1.1 christos EXCSAVE5, EXCSAVE6, EXCSAVE7, EPS5, EPS6, EPS7, CPENABLE,
444 1.1 christos SCOMPARE1, and THREADPTR registers.
445 1.1 christos (NUM_SYSREGS, MAX_USER_REG): Update.
446 1.1 christos (states): Change width of INTERRUPT, WindowBase, WindowStart, and
447 1.1 christos INTENABLE. Add VECBASE, EPC5, EPC6, EPC7, EXCSAVE5, EXCSAVE6,
448 1.1 christos EXCSAVE7, EPS6, EPS6, EPS7, THREADPTR, CPENABLE, and SCOMPARE1 states.
449 1.1 christos (NUM_STATES): Update.
450 1.1 christos (enum xtensa_state_id): Add entries for new states.
451 1.1 christos (enum xtensa_field_id): Add entries for xt_wbr15_imm and xt_wbr18_imm
452 1.1 christos fields, along with functions to extract and set them.
453 1.1 christos (regfiles): Change number of AR registers to 32.
454 1.1 christos (Operand_ar0_encode, Operand_ar4_encode, Operand_ar8_encode,
455 1.1 christos Operand_ar12_encode, Operand_ars_entry_encode): Update register mask.
456 1.1 christos (operands): Add entries for tp7, xt_wbr15_label, xt_wbr18_label,
457 1.1 christos xt_wbr15_imm, and xt_wbr18_imm operands, along with functions to
458 1.1 christos encode and decode them.
459 1.1 christos (enum xtensa_operand_id): Add entries for new operands.
460 1.1 christos (Iclass_xt_iclass_rfi_stateArgs): Add EPC5, EPC6, EPC7, EPS5, EPS6, and
461 1.1 christos EPC7 states.
462 1.1 christos (Iclass_xt_iclass_rfdo_stateArgs): Replace EPC4 and EPS4 by EPC6 and
463 1.1 christos EPS6, respectively.
464 1.1 christos (iclasses): Add entries for rur_threadptr, wur_threadptr,
465 1.1 christos xt_iclass_wsr_176, xt_iclass_rsr_epc5, xt_iclass_wsr_epc5,
466 1.1 christos xt_iclass_xsr_epc5, xt_iclass_rsr_excsave5, xt_iclass_wsr_excsave5,
467 1.1 christos xt_iclass_xsr_excsave5, xt_iclass_rsr_epc6, xt_iclass_wsr_epc6,
468 1.1 christos xt_iclass_xsr_epc6, xt_iclass_rsr_excsave6, xt_iclass_wsr_excsave6,
469 1.1 christos xt_iclass_xsr_excsave6, xt_iclass_rsr_epc7, xt_iclass_wsr_epc7,
470 1.1 christos xt_iclass_xsr_epc7, xt_iclass_rsr_excsave7, xt_iclass_wsr_excsave7,
471 1.1 christos xt_iclass_xsr_excsave7, xt_iclass_rsr_eps5, xt_iclass_wsr_eps5,
472 1.1 christos xt_iclass_xsr_eps5, xt_iclass_rsr_eps6, xt_iclass_wsr_eps6,
473 1.1 christos xt_iclass_xsr_eps6, xt_iclass_rsr_eps7, xt_iclass_wsr_eps7,
474 1.1 christos xt_iclass_xsr_eps7, xt_iclass_rsr_vecbase, xt_iclass_wsr_vecbase,
475 1.1 christos xt_iclass_xsr_vecbase, xt_iclass_mul16, xt_iclass_wsr_mmid,
476 1.1 christos xt_iclass_icache_lock, xt_iclass_dcache_lock, xt_iclass_rsr_cpenable,
477 1.1 christos xt_iclass_wsr_cpenable, xt_iclass_xsr_cpenable, xt_iclass_clamp,
478 1.1 christos xt_iclass_minmax, xt_iclass_sx, xt_iclass_l32ai, xt_iclass_s32ri,
479 1.1 christos xt_iclass_s32c1i, xt_iclass_rsr_scompare1, xt_iclass_wsr_scompare1,
480 1.1 christos xt_iclass_xsr_scompare1, xt_iclass_div, and xt_iclass_mul32, along
481 1.1 christos with corresponding argument and state argument arrays. Change
482 1.1 christos number of state arguments for xt_iclass_rfi. Add arguments for
483 1.1 christos xt_iclass_rfdo.
484 1.1 christos (enum xtensa_iclass_id): Add entries for new iclasses.
485 1.1 christos (opcodes): Add entries for RUR_THREADPTR, WUR_THREADPTR, WSR_176,
486 1.1 christos RSR_EPC5, WSR_EPC5, XSR_EPC5, RSR_EXCSAVE5, WSR_EXCSAVE5, XSR_EXCSAVE5,
487 1.1 christos RSR_EPC6, WSR_EPC6, XSR_EPC6, RSR_EXCSAVE6, WSR_EXCSAVE6, XSR_EXCSAVE6,
488 1.1 christos RSR_EPC7, WSR_EPC7, XSR_EPC7, RSR_EXCSAVE7, WSR_EXCSAVE7, XSR_EXCSAVE7,
489 1.1 christos RSR_EPS5, WSR_EPS5, XSR_EPS5, RSR_EPS6, WSR_EPS6, XSR_EPS6, RSR_EPS7,
490 1.1 christos WSR_EPS7, XSR_EPS7, RSR_VECBASE, WSR_VECBASE, XSR_VECBASE, MUL16U,
491 1.1 christos MUL16S, WSR_MMID, IPFL, IHU, IIU, DPFL, DHU, DIU, RSR_CPENABLE,
492 1.1 christos WSR_CPENABLE, XSR_CPENABLE, CLAMPS, MIN, MAX, MINU, MAXU, SEXT, L32AI,
493 1.1 christos S32RI, S32C1I, RSR_SCOMPARE1, WSR_SCOMPARE1, XSR_SCOMPARE1, QUOU, QUOS,
494 1.1 christos REMU, REMS, and MULL opcodes, along with the corresponding functions
495 1.1 christos to encode them.
496 1.1 christos (enum xtensa_opcode_id): Add entries for new opcodes.
497 1.1 christos (Slot_inst_decode): Handle new opcodes.
498 1.1 christos (Slot_inst_get_field_fns, Slot_inst_set_field_fns): Add entries for
499 1.1 christos xt_wbr15_imm and xt_wbr18_imm fields.
500 1.1 christos (Slot_inst16a_get_field_fns, Slot_inst16a_set_field_fns): Likewise.
501 1.1 christos (Slot_inst16b_get_field_fns, Slot_inst16b_set_field_fns): Likewise.
502 1.1 christos (xtensa_modules): Update number of fields, operands, iclasses and
503 1.1 christos opcodes.
504 1.1 christos
505 1.1 christos 2008-11-19 Nix <nix (a] esperi.org.uk>
506 1.1 christos
507 1.1 christos * elf.c (swap_out_syms) [USE_STT_COMMON]: Fix syntax error.
508 1.1 christos
509 1.1 christos 2008-11-19 Nick Clifton <nickc (a] redhat.com>
510 1.1 christos
511 1.1 christos PR 7027
512 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Treat WPLT30 relocs
513 1.1 christos against local symbols in 64-bit binaries as if they were WDISP30
514 1.1 christos relocs.
515 1.1 christos (_bfd_sparc_elf_relocate_section): Likewise.
516 1.1 christos
517 1.1 christos 2008-11-18 Catherine Moore <clm (a] codesourcery.com>
518 1.1 christos
519 1.1 christos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Merge
520 1.1 christos half-precision attributes.
521 1.1 christos (elf32_arm_copy_one_eabi_other_attribute): New.
522 1.1 christos (elf32_arm_copy_other_attribute_list): New.
523 1.1 christos
524 1.1 christos 2008-11-18 Nick Clifton <nickc (a] redhat.com>
525 1.1 christos
526 1.1 christos * dwarf2.c (read_section): Fix formatting.
527 1.1 christos (read_n_bytes): Remove unhelpful comment.
528 1.1 christos (read_indirect_string): Pass symbol table to read_section in case
529 1.1 christos the .debug_str section needs relocating.
530 1.1 christos
531 1.1 christos PR 7037
532 1.1 christos * elf32-cr16.c (cr16_elf_howto_table): Zero the src_mask field of
533 1.1 christos the reloc descriptions.
534 1.1 christos
535 1.1 christos 2008-11-14 Eric B. Weddington <eric.weddington (a] atmel.com>
536 1.1 christos
537 1.1 christos PR 7022
538 1.1 christos * elf32-avr.c (bfd_elf_avr_final_write_processing):
539 1.1 christos Add missing break statements.
540 1.1 christos
541 1.1 christos 2008-11-14 Bob Wilson <bob.wilson (a] acm.org>
542 1.1 christos
543 1.1 christos * xtensa-modules.c (xtensa_state_id): New enum, replacing STATE macros.
544 1.1 christos (xtensa_field_id, xtensa_regfile_id, xtensa_operand_id)
545 1.1 christos (xtensa_iclass_id, xtensa_opcode_id): New enums.
546 1.1 christos Replace hardcoded constants throughout this file with enum values.
547 1.1 christos
548 1.1 christos 2008-11-14 Nathan Sidwell <nathan (a] codesourcery.com>
549 1.1 christos
550 1.1 christos * elf.c (assign_file_positions_for_load_sections): Use header_size
551 1.1 christos to avoid moving the load address of file headers.
552 1.1 christos (assign_file_positions_for_load_sections): Set header_size for
553 1.1 christos segments containing the file header.
554 1.1 christos
555 1.1 christos 2008-11-14 Tristan Gingold <gingold (a] adacore.com>
556 1.1 christos
557 1.1 christos * configure.com: Handle bfd_default_target_size, BFD_HOST_LONG_LONG,
558 1.1 christos BFD_HOST_64BIT_LONG_LONG, BFD_HOSTPTR_T, bfd_file_ptr.
559 1.1 christos Generate bfdver.h.
560 1.1 christos * vms-hdr.c (_bfd_vms_write_hdr): Use strdup/free instead of alloca.
561 1.1 christos * hosts/alphavms.h: Defines macros to bypass i18n.
562 1.1 christos * makefile.vms (OBJS): Update file list.
563 1.1 christos (DEFS): Remove VMS_DEBUG, const, add DEBUGDIR.
564 1.1 christos (CFLAGS): Update flags.
565 1.1 christos * bfdio.c (real_fopen): Add code specific to VMS: extract attributes
566 1.1 christos from modes.
567 1.1 christos
568 1.1 christos 2008-11-13 Joel Brobecker <brobecker (a] adacore.com>
569 1.1 christos
570 1.1 christos * configure.in: Deactivate large-file support on native 32bit
571 1.1 christos sparc-solaris unless the user explicitly requested it.
572 1.1 christos * configure: Regenerate.
573 1.1 christos
574 1.1 christos 2008-11-13 Hans-Peter Nilsson <hp (a] axis.com>
575 1.1 christos
576 1.1 christos PR ld/7028
577 1.1 christos * elf.c (assign_file_positions_for_load_sections): Allocate phrds
578 1.1 christos with bfd_zalloc2 instead of bfd_alloc2. For the amount, use
579 1.1 christos the possibly-preset header-size, not the computed one.
580 1.1 christos
581 1.1 christos 2008-11-13 Alan Modra <amodra (a] bigpond.net.au>
582 1.1 christos
583 1.1 christos PR 7023
584 1.1 christos * elf.c (bfd_section_from_shdr <SHT_SYMTAB>): Fail on invalid sh_info.
585 1.1 christos
586 1.1 christos 2008-11-11 Alan Modra <amodra (a] bigpond.net.au>
587 1.1 christos
588 1.1 christos * elf.c (assign_file_positions_for_non_load_sections): Consolidate
589 1.1 christos PT_GNU_RELRO handling.
590 1.1 christos
591 1.1 christos 2008-11-11 Alan Modra <amodra (a] bigpond.net.au>
592 1.1 christos
593 1.1 christos PR 7012
594 1.1 christos * dwarf2.c (find_line): Don't keep stale pointers into realloc'd
595 1.1 christos memory. Return on errors. Fix memory leak.
596 1.1 christos (_bfd_dwarf2_cleanup_debug_info): Free dwarf_str_buffer.
597 1.1 christos
598 1.1 christos 2008-11-10 Andreas Schwab <schwab (a] suse.de>
599 1.1 christos
600 1.1 christos PR 7011
601 1.1 christos * elf.c (assign_file_positions_for_non_load_sections): Handle
602 1.1 christos PT_GNU_RELRO specially.
603 1.1 christos
604 1.1 christos 2008-11-06 Joel Sherrill <joel.sherrill (a] oarcorp.com>
605 1.1 christos
606 1.1 christos * config.bfd: Add m32c-*-rtems* and m32r-*-rtems*.
607 1.1 christos
608 1.1 christos 2008-11-06 Tom Tromey <tromey (a] redhat.com>
609 1.1 christos
610 1.1 christos * configure, config.in: Rebuild.
611 1.1 christos * configure.in: Check for fileno.
612 1.1 christos * bfdio.c (close_on_exec): New function.
613 1.1 christos (real_fopen): Use it.
614 1.1 christos (FD_CLOEXEC): New define.
615 1.1 christos
616 1.1 christos 2008-11-06 Tristan Gingold <gingold (a] adacore.com>
617 1.1 christos
618 1.1 christos * mach-o.h (BFD_MACH_O_NO_SECT): Add; reorders the macros.
619 1.1 christos (BFD_MACH_O_SYM_NTYPE, BFD_MACH_O_SYM_NSECT,
620 1.1 christos BFD_MACH_O_SYM_NDESC): New macros.
621 1.1 christos (bfd_mach_o_i386_thread_flavour): Define according to the latest
622 1.1 christos definition from system header.
623 1.1 christos (bfd_mach_o_load_command_type): Add BFD_MACH_O_LC_RPATH,
624 1.1 christos BFD_MACH_O_LC_CODE_SIGNATURE.
625 1.1 christos (BFD_MACH_O_SECTION_TYPE_MASK, BFD_MACH_O_SECTION_ATTRIBUTES_MASK,
626 1.1 christos BFD_MACH_O_SECTION_ATTRIBUTES_SYS, BFD_MACH_O_SECTION_ATTRIBUTES_USR,
627 1.1 christos BFD_MACH_O_S_ATTR_LOC_RELOC, BFD_MACH_O_S_ATTR_EXT_RELOC,
628 1.1 christos BFD_MACH_O_S_ATTR_SOME_INSTRUCTIONS, BFD_MACH_O_S_ATTR_DEBUG,
629 1.1 christos BFD_MACH_O_S_ATTR_PURE_INSTRUCTIONS): Add.
630 1.1 christos (bfd_mach_o_segment_command): Add room for a nul terminator in
631 1.1 christos segname field.
632 1.1 christos (BFD_MACH_O_PROT_READ, BFD_MACH_O_PROT_WRITE,
633 1.1 christos BFD_MACH_O_PROT_EXECUTE): Add.
634 1.1 christos (INDIRECT_SYMBOL_LOCAL): Renames to BFD_MACH_O_INDIRECT_SYMBOL_LOCAL.
635 1.1 christos (INDIRECT_SYMBOL_ABS): Renames to BFD_MACH_O_INDIRECT_SYMBOL_ABS.
636 1.1 christos (bfd_mach_o_uuid_command): Add the structure.
637 1.1 christos (bfd_mach_o_load_command): Add uuid field.
638 1.1 christos (bfd_get_mach_o_data): New macro.
639 1.1 christos * mach-o.c (bfd_mach_o_bfd_print_private_bfd_data): New function which
640 1.1 christos replaces the macro.
641 1.1 christos (SECTION_TYPE, SECTION_ATTRIBUTES, SECTION_ATTRIBUTES_USR,
642 1.1 christos S_ATTR_PURE_INSTRUCTIONS, SECTION_ATTRIBUTES_SYS,
643 1.1 christos S_ATTR_SOME_INSTRUCTIONS, S_ATTR_EXT_RELOC, S_ATTR_LOC_RELOC): Renamed
644 1.1 christos and moved to mach-o.h.
645 1.1 christos (N_STAB, N_TYPE, N_EXT, N_UNDF, N_ABS, N_TEXT, N_DATA, N_BSS,
646 1.1 christos N_SECT, N_INDR): Removed as they duplicated macros in mach-o.h.
647 1.1 christos (bfd_mach_o_print_symbol): Print much more details.
648 1.1 christos (bfd_mach_o_make_bfd_section): Add prot argument, use canonical
649 1.1 christos dwarf name for dwarf sections. Precisely set section flags.
650 1.1 christos (bfd_mach_o_scan_read_section_32): Add prot argument.
651 1.1 christos (bfd_mach_o_scan_read_section_64): Ditto.
652 1.1 christos (bfd_mach_o_scan_read_section): Ditto.
653 1.1 christos (bfd_mach_o_scan_read_symtab_symbol): Set section for debugging
654 1.1 christos stabs, set BSF_GLOBAL and LOCAL flags correctly. Fix section
655 1.1 christos for N_SECT symbols.
656 1.1 christos (bfd_mach_o_i386_flavour_string): Reindent and adjust for new
657 1.1 christos names.
658 1.1 christos (bfd_mach_o_scan_read_symtab): Set HAS_SYMS flags on bfd if there
659 1.1 christos are symbols.
660 1.1 christos (bfd_mach_o_scan_read_uuid): New function.
661 1.1 christos (bfd_mach_o_scan_read_segment): Add a trailing nul. Segments
662 1.1 christos flags are now simply HAS_CONTENTS. Pass protection to
663 1.1 christos bfd_mach_o_scan_read_section.
664 1.1 christos (bfd_mach_o_scan_read_command): Decode UUID command.
665 1.1 christos (bfd_mach_o_flatten_sections): Add comments. Fix flavour names.
666 1.1 christos (bfd_mach_o_scan): Set flags according to file type.
667 1.1 christos (mach_o_fat_archentry): Remove abfd field.
668 1.1 christos (bfd_mach_o_archive_p): Remove initialization of abfd field.
669 1.1 christos (bfd_mach_o_openr_next_archived_file): Find previous archive
670 1.1 christos by position and not by bfd (as former bfds may have been freed).
671 1.1 christos Give architecture name to archived file.
672 1.1 christos * mach-o-target.c (TARGET_NAME): Use generic archive for non fat
673 1.1 christos targets.
674 1.1 christos
675 1.1 christos 2008-10-30 Jay Krell <jay.krell (a] cornell.edu>
676 1.1 christos
677 1.1 christos * cache.c (cache_bread): Cast void * pointer before performing
678 1.1 christos arithmetic on it.
679 1.1 christos
680 1.1 christos 2008-10-20 Alan Modra <amodra (a] bigpond.net.au>
681 1.1 christos
682 1.1 christos * elf64-ppc.c (ppc64_elf_process_dot_syms): Renamed from
683 1.1 christos ppc64_elf_check_directives.
684 1.1 christos * elf32-sh-symbian.c (sh_symbian_process_directives): Combine..
685 1.1 christos (sh_symbian_check_directives): ..this
686 1.1 christos (bfd_elf32_sh_symbian_process_directives) ..and this function.
687 1.1 christos
688 1.1 christos 2008-10-20 Alan Modra <amodra (a] bigpond.net.au>
689 1.1 christos
690 1.1 christos * elflink.c (bfd_elf_final_link): Move code reading relocs to..
691 1.1 christos * elf32-spu.c (spu_elf_count_relocs): ..here. Adjust params.
692 1.1 christos * elf-bfd.h (struct elf_backend_data): Update elf_backend_count_relocs
693 1.1 christos params.
694 1.1 christos
695 1.1 christos 2008-10-20 Alan Modra <amodra (a] bigpond.net.au>
696 1.1 christos
697 1.1 christos * elflink.c (bfd_elf_final_link): Use d_ptr rather than d_val
698 1.1 christos where Elf_Internal_Dyn holds an address.
699 1.1 christos
700 1.1 christos 2008-10-10 Nathan Froyd <froydnj (a] codesourcery.com>
701 1.1 christos
702 1.1 christos * elf32-ppc.c (ppc_elf_merge_obj_attributes): Merge
703 1.1 christos Tag_GNU_Power_ABI_Struct_Return.
704 1.1 christos
705 1.1 christos 2008-10-09 Kai Tietz <kai.tietz (a] onevision.com>
706 1.1 christos
707 1.1 christos * cofflink.c (_bfd_coff_generic_relocate_section): Dump bfd_vma
708 1.1 christos sized addresses instead of long sized.
709 1.1 christos
710 1.1 christos 2008-10-09 Alan Modra <amodra (a] bigpond.net.au>
711 1.1 christos
712 1.1 christos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't attempt to
713 1.1 christos read plt relocs if no dynamic syms.
714 1.1 christos
715 1.1 christos 2008-10-08 Nick Clifton <nickc (a] redhat.com>
716 1.1 christos
717 1.1 christos * configure.in (ALL_LINGUAS): Add "id".
718 1.1 christos * configure: Regenerate.
719 1.1 christos * po/id.po: New Indonesian translation.
720 1.1 christos
721 1.1 christos 2008-10-08 Alan Modra <amodra (a] bigpond.net.au>
722 1.1 christos
723 1.1 christos * elf.c (assign_file_positions_for_load_sections): When checking
724 1.1 christos a segment for contents, don't assume that a non-TLS nobits section
725 1.1 christos must only be followed by nobits sections.
726 1.1 christos
727 1.1 christos 2008-10-04 Hans-Peter Nilsson <hp (a] axis.com>
728 1.1 christos
729 1.1 christos * elf32-cris.c (TLSHOWTO32, TLSHOWTO16): New macros.
730 1.1 christos (cris_elf_howto_table): Add entries for R_CRIS_32_GOT_GD,
731 1.1 christos R_CRIS_16_GOT_GD, R_CRIS_32_GD, R_CRIS_DTP, R_CRIS_32_DTPREL,
732 1.1 christos R_CRIS_16_DTPREL, R_CRIS_DTPMOD, R_CRIS_32_GOT_TPREL,
733 1.1 christos R_CRIS_16_GOT_TPREL, R_CRIS_32_TPREL, R_CRIS_16_TPREL.
734 1.1 christos (cris_reloc_map): Similarly.
735 1.1 christos * reloc.c (bfd_reloc_code_type): Add entries for
736 1.1 christos BFD_RELOC_CRIS_32_GOT_GD, BFD_RELOC_CRIS_16_GOT_GD,
737 1.1 christos BFD_RELOC_CRIS_32_GD, BFD_RELOC_CRIS_DTP,
738 1.1 christos BFD_RELOC_CRIS_32_DTPREL, BFD_RELOC_CRIS_16_DTPREL,
739 1.1 christos BFD_RELOC_CRIS_DTPMOD, BFD_RELOC_CRIS_32_GOT_TPREL,
740 1.1 christos BFD_RELOC_CRIS_16_GOT_TPREL, BFD_RELOC_CRIS_32_TPREL,
741 1.1 christos BFD_RELOC_CRIS_16_TPREL.
742 1.1 christos * libbfd.h, bfd-in2.h: Regenerate.
743 1.1 christos
744 1.1 christos 2008-10-03 Alan Modra <amodra (a] bigpond.net.au>
745 1.1 christos
746 1.1 christos PR 6931
747 1.1 christos * elf.c (bfd_elf_set_group_contents): Assign sh_info for ld -r when
748 1.1 christos the signature symbol is global.
749 1.1 christos * elflink.c (elf_link_input_bfd): Ensure group signature symbol
750 1.1 christos is output when ld -r. Set group sh_info when local.
751 1.1 christos * linker.c (default_indirect_link_order): Handle group sections
752 1.1 christos specially.
753 1.1 christos
754 1.1 christos 2008-09-30 Wesley W. Terpstra <wesley (a] terpstra.ca>
755 1.1 christos Nick Clifton <nickc (a] redhat.com>
756 1.1 christos
757 1.1 christos * coffgen.c (coff_write_symbols): Check to see if a symbol's flags
758 1.1 christos do not match it class and if necessary update the class.
759 1.1 christos (null_error_handler): New function. Suppresses the generation of
760 1.1 christos bfd error messages.
761 1.1 christos * coff64-rs6000.c (bfd_xcoff_backend_data): Update comment.
762 1.1 christos
763 1.1 christos 2008-09-30 Alan Modra <amodra (a] bigpond.net.au>
764 1.1 christos
765 1.1 christos * Makefile.am: Run "make dep-am".
766 1.1 christos * Makefile.in: Regenerate.
767 1.1 christos
768 1.1 christos 2008-09-30 Alan Modra <amodra (a] bigpond.net.au>
769 1.1 christos
770 1.1 christos * elflink.c (elf_link_add_object_symbols): Don't ignore returned
771 1.1 christos value of check_directives.
772 1.1 christos
773 1.1 christos 2008-09-29 Peter O'Gorman <pogma (a] thewrittenword.com>
774 1.1 christos Steve Ellcey <sje (a] cup.hp.com>
775 1.1 christos
776 1.1 christos * configure: Regenerate for new libtool.
777 1.1 christos * aclocal.m4: Ditto.
778 1.1 christos * Makefile.in: Ditto.
779 1.1 christos * doc/Makefile.in: Ditto.
780 1.1 christos
781 1.1 christos 2008-09-29 Alan Modra <amodra (a] bigpond.net.au>
782 1.1 christos
783 1.1 christos PR 6789
784 1.1 christos * elf.c (assign_file_positions_for_load_sections): Call
785 1.1 christos _bfd_elf_map_sections_to_segments, not elf_modify_segment_map.
786 1.1 christos (get_program_header_size): Protect against NULL info.
787 1.1 christos (_bfd_elf_map_sections_to_segments): Likewise.
788 1.1 christos * elf32-spu.c (spu_elf_additional_program_headers): Likewise.
789 1.1 christos
790 1.1 christos 2008-09-29 Nick Clifton <nickc (a] redhat.com>
791 1.1 christos
792 1.1 christos * po/vi.po: Updated Vietnamese translation.
793 1.1 christos
794 1.1 christos 2008-09-28 Alan Modra <amodra (a] bigpond.net.au>
795 1.1 christos
796 1.1 christos * elf.c (_bfd_elf_init_private_section_data): Tweak union copy.
797 1.1 christos (bfd_section_from_shdr): Don't change SHT_GROUP section name.
798 1.1 christos * elflink.c (section_signature): New function.
799 1.1 christos (_bfd_elf_section_already_linked): Use it.
800 1.1 christos
801 1.1 christos 2008-09-19 Alan Modra <amodra (a] bigpond.net.au>
802 1.1 christos
803 1.1 christos * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Handle vxworks
804 1.1 christos _GLOBAL_OFFSET_TABLE_ in .got.plt section. Add BFD_ASSERTs.
805 1.1 christos
806 1.1 christos 2008-09-17 Bob Wilson <bob.wilson (a] acm.org>
807 1.1 christos
808 1.1 christos * elf32-xtensa.c (elf_xtensa_check_relocs): Check for negative
809 1.1 christos refcount.
810 1.1 christos
811 1.1 christos 2008-09-17 Jan Kratochvil <jan.kratochvil (a] redhat.com>
812 1.1 christos
813 1.1 christos PR 6893 - Do not consider FDEs for discarded sections as invalid.
814 1.1 christos * elf-eh-frame.c (_bfd_elf_parse_eh_frame): New REQUIRE_CLEARED_RELOCS.
815 1.1 christos Consider FDEs with cleared relocations as valid and ignorable.
816 1.1 christos
817 1.1 christos 2008-09-16 H.J. Lu <hongjiu.lu (a] intel.com>
818 1.1 christos
819 1.1 christos PR ld/6877
820 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Allow a common symbol to
821 1.1 christos override the function in a shared library.
822 1.1 christos
823 1.1 christos 2008-09-16 Alan Modra <amodra (a] bigpond.net.au>
824 1.1 christos
825 1.1 christos PR 6844
826 1.1 christos * elf32-ppc.c (SYM_VAL): Define. Use throughout to find symbol vma.
827 1.1 christos (ppc_elf_relocate_section): Correct GOT offset calculation.
828 1.1 christos (ppc_elf_finish_dynamic_symbol): Use PPC_HA and PPC_LO.
829 1.1 christos (ppc_elf_finish_dynamic_sections): Likewise. Error if
830 1.1 christos htab->elf.hgot symbol is not defined in htab->got section.
831 1.1 christos
832 1.1 christos 2008-09-16 Alan Modra <amodra (a] bigpond.net.au>
833 1.1 christos
834 1.1 christos PR 6888
835 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Handle NULL symbol section
836 1.1 christos on R_PPC_TOC16, R_PPC_SDAREL16, R_PPC_EMB_SDA2REL, R_PPC_EMB_SDA21,
837 1.1 christos R_PPC_EMB_RELSDA, R_PPC_SECTOFF* relocs.
838 1.1 christos
839 1.1 christos 2008-09-11 Jan Kratochvil <jan.kratochvil (a] redhat.com>
840 1.1 christos
841 1.1 christos Fix loading large elf64 binaries on 32bit hosts.
842 1.1 christos * configure.in: Call AC_SYS_LARGEFILE.
843 1.1 christos * config.in: Regenerate.
844 1.1 christos * configure: Regenerate.
845 1.1 christos
846 1.1 christos 2008-09-08 Tom Tromey <tromey (a] redhat.com>
847 1.1 christos
848 1.1 christos * elfxx-mips.c (mips16_stub_symndx) <sec>: Mark argument as
849 1.1 christos unused.
850 1.1 christos
851 1.1 christos 2008-09-08 H.J. Lu <hongjiu.lu (a] intel.com>
852 1.1 christos Daniel Jacobowitz <dan (a] codesourcery.com>
853 1.1 christos
854 1.1 christos PR ld/3191
855 1.1 christos * dwarf2.c (struct adjusted_section): Renamed from struct
856 1.1 christos loadable_section.
857 1.1 christos (struct dwarf2_debug): Adjust for renaming. Add version field.
858 1.1 christos (read_attribute_value): Correctly handle DW_FORM_ref_addr for
859 1.1 christos DWARF3.
860 1.1 christos (find_abstract_instance_name): Pass a pointer to
861 1.1 christos attribute instead of offset. For DW_FORM_ref_addr, get the
862 1.1 christos entry at the offset from the .debug_info section.
863 1.1 christos (scan_unit_for_symbols): Update.
864 1.1 christos (parse_comp_unit): Allow DWARF3. Save the version.
865 1.1 christos (unset_sections): Update for renaming.
866 1.1 christos (place_sections): Likewise. Set new VMAs for DWARF sections
867 1.1 christos also.
868 1.1 christos
869 1.1 christos 2008-09-08 Tristan Gingold <gingold (a] adacore.com>
870 1.1 christos
871 1.1 christos * configure.in: Update version to 2.19.50
872 1.1 christos * configure: Regenerated.
873 1.1 christos
874 1.1 christos 2008-09-05 Daniel Jacobowitz <dan (a] codesourcery.com>
875 1.1 christos
876 1.1 christos * dwarf2.c: Change leading whitespace to tabs.
877 1.1 christos
878 1.1 christos 2008-09-05 Tristan Gingold <gingold (a] adacore.com>
879 1.1 christos
880 1.1 christos Add MacOSX 64 bits support.
881 1.1 christos * mach-o.h (bfd_mach_o_ppc_thread_flavour): Add
882 1.1 christos BFD_MACH_O_PPC_THREAD_STATE_64.
883 1.1 christos (bfd_mach_o_i386_thread_flavour): Add BFD_MACH_O_x86_THREAD_STATE64,
884 1.1 christos BFD_MACH_O_x86_FLOAT_STATE64, BFD_MACH_O_x86_EXCEPTION_STATE64,
885 1.1 christos BFD_MACH_O_x86_THREAD_STATE, BFD_MACH_O_x86_FLOAT_STATE,
886 1.1 christos BFD_MACH_O_x86_EXCEPTION_STATE.
887 1.1 christos (bfd_mach_o_load_command_type): Add
888 1.1 christos BFD_MACH_O_LC_SEGMENT_64, BFD_MACH_O_LC_ROUTINES_64,
889 1.1 christos BFD_MACH_O_LC_UUID.
890 1.1 christos (BFD_MACH_O_CPU_IS64BIT): Added.
891 1.1 christos (bfd_mach_o_cpu_type): Add BFD_MACH_O_CPU_TYPE_POWERPC_64,
892 1.1 christos BFD_MACH_O_CPU_TYPE_X86_64.
893 1.1 christos (bfd_mach_o_header): Add version field.
894 1.1 christos (bfd_mach_o_section) Add reserved3 field.
895 1.1 christos (bfd_mach_o_segment_command): Add initprot and maxprot fields.
896 1.1 christos
897 1.1 christos * mach-o.c (N_TEXT, N_DATA, N_BSS): Added.
898 1.1 christos (bfd_mach_o_version): New function.
899 1.1 christos (bfd_mach_o_valid): Handle 64bits cpus.
900 1.1 christos (bfd_mach_o_write_header): handler 64bits headers.
901 1.1 christos (bfd_mach_o_scan_write_section_32, bfd_mach_o_scan_write_section_64):
902 1.1 christos New functions (from bfd_mach_o_scan_write_section) to handle both
903 1.1 christos flavors.
904 1.1 christos (bfd_mach_o_scan_write_segment): Parameter wide added to support
905 1.1 christos both flavors.
906 1.1 christos (bfd_mach_o_write_contents): Support both flavors.
907 1.1 christos (bfd_mach_o_read_header): Ditto.
908 1.1 christos (bfd_mach_o_scan_read_section_32, bfd_mach_o_scan_read_section_64):
909 1.1 christos New functions (from bfd_mach_o_scan_read_section) to support both
910 1.1 christos flavors.
911 1.1 christos (bfd_mach_o_scan_read_symtab_symbol): Support both flavors.
912 1.1 christos (bfd_mach_o_scan_read_symtab): Ditto.
913 1.1 christos (bfd_mach_o_scan_read_segment): Parameter wide added to support
914 1.1 christos both flavors.
915 1.1 christos (bfd_mach_o_scan_read_segment_32, bfd_mach_o_scan_read_segment_64):
916 1.1 christos New functions to call bfd_mach_o_scan_read_segment.
917 1.1 christos (bfd_mach_o_flatten_sections): Support both flavors.
918 1.1 christos (bfd_mach_o_scan_start_address): Ditto.
919 1.1 christos (bfd_mach_o_scan): Ditto.
920 1.1 christos (bfd_mach_o_lookup_section): Ditto.
921 1.1 christos
922 1.1 christos 2008-08-27 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca>
923 1.1 christos
924 1.1 christos * elf-hppa.h (elf_hppa_reloc_final_type): Handle R_PARISC_GPREL64,
925 1.1 christos R_PARISC_SEGREL32 and R_PARISC_SEGREL64.
926 1.1 christos * som.c (som_fixup_formats): Add R_DATA_GPREL fixup.
927 1.1 christos (som_hppa_howto_table): Likewise.
928 1.1 christos (hppa_som_gen_reloc_type): In case R_HPPA_GOTOFF, detect R_DATA_GPREL
929 1.1 christos final type.
930 1.1 christos (som_write_fixups): Handle R_DATA_GPREL.
931 1.1 christos
932 1.1 christos 2008-08-26 Nick Clifton <nickc (a] redhat.com>
933 1.1 christos
934 1.1 christos * elf32-arm.c: Fix up comment describing Thumb to ARM interworking
935 1.1 christos stub.
936 1.1 christos
937 1.1 christos 2008-08-25 Christophe Lyon <christophe.lyon (a] st.com>
938 1.1 christos
939 1.1 christos * elf32-arm.c (arm_thumb_arm_v4t_short_branch_stub): Define.
940 1.1 christos (elf32_arm_stub_type): Add arm_thumb_arm_v4t_stub_short_branch.
941 1.1 christos (arm_type_of_stub): Handle armv4t short branches. Update
942 1.1 christos prototype.
943 1.1 christos (arm_stub_is_thumb): Handle arm_thumb_arm_v4t_stub_short_branch.
944 1.1 christos (arm_build_one_stub): Likewise.
945 1.1 christos (arm_size_one_stub): Likewise.
946 1.1 christos (elf32_arm_size_stubs): Use new arm_type_of_stub prototype.
947 1.1 christos (arm_map_one_stub): Handle arm_thumb_arm_v4t_stub_short_branch.
948 1.1 christos
949 1.1 christos 2008-08-24 Andreas Schwab <schwab (a] suse.de>
950 1.1 christos
951 1.1 christos * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Do proper
952 1.1 christos extension when calculating difference of offsets.
953 1.1 christos
954 1.1 christos 2008-08-24 Alan Modra <amodra (a] bigpond.net.au>
955 1.1 christos
956 1.1 christos * configure.in: Update a number of obsolete autoconf macros.
957 1.1 christos * aclocal.m4: Regenerate.
958 1.1 christos
959 1.1 christos 2008-08-23 Andreas Schwab <schwab (a] suse.de>
960 1.1 christos
961 1.1 christos * opncls.c (find_separate_debug_file): Use the canonical
962 1.1 christos absolute name of the bfd object for finding the debug file in
963 1.1 christos the global debugfile directory.
964 1.1 christos
965 1.1 christos 2008-08-22 Jakub Jelinek <jakub (a] redhat.com>
966 1.1 christos
967 1.1 christos Fix PR ld/3290 regression for cross-files DW_FORM_ref_addr relocations.
968 1.1 christos * elflink.c (elf_link_add_object_symbols): Make debug symbols local
969 1.1 christos now only for non-RELOCATABLE targets.
970 1.1 christos
971 1.1 christos 2008-08-20 Bob Wilson <bob.wilson (a] acm.org>
972 1.1 christos
973 1.1 christos * elf-bfd.h (elf_object_id): Add XTENSA_ELF_TDATA.
974 1.1 christos * elf32-xtensa.c (elf_howto_table): Add TLS relocations.
975 1.1 christos (elf_xtensa_reloc_type_lookup): Likewise.
976 1.1 christos (TCB_SIZE): Define.
977 1.1 christos (elf_xtensa_link_hash_entry): New.
978 1.1 christos (GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD, GOT_TLS_IE, GOT_TLS_ANY): Define.
979 1.1 christos (elf_xtensa_hash_entry): Define.
980 1.1 christos (elf_xtensa_obj_tdata): New.
981 1.1 christos (elf_xtensa_tdata): Define.
982 1.1 christos (elf_xtensa_local_got_tls_type): Define.
983 1.1 christos (elf_xtensa_local_tlsfunc_refcounts): Define.
984 1.1 christos (is_xtensa_elf): Define.
985 1.1 christos (elf_xtensa_mkobject): New.
986 1.1 christos (elf_xtensa_link_hash_table): Add tlsbase field.
987 1.1 christos (elf_xtensa_link_hash_newfunc): New.
988 1.1 christos (elf_xtensa_link_hash_table_create): Use elf_xtensa_link_hash_newfunc.
989 1.1 christos Create an entry for "_TLS_MODULE_BASE_" and save it in tlsbase field.
990 1.1 christos (elf_xtensa_copy_indirect_symbol): New.
991 1.1 christos (elf_xtensa_check_relocs): Rewrite to handle TLS relocations.
992 1.1 christos (elf_xtensa_gc_sweep_hook): Likewise.
993 1.1 christos (elf_xtensa_allocate_dynrelocs): Optimize away GOT entries for
994 1.1 christos TLSDESC_FN relocations when an IE reference is seen.
995 1.1 christos (elf_xtensa_allocate_local_got_size): Likewise.
996 1.1 christos (elf_xtensa_always_size_sections): New.
997 1.1 christos (dtpoff_base, tpoff): New.
998 1.1 christos (elf_xtensa_do_reloc): Handle TLS relocations.
999 1.1 christos (replace_tls_insn): New.
1000 1.1 christos (IS_XTENSA_TLS_RELOC): Define.
1001 1.1 christos (elf_xtensa_relocate_section): Handle TLS relocations.
1002 1.1 christos (get_indirect_call_dest_reg): New.
1003 1.1 christos (bfd_elf32_mkobject): Define.
1004 1.1 christos (elf_backend_always_size_sections): New.
1005 1.1 christos (elf_backend_copy_indirect_symbol): New.
1006 1.1 christos * reloc.c (BFD_RELOC_XTENSA_TLSDESC_FN, BFD_RELOC_XTENSA_TLSDESC_ARG)
1007 1.1 christos (BFD_RELOC_XTENSA_TLS_DTPOFF, BFD_RELOC_XTENSA_TLS_TPOFF)
1008 1.1 christos (BFD_RELOC_XTENSA_TLS_FUNC, BFD_RELOC_XTENSA_TLS_ARG)
1009 1.1 christos (BFD_RELOC_XTENSA_TLS_CALL): New.
1010 1.1 christos * bfd-in2.h: Regenerate.
1011 1.1 christos * libbfd.h: Regenerate.
1012 1.1 christos
1013 1.1 christos 2008-08-18 Richard Sandiford <rdsandiford (a] googlemail.com>
1014 1.1 christos
1015 1.1 christos * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Copy MIPS16
1016 1.1 christos stub information.
1017 1.1 christos
1018 1.1 christos 2008-08-17 Nick Clifton <nickc (a] redhat.com>
1019 1.1 christos
1020 1.1 christos * elf32-arm.c: Tidy up the code.
1021 1.1 christos (bfd_elf32_arm_allocate_interworking_sections): Move common code
1022 1.1 christos into...
1023 1.1 christos (arm_allocate_glue_section_space): ... New function.
1024 1.1 christos (bfd_elf32_arm_add_glue_sections_to_bfd): Move common code
1025 1.1 christos into...
1026 1.1 christos (arm_make_glue_section): ... New function.
1027 1.1 christos
1028 1.1 christos * elfxx-mips.c (_bfd_mips_elf_check_relocs): Handle the situation
1029 1.1 christos where the sym_hashes are not available.
1030 1.1 christos
1031 1.1 christos 2008-08-17 Alan Modra <amodra (a] bigpond.net.au>
1032 1.1 christos
1033 1.1 christos * bfd.c (struct _bfd): Correct outsymbols comment.
1034 1.1 christos * bfd-in2.h: Regenerate.
1035 1.1 christos * linker.c (bfd_generic_link_read_symbols): Renamed from..
1036 1.1 christos (generic_link_read_symbols): ..this, and made global.
1037 1.1 christos
1038 1.1 christos 2008-08-15 Alan Modra <amodra (a] bigpond.net.au>
1039 1.1 christos
1040 1.1 christos PR 6526
1041 1.1 christos * configure.in: Invoke AC_USE_SYSTEM_EXTENSIONS.
1042 1.1 christos * Makefile.in: Regenerate.
1043 1.1 christos * aclocal.m4: Regenerate.
1044 1.1 christos * config.in: Regenerate.
1045 1.1 christos * configure: Regenerate.
1046 1.1 christos
1047 1.1 christos 2008-08-14 Jaka Monik <jaka (a] xlab.si>
1048 1.1 christos
1049 1.1 christos * coffgen.c (coff_find_nearest_line): Correct cached line index.
1050 1.1 christos
1051 1.1 christos 2008-08-12 Alan Modra <amodra (a] bigpond.net.au>
1052 1.1 christos
1053 1.1 christos * elf32-ppc.c (allocate_dynrelocs): Ignore dyn_relocs when
1054 1.1 christos !dynamic_sections_created. Don't make symbols with got
1055 1.1 christos references dynamic if !dynamic_sections_created.
1056 1.1 christos * elf64-ppc.c (allocate_dynrelocs): Likewise. Alloc dynamic
1057 1.1 christos relocs on undefined symbols.
1058 1.1 christos (ppc64_elf_relocate_section): Allow dynamic relocs on
1059 1.1 christos undefined symbols.
1060 1.1 christos
1061 1.1 christos 2008-08-11 Alan Modra <amodra (a] bigpond.net.au>
1062 1.1 christos
1063 1.1 christos * elf64-ppc.c (toc_adjusting_stub_needed): Any call via the plt
1064 1.1 christos needs r2 valid, not just those to external syms.
1065 1.1 christos
1066 1.1 christos 2008-08-09 Pedro Alves <pedro (a] codesourcery.com>
1067 1.1 christos
1068 1.1 christos * archive.c (_bfd_archive_bsd_update_armap_timestamp): Cast stat
1069 1.1 christos st_mtime to long before comparison.
1070 1.1 christos
1071 1.1 christos 2008-08-08 Anatoly Sokolov <aesok (a] post.ru>
1072 1.1 christos
1073 1.1 christos * archures.c (bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35,
1074 1.1 christos bfd_mach_avr51): New.
1075 1.1 christos * bfd-in2.h: Regenerate.
1076 1.1 christos * cpu-avr.c (arch_info_struct): Add avr25, avr31, avr35, and avr51
1077 1.1 christos architectures. Change comments to match architecture comments in GCC.
1078 1.1 christos (compatible): Add test for new AVR architectures.
1079 1.1 christos * elf32-avr.c (bfd_elf_avr_final_write_processing): Recognize
1080 1.1 christos bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35 and bfd_mach_avr51.
1081 1.1 christos (elf32_avr_object_p): Recognize E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
1082 1.1 christos E_AVR_MACH_AVR35 and E_AVR_MACH_AVR51.
1083 1.1 christos
1084 1.1 christos
1085 1.1 christos 2008-08-08 Richard Sandiford <rdsandiford (a] googlemail.com>
1086 1.1 christos Daniel Jacobowitz <dan (a] codesourcery.com>
1087 1.1 christos Catherine Moore <clm (a] codesourcery.com>
1088 1.1 christos Mark Shinwell <shinwell (a] codesourcery.com>
1089 1.1 christos Maxim Kuvyrkov <maxim (a] codesourcery.com>
1090 1.1 christos
1091 1.1 christos * elf32-mips.c (mips_vxworks_copy_howto_rela): Replace with...
1092 1.1 christos (elf_mips_copy_howto): ...this howto. Clear the size fields.
1093 1.1 christos (mips_vxworks_jump_slot_howto_rela): Replace with...
1094 1.1 christos (elf_mips_jump_slot_howto): ...this howto.
1095 1.1 christos (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS_COPY
1096 1.1 christos and BFD_RELOC_MIPS_JUMP_SLOT.
1097 1.1 christos (bfd_elf32_bfd_reloc_name_lookup): Handle "R_MIPS_COPY" and
1098 1.1 christos "R_MIPS_JUMP_SLOT".
1099 1.1 christos (mips_elf32_rtype_to_howto): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT.
1100 1.1 christos (elf_backend_plt_readonly): Define.
1101 1.1 christos (elf_backend_plt_sym_val): Define for non-VxWorks targets.
1102 1.1 christos (mips_vxworks_bfd_reloc_type_lookup): Delete.
1103 1.1 christos (mips_vxworks_bfd_reloc_name_lookup): Likewise.
1104 1.1 christos (mips_vxworks_rtype_to_howto): Likewise.
1105 1.1 christos (elf_backend_want_dynbss): Don't define for VxWorks.
1106 1.1 christos (elf_backend_plt_readonly): Likewise.
1107 1.1 christos (bfd_elf32_bfd_reloc_type_lookup): Likewise.
1108 1.1 christos (bfd_elf32_bfd_reloc_name_lookup): Likewise.
1109 1.1 christos (elf_backend_mips_rtype_to_howto): Likewise.
1110 1.1 christos (elf_backend_adjust_dynamic_symbol): Likewise.
1111 1.1 christos (elf_backend_got_symbol_offset): Don't define.
1112 1.1 christos * elfn32-mips.c (elf_mips_copy_howto, elf_mips_jump_slot_howto): New.
1113 1.1 christos (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS_COPY
1114 1.1 christos and BFD_RELOC_MIPS_JUMP_SLOT.
1115 1.1 christos (bfd_elf32_bfd_reloc_name_lookup): Handle "R_MIPS_COPY" and
1116 1.1 christos "R_MIPS_JUMP_SLOT".
1117 1.1 christos (mips_elf32_n32_rtype_to_howto): Handle R_MIPS_COPY and
1118 1.1 christos R_MIPS_JUMP_SLOT.
1119 1.1 christos (elf_backend_rela_plts_and_copies_p, elf_backend_plt_readonly)
1120 1.1 christos (elf_backend_plt_sym_val): Define.
1121 1.1 christos * elf64-mips.c (elf_mips_copy_howto, elf_mips_jump_slot_howto): New.
1122 1.1 christos (bfd_elf64_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS_COPY
1123 1.1 christos and BFD_RELOC_MIPS_JUMP_SLOT.
1124 1.1 christos (bfd_elf64_bfd_reloc_name_lookup): Handle "R_MIPS_COPY" and
1125 1.1 christos "R_MIPS_JUMP_SLOT".
1126 1.1 christos (mips_elf64_rtype_to_howto): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT.
1127 1.1 christos (elf_backend_rela_plts_and_copies_p, elf_backend_plt_readonly)
1128 1.1 christos (elf_backend_plt_sym_val): Define.
1129 1.1 christos * elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Delete.
1130 1.1 christos (_bfd_mips_elf_use_plts_and_copy_relocs, _bfd_mips_elf_init_stubs)
1131 1.1 christos (_bfd_mips_elf_plt_sym_val, _bfd_mips_post_process_headers): Declare.
1132 1.1 christos * elfxx-mips.c (mips_elf_la25_stub): New structure.
1133 1.1 christos (LA25_LUI, LA25_J, LA25_ADDIU): New macros.
1134 1.1 christos (mips_elf_link_hash_entry): Add "la25_stubs", "has_static_relocs"
1135 1.1 christos and "has_nonpic_branches" fields. Remove "is_relocation_target" and
1136 1.1 christos "is_branch_target".
1137 1.1 christos (mips_elf_link_hash_table): Add blank lines. Add
1138 1.1 christos "use_plts_and_copy_relocs", "reserved_gotno", "strampoline",
1139 1.1 christos "la25_stubs" and "add_stub_section" fields.
1140 1.1 christos (mips_htab_traverse_info): New structure.
1141 1.1 christos (PIC_OBJECT_P, MIPS_ELF_LOAD_WORD): New macros.
1142 1.1 christos (MIPS_RESERVED_GOTNO): Delete.
1143 1.1 christos (mips_o32_exec_plt0_entry, mips_n32_exec_plt0_entry)
1144 1.1 christos (mips_n64_exec_plt0_entry, mips_exec_plt_entry): New tables.
1145 1.1 christos (mips_elf_link_hash_newfunc): Update after the changes to
1146 1.1 christos mips_elf_link_hash_entry.
1147 1.1 christos (mips_elf_check_mips16_stubs): Replace the DATA parameter with
1148 1.1 christos an INFO parameter. Don't look through warnings symbols here;
1149 1.1 christos do it in mips_elf_check_symbols instead.
1150 1.1 christos (mips_elf_create_stub_symbol): New function.
1151 1.1 christos (mips_elf_la25_stub_hash, mips_elf_la25_stub_eq): New functions.
1152 1.1 christos (_bfd_mips_elf_init_stubs, mips_elf_local_pic_function_p): Likewise.
1153 1.1 christos (mips_elf_add_la25_intro, mips_elf_add_la25_trampoline): Likewise.
1154 1.1 christos (mips_elf_add_la25_stub, mips_elf_check_symbols): New functions.
1155 1.1 christos (mips_elf_gotplt_index): Check for VxWorks.
1156 1.1 christos (mips_elf_output_dynamic_relocation): Take the relocation index
1157 1.1 christos as an extra parameter. Do not increment reloc_count here.
1158 1.1 christos (mips_elf_initialize_tls_slots): Update the calls to
1159 1.1 christos mips_elf_output_dynamic_relocation accordingly.
1160 1.1 christos (mips_elf_multi_got): Use htab->reserved_gotno instead of
1161 1.1 christos MIPS_RESERVED_GOTNO.
1162 1.1 christos (mips_elf_create_got_section): Don't allocate reserved GOT
1163 1.1 christos entries here. Unconditionally create .got.plt, but don't
1164 1.1 christos set its alignment here.
1165 1.1 christos (mips_elf_relocation_needs_la25_stub): New function.
1166 1.1 christos (mips_elf_calculate_relocation): Redirect branches and jumps to
1167 1.1 christos a non-PIC stub if one exists. Check !h->has_static_relocs instead
1168 1.1 christos of !htab->is_vxworks when deciding whether to create dynamic
1169 1.1 christos relocations for R_MIPS_32, R_MIPS_REL32 and R_MIPS_64.
1170 1.1 christos (_bfd_mips_elf_create_dynamic_sections): Unconditionally call
1171 1.1 christos _bfd_elf_create_dynamic_sections. Unconditionally set up
1172 1.1 christos htab->splt and htab->sdynbss. Set htab->srelplt to ".rel.plt"
1173 1.1 christos if !htab->is_vxworks. Add non-VxWorks values of
1174 1.1 christos htab->plt_header_size and htab->plt_entry_size.
1175 1.1 christos (_bfd_mips_elf_check_relocs): Set pointer_equality_needed for
1176 1.1 christos non-branch static relocations. Set has_nonpic_branches when an la25
1177 1.1 christos stub might be required. Set can_make_dynamic_p to TRUE if R_MIPS_32,
1178 1.1 christos R_MIPS_REL32 and R_MIPS_64 relocations can be made dynamic,
1179 1.1 christos rather than duplicating the condition. Do not make them dynamic
1180 1.1 christos for read-only sections in non-PIC executable objects.
1181 1.1 christos Do not protect this code with dynobj == NULL || htab->sgot == NULL;
1182 1.1 christos handle each group of cases separately. Add a default case that
1183 1.1 christos sets has_static_relocs for non-GOT relocations that cannot be
1184 1.1 christos made dynamic. Don't set is_relocation_target and is_branch_target.
1185 1.1 christos Reject non-PIC static relocations in shared objects.
1186 1.1 christos (_bfd_mips_vxworks_adjust_dynamic_symbol): Fold into...
1187 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): ...here, using
1188 1.1 christos htab->use_plts_and_copy_relocs instead of htab->is_vxworks
1189 1.1 christos to select PLT and copy-reloc handling. Set the alignment of
1190 1.1 christos .plt and .got.plt when allocating the first entry. Generalize
1191 1.1 christos code to handle REL as well as RELA sections and 64-bit as well as
1192 1.1 christos 32-bit GOT entries. Complain if we find a static-only reloc
1193 1.1 christos against an externally-defined symbol and if we cannot create
1194 1.1 christos dynamic relocations for it. Allocate copy relocs using
1195 1.1 christos mips_elf_allocate_dynamic_relocations on non-VxWorks targets.
1196 1.1 christos Set possibly_dynamic_relocs to 0 when using PLTs or copy relocs.
1197 1.1 christos Skip reserved .got.plt entries.
1198 1.1 christos (_bfd_mips_elf_always_size_sections): Use mips_elf_check_symbols
1199 1.1 christos instead of mips_elf_check_mips16_stubs to process each symbol.
1200 1.1 christos Do the traversal for relocatable objects too.
1201 1.1 christos (mips_elf_lay_out_got): Use htab->reserved_gotno instead of
1202 1.1 christos MIPS_RESERVED_GOTNO.
1203 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Exclude sdynbss if it
1204 1.1 christos is empty. Extend the DT_PLTREL, DT_JMPREL and DT_PLTRELSZ handling
1205 1.1 christos to non-VxWorks targets. Only add DT_REL{,A}, DT_REL{,A}SZ and
1206 1.1 christos DT_REL{,A}ENT if .rel.dyn is nonempty. Create a symbol for the
1207 1.1 christos PLT. Allocate a nop at the end of the PLT. Allocate DT_MIPS_PLTGOT.
1208 1.1 christos (mips_elf_create_la25_stub_info): New function.
1209 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Write out PLT entries
1210 1.1 christos and copy relocs where necessary. Check pointer_equality_needed.
1211 1.1 christos (mips_finish_exec_plt): New function.
1212 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Always set DT_PLTGOT
1213 1.1 christos to the beginning of htab->sgot. Use htab->reserved_gotno instead
1214 1.1 christos of MIPS_RESERVED_GOTNO. Assert htab->use_plts_and_copy_relocs
1215 1.1 christos instead of htab->is_vxworks for DT_PLTREL, DT_PLTRELSZ and DT_JMPREL.
1216 1.1 christos Set DT_PLTREL to DT_REL instead of DT_RELA on non-VxWorks targets.
1217 1.1 christos Use mips_finish_exec_plt to create non-VxWorks PLT headers. Set
1218 1.1 christos DT_MIPS_PLTGOT.
1219 1.1 christos (_bfd_mips_elf_copy_indirect_symbol): Copy has_static_relocs
1220 1.1 christos from the indirect symbol to the direct symbol. Also copy
1221 1.1 christos has_nonpic_branches for indirect symbols.
1222 1.1 christos (_bfd_mips_elf_get_target_dtag): Handle DT_MIPS_PLTGOT and
1223 1.1 christos DT_MIPS_RWPLT.
1224 1.1 christos (_bfd_mips_elf_link_hash_table_create): Initialize the new
1225 1.1 christos mips_elf_link_hash_table fields.
1226 1.1 christos (_bfd_mips_vxworks_link_hash_table_create): Set
1227 1.1 christos use_plts_and_copy_relocs to TRUE. Use TRUE rather than 1
1228 1.1 christos when setting is_vxworks.
1229 1.1 christos (_bfd_mips_elf_use_plts_and_copy_relocs): New function.
1230 1.1 christos (_bfd_mips_elf_final_link): Call mips_elf_create_la25_stub for
1231 1.1 christos each la25_stub.
1232 1.1 christos (_bfd_mips_elf_merge_private_bfd_data): Treat dynamic objects
1233 1.1 christos as PIC. Generalize message about linking PIC and non-PIC.
1234 1.1 christos (_bfd_mips_elf_plt_sym_val, _bfd_mips_post_process_headers): New
1235 1.1 christos functions.
1236 1.1 christos * reloc.c: Update comment near BFD_RELOC_MIPS_JUMP_SLOT.
1237 1.1 christos * bfd-in2.h: Regenerated.
1238 1.1 christos
1239 1.1 christos 2008-08-08 Alan Modra <amodra (a] bigpond.net.au>
1240 1.1 christos
1241 1.1 christos * elf.c (bfd_elf_get_elf_syms): Don't leak memory on error.
1242 1.1 christos * elflink.c (_bfd_elf_link_read_relocs): bfd_release on error.
1243 1.1 christos (elf_link_add_object_symbols): Don't leak memory on error.
1244 1.1 christos (bfd_elf_size_dynsym_hash_dynstr): Likewise.
1245 1.1 christos (elf_fixup_link_order): Free sections.
1246 1.1 christos
1247 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1248 1.1 christos
1249 1.1 christos * elf-bfd.h (elf_backend_data): Add a "rela_plts_and_copies_p" field.
1250 1.1 christos * elfxx-target.h (elf_backend_rela_plts_and_copies_p): New macro.
1251 1.1 christos (elfNN_bed): Use it.
1252 1.1 christos * elf.c (_bfd_elf_get_synthetic_symtab): Use rela_plts_and_copies_p
1253 1.1 christos instead of default_use_rela_p to choose between ".rel.plt" and
1254 1.1 christos ".rela.plt".
1255 1.1 christos * elflink.c (_bfd_elf_create_dynamic_sections): Use
1256 1.1 christos rela_plts_and_copies_p instead of default_use_rela_p to choose
1257 1.1 christos between ".rel.plt" and ".rela.plt", and between ".rel.bss" and
1258 1.1 christos ".rela.bss".
1259 1.1 christos
1260 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1261 1.1 christos
1262 1.1 christos * elf-bfd.h (MIPS_ELF_TDATA): New elf_object_id.
1263 1.1 christos * elf32-mips.c (bfd_elf32_mkobject): Define.
1264 1.1 christos * elf64-mips.c (bfd_elf64_mkobject): Likewise.
1265 1.1 christos * elfn32-mips.c (bfd_elf32_mkobject): Likewise.
1266 1.1 christos * elfxx-mips.h (_bfd_mips_elf_mkobject): Declare.
1267 1.1 christos * elfxx-mips.c (is_mips_elf): New macro.
1268 1.1 christos (_bfd_mips_elf_mkobject): New function.
1269 1.1 christos (_bfd_mips_elf_final_link): Use is_mips_elf.
1270 1.1 christos (_bfd_mips_elf_merge_private_bfd_data): Likewise.
1271 1.1 christos
1272 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1273 1.1 christos
1274 1.1 christos * elfxx-mips.c (mips_elf_record_relocs): Defer allocation of a
1275 1.1 christos global GOT entry when deferring allocation of dynamic relocations.
1276 1.1 christos (allocate_dynrelocs): When allocating deferred dynamic relocations,
1277 1.1 christos also do the deferred allocation of a GOT entry.
1278 1.1 christos
1279 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1280 1.1 christos
1281 1.1 christos * elfxx-mips.c (mips_got_info): Add a "reloc_only_gotno" field.
1282 1.1 christos (mips_elf_got_section): Delete.
1283 1.1 christos (mips_elf_sort_hash_table): Use g->reloc_only_gotno to decide
1284 1.1 christos how many reloc-only entries there are.
1285 1.1 christos (mips_elf_count_got_symbols): Adjust g->reloc_only_gotno as
1286 1.1 christos well as g->global_gotno.
1287 1.1 christos (mips_elf_make_got_per_bfd): Initialize reloc_only_gotno.
1288 1.1 christos (mips_elf_multi_got): Likewise. Use gg->reloc_only_gotno
1289 1.1 christos rather than gg->assigned_gotno to store the number of
1290 1.1 christos reloc-only GOT entries.
1291 1.1 christos (mips_elf_create_got_section): Remove the MAYBE_EXCLUDE parameter.
1292 1.1 christos Initialize reloc_only_gotno.
1293 1.1 christos (mips_elf_calculate_relocation): Check htab->got_info instead of
1294 1.1 christos dynobj when deciding whether to call mips_elf_adjust_gp,
1295 1.1 christos (_bfd_mips_elf_create_dynamic_sections): Adjust the call
1296 1.1 christos to mips_elf_create_got_section.
1297 1.1 christos (mips_elf_record_relocs): Likewise. Remove redundant
1298 1.1 christos "dynobj == NULL" code. Do not use mips_elf_create_got_section
1299 1.1 christos or mips_elf_record_global_got_symbol for R_MIPS_32, R_MIPS_REL32
1300 1.1 christos and R_MIPS_64; limit global_got_area to GGA_RELOC_ONLY instead.
1301 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Use htab->sgot instead
1302 1.1 christos of mips_elf_got_section.
1303 1.1 christos (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
1304 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Likewise.
1305 1.1 christos Move the initial assignment of G to the block that uses it;
1306 1.1 christos it is used for an unrelated purpose later.
1307 1.1 christos
1308 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1309 1.1 christos
1310 1.1 christos * elfxx-mips.c (count_section_dynsyms): Move before the new first use.
1311 1.1 christos (mips_elf_sort_hash_table): Take the output bfd as a parameter.
1312 1.1 christos Remove the MAX_LOCAL parameter. Exit early if there are no
1313 1.1 christos dynamic symbols, if there is no dynobj, or if there is no
1314 1.1 christos GOT section. Use count_section_dynsyms instead of MAX_LOCAL.
1315 1.1 christos Assert == rather than <= when checking hsd.max_unref_got_dynindx.
1316 1.1 christos Also assert that g->global_gotno is right.
1317 1.1 christos (mips_elf_count_forced_local_got_symbols): Rename to...
1318 1.1 christos (mips_elf_count_got_symbols): ...and count global GOT entries too.
1319 1.1 christos Set the global_got_area of a forced-local GGA_RELOC_ONLY symbol
1320 1.1 christos to GGA_NONE.
1321 1.1 christos (mips_elf_multi_got): Don't sort the symbol table.
1322 1.1 christos (mips_elf_lay_out_got): Likewise. Use mips_elf_count_got_symbols
1323 1.1 christos to count the number of global GOT entries.
1324 1.1 christos (_bfd_mips_elf_final_link): Unconditionally call
1325 1.1 christos mips_elf_sort_hash_table.
1326 1.1 christos
1327 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1328 1.1 christos
1329 1.1 christos * elfxx-mips.c (GGA_NORMAL, GGA_RELOC_ONLY, GGA_NONE): New macros.
1330 1.1 christos (mips_elf_link_hash_entry): Add a "global_got_area" field.
1331 1.1 christos (mips_elf_link_hash_newfunc): Initialize it.
1332 1.1 christos (mips_elf_sort_hash_table_f): Use h->global_got_area instead of
1333 1.1 christos h->root.got.offset. Do not handle forced_local symbols specially.
1334 1.1 christos (mips_elf_record_global_got_symbol): Set h->global_got_area
1335 1.1 christos instead of h->root.got.offset.
1336 1.1 christos (mips_elf_recreate_got): Assert that h->global_got_area == GGA_NONE
1337 1.1 christos for indirect and warning symbols.
1338 1.1 christos (mips_elf_count_forced_local_got_symbols): Change the argument
1339 1.1 christos from a "elf_link_hash_entry" to "mips_elf_link_hash_entry".
1340 1.1 christos Use and set h->global_got_area instead of h->root.got.offset.
1341 1.1 christos Set it to GGA_NONE for all forced-local symbols.
1342 1.1 christos (mips_elf_set_global_got_offset): Set h->global_got_area
1343 1.1 christos instead of h->root.got.offset. Use g->global_got_area instead
1344 1.1 christos of a combination of dynindx, forced_local and tls_type.
1345 1.1 christos (mips_elf_multi_got): Remove disabled code. Pass GGA_* values to
1346 1.1 christos mips_elf_set_global_got_offset.
1347 1.1 christos (mips_elf_lay_out_got): Use mips_elf_link_hash_traverse instead
1348 1.1 christos of elf_link_hash_traverse.
1349 1.1 christos (_bfd_mips_elf_copy_indirect_symbol): Copy the indirect symbol's
1350 1.1 christos global_got_area to the direct symbol if the latter's value is higher.
1351 1.1 christos Set the indirect symbol's area to GGA_NONE.
1352 1.1 christos
1353 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1354 1.1 christos
1355 1.1 christos * elf32-mips.c (elf_backend_hide_symbol): Delete.
1356 1.1 christos * elfn32-mips.c (elf_backend_hide_symbol): Likewise.
1357 1.1 christos * elf64-mips.c (elf_backend_hide_symbol): Likewise.
1358 1.1 christos * elfxx-mips.h (elf_backend_hide_symbol): Likewise.
1359 1.1 christos * elfxx-mips.c (mips_elf_link_hash_entry): Remove "forced_local"
1360 1.1 christos and add "needs_lazy_stub".
1361 1.1 christos (mips_elf_link_hash_newfunc): Update accordingly.
1362 1.1 christos (mips_elf_link_hash_table): Remove "computed_got_sizes" and
1363 1.1 christos add "lazy_stub_count".
1364 1.1 christos (_bfd_mips_elf_link_hash_table_create): Update accordingly.
1365 1.1 christos (mips_elf_output_extsym): Use hd->needs_lazy_stub to detect
1366 1.1 christos cases where a lazy stub is being used.
1367 1.1 christos (mips_elf_sort_hash_table_f): Use h->root.forced_local instead
1368 1.1 christos of h->forced_local.
1369 1.1 christos (mips_elf_record_global_got_symbol): Use _bfd_elf_link_hash_hide_symbol
1370 1.1 christos instead of _bfd_mips_elf_hide_symbol. Do not increment local_gotno
1371 1.1 christos here.
1372 1.1 christos (mips_elf_allocate_dynamic_relocations): Move before new first use.
1373 1.1 christos (mips_elf_check_recreate_got, mips_elf_recreate_got): New functions.
1374 1.1 christos (mips_elf_resolve_final_got_entries): Move earlier in file. Make at
1375 1.1 christos most two passes over the hash table. Use mips_elf_check_recreate_got
1376 1.1 christos to see if there are any indirect or warning entries and
1377 1.1 christos mips_elf_recreate_got to create a new GOT without them.
1378 1.1 christos Return a boolean success value.
1379 1.1 christos (mips_elf_count_forced_local_got_entries): New function.
1380 1.1 christos (mips_elf_make_got_per_bfd): Check h->root.forced_local instead of
1381 1.1 christos h->forced_local.
1382 1.1 christos (mips_elf_set_global_got_offset): Likewise.
1383 1.1 christos (mips_elf_set_no_stub): Replace with...
1384 1.1 christos (mips_elf_forbid_lazy_stubs): ...this new function.
1385 1.1 christos (mips_elf_resolve_final_got_entry): Delete.
1386 1.1 christos (mips_elf_multi_got): Fix formatting. Use mips_elf_forbid_lazy_stubs
1387 1.1 christos instead of mips_elf_set_no_stub. Move the code that sets
1388 1.1 christos global offsets and allocates dynamic relocations from the main
1389 1.1 christos _bfd_mips_elf_size_dynamic_sections loop to here.
1390 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): Do not allocate room in
1391 1.1 christos .MIPS.stubs here; just set hmips->needs_lazy_stub and increment
1392 1.1 christos htab->lazy_stub_count.
1393 1.1 christos (_bfd_mips_elf_always_size_sections): Move the stub-estimation
1394 1.1 christos code to mips_elf_estimate_stub_size and the GOT-sizing code to
1395 1.1 christos mips_elf_lay_out_got. Do not call these functions here.
1396 1.1 christos (mips_elf_estimate_stub_size): New function, split
1397 1.1 christos out from _bfd_mips_elf_always_size_sections. Call
1398 1.1 christos mips_elf_resolve_final_got_entries earlier. Count the number
1399 1.1 christos of forced-local entries. Do not add stub sizes to loadable_size;
1400 1.1 christos after this patch, the stub sizes are already included in the main
1401 1.1 christos estimate. Allocate dynamic relocations here rather than in the
1402 1.1 christos main _bfd_mips_elf_size_dynamic_sections loop.
1403 1.1 christos (mips_elf_estimate_stub_size): New function, split out from
1404 1.1 christos _bfd_mips_elf_always_size_sections.
1405 1.1 christos (mips_elf_allocate_lazy_stub): New function.
1406 1.1 christos (mips_elf_lay_out_lazy_stubs): Likewise.
1407 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Call mips_elf_estimate_stub_size,
1408 1.1 christos mips_elf_lay_out_got and mips_elf_lay_out_lazy_stubs. Do not handle
1409 1.1 christos the allocation of sreldyn specially.
1410 1.1 christos (_bfd_mips_elf_hide_symbol): Delete.
1411 1.1 christos
1412 1.1 christos 2008-08-07 Richard Sandiford <rdsandiford (a] googlemail.com>
1413 1.1 christos
1414 1.1 christos * elfxx-mips.c (allocate_dynrelocs): Ignore indirect and warning
1415 1.1 christos symbols.
1416 1.1 christos
1417 1.1 christos 2008-08-06 Richard Sandiford <rdsandiford (a] googlemail.com>
1418 1.1 christos
1419 1.1 christos * elfxx-mips.c (mips_elf_link_hash_entry): Move bfd_boolean
1420 1.1 christos fields to the end of the structure and make them single-bit
1421 1.1 christos bitfields.
1422 1.1 christos (mips_elf_link_hash_newfunc): Make the initialization statements
1423 1.1 christos follow the new field order.
1424 1.1 christos
1425 1.1 christos 2008-08-06 Richard Sandiford <rdsandiford (a] googlemail.com>
1426 1.1 christos
1427 1.1 christos * elfxx-mips.c (_mips_elf_section_data): Remove the "u.got_info" field.
1428 1.1 christos (mips_elf_link_hash_table): Add "sgot" and "got_info" fields.
1429 1.1 christos (_bfd_mips_elf_link_hash_table_create): Initialize them.
1430 1.1 christos (mips_elf_got_section): Always apply the !maybe_excluded behavior.
1431 1.1 christos (mips_elf_got_info): Delete.
1432 1.1 christos (mips_elf_initialize_tls_slots): Remove the DYNOBJ local variable.
1433 1.1 christos Adjust the call to mips_elf_got_section.
1434 1.1 christos (mips_elf_local_got_index): Don't call mips_elf_got_info.
1435 1.1 christos Update the call to mips_elf_create_local_got_entry.
1436 1.1 christos Use htab->got_info.
1437 1.1 christos (mips_elf_global_got_index): Don't call mips_elf_got_info;
1438 1.1 christos use htab->got_info and htab->sgot instead.
1439 1.1 christos (mips_elf_got_page): Don't call mips_elf_got_info. Update the
1440 1.1 christos call to mips_elf_create_local_got_entry.
1441 1.1 christos (mips_elf_got16_entry): Likewise.
1442 1.1 christos (mips_elf_got_offset_from_index): Replace with DYNOBJ parameter
1443 1.1 christos with an INFO parameter. Don't call mips_elf_got_info; use htab->sgot
1444 1.1 christos and htab->got_info instead.
1445 1.1 christos (mips_elf_create_local_got_entry): Remove the GG and SGOT parameters.
1446 1.1 christos Use htab->sgot and htab->got_info.
1447 1.1 christos (mips_elf_sort_hash_table): Remove the DYNOBJ local variable.
1448 1.1 christos Don't call mips_elf_got_info; use htab->got_info instead.
1449 1.1 christos (mips_elf_record_global_got_symbol): Turn G from a paramter to
1450 1.1 christos a local variable and read it from htab->got_info.
1451 1.1 christos (mips_elf_record_local_got_symbol): Replace the G parameter with
1452 1.1 christos an INFO parameter. Make G a local variable and read it from
1453 1.1 christos htab->got_info instead.
1454 1.1 christos (mips_elf_record_got_page_entry): Likewise.
1455 1.1 christos (mips_elf_multi_got): Remove the G parameter and make it a local
1456 1.1 christos variable instead. Read it from htab->got_info.
1457 1.1 christos (mips_elf_create_got_section): Cache the GOT section in htab->sgot.
1458 1.1 christos Store the GOT information in htab->got_info.
1459 1.1 christos (mips_elf_calculate_relocation): Don't call mips_elf_got_section
1460 1.1 christos and mips_elf_got_info; use htab->sgot and htab->got_info instead.
1461 1.1 christos Adjust the calls to mips_elf_got_offset_from_index and
1462 1.1 christos mips_elf_adjust_gp.
1463 1.1 christos (_bfd_mips_elf_check_relocs): Remove the G and SGOT local variables.
1464 1.1 christos Adjust the calls to mips_elf_record_local_got_symbol,
1465 1.1 christos mips_elf_record_global_got_symbol and mips_elf_record_got_page_entry.
1466 1.1 christos Use htab->sgot.
1467 1.1 christos (_bfd_mips_elf_always_size_sections): Remove the DYNOBJ local variable.
1468 1.1 christos Don't call mips_elf_got_info; use htab->sgot and htab->got_info instead.
1469 1.1 christos Update the call to mips_elf_multi_got.
1470 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Don't call mips_elf_got_info;
1471 1.1 christos use htab->got_info instead.
1472 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Update the call to
1473 1.1 christos mips_elf_got_section. Get the got_info from the hash table
1474 1.1 christos rather than the GOT section.
1475 1.1 christos (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
1476 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Likewise.
1477 1.1 christos (_bfd_mips_elf_hide_symbol): Don't call mips_elf_got_section;
1478 1.1 christos get the got_info from the hash table instead. Remove the GOT
1479 1.1 christos local variable.
1480 1.1 christos (_bfd_mips_elf_final_link): Likewise. Also remove the DYNOBJ
1481 1.1 christos local variable.
1482 1.1 christos
1483 1.1 christos 2008-08-06 Richard Sandiford <rdsandiford (a] googlemail.com>
1484 1.1 christos
1485 1.1 christos * elfxx-mips.c (mips_elf_link_hash_table): Add an "sstubs" field.
1486 1.1 christos (_bfd_mips_elf_create_dynamic_sections): Use it to cache the stubs
1487 1.1 christos section. Don't check whether the section already exists.
1488 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): Use htab->sstubs.
1489 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
1490 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Likewise.
1491 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Likewise. Don't add the
1492 1.1 christos dummy stub to an empty section.
1493 1.1 christos (_bfd_mips_elf_link_hash_table_create): Initialize the "sstubs" field.
1494 1.1 christos
1495 1.1 christos 2008-08-06 Richard Sandiford <rdsandiford (a] googlemail.com>
1496 1.1 christos
1497 1.1 christos * reloc.c (BFD_RELOC_MIPS16_GOT16, BFD_RELOC_MIPS16_CALL16): Declare.
1498 1.1 christos * libbfd.h, bfd-in2.h: Regenerate.
1499 1.1 christos * elf32-mips.c (elf_mips16_howto_table_rel): Fill in reserved
1500 1.1 christos R_MIPS16_GOT16 and R_MIPS16_CALL16 entries.
1501 1.1 christos (mips16_reloc_map): Add mappings.
1502 1.1 christos * elf64-mips.c (mips16_elf64_howto_table_rel): Fill in reserved
1503 1.1 christos R_MIPS16_GOT16 and R_MIPS16_CALL16 entries.
1504 1.1 christos (mips16_elf64_howto_table_rela): Likewise.
1505 1.1 christos (mips16_reloc_map): Add mappings.
1506 1.1 christos * elfn32-mips.c (elf_mips16_howto_table_rel): Fill in reserved
1507 1.1 christos R_MIPS16_GOT16 and R_MIPS16_CALL16 entries.
1508 1.1 christos (elf_mips16_howto_table_rela): Likewise.
1509 1.1 christos (mips16_reloc_map): Add mappings.
1510 1.1 christos * elfxx-mips.c (mips_elf_create_shadow_symbol): New function.
1511 1.1 christos (section_allows_mips16_refs_p): Likewise.
1512 1.1 christos (mips16_stub_symndx): Likewise.
1513 1.1 christos (mips_elf_check_mips16_stubs): Treat the data argument as a
1514 1.1 christos bfd_link_info. Mark every dynamic symbol as needing MIPS16 stubs
1515 1.1 christos and create a "shadow" symbol for the original MIPS16 definition.
1516 1.1 christos (mips16_reloc_p, got16_reloc_p, call16_reloc_p, hi16_reloc_p)
1517 1.1 christos (lo16_reloc_p, mips16_call_reloc_p): New functions.
1518 1.1 christos (_bfd_mips16_elf_reloc_unshuffle): Use mips16_reloc_p to generalize
1519 1.1 christos relocation checks.
1520 1.1 christos (_bfd_mips16_elf_reloc_shuffle): Likewise.
1521 1.1 christos (_bfd_mips_elf_lo16_reloc): Handle R_MIPS16_GOT16.
1522 1.1 christos (mips_elf_got16_entry): Add comment.
1523 1.1 christos (mips_elf_calculate_relocation): Use hi16_reloc_p,
1524 1.1 christos lo16_reloc_p, mips16_call_reloc_p, call16_reloc_p and got16_reloc_p
1525 1.1 christos to generalize relocation checks. Use section_allows_mips16_refs_p
1526 1.1 christos instead of mips16_stub_section_p. Handle R_MIPS16_CALL16 and
1527 1.1 christos R_MIPS16_GOT16, allowing the former to refer directly to a
1528 1.1 christos MIPS16 function if its stub is not needed.
1529 1.1 christos (mips16_stub_section_p): Delete.
1530 1.1 christos (_bfd_mips_elf_symbol_processing): Convert odd-valued function
1531 1.1 christos symbols into even MIPS16 symbols.
1532 1.1 christos (mips_elf_add_lo16_rel_addend): Use mips16_reloc_p to generalize
1533 1.1 christos a relocation check.
1534 1.1 christos (_bfd_mips_elf_check_relocs): Calculate "bed" and "rel_end"
1535 1.1 christos earlier in the function. Use mips16_stub_symndx to identify
1536 1.1 christos the target function. Avoid out-of-bounds accesses when the
1537 1.1 christos stub has no relocations; report an error instead. Use
1538 1.1 christos section_allows_mips16_refs_p instead of mips16_stub_section_p.
1539 1.1 christos Use mips16_call_reloc_p and got16_reloc_p to generalize relocation
1540 1.1 christos checks. Handle R_MIPS16_CALL16 and R_MIPS16_GOT16. Don't create
1541 1.1 christos dynamic relocations for absolute references to __gnu_local_gp.
1542 1.1 christos (_bfd_mips_elf_always_size_sections): Pass a bfd_link_info as
1543 1.1 christos the argument to mips_elf_check_mips16_stubs. Generalize comment.
1544 1.1 christos (_bfd_mips_elf_relocate_section): Use hi16_reloc_p and got16_reloc_p
1545 1.1 christos to generalize relocation checks.
1546 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): If a dynamic MIPS16 function
1547 1.1 christos symbol has a non-MIPS16 stub, redirect the symbol to the stub.
1548 1.1 christos Fix an overly long line. Don't give dynamic symbols type STO_MIPS16.
1549 1.1 christos (_bfd_mips_elf_gc_sweep_hook): Handle R_MIPS16_CALL16 and
1550 1.1 christos R_MIPS16_GOT16.
1551 1.1 christos
1552 1.1 christos 2008-08-06 Alan Modra <amodra (a] bigpond.net.au>
1553 1.1 christos
1554 1.1 christos * elf32-ppc.c (ppc_elf_relax_section): Clear R_PPC_PLTREL24 addend.
1555 1.1 christos (ppc_elf_relocate_section <R_PPC_RELAX32_PLT>): Don't bother here.
1556 1.1 christos
1557 1.1 christos 2008-08-05 Alan Modra <amodra (a] bigpond.net.au>
1558 1.1 christos Jaka Monik <jaka (a] xlab.si>
1559 1.1 christos
1560 1.1 christos * coffcode.h (coff_slurp_line_table): bfd_alloc lineno_cache first
1561 1.1 christos so that we don't inadvertently free it. Use bfd_alloc for sort
1562 1.1 christos arrays, and memcpy sorted line table.
1563 1.1 christos
1564 1.1 christos 2008-08-04 Alan Modra <amodra (a] bigpond.net.au>
1565 1.1 christos
1566 1.1 christos * elf32-spu.c (spu_elf_auto_overlay): Use the maximum possible
1567 1.1 christos if --fixed-space request is too large.
1568 1.1 christos
1569 1.1 christos 2008-08-04 Alan Modra <amodra (a] bigpond.net.au>
1570 1.1 christos
1571 1.1 christos * Makefile.am (SRC-POTFILES.in, BLD-POTFILES.in): Set LC_ALL=C.
1572 1.1 christos * Makefile.in: Regenerate.
1573 1.1 christos * po/SRC-POTFILES.in: Regenerate.
1574 1.1 christos
1575 1.1 christos 2008-08-02 Alan Modra <amodra (a] bigpond.net.au>
1576 1.1 christos
1577 1.1 christos * elf32-spu.c (mark_overlay_section): Move code calculating
1578 1.1 christos max_overlay_size to correct block.
1579 1.1 christos (spu_elf_auto_overlay): Don't use %x in einfo error message.
1580 1.1 christos
1581 1.1 christos 2008-08-01 Alan Modra <amodra (a] bigpond.net.au>
1582 1.1 christos Jan Kratochvil <jan.kratochvil (a] redhat.com>
1583 1.1 christos
1584 1.1 christos * elfcore.h (elf_core_file_p): Ensure we have a backend match
1585 1.1 christos with the correct arch size before rejecting the generic fallback.
1586 1.1 christos * elfcode.h (elf_object_p): Likewise. Ensure arch size matches
1587 1.1 christos before accepting a target.
1588 1.1 christos
1589 1.1 christos 2008-08-01 Alan Modra <amodra (a] bigpond.net.au>
1590 1.1 christos
1591 1.1 christos PR 6774
1592 1.1 christos * elf.c (rewrite_elf_program_header): Don't wrap p_paddr to
1593 1.1 christos include file or program headers.
1594 1.1 christos
1595 1.1 christos 2008-07-30 Alan Modra <amodra (a] bigpond.net.au>
1596 1.1 christos
1597 1.1 christos * coff-ppc.c, coffgen.c, ecoff.c, ecofflink.c, elf.c, elf32-frv.c,
1598 1.1 christos elf32-iq2000.c, elf32-m32c.c, elf32-mep.c, elf32-mt.c,
1599 1.1 christos elf32-sh-symbian.c, elf64-hppa.c, mach-o.c, peXXigen.c, pef.c,
1600 1.1 christos ppcboot.c, vms-misc.c, xsym.c: Silence gcc warnings.
1601 1.1 christos
1602 1.1 christos 2008-07-28 Daniel Jacobowitz <dan (a] codesourcery.com>
1603 1.1 christos
1604 1.1 christos * elfxx-mips.c (mips_elf_calculate_relocation): Avoid generating
1605 1.1 christos relocations for undefined weak symbols with non-default visibility.
1606 1.1 christos (_bfd_mips_elf_check_relocs): Use possibly_dynamic_relocs for
1607 1.1 christos global symbols in shared libraries.
1608 1.1 christos (allocate_dynrelocs): New function.
1609 1.1 christos (_bfd_mips_elf_adjust_dynamic_symbol): Do not handle
1610 1.1 christos possibly_dynamic_relocs here.
1611 1.1 christos (_bfd_mips_elf_size_dynamic_sections): Call allocate_dynrelocs.
1612 1.1 christos
1613 1.1 christos 2008-07-28 Alexandre Oliva <aoliva (a] redhat.com>
1614 1.1 christos
1615 1.1 christos * elf32-i386.c (struct elf_i386_link_hash_table): Added field
1616 1.1 christos tls_module_base.
1617 1.1 christos (elf_i386_link_hash_table_create): Initialize it.
1618 1.1 christos (elf_i386_always_size_sections): Set it.
1619 1.1 christos (set_tls_module_base): New.
1620 1.1 christos (elf_i386_relocate_sections): Call it.
1621 1.1 christos * elf64-x86-64.c (struct elf64_x86_64_link_hash_table): Added
1622 1.1 christos field tls_module_base.
1623 1.1 christos (elf64_x86_64_link_hash_table_create): Initialize it.
1624 1.1 christos (elf64_x86_64_always_size_sections): Set it.
1625 1.1 christos (set_tls_module_base): New.
1626 1.1 christos (elf64_x86_64_relocate_sections): Call it.
1627 1.1 christos Reported by Cary Coutant <ccoutant (a] google.com>
1628 1.1 christos
1629 1.1 christos 2008-07-28 Ineiev <ineiev (a] yahoo.co.uk>
1630 1.1 christos
1631 1.1 christos * elf32-arm.c (arm_map_one_stub): Declare variables at beginning
1632 1.1 christos of block.
1633 1.1 christos * elf32-avr.c (get_local_syms): Likewise.
1634 1.1 christos
1635 1.1 christos 2008-07-28 Alan Modra <amodra (a] bigpond.net.au>
1636 1.1 christos
1637 1.1 christos PR 6769
1638 1.1 christos * bfd-in.h (BFD_VMA_FMT): Define.
1639 1.1 christos (printf_vma, sprintf_vma): Use the above.
1640 1.1 christos (_bfd_int64_low, _bfd_int64_high): Delete.
1641 1.1 christos * bfd-in2.h: Regenerate.
1642 1.1 christos
1643 1.1 christos 2008-07-27 Alan Modra <amodra (a] bigpond.net.au>
1644 1.1 christos
1645 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Ignore return from
1646 1.1 christos elf_parse_notes. Use bfd_malloc_and_get_section.
1647 1.1 christos (elf_parse_notes): Validate note namesz and descsz.
1648 1.1 christos
1649 1.1 christos 2008-07-26 Michael Eager <eager (a] eagercon.com>
1650 1.1 christos
1651 1.1 christos * elf32-ppc.c (ppc_elf_merge_obj_attributes): Check compatibility
1652 1.1 christos between single-float, double-float, and soft-float.
1653 1.1 christos
1654 1.1 christos 2008-07-24 Daniel Jacobowitz <dan (a] codesourcery.com>
1655 1.1 christos
1656 1.1 christos * elf32-mips.c (elf_backend_write_section): Define.
1657 1.1 christos
1658 1.1 christos 2008-07-24 Nick Clifton <nickc (a] redhat.com>
1659 1.1 christos
1660 1.1 christos * elf.c (_bfd_elf_map_sections_to_segments): Catch off by one
1661 1.1 christos error assigning sections to segments.
1662 1.1 christos
1663 1.1 christos 2008-07-22 Nick Clifton <nickc (a] redhat.com>
1664 1.1 christos
1665 1.1 christos * elf.c (_bfd_elf_map_sections_to_segments): Allow sections in
1666 1.1 christos adjoining pages to be included in the same segment.
1667 1.1 christos
1668 1.1 christos 2008-07-22 Simon Baldwin <simonb (a] google.com>
1669 1.1 christos
1670 1.1 christos * elflink.c (elf_link_output_extsym): Set st_size to zero for
1671 1.1 christos symbols from dynamic libraries.
1672 1.1 christos
1673 1.1 christos 2008-07-21 H.J. Lu <hongjiu.lu (a] intel.com>
1674 1.1 christos
1675 1.1 christos PR ld/4424
1676 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Call bed->relocs_compatible
1677 1.1 christos to check if 2 inputs are compatible.
1678 1.1 christos
1679 1.1 christos 2008-07-21 Sterling Augustine <sterling (a] tensilica.com>
1680 1.1 christos
1681 1.1 christos * elf.c (assign_file_positions_for_load_sections): Print vma in
1682 1.1 christos error message about overlapping section vmas.
1683 1.1 christos
1684 1.1 christos 2008-07-21 H.J. Lu <hongjiu.lu (a] intel.com>
1685 1.1 christos
1686 1.1 christos PR ld/6747
1687 1.1 christos * elf32-frv.c (elf32_frv_relocate_section): Revert the change
1688 1.1 christos for PR ld/6446 checked in by accident on May 21, 2008.
1689 1.1 christos
1690 1.1 christos 2008-07-21 Nick Clifton <nickc (a] redhat.com>
1691 1.1 christos
1692 1.1 christos * coff-sh.c (bfd_pe_print_pdata): Define to NULL for non
1693 1.1 christos COFF_WITH_PE based SH ports.
1694 1.1 christos * libpei.h (_bfd_XX_print_ce_compressed_pdata): Prototype.
1695 1.1 christos * arm-wince-pe.c (bfd_pe_print_pdata): Use
1696 1.1 christos _bfd_pe_print_ce_compressed_pdata.
1697 1.1 christos (slurp_symcache, cleanup_syms, pe_print_ce_compressed_pdata): Move
1698 1.1 christos to...
1699 1.1 christos * peXXigen.c: ... here and rename pe_print_ce_compressed_pdata to
1700 1.1 christos _bfd_XX_print_ce_compressed_pdata.
1701 1.1 christos
1702 1.1 christos 2008-07-21 Alan Modra <amodra (a] bigpond.net.au>
1703 1.1 christos
1704 1.1 christos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Drop
1705 1.1 christos unwanted zero terminators.
1706 1.1 christos
1707 1.1 christos 2008-07-21 Alan Modra <amodra (a] bigpond.net.au>
1708 1.1 christos
1709 1.1 christos * elf32-spu.c (spu_elf_relocate_section): Expand
1710 1.1 christos RELOC_FOR_GLOBAL_SYMBOL. Don't warn about undefined symbols for
1711 1.1 christos R_SPU_PPU32 and R_SPU_PPU64 relocations.
1712 1.1 christos
1713 1.1 christos 2008-07-21 Luis Machado <luisgpm (a] br.ibm.com>
1714 1.1 christos
1715 1.1 christos * elf-bfd.h: Declare elfcore_write_ppc_vsx.
1716 1.1 christos * elf.c (elfcore_grok_ppc_vsx): New function.
1717 1.1 christos (elfcore_write_ppc_vsx): New function
1718 1.1 christos (elfcore_grok_note): Handle VSX notes.
1719 1.1 christos (elfcore_write_register_note): Handle VSX notes.
1720 1.1 christos
1721 1.1 christos 2008-07-18 Joseph Myers <joseph (a] codesourcery.com>
1722 1.1 christos
1723 1.1 christos * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add new parameter.
1724 1.1 christos * bfd-in2.h: Regenerate.
1725 1.1 christos * elf32-arm.c (struct elf_arm_obj_tdata): Add field
1726 1.1 christos no_wchar_size_warning.
1727 1.1 christos (bfd_elf32_arm_set_target_relocs): Add new parameter
1728 1.1 christos no_wchar_warn.
1729 1.1 christos (elf32_arm_merge_eabi_attributes): Give a warning, not an error,
1730 1.1 christos for conflicting wchar_t attributes. Do not warn if
1731 1.1 christos --no-wchar-size-warning. Make diagnostic text more specific.
1732 1.1 christos
1733 1.1 christos 2008-07-18 H.J. Lu <hongjiu.lu (a] intel.com>
1734 1.1 christos
1735 1.1 christos PR ld/6748
1736 1.1 christos * elf32-arm.c (elf32_arm_link_hash_table_create): Initialize
1737 1.1 christos new fields added for ARM long call support.
1738 1.1 christos
1739 1.1 christos 2008-07-18 Danny Backx <dannybackx (a] users.sourceforge.net>
1740 1.1 christos
1741 1.1 christos * pe-arm-wince.c (pe_print_compressed_pdata): Define new function to
1742 1.1 christos print compressed pdata structure as described on MSDN. This only
1743 1.1 christos applies to a limited set of architectures (ARM, SH4).
1744 1.1 christos (slurp_symtab, my_symbol_for_address): Define static helper
1745 1.1 christos functions for pe_print_compressed_pdata.
1746 1.1 christos * coffcode.h (bfd_coff_backend_data): Add _bfd_coff_print_pdata field.
1747 1.1 christos (bfd_coff_have_print_pdata, bfd_coff_print_pdata): Define.
1748 1.1 christos * bfd/peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add check on
1749 1.1 christos bfd_coff_backend_data, call the function if non-null.
1750 1.1 christos * pei-mcore.c: Add target dependent initialisation for
1751 1.1 christos bfd_coff_backend_data.
1752 1.1 christos * coff-sh.c: Likewise.
1753 1.1 christos * coff64-rs6000.c: Likewise.
1754 1.1 christos * coff-rs6000.c: Likewise.
1755 1.1 christos * libcoff-in.h: Likewise.
1756 1.1 christos * cf-i386lynx.c: Likewise.
1757 1.1 christos * coff-alpha.c: Likewise.
1758 1.1 christos * coff-apollo.c: Likewise.
1759 1.1 christos * coff-arm.c: Likewise.
1760 1.1 christos * coff-aux.c: Likewise.
1761 1.1 christos * coff-h8300.c: Likewise.
1762 1.1 christos * coff-h8500.c: Likewise.
1763 1.1 christos * coff-i386.c: Likewise.
1764 1.1 christos * coff-i860.c: Likewise.
1765 1.1 christos * coff-i960.c: Likewise.
1766 1.1 christos * coff-ia64.c: Likewise.
1767 1.1 christos * coff-m68k.c: Likewise.
1768 1.1 christos * coff-m88k.c: Likewise.
1769 1.1 christos * coff-maxq.c: Likewise.
1770 1.1 christos * coff-mips.c: Likewise.
1771 1.1 christos * coff-or32.c: Likewise.
1772 1.1 christos * coff-sparc.c: Likewise.
1773 1.1 christos * coff-tic30.c: Likewise.
1774 1.1 christos * coff-tic4x.c: Likewise.
1775 1.1 christos * coff-tic54x.c: Likewise.
1776 1.1 christos * coff-tic80.c: Likewise.
1777 1.1 christos * coff-w65.c: Likewise.
1778 1.1 christos * coff-we32k.c: Likewise.
1779 1.1 christos * coff-x86_64.c: Likewise.
1780 1.1 christos * coff-z80.c: Likewise.
1781 1.1 christos * coff-z8k.c: Likewise.
1782 1.1 christos * pe-mcore.c: Likewise.
1783 1.1 christos * pe-mips.c: Likewise.
1784 1.1 christos * pe-ppc.c: Likewise.
1785 1.1 christos * peXXigen.c: Likewise.
1786 1.1 christos * pei-ppc.c: Likewise.
1787 1.1 christos * libcoff.h: Regenerate.
1788 1.1 christos
1789 1.1 christos 2008-07-16 Bernd Schmidt <bernd.schmidt (a] analog.com>
1790 1.1 christos
1791 1.1 christos * elf32-bfin.c (bfin_check_relocs, bfin_relocate_section,
1792 1.1 christos bfin_final_link_relocate, bfin_gc_mark_hook, bfin_gc_sweep_hook,
1793 1.1 christos ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE,
1794 1.1 christos struct _bfinfdpic_dynamic_got_info): Moved around to keep FD-PIC code
1795 1.1 christos separate from non-FD-PIC.
1796 1.1 christos
1797 1.1 christos 2008-07-14 DJ Delorie <dj (a] redhat.com>
1798 1.1 christos
1799 1.1 christos * elf-m10300.c (mn10300_elf_final_link_relocate): Correct overflow
1800 1.1 christos checks for PCREL8, PCREL16, GOTPC16, GOTOFF16, PLT16, and GOT16
1801 1.1 christos relocs.
1802 1.1 christos (mn10300_elf_relax_section): Correct jump offset check when target
1803 1.1 christos is in a different section.
1804 1.1 christos
1805 1.1 christos 2008-07-15 Jie Zhang <jie.zhang (a] analog.com>
1806 1.1 christos
1807 1.1 christos * elf32-bfin.c (elf32_bfin_special_sections[]): New.
1808 1.1 christos (elf_backend_special_sections): Define.
1809 1.1 christos
1810 1.1 christos 2008-07-13 Craig Silverstein <csilvers (a] google.com>
1811 1.1 christos
1812 1.1 christos PR binutils/6743
1813 1.1 christos * dwarf2.c (struct dwarf2_debug): New variable info_ptr_memory.
1814 1.1 christos (find_line): Use info_ptr_memory instead of sec_info_ptr.
1815 1.1 christos (_bfd_dwarf2_cleanup_debug_info): Likewise.
1816 1.1 christos
1817 1.1 christos 2008-07-12 Jie Zhang <jie.zhang (a] analog.com>
1818 1.1 christos
1819 1.1 christos Revert
1820 1.1 christos 2008-07-12 Jie Zhang <jie.zhang (a] analog.com>
1821 1.1 christos * elf.c (_bfd_elf_map_sections_to_segments): Don't put
1822 1.1 christos executable sections into the same segment with other
1823 1.1 christos read only sections if --sep-code.
1824 1.1 christos * elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
1825 1.1 christos (elf32_bfin_data_in_l1): New variable.
1826 1.1 christos (elf32_bfin_final_write_processing): New.
1827 1.1 christos (elf32_bfin_special_sections[]): New.
1828 1.1 christos (elf_backend_final_write_processing): Define.
1829 1.1 christos (elf_backend_special_sections): Define.
1830 1.1 christos
1831 1.1 christos 2008-07-12 Jie Zhang <jie.zhang (a] analog.com>
1832 1.1 christos
1833 1.1 christos * elf.c (_bfd_elf_map_sections_to_segments): Don't put
1834 1.1 christos executable sections into the same segment with other
1835 1.1 christos read only sections if --sep-code.
1836 1.1 christos * elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
1837 1.1 christos (elf32_bfin_data_in_l1): New variable.
1838 1.1 christos (elf32_bfin_final_write_processing): New.
1839 1.1 christos (elf32_bfin_special_sections[]): New.
1840 1.1 christos (elf_backend_final_write_processing): Define.
1841 1.1 christos (elf_backend_special_sections): Define.
1842 1.1 christos
1843 1.1 christos 2008-07-11 Andreas Schwab <schwab (a] suse.de>
1844 1.1 christos
1845 1.1 christos * dwarf2.c (read_section): Take pointer to bfd_size_type instead
1846 1.1 christos of unsigned long as last parameter.
1847 1.1 christos (struct dwarf2_debug): Define dwarf_abbrev_size, dwarf_line_size,
1848 1.1 christos dwarf_str_size and dwarf_ranges_size as bfd_size_type instead of
1849 1.1 christos unsigned long.
1850 1.1 christos
1851 1.1 christos 2008-07-10 Richard Sandiford <rdsandiford (a] googlemail.com>
1852 1.1 christos
1853 1.1 christos * elfxx-mips.c (mips_elf_calculate_relocation): Calculate GP and GP0
1854 1.1 christos for all relocation types. Allow any type of relocation to refer to
1855 1.1 christos __gnu_local_gp.
1856 1.1 christos
1857 1.1 christos 2008-07-10 Richard Sandiford <rdsandiford (a] googlemail.com>
1858 1.1 christos
1859 1.1 christos * elfxx-mips.c (mips_elf_check_mips16_stubs): Use ELF_ST_IS_MIPS16.
1860 1.1 christos (mips_elf_calculate_relocation): Likewise.
1861 1.1 christos (_bfd_mips_elf_add_symbol_hook): Likewise.
1862 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
1863 1.1 christos (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
1864 1.1 christos
1865 1.1 christos 2008-07-10 Andreas Schwab <schwab (a] suse.de>
1866 1.1 christos
1867 1.1 christos * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Add missing
1868 1.1 christos paren.
1869 1.1 christos
1870 1.1 christos 2008-07-09 Craig Silverstein <csilvers (a] google.com>
1871 1.1 christos
1872 1.1 christos * Makefile.am (BFD32_LIBS): Add compress.lo.
1873 1.1 christos (BFD32_LIBS_CFILES): Add compress.c.
1874 1.1 christos (BFD_H_FILES): Likewise.
1875 1.1 christos * Makefile.in: Regenerate.
1876 1.1 christos * bfd-in2.h: Regenerate.
1877 1.1 christos * config.in: Add HAVE_ZLIB_H
1878 1.1 christos * configure.in: Add test for libz and zlib.h
1879 1.1 christos * configure: Regenerate.
1880 1.1 christos * dwarf2.c (read_section): New function.
1881 1.1 christos (read_indirect_string): Call new function read_section.
1882 1.1 christos (read_abbrevs): Likewise.
1883 1.1 christos (decode_line_info): Likewise.
1884 1.1 christos (read_debug_ranges): Likewise.
1885 1.1 christos (find_line): Call new function read_section when just one
1886 1.1 christos .zdebug_info section is found, otherwise read and compress
1887 1.1 christos multiple sections.
1888 1.1 christos (_bfd_dwarf2_cleanup_debug_info): Free sec_info_ptr.
1889 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Add zdebug prefix.
1890 1.1 christos (special_sections_z): New struct.
1891 1.1 christos (special_sections): Refer to special_sections_z.
1892 1.1 christos * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Recognize
1893 1.1 christos sections named .zdebug_*.
1894 1.1 christos (_bfd_mips_elf_fake_sections): Likewise.
1895 1.1 christos * compress.c: New file.
1896 1.1 christos (bfd_uncompress_section_contents): New function.
1897 1.1 christos
1898 1.1 christos 2008-07-07 Christophe Lyon <christophe.lyon (a] st.com>
1899 1.1 christos
1900 1.1 christos * elf32-arm.c (arm_type_of_stub): Don't crash on local symbols in
1901 1.1 christos the presence of a PLT.
1902 1.1 christos
1903 1.1 christos 2008-07-07 Alan Modra <amodra (a] bigpond.net.au>
1904 1.1 christos
1905 1.1 christos * bfd.c (bfd_demangle): Always trim off bfd_get_symbol_leading_char.
1906 1.1 christos
1907 1.1 christos 2008-07-02 Alan Modra <amodra (a] bigpond.net.au>
1908 1.1 christos
1909 1.1 christos * elf32-ppc.c (is_pic_glink_stub): New function.
1910 1.1 christos (ppc_elf_get_synthetic_symtab): Don't generate symbols when
1911 1.1 christos multiple shared/pie stubs per plt entry.
1912 1.1 christos
1913 1.1 christos 2008-06-30 Richard Sandiford <rdsandiford (a] googlemail.com>
1914 1.1 christos
1915 1.1 christos * elf.c (_bfd_elf_get_synthetic_symtab): Increment p by
1916 1.1 christos bed->s->int_rels_per_ext_rel.
1917 1.1 christos
1918 1.1 christos 2008-06-30 Richard Sandiford <rdsandiford (a] googlemail.com>
1919 1.1 christos
1920 1.1 christos * syms.c (BSF_SYNTHETIC): New flag.
1921 1.1 christos * elf.c (_bfd_elf_get_synthetic_symtab): Set it.
1922 1.1 christos * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Likewise.
1923 1.1 christos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
1924 1.1 christos * bfd-in.h (bfd_asymbol_flavour): Return bfd_target_unknown_flavour
1925 1.1 christos for synthetic symbols.
1926 1.1 christos * bfd-in2.h: Regenerate.
1927 1.1 christos
1928 1.1 christos 2008-06-30 Daniel Jacobowitz <dan (a] codesourcery.com>
1929 1.1 christos
1930 1.1 christos * elf32-arm.c (record_arm_to_thumb_glue, record_thumb_to_arm_glue):
1931 1.1 christos Expand comments.
1932 1.1 christos (arm_map_one_stub): Use | 1 when setting the low bit.
1933 1.1 christos
1934 1.1 christos 2008-06-29 Andreas Schwab <schwab (a] suse.de>
1935 1.1 christos
1936 1.1 christos * elf32-m68k.c (elf_m68k_relocate_section): Don't ignore existing
1937 1.1 christos addend on _GLOBAL_OFFSET_TABLE_.
1938 1.1 christos
1939 1.1 christos 2008-06-24 Daniel Jacobowitz <dan (a] codesourcery.com>
1940 1.1 christos
1941 1.1 christos * elf32-arm.c (STUB_ENTRY_NAME): Define.
1942 1.1 christos (arm_thumb_thumb_long_branch_stub): Use bx instead of b.n.
1943 1.1 christos (arm_pic_long_branch_stub): Mention R_ARM_REL32 instead of
1944 1.1 christos R_ARM_ABS32.
1945 1.1 christos (struct elf32_arm_stub_hash_entry): Add output_name.
1946 1.1 christos (arm_build_one_stub): Move offsets into the offset argument
1947 1.1 christos of _bfd_final_link_relocate. Correct offset for
1948 1.1 christos arm_thumb_arm_v4t_stub_long_branch.
1949 1.1 christos (elf32_arm_size_stubs): Set stub_entry->output_name.
1950 1.1 christos (elf32_arm_ouput_plt_map_sym): Rename to elf32_arm_output_map_sym.
1951 1.1 christos Update all callers.
1952 1.1 christos (elf32_arm_output_stub_sym): New.
1953 1.1 christos (arm_map_one_stub): Correct formatting. Use elf32_arm_output_stub_sym.
1954 1.1 christos
1955 1.1 christos 2008-06-20 Alan Modra <amodra (a] bigpond.net.au>
1956 1.1 christos
1957 1.1 christos * elf32-spu.c (needs_ovl_stub): Correctly return nonovl_stub for
1958 1.1 christos non-branch insns.
1959 1.1 christos
1960 1.1 christos 2008-06-20 Alan Modra <amodra (a] bigpond.net.au>
1961 1.1 christos
1962 1.1 christos * elf32-spu.c (build_stub): Allow wraparound on stub branches.
1963 1.1 christos (allocate_spuear_stubs, build_spuear_stubs): Return value from
1964 1.1 christos count_stub/build_stub.
1965 1.1 christos (spu_elf_build_stubs): Correct location of stub reloc error message.
1966 1.1 christos
1967 1.1 christos 2008-06-18 M R Swami Reddy <MR.Swami.Reddy (a] nsc.com>
1968 1.1 christos
1969 1.1 christos * elf32-cr16.c (ELF_MACHINE_ALT1): Define to EM_CR16_OLD.
1970 1.1 christos
1971 1.1 christos 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
1972 1.1 christos
1973 1.1 christos * configure: Regenerate.
1974 1.1 christos
1975 1.1 christos 2008-06-17 Alan Modra <amodra (a] bigpond.net.au>
1976 1.1 christos
1977 1.1 christos * elf32-spu.c (struct spu_link_hash_table): Add extra_stack_space.
1978 1.1 christos (spu_elf_check_vma): Add extra_stack_space param, copy to htab.
1979 1.1 christos (spu_elf_auto_overlay): Use it.
1980 1.1 christos (RECURSE_UNMARK): Define as 0.
1981 1.1 christos (unmark_overlay_section): Heed RECURSE_UNMARK.
1982 1.1 christos * elf32-spu.h (spu_elf_check_vma): Update prototype.
1983 1.1 christos
1984 1.1 christos 2008-06-12 DJ Delorie <dj (a] redhat.com>
1985 1.1 christos
1986 1.1 christos * elf32-m32c.c (ELF_MACHINE_ALT1): Define as EM_M32C_OLD.
1987 1.1 christos
1988 1.1 christos 2008-06-09 Paul Brook <paul (a] codesourcery.com>
1989 1.1 christos
1990 1.1 christos bfd/
1991 1.1 christos * elf32-arm.c (elf32_arm_merge_private_bfd_data): Allow BE8 shared
1992 1.1 christos libraries.
1993 1.1 christos
1994 1.1 christos 2008-06-09 Christophe Lyon <christophe.lyon (a] st.com>
1995 1.1 christos
1996 1.1 christos * elf32-arm.c (arm_stub_is_thumb): Define.
1997 1.1 christos (elf32_arm_final_link_relocate): Handle near mode switching stubs.
1998 1.1 christos
1999 1.1 christos 2008-06-07 Alan Modra <amodra (a] bigpond.net.au>
2000 1.1 christos
2001 1.1 christos * elf32-spu.c (spu_elf_auto_overlay): Add valid area below sp
2002 1.1 christos to stack calculation.
2003 1.1 christos
2004 1.1 christos 2008-06-06 Paul Brook <paul (a] codesourcery.com>
2005 1.1 christos
2006 1.1 christos bfd/
2007 1.1 christos * elf32-arm.c (elf32_arm_merge_private_bfd_data): Reject BE8 input.
2008 1.1 christos
2009 1.1 christos 2008-06-06 Alan Modra <amodra (a] bigpond.net.au>
2010 1.1 christos
2011 1.1 christos * elf32-spu.c (spu_elf_auto_overlay): Relax requirement that
2012 1.1 christos file names be unique. Specify archive:path in overlay script.
2013 1.1 christos
2014 1.1 christos 2008-06-05 Alan Modra <amodra (a] bigpond.net.au>
2015 1.1 christos
2016 1.1 christos PR ld/6590
2017 1.1 christos * elf64-ppc.c (ppc_build_one_stub): Correct reloc offsets.
2018 1.1 christos
2019 1.1 christos 2008-06-04 Alan Modra <amodra (a] bigpond.net.au>
2020 1.1 christos
2021 1.1 christos * elf.c (ignore_section_sym): Don't test section sym value here.
2022 1.1 christos (elf_map_symbols): Instead check zero value here as was done prior
2023 1.1 christos to 2006-05-26 change.
2024 1.1 christos
2025 1.1 christos 2008-06-04 Nick Clifton <nickc (a] redhat.com>
2026 1.1 christos
2027 1.1 christos PR ld/6019
2028 1.1 christos * elf32-avr.c (elf32_avr_relax_section): Handle the case where
2029 1.1 christos there are no local symbols.
2030 1.1 christos
2031 1.1 christos 2008-06-04 Alan Modra <amodra (a] bigpond.net.au>
2032 1.1 christos
2033 1.1 christos * elf32-spu.c (get_sym_h): Don't attempt to read global syms.
2034 1.1 christos (process_stubs): Likewise.
2035 1.1 christos (discover_functions): Don't used cached symbols.
2036 1.1 christos (maybe_insert_function): Correct condition under which function
2037 1.1 christos array is realloc'd.
2038 1.1 christos (mark_functions_via_relocs): Delete unused variable.
2039 1.1 christos
2040 1.1 christos 2008-05-30 Frediano Ziglio <frediano.ziglio (a] vodafone.com>
2041 1.1 christos Nick Clifton <nickc (a] redhat.com>
2042 1.1 christos
2043 1.1 christos PR ld/6511
2044 1.1 christos * elf64-hppa.c (allocate_global_data_opd): Default to using the
2045 1.1 christos dynamic symbol table for local function names in shared libraries.
2046 1.1 christos
2047 1.1 christos 2008-05-29 Jan Kratochvil <jan.kratochvil (a] redhat.com>
2048 1.1 christos
2049 1.1 christos * elf.c (assign_file_positions_for_load_sections): Adjust pre-section
2050 1.1 christos gaps based on VMA and P_VADDR instead of LMA and P_PADDR addresses.
2051 1.1 christos
2052 1.1 christos 2008-05-28 Alan Modra <amodra (a] bigpond.net.au>
2053 1.1 christos
2054 1.1 christos * elf32-spu.c (spu_elf_object_p): New function.
2055 1.1 christos (elf_backend_object_p): Define.
2056 1.1 christos (build_stub): Correct second word of 8 byte overlay stubs.
2057 1.1 christos (spu_elf_relocate_section): Formatting.
2058 1.1 christos
2059 1.1 christos 2008-05-24 Carlos Eduardo Seo <cseo (a] linux.vnet.ibm.com>
2060 1.1 christos
2061 1.1 christos * elf.c (elfcore_write_register_note): New function.
2062 1.1 christos * elf-bfd.h (elfcore_write_register_note): New prototype.
2063 1.1 christos
2064 1.1 christos 2008-05-22 Christophe Lyon <christophe.lyon (a] st.com>
2065 1.1 christos
2066 1.1 christos * elf32-arm.c (arm_type_of_stub): Ignore STT_SECTION symbols.
2067 1.1 christos (elf32_arm_stub_add_mapping_symbol): Remove.
2068 1.1 christos (elf32_arm_add_stub): Don't generate mapping symbols. Change
2069 1.1 christos prototype.
2070 1.1 christos (elf32_arm_size_stubs): Use new elf32_arm_add_stub
2071 1.1 christos prototype. Don't generate thumb to arm glue for calls.
2072 1.1 christos (arm_map_one_stub): Define.
2073 1.1 christos (elf32_arm_output_arch_local_syms): Generate mapping symbols for
2074 1.1 christos long calls stubs.
2075 1.1 christos
2076 1.1 christos 2008-05-21 Nick Clifton <nickc (a] redhat.com>
2077 1.1 christos
2078 1.1 christos * elf32-arm.c (group_sections): Reformat comments.
2079 1.1 christos
2080 1.1 christos PR ld/6446
2081 1.1 christos * elf32-frv.c (elf32_frv_relocate_section): Set EF_FRV_PIC by
2082 1.1 christos default (for FDPIC). Clear it if any inter-segment relocations
2083 1.1 christos are found.
2084 1.1 christos
2085 1.1 christos * elf64-hppa.c (elf64_hppa_finalize_opd): Check NULL return
2086 1.1 christos from elf_link_hash_lookup.
2087 1.1 christos
2088 1.1 christos 2008-05-21 Maxim Kuvyrkov <maxim (a] codesourcery.com>
2089 1.1 christos
2090 1.1 christos Add multi-GOT support for m68k.
2091 1.1 christos * elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
2092 1.1 christos glist): New fields.
2093 1.1 christos (struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
2094 1.1 christos struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
2095 1.1 christos struct elf_m68k_multi_got): New data structures.
2096 1.1 christos (struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
2097 1.1 christos allow_multigot_p, multi_got_): New fields.
2098 1.1 christos (elf_m68k_multi_got): New macro.
2099 1.1 christos (elf_m68k_link_hash_newfunc): Initialize new fields of
2100 1.1 christos struct elf_m68k_link_hash_entry.
2101 1.1 christos (elf_m68k_link_hash_table_create): Initialize new fields of
2102 1.1 christos struct elf_m68k_link_hash_table.
2103 1.1 christos (elf_m68k_link_hash_table_free): New static function implementing hook.
2104 1.1 christos (elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
2105 1.1 christos static functions for struct elf_m68k_got.
2106 1.1 christos (elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
2107 1.1 christos elf_m68k_got_entry_eq): New static functions for
2108 1.1 christos struct elf_m68k_got_entry.
2109 1.1 christos (ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
2110 1.1 christos ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
2111 1.1 christos (enum elf_m68k_get_entry_howto): New enum.
2112 1.1 christos (elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
2113 1.1 christos elf_m68k_remove_got_entry_type): New static functions for
2114 1.1 christos struct elf_m68k_got_entry.
2115 1.1 christos (elf_m68k_add_entry_to_got): New static function.
2116 1.1 christos (elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
2117 1.1 christos elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
2118 1.1 christos functions for struct elf_m68k_bfd2got_entry.
2119 1.1 christos (struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
2120 1.1 christos elf_m68k_can_merge_gots): New traversal.
2121 1.1 christos (struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
2122 1.1 christos elf_m68k_merge_gots): Ditto.
2123 1.1 christos (struct elf_m68k_finalize_got_offsets_arg,
2124 1.1 christos elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
2125 1.1 christos (struct elf_m68k_partition_multi_got_arg,
2126 1.1 christos elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
2127 1.1 christos elf_m68k_partition_multi_got): Ditto.
2128 1.1 christos (elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
2129 1.1 christos functions.
2130 1.1 christos (elf_m68k_copy_indirect_symbol): New static function implementing
2131 1.1 christos a hook.
2132 1.1 christos (elf_m68k_check_relocs): Update to add entries to multi-GOT.
2133 1.1 christos (elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
2134 1.1 christos (elf_m68k_always_size_sections): Assign BFDs to GOTs.
2135 1.1 christos (elf_m68k_relocate_section): Update to properly handle GOT relocations.
2136 1.1 christos (elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
2137 1.1 christos of a global symbol.
2138 1.1 christos (bfd_elf_m68k_set_target_options): New function.
2139 1.1 christos (bfd_elf32_bfd_link_hash_table_free): Define hook.
2140 1.1 christos (bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
2141 1.1 christos to skip generic calculation of GOT offsets.
2142 1.1 christos (elf_backend_copy_indirect_symbol): Define hook.
2143 1.1 christos * bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
2144 1.1 christos * bfd-in2.h: Regenerate.
2145 1.1 christos
2146 1.1 christos 2008-05-21 Andr Johansen <andrejoh (a] gmail.com>
2147 1.1 christos
2148 1.1 christos PR 868
2149 1.1 christos * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free memory allocated
2150 1.1 christos for filenames in function tables and variable tables.
2151 1.1 christos
2152 1.1 christos 2008-05-19 Alan Modra <amodra (a] bigpond.net.au>
2153 1.1 christos
2154 1.1 christos PR 2995, PR 6473
2155 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Leave lma equal to
2156 1.1 christos vma when all p_paddr fields are zero and there is more than
2157 1.1 christos one PT_LOAD header.
2158 1.1 christos
2159 1.1 christos 2008-05-15 Christophe Lyon <christophe.lyon (a] st.com>
2160 1.1 christos
2161 1.1 christos Add long call support for ARM.
2162 1.1 christos * elf32-arm.c (THM2_MAX_FWD_BRANCH_OFFSET): Define.
2163 1.1 christos (THM2_MAX_BWD_BRANCH_OFFSET): Define.
2164 1.1 christos (ARM_MAX_FWD_BRANCH_OFFSET): Define.
2165 1.1 christos (ARM_MAX_BWD_BRANCH_OFFSET): Define.
2166 1.1 christos (THM_MAX_FWD_BRANCH_OFFSET): Define.
2167 1.1 christos (THM_MAX_BWD_BRANCH_OFFSET): Define.
2168 1.1 christos (arm_long_branch_stub): Define.
2169 1.1 christos (arm_pic_long_branch_stub): Define.
2170 1.1 christos (arm_thumb_v4t_long_branch_stub): Define.
2171 1.1 christos (arm_thumb_thumb_long_branch_stub): Define.
2172 1.1 christos (arm_thumb_arm_v4t_long_branch_stub): Define.
2173 1.1 christos (STUB_SUFFIX): Define.
2174 1.1 christos (elf32_arm_stub_type): Define.
2175 1.1 christos (elf32_arm_stub_hash_entry): Define.
2176 1.1 christos (elf32_arm_link_hash_entry): Add stub_cache field.
2177 1.1 christos (arm_stub_hash_lookup): Define.
2178 1.1 christos (elf32_arm_link_hash_table): Add stub_hash_table, stub_bfd,
2179 1.1 christos add_stub_section, layout_sections_again, stub_group, bfd_count,
2180 1.1 christos top_index, input_list fields.
2181 1.1 christos (elf32_arm_link_hash_newfunc): Init new field.
2182 1.1 christos (stub_hash_newfunc): New function.
2183 1.1 christos (elf32_arm_link_hash_table_create): Init stub_hash_table.
2184 1.1 christos (elf32_arm_hash_table_free): New function.
2185 1.1 christos (arm_type_of_stub): New function.
2186 1.1 christos (elf32_arm_stub_name): New function.
2187 1.1 christos (elf32_arm_get_stub_entry): New function.
2188 1.1 christos (elf32_arm_stub_add_mapping_symbol): New function.
2189 1.1 christos (elf32_arm_add_stub): New function.
2190 1.1 christos (arm_build_one_stub): New function.
2191 1.1 christos (arm_size_one_stub): New function.
2192 1.1 christos (elf32_arm_setup_section_lists): New function.
2193 1.1 christos (elf32_arm_next_input_section): New function.
2194 1.1 christos (group_sections): New function.
2195 1.1 christos (elf32_arm_size_stubs): New function.
2196 1.1 christos (elf32_arm_build_stubs): New function.
2197 1.1 christos (bfd_elf32_arm_add_glue_sections_to_bfd): Skip stub sections.
2198 1.1 christos (bfd_elf32_arm_process_before_allocation): No longer handle
2199 1.1 christos R_ARM_CALL and R_ARM_THM_CALL.
2200 1.1 christos (using_thumb_only): New function.
2201 1.1 christos (elf32_arm_final_link_relocate): Redirect calls to stub if range
2202 1.1 christos exceeds encoding capabilities.
2203 1.1 christos (bfd_elf32_bfd_link_hash_table_free): Define.
2204 1.1 christos * bfd-in.h (R_ARM_max): Fix value to 130.
2205 1.1 christos (elf32_arm_setup_section_lists): Protype.
2206 1.1 christos (elf32_arm_next_input_section): Protype.
2207 1.1 christos (elf32_arm_size_stubs): Protype.
2208 1.1 christos (elf32_arm_build_stubs): Protype.
2209 1.1 christos * bfd-in2.h: Regenerate.
2210 1.1 christos
2211 1.1 christos 2008-05-14 Ulrich Weigand <uweigand (a] de.ibm.com>
2212 1.1 christos
2213 1.1 christos * elf32-ppc.c (ppc_elf_get_synthetic_symtab): Fix memset calls.
2214 1.1 christos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
2215 1.1 christos
2216 1.1 christos 2008-05-14 Alan Modra <amodra (a] bigpond.net.au>
2217 1.1 christos
2218 1.1 christos * Makefile.am: Run "make dep-am".
2219 1.1 christos * Makefile.in: Regenerate.
2220 1.1 christos
2221 1.1 christos 2008-05-14 Ulrich Weigand <uweigand (a] de.ibm.com>
2222 1.1 christos Alan Modra <amodra (a] bigpond.net.au>
2223 1.1 christos
2224 1.1 christos * elf32-ppc.c (section_covers_vma): New function.
2225 1.1 christos (ppc_elf_get_synthetic_symtab): New function.
2226 1.1 christos (bfd_elf32_get_synthetic_symtab): Define.
2227 1.1 christos * elf64-ppc.c (section_covers_vma): New function.
2228 1.1 christos (ppc64_elf_get_synthetic_symtab): Generate sym@plt on glink branch
2229 1.1 christos table entries, and __glink_PLTresolve on resolver stub.
2230 1.1 christos (ppc64_elf_build_stubs): Rename __glink sym to __glink_PLTresolve.
2231 1.1 christos
2232 1.1 christos 2008-05-12 Alan Modra <amodra (a] bigpond.net.au>
2233 1.1 christos
2234 1.1 christos PR 6443
2235 1.1 christos * elf32-ppc.c (MUST_BE_DYN_RELOC): Delete.
2236 1.1 christos (must_be_dyn_reloc): New function.
2237 1.1 christos (ppc_elf_check_relocs): Don't set DF_STATIC_TLS for tprel relocs
2238 1.1 christos in pies.
2239 1.1 christos (ppc_elf_tls_optimize): Optimise pies.
2240 1.1 christos (ppc_elf_relocate_section): Use a section symbol rather than no
2241 1.1 christos symbol if possible for LD->IE TLS sequence, but don't error if
2242 1.1 christos we must use no symbol.
2243 1.1 christos * elf64-ppc.c (MUST_BE_DYN_RELOC): As for elf32-ppc.c.
2244 1.1 christos (must_be_dyn_reloc): Likewise.
2245 1.1 christos (ppc64_elf_check_relocs): Likewise.
2246 1.1 christos (ppc64_elf_tls_optimize): Likewise.
2247 1.1 christos (ppc64_elf_relocate_section): Likewise.
2248 1.1 christos
2249 1.1 christos 2008-05-12 Alan Modra <amodra (a] bigpond.net.au>
2250 1.1 christos
2251 1.1 christos * elf32-spu.c (spu_elf_relocate_section): Rename is_ea to is_ea_sym.
2252 1.1 christos
2253 1.1 christos 2008-05-10 Paul Pluzhnikov <ppluzhnikov (a] google.com>
2254 1.1 christos
2255 1.1 christos * elfcore.h (elf_core_file_p): Warn about core truncation.
2256 1.1 christos
2257 1.1 christos 2008-05-07 Bob Wilson <bob.wilson (a] acm.org>
2258 1.1 christos
2259 1.1 christos * elf32-xtensa.c (xtensa_property_section_name): New.
2260 1.1 christos (xtensa_make_property_section): New.
2261 1.1 christos (xtensa_get_property_section): Make static. Do not create a new
2262 1.1 christos section if it does not exist.
2263 1.1 christos
2264 1.1 christos 2008-05-08 Alan Modra <amodra (a] bigpond.net.au>
2265 1.1 christos
2266 1.1 christos * elf32-spu.c (spu_elf_special_sections): Add "._ea".
2267 1.1 christos (spu_elf_relocate_section): Handle relocations against symbols
2268 1.1 christos defined in ._ea specially.
2269 1.1 christos
2270 1.1 christos 2008-05-03 Daniel Jacobowitz <dan (a] codesourcery.com>
2271 1.1 christos
2272 1.1 christos * elf32-arm.c (elf32_arm_symbian_link_hash_table_create): Use
2273 1.1 christos ARRAY_SIZE.
2274 1.1 christos (elf32_arm_symbian_plt_sym_val): New.
2275 1.1 christos (elf_backend_plt_sym_val): Define.
2276 1.1 christos
2277 1.1 christos 2008-05-03 Alan Modra <amodra (a] bigpond.net.au>
2278 1.1 christos
2279 1.1 christos PR 2995, PR 6473
2280 1.1 christos * elf.c (rewrite_elf_program_header): Rather than clearing
2281 1.1 christos p_paddr_valid at end, don't set it in the first place. Delete
2282 1.1 christos comment no longer relevant. When not p_paddr_valid, don't set
2283 1.1 christos paddr from vaddr, and don't set p_vaddr_offset.
2284 1.1 christos
2285 1.1 christos 2008-05-01 Cary Coutant <ccoutant (a] google.com>
2286 1.1 christos
2287 1.1 christos * elf.c (bfd_elf_get_str_section): Fix memory leak caused by
2288 1.1 christos corrupt string table.
2289 1.1 christos
2290 1.1 christos 2008-05-01 Joel Brobecker <brobecker (a] adacore.com>
2291 1.1 christos
2292 1.1 christos * cache.c (cache_bread_1): Renames cache_bread.
2293 1.1 christos (cache_bread): New function.
2294 1.1 christos
2295 1.1 christos 2008-05-01 Alan Modra <amodra (a] bigpond.net.au>
2296 1.1 christos
2297 1.1 christos PR 2995, PR 6473
2298 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Always set lma from p_paddr.
2299 1.1 christos (assign_file_positions_for_load_sections): Combine nested "if".
2300 1.1 christos (copy_elf_program_header): Don't set p_paddr_valid or p_vaddr_offset
2301 1.1 christos when all header p_paddr fields are zero.
2302 1.1 christos
2303 1.1 christos 2008-04-30 Edmar Wienskoski <edmar (a] freescale.com>
2304 1.1 christos
2305 1.1 christos * cpu-powerpc.c (bfd_powerpc_archs): Add e500mc entry.
2306 1.1 christos
2307 1.1 christos 2008-04-29 Daniel Jacobowitz <dan (a] codesourcery.com>
2308 1.1 christos
2309 1.1 christos * elf.c (_bfd_elf_get_dynamic_reloc_upper_bound)
2310 1.1 christos (_bfd_elf_canonicalize_dynamic_reloc): Find dynamic relocations
2311 1.1 christos even if they are not loaded.
2312 1.1 christos * elflink.c (_bfd_elf_init_2_index_sections): Set data_index_section
2313 1.1 christos first.
2314 1.1 christos
2315 1.1 christos 2008-04-25 Jay Foad <jay.foad (a] gmail.com>
2316 1.1 christos
2317 1.1 christos * reloc16.c (bfd_coff_reloc16_get_value): Add support for
2318 1.1 christos undefined weak symbols.
2319 1.1 christos
2320 1.1 christos 2008-04-25 Nick Clifton <nickc (a] redhat.com>
2321 1.1 christos
2322 1.1 christos * po/vi.po: Updated Vietnamese translation.
2323 1.1 christos
2324 1.1 christos 2008-04-23 Paolo Bonzini <bonzini (a] gnu.org>
2325 1.1 christos
2326 1.1 christos * aclocal.m4: Regenerate.
2327 1.1 christos * configure: Regenerate.
2328 1.1 christos
2329 1.1 christos 2008-04-21 Cary Coutant <ccoutant (a] google.com>
2330 1.1 christos
2331 1.1 christos * archive.c (_bfd_write_archive_contents): Fix incorrect use of
2332 1.1 christos ARFMAG.
2333 1.1 christos
2334 1.1 christos 2008-04-21 Nathan Sidwell <nathan (a] codesourcery.com>
2335 1.1 christos
2336 1.1 christos * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Don't
2337 1.1 christos set the value of undefined symbols in shared objects.
2338 1.1 christos (_bfd_mips_vxworks_finish_dynamic_symbol): Clear value for
2339 1.1 christos undefined symbols unless pointer equality is needed.
2340 1.1 christos
2341 1.1 christos 2008-04-18 Dennis Roberts <dennis.roberts (a] sunquestinfo.com>
2342 1.1 christos
2343 1.1 christos * aix5ppc-core.c: Define macros for the default architecture and
2344 1.1 christos machine for matching core files.
2345 1.1 christos (xcoff64_core_p): Set the architecture and machine to the default
2346 1.1 christos values defined in the macros mentioned above.
2347 1.1 christos * rs6000-core.c: Define macros to determine whether or not the
2348 1.1 christos core file header uses the core_dumpxx header format.
2349 1.1 christos (rs6000coff_core_p): Don't match core files that use the
2350 1.1 christos core_dumpxx header format.
2351 1.1 christos
2352 1.1 christos 2008-04-16 Pedro Alves <pedro (a] codesourcery.com>
2353 1.1 christos
2354 1.1 christos * config.bfd (i[3-7]86-*-dicos*, x86_64-*-dicos*): Add.
2355 1.1 christos
2356 1.1 christos 2008-04-16 David S. Miller <davem (a] davemloft.net>
2357 1.1 christos
2358 1.1 christos * reloc.c (BFD_RELOC_SPARC_GOTDATA_HIX22,
2359 1.1 christos BFD_RELOC_SPARC_GOTDATA_LOX10, BFD_RELOC_SPARC_GOTDATA_OP_HIX22,
2360 1.1 christos BFD_RELOC_SPARC_GOTDATA_OP_LOX10, BFD_RELOC_SPARC_GOTDATA_OP): New.
2361 1.1 christos * libbfd.h: Regnerate.
2362 1.1 christos * bfd-in2.h: Regenerate.
2363 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_howto_table): Add entries for
2364 1.1 christos GOTDATA relocations.
2365 1.1 christos (sparc_reloc_map): Likewise.
2366 1.1 christos (_bfd_sparc_elf_check_relocs): Handle R_SPARC_GOTDATA_* like
2367 1.1 christos R_SPARC_GOT*.
2368 1.1 christos (_bfd_sparc_elf_gc_sweep_hook): Likewise.
2369 1.1 christos (_bfd_sparc_elf_relocate_section): Transform R_SPARC_GOTDATA_HIX22,
2370 1.1 christos R_SPARC_GOTDATA_LOX10, R_SPARC_GOTDATA_OP_HIX22, and
2371 1.1 christos R_SPARC_GOTDATA_OP_LOX10 into the equivalent R_SPARC_GOT* reloc.
2372 1.1 christos Simply ignore R_SPARC_GOTDATA_OP relocations.
2373 1.1 christos
2374 1.1 christos 2008-04-14 Aurelien Jarno <aurelien (a] aurel32.net>
2375 1.1 christos
2376 1.1 christos * configure.in: Link with the PIC version of libiberty on
2377 1.1 christos Linux/MIPS hosts.
2378 1.1 christos * configure: Regenerate.
2379 1.1 christos
2380 1.1 christos 2008-04-14 Edmar Wienskoski <edmar (a] freescale.com>
2381 1.1 christos
2382 1.1 christos * archures.c: Add bfd_mach_ppc_e500mc.
2383 1.1 christos * bfd-in2.h: Regenerate.
2384 1.1 christos
2385 1.1 christos 2008-04-08 Alan Modra <amodra (a] bigpond.net.au>
2386 1.1 christos
2387 1.1 christos * elf32-spu.c (spu_elf_build_stubs): Correct error message.
2388 1.1 christos (mark_functions_via_relocs): Remove premature init of symtab_hdr.
2389 1.1 christos (collect_overlays): Commment typo fix.
2390 1.1 christos
2391 1.1 christos 2008-04-08 Kees Cook <kees (a] canonical.com>
2392 1.1 christos
2393 1.1 christos * elflink.c (bfd_elf_size_dynamic_sections): Ignore GNU-stack note
2394 1.1 christos in EXEC_P bfds.
2395 1.1 christos
2396 1.1 christos 2008-04-08 Alan Modra <amodra (a] bigpond.net.au>
2397 1.1 christos
2398 1.1 christos * elf32-spu.c: Include libiberty.h.
2399 1.1 christos (struct spu_link_hash_table): Add local_stire, overlay_fixed, reserved,
2400 1.1 christos non_ovly_stub, spu_elf_load_ovl_mgr, spu_elf_open_overlay_script,
2401 1.1 christos spu_elf_relink, auto_overlay fields.
2402 1.1 christos (AUTO_OVERLAY, AUTO_RELINK, OVERLAY_RODATA): Define.
2403 1.1 christos (needs_ovl_stub): Flip test so that call to non-function warning
2404 1.1 christos is emitted during relocate_section rather than earlier.
2405 1.1 christos (spu_elf_check_vma): Stash --auto-overlay parameters, and clear
2406 1.1 christos auto_overlay if no section exceeds local store.
2407 1.1 christos (struct call_info): Add count, max_depth, is_pasted fields.
2408 1.1 christos (struct function_info): Add rodata, last_caller, call_count,
2409 1.1 christos depth, new visit flags.
2410 1.1 christos (insert_callee): Increment call count.
2411 1.1 christos (copy_callee): New function.
2412 1.1 christos (mark_functions_via_relocs): Investigate all reloc types to count
2413 1.1 christos possible function pointer stubs for --auto-overlay. Track
2414 1.1 christos last_caller and increment function call_count.
2415 1.1 christos (pasted_function): Insert a "call" into call info for pasted section.
2416 1.1 christos (remove_cycles): Track max depth of calls. Don't emit call graph
2417 1.1 christos pruning warning for --auto-overlay.
2418 1.1 christos (build_call_tree): Don't transfer_calls for --auto-overlay.
2419 1.1 christos Adjust remove_cycles call.
2420 1.1 christos (sort_calls, sort_lib, sort_bfds): New functions.
2421 1.1 christos (struct _mos_param, struct _uos_param, struct _cl_param): New.
2422 1.1 christos (mark_overlay_section, unmark_overlay_section): New functions.
2423 1.1 christos (collect_lib_sectios, auto_ovl_lib_functions): New functions.
2424 1.1 christos (collect_overlays, find_pasted_call): New functions.
2425 1.1 christos (sum_stack): Deal with is_pasted "calls". Exit before printing
2426 1.1 christos when --auto-overlay.
2427 1.1 christos (spu_elf_auto_overlay): New function.
2428 1.1 christos (spu_elf_final_link): Call spu_elf_auto_overlay.
2429 1.1 christos * elf32-spu.h (spu_elf_check_vma): Update prototype.
2430 1.1 christos
2431 1.1 christos 2008-04-07 Alan Modra <amodra (a] bigpond.net.au>
2432 1.1 christos
2433 1.1 christos * elf32-spu.c (allocate_spuear_stubs): Ensure _SPUEAR_ symbol
2434 1.1 christos is defined in overlay section before creating a stub.
2435 1.1 christos (build_spuear_stubs): Likewise.
2436 1.1 christos (spu_elf_size_stubs, spu_elf_build_stubs): Adjust calls.
2437 1.1 christos
2438 1.1 christos 2008-04-02 Alan Modra <amodra (a] bigpond.net.au>
2439 1.1 christos
2440 1.1 christos * elf32-spu.c (insert_callee): Reorder call list so most recent
2441 1.1 christos call is always first.
2442 1.1 christos (interesting_section): Move.
2443 1.1 christos (mark_functions_via_relocs): Fold interesting_section and
2444 1.1 christos reloc_count tests in callers to here. Simplify output section
2445 1.1 christos owner test.
2446 1.1 christos (discover_functions): Set "gaps" when no symbols and some
2447 1.1 christos "interesting_section". Run pasted_function loop for no symbol
2448 1.1 christos bfds.
2449 1.1 christos (for_each_node, transfer_calls): New functions.
2450 1.1 christos (mark_non_root): Adjust to suit for_each_node.
2451 1.1 christos (call_graph_traverse): Likewise. Fix memory leak. Rename to..
2452 1.1 christos (remove_cycles): ..this.
2453 1.1 christos (build_call_tree): Use for_each_node and transfer_calls.
2454 1.1 christos (struct _sum_stack_param): New.
2455 1.1 christos (sum_stack): Adjust to suit for_each_node. Return error on
2456 1.1 christos malloc failure. Move code to print root node cumulative stack from..
2457 1.1 christos (spu_elf_stack_analysis): ..here. Use for_each_node.
2458 1.1 christos
2459 1.1 christos 2008-03-31 Cary Coutant <ccoutant (a] google.com>
2460 1.1 christos
2461 1.1 christos PR 6006
2462 1.1 christos * archive.c (_bfd_slurp_extended_name_table): Change
2463 1.1 christos ARFMAG[0] to ARFMAG[1].
2464 1.1 christos (_bfd_construct_extended_name_table): Likewise.
2465 1.1 christos
2466 1.1 christos 2008-03-31 Daniel Jacobowitz <dan (a] codesourcery.com>
2467 1.1 christos
2468 1.1 christos * elfxx-mips.c (mips_elf_record_got_page_entry): Update comment.
2469 1.1 christos (_bfd_mips_elf_check_relocs): Update comments. Always call
2470 1.1 christos mips_elf_record_got_page_entry for R_MIPS_GOT_PAGE.
2471 1.1 christos
2472 1.1 christos 2008-03-27 Cary Coutant <ccoutant (a] google.com>
2473 1.1 christos
2474 1.1 christos Add support for thin archives.
2475 1.1 christos * archive.c (_bfd_find_nested_archive): New function.
2476 1.1 christos (get_extended_arelt_filename): Add origin parameter.
2477 1.1 christos (_bfd_generic_read_ar_hdr_mag): Deal with extended name
2478 1.1 christos combined with a file offset.
2479 1.1 christos (append_relative_path): New function.
2480 1.1 christos (_bfd_get_elt_at_filepos): Deal with external members and
2481 1.1 christos nested archives.
2482 1.1 christos (bfd_generic_openr_next_archived_file): Thin archives.
2483 1.1 christos (bfd_generic_archive_p): Recognize new magic string.
2484 1.1 christos (adjust_relative_path): New function.
2485 1.1 christos (_bfd_construct_extended_name_table): Construct extended
2486 1.1 christos names for thin archive members.
2487 1.1 christos (_bfd_write_archive_contents): Emit new magic string, skip
2488 1.1 christos copying files for thin archives.
2489 1.1 christos * bfd-in.h (bfd_is_thin_archive): New macro.
2490 1.1 christos * bfd.c (struct bfd): New fields for thin archives.
2491 1.1 christos * libbfd-in.h (struct areltdata): New field for thin archives.
2492 1.1 christos * opncls.c (bfd_close): Delete BFDs for nested archives.
2493 1.1 christos
2494 1.1 christos 2008-03-25 Bernd Schmidt <bernd.schmidt (a] analog.com>
2495 1.1 christos
2496 1.1 christos * elf32-bfin.c (bfin_final_link_relocate): New function, wrapper around
2497 1.1 christos _bfd_final_link_relocate that also handles R_pcrel24 relocs.
2498 1.1 christos (bfinfdpic_relocate_section, bfin_relocate_section): Use it.
2499 1.1 christos
2500 1.1 christos 2008-03-25 Nathan Sidwell <nathan (a] codesourcery.com>
2501 1.1 christos
2502 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Skip dynamic relocs
2503 1.1 christos in vxworks tls_vars sections.
2504 1.1 christos (allocate_dynrelocs, elf32_arm_size_dynamic_sections): Likewise.
2505 1.1 christos * elf32-i386.c (allocate_dynrelocs,
2506 1.1 christos elf_i386_size_dynamic_sections, elf_i386_relocate_section): Likewise.
2507 1.1 christos * elf32-ppc.c (allocate_dynrelocs, ppc_elf_size_dynamic_sections,
2508 1.1 christos ppc_elf_relocate_section): Likewise.
2509 1.1 christos * elf32-sh.c (allocate_dynrelocs, sh_elf_size_dynamic_sections,
2510 1.1 christos sh_elf_relocate_section): Likewise.
2511 1.1 christos * elfxx-sparc.c (allocate_dynrelocs,
2512 1.1 christos _bfd_sparc_elf_size_dynamic_sections,
2513 1.1 christos _bfd_sparc_elf_relocate_section): Likewise.
2514 1.1 christos
2515 1.1 christos 2008-03-21 Adam Nemet <anemet (a] caviumnetworks.com>
2516 1.1 christos
2517 1.1 christos * elf.c (_bfd_elf_print_private_bfd_data): Use bfd_fprintf_vma to
2518 1.1 christos print the values from the dynamic section.
2519 1.1 christos
2520 1.1 christos 2008-03-20 Richard Sandiford <rsandifo (a] nildram.co.uk>
2521 1.1 christos
2522 1.1 christos * elfxx-mips.c (MIPS_ELF_GNU_GOT1_MASK): New macro.
2523 1.1 christos (_bfd_mips_elf_finish_dynamic_sections): Use it instead of 0x80000000.
2524 1.1 christos
2525 1.1 christos 2008-03-20 Alan Modra <amodra (a] bigpond.net.au>
2526 1.1 christos
2527 1.1 christos * elf32-spu.c (spu_elf_create_sections): Remove output_bfd parameter.
2528 1.1 christos (spu_elf_find_overlays, spu_elf_size_stubs): Likewise
2529 1.1 christos (process_stubs, discover_functions, build_call_tree): Likewise.
2530 1.1 christos (spu_elf_stack_analysis): Likewise.
2531 1.1 christos (spu_elf_check_vma): Likewise. Move.
2532 1.1 christos (struct call_info): Make "is_tail" a bitfield.
2533 1.1 christos (insert_callee): Clear fun->start and set fun->is_func if we find
2534 1.1 christos a non-tail call.
2535 1.1 christos * elf32-spu.h (spu_elf_create_sections): Update prototype.
2536 1.1 christos (spu_elf_find_overlays, spu_elf_size_stubs, spu_elf_check_vma): Ditto.
2537 1.1 christos
2538 1.1 christos 2008-03-17 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
2539 1.1 christos
2540 1.1 christos * aclocal.m4: Regenerate.
2541 1.1 christos * configure: Likewise.
2542 1.1 christos * Makefile.in: Likewise.
2543 1.1 christos
2544 1.1 christos 2008-03-16 H.J. Lu <hongjiu.lu (a] intel.com>
2545 1.1 christos
2546 1.1 christos PR ld/5789
2547 1.1 christos PR ld/5943
2548 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Issue an error
2549 1.1 christos for R_386_GOTOFF relocaton against undefined hidden/internal
2550 1.1 christos symbols when building a shared object.
2551 1.1 christos
2552 1.1 christos * elf64-x86-64.c (elf64_x86_64_relocate_section): Issue an
2553 1.1 christos error for R_X86_64_PC8/R_X86_64_PC16/R_X86_64_PC32
2554 1.1 christos relocaton against undefined hidden/internal symbols when
2555 1.1 christos building a shared object.
2556 1.1 christos (elf64_x86_64_finish_dynamic_symbol): Return FALSE when symbol
2557 1.1 christos is referenced locally, but isn't defined in a regular file.
2558 1.1 christos
2559 1.1 christos 2008-03-15 H.J. Lu <hongjiu.lu (a] intel.com>
2560 1.1 christos
2561 1.1 christos * bfd-in.h (BFD_NO_FLAGS, HAS_RELOC, EXEC_P, HAS_LINENO,
2562 1.1 christos HAS_DEBUG, HAS_SYMS, HAS_LOCALS, DYNAMIC, WP_TEXT, D_PAGED,
2563 1.1 christos BFD_IS_RELAXABLE, BFD_TRADITIONAL_FORMAT, BFD_IN_MEMORY,
2564 1.1 christos HAS_LOAD_PAGE, BFD_LINKER_CREATED): Moved to ...
2565 1.1 christos * bfd.c: Here.
2566 1.1 christos
2567 1.1 christos * bfd.c (bfd): Change cacheable, target_defaulted, opened_once,
2568 1.1 christos mtime_set, no_export, output_has_begun and has_armap to bit
2569 1.1 christos field.
2570 1.1 christos
2571 1.1 christos * bfd-in2.h: Regenerated.
2572 1.1 christos
2573 1.1 christos 2008-03-14 Daniel Jacobowitz <dan (a] codesourcery.com>
2574 1.1 christos
2575 1.1 christos * cache.c (close_one): Remove mtime hack.
2576 1.1 christos
2577 1.1 christos 2008-03-14 H.J. Lu <hongjiu.lu (a] intel.com>
2578 1.1 christos
2579 1.1 christos PR ld/5913
2580 1.1 christos * elfxx-ia64.c (elfNN_ia64_tprel_base): Remove BFD_ASSERT.
2581 1.1 christos (elfNN_ia64_dtprel_base): Likewise.
2582 1.1 christos (elfNN_ia64_relocate_section): Go to missing_tls_sec if
2583 1.1 christos tls_sec is NULL before calling elfNN_ia64_tprel_base or
2584 1.1 christos elfNN_ia64_dtprel_base. Report unsupported TLS relocations.
2585 1.1 christos
2586 1.1 christos 2008-03-14 Alan Modra <amodra (a] bigpond.net.au>
2587 1.1 christos
2588 1.1 christos * elf32-spu.c (process_stubs, spu_elf_relocate_section): Move
2589 1.1 christos common code to..
2590 1.1 christos (maybe_needs_stub): ..here, a new function that also omits stubs
2591 1.1 christos for .eh_frame, and..
2592 1.1 christos (needs_ovl_stub): ..here. Create stubs for labels in code section
2593 1.1 christos referenced by switch jump table.
2594 1.1 christos (spu_elf_find_overlays): Set htab->ovly_load and htab->ovly_return.
2595 1.1 christos (enum _insn_type): Delete.
2596 1.1 christos (enum _stub_type): New.
2597 1.1 christos (count_stub, build_stub): Adjust.
2598 1.1 christos (allocate_spuear_stubs, build_spuear_stubs): Adjust.
2599 1.1 christos
2600 1.1 christos 2008-03-13 Alan Modra <amodra (a] bigpond.net.au>
2601 1.1 christos
2602 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Remove unnecessary cast.
2603 1.1 christos (_bfd_elf_assign_file_position_for_section): Simplify align.
2604 1.1 christos (_bfd_elf_init_reloc_shdr): Ensure shift expression wide enough
2605 1.1 christos for sh_addralign.
2606 1.1 christos (elf_fake_sections, swap_out_syms): Likewise.
2607 1.1 christos * elflink.c (bfd_elf_final_link): Likewise.
2608 1.1 christos
2609 1.1 christos 2008-03-13 Alan Modra <amodra (a] bigpond.net.au>
2610 1.1 christos
2611 1.1 christos * Makefile.am: Run "make dep-am".
2612 1.1 christos * Makefile.in: Regenerate.
2613 1.1 christos * po/SRC-POTFILES.in: Regenerate.
2614 1.1 christos
2615 1.1 christos 2008-03-12 Bernd Schmidt <bernd.schmidt (a] analog.com>
2616 1.1 christos
2617 1.1 christos From Jie Zhang <jie.zhang (a] analog.com>
2618 1.1 christos * elf32-bfin.c (struct bfinfdpic_relocs_info): Make got17m4,
2619 1.1 christos gothilo, fd, fdgot17m4, fdgothilo, fdgoff17m4, fdgoffhilo,
2620 1.1 christos gotoff, call and sym not bitfields.
2621 1.1 christos (bfinfdpic_gc_sweep_hook): New function; update the relocation
2622 1.1 christos information for the relocations of the section being removed.
2623 1.1 christos (bfinfdpic_check_relocs): Accumulate the number of relocations
2624 1.1 christos which set got17m4, gothilo, fd, fdgot17m4, fdgothilo, fdgoff17m4,
2625 1.1 christos fdgoffhilo, gotoff, call and sym fields.
2626 1.1 christos (elf_backend_gc_sweep_hook): Redefine for FD-PIC.
2627 1.1 christos
2628 1.1 christos 2008-03-12 Alan Modra <amodra (a] bigpond.net.au>
2629 1.1 christos
2630 1.1 christos PR 5900
2631 1.1 christos * elf-bfd.h: Include elf/internal.h after elf/external.h.
2632 1.1 christos * elfcode.h (elf_swap_symbol_in): Map reserved shndx range.
2633 1.1 christos (elf_swap_symbol_out): Adjust SHN_XINDEX test.
2634 1.1 christos (elf_swap_ehdr_out): Mask SHN_LORESERVE and SHN_XINDEX to values
2635 1.1 christos seen in external structs.
2636 1.1 christos (valid_section_index_p): Delete.
2637 1.1 christos (elf_object_p): Don't increment section numbers over reserved range.
2638 1.1 christos Simplify test for valid sh_link, sh_info and e_shstrndx fields.
2639 1.1 christos (elf_write_shdrs_and_ehdr): Mask SHN_LORESERVE and SHN_XINDEX to values
2640 1.1 christos seen in external structs. Don't increment section numbers over
2641 1.1 christos reserved range.
2642 1.1 christos * elf.c (bfd_elf_sym_name): Remove redundant tests on st_shndx.
2643 1.1 christos (bfd_section_from_shdr): Likewise.
2644 1.1 christos (group_signature): Range check before accessing elf_elfsections.
2645 1.1 christos (_bfd_elf_setup_sections): Likewise.
2646 1.1 christos (bfd_section_from_shdr): Likewise.
2647 1.1 christos (bfd_section_from_shdr): Don't increment section number over
2648 1.1 christos reserved sections.
2649 1.1 christos (assign_file_positions_for_non_load_sections): Likewise.
2650 1.1 christos (assign_file_positions_except_relocs): Likewise.
2651 1.1 christos (_bfd_elf_write_object_contents): Likewise.
2652 1.1 christos (assign_section_numbers): Likewise. Adjust for changed SHN_*.
2653 1.1 christos (prep_headers): Delete unused variable.
2654 1.1 christos * elflink.c (bfd_elf_link_record_local_dynamic_symbol): Adjust
2655 1.1 christos for changed SHN_* values.
2656 1.1 christos (check_dynsym, elf_link_input_bfd): Likewise.
2657 1.1 christos (bfd_elf_final_link): Likewise. Don't skip over reserved section
2658 1.1 christos range.
2659 1.1 christos (elf_fixup_link_order): Check that sh_link field is valid.
2660 1.1 christos * elf-hppa.h (elf_hppa_add_symbol_hook): Make "index" unsigned.
2661 1.1 christos * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Range check before
2662 1.1 christos accesssing elf_elfsections.
2663 1.1 christos * elf32-avr.c (elf32_avr_size_stubs): Likewise.
2664 1.1 christos * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
2665 1.1 christos * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Likewise.
2666 1.1 christos * elf64-hppa.c (elf64_hppa_check_relocs): Adjust for changed
2667 1.1 christos SHN_* defines. Test for SHN_BAD return from
2668 1.1 christos _bfd_elf_section_from_bfd_section
2669 1.1 christos
2670 1.1 christos 2008-03-12 Alan Modra <amodra (a] bigpond.net.au>
2671 1.1 christos
2672 1.1 christos * elf-bfd.h (_bfd_elf_section_from_bfd_section): Update prototype.
2673 1.1 christos * elf.c (_bfd_elf_section_from_bfd_section): Return unsigned int,
2674 1.1 christos SHN_BAD on error.
2675 1.1 christos (_bfd_elf_print_private_bfd_data): Test for SHN_BAD result from
2676 1.1 christos _bfd_elf_section_from_bfd_section, not -1.
2677 1.1 christos (swap_out_syms): Likewise.
2678 1.1 christos * elflink.c (elf_link_add_object_symbols): Likewise.
2679 1.1 christos (bfd_elf_get_bfd_needed_list): Likewise.
2680 1.1 christos (bfd_elf_match_symbols_in_sections): Likewise.
2681 1.1 christos (elf_link_add_object_symbols): Don't bother testing for symbols
2682 1.1 christos using normal sections before calling bfd_section_from_elf_index.
2683 1.1 christos (elf_link_input_bfd, bfd_elf_final_link): Likewise.
2684 1.1 christos (bfd_elf_reloc_symbol_deleted_p): Likewise.
2685 1.1 christos * elfcode.h (elf_slurp_symbol_table): Likewise.
2686 1.1 christos * elf32-spu.c (get_sym_h): Likewise.
2687 1.1 christos * elf32-xtensa.c (get_elf_r_symndx_section): Likewise.
2688 1.1 christos * elf64-ppc.c (opd_entry_value, get_sym_h, ppc64_elf_edit_toc): Ditto.
2689 1.1 christos * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
2690 1.1 christos
2691 1.1 christos 2008-03-11 Alan Modra <amodra (a] bigpond.net.au>
2692 1.1 christos
2693 1.1 christos * elf32-spu.c (spu_elf_relocate_section): Test identical conditions
2694 1.1 christos to those in process_stubs for overlay symbols.
2695 1.1 christos
2696 1.1 christos 2008-03-09 Paul Brook <paul (a] codesourcery.com>
2697 1.1 christos
2698 1.1 christos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Handle new
2699 1.1 christos Tag_VFP_arch values.
2700 1.1 christos
2701 1.1 christos 2008-03-08 Paul Brook <paul (a] codesourcery.com>
2702 1.1 christos
2703 1.1 christos * elf32-arm.c (insert_thumb_branch): Rewrite.
2704 1.1 christos (elf32_thumb_to_arm_stub): Use new insert_thumb_branch.
2705 1.1 christos
2706 1.1 christos 2008-03-07 Paul Brook <paul (a] codesourcery.com>
2707 1.1 christos
2708 1.1 christos * elf32-arm.c (elf32_arm_howto_table_1): Fix bitmasks for MOVW and
2709 1.1 christos MOVT relocations.
2710 1.1 christos (elf32_arm_final_link_relocate): Fix off by one MOVW/MOVT sign
2711 1.1 christos extension.
2712 1.1 christos (elf32_arm_relocate_section): Handle MOVW and MOVT
2713 1.1 christos relocations. Improve safety check for other weird relocations.
2714 1.1 christos (elf32_arm_check_relocs): Only set h->needs_plt for branch/call
2715 1.1 christos relocations.
2716 1.1 christos
2717 1.1 christos 2008-03-03 Bob Wilson <bob.wilson (a] acm.org>
2718 1.1 christos
2719 1.1 christos * xtensa-isa.c (xtensa_isa_num_pipe_stages): Make max_stage static and
2720 1.1 christos only compute its value once.
2721 1.1 christos
2722 1.1 christos 2008-03-03 Alan Modra <amodra (a] bigpond.net.au>
2723 1.1 christos
2724 1.1 christos * elf32-spu.c (struct got_entry): Add "addend" field.
2725 1.1 christos (count_stub, build_stub): Use a new stub if relocation addend
2726 1.1 christos differs from existing stubs for this symbol.
2727 1.1 christos (process_stubs): Deal with addends.
2728 1.1 christos (spu_elf_relocate_section, spu_elf_output_symbol_hook): Likewise.
2729 1.1 christos
2730 1.1 christos 2008-03-02 H.J. Lu <hongjiu.lu (a] intel.com>
2731 1.1 christos
2732 1.1 christos PR ld/5789
2733 1.1 christos * elflink.c (_bfd_elf_symbol_refs_local_p): Always return true
2734 1.1 christos for hidden and local symbols.
2735 1.1 christos
2736 1.1 christos 2008-03-03 Alan Modra <amodra (a] bigpond.net.au>
2737 1.1 christos
2738 1.1 christos * elf32-ppc.c (allocate_dynrelocs): Discard relocs on
2739 1.1 christos undefined symbols with internal or hidden visibility.
2740 1.1 christos (ppc_elf_relocate_section): Likewise. Use SYMBOL_CALLS_LOCAL
2741 1.1 christos rather than SYMBOL_REFERENCES_LOCAL on branches. Don't
2742 1.1 christos return immediately on dynamic reloc error.
2743 1.1 christos
2744 1.1 christos 2008-03-01 Alan Modra <amodra (a] bigpond.net.au>
2745 1.1 christos
2746 1.1 christos * elf64-ppc.c (build_plt_stub): Add relocs on plt call stubs
2747 1.1 christos if emitrelocations.
2748 1.1 christos (get_relocs): New function, split out from..
2749 1.1 christos (ppc_build_one_stub): ..here. Add relocs on plt_branch stubs if
2750 1.1 christos emitrelocations. Remove indx temp.
2751 1.1 christos (ppc_size_one_stub): Count new stub relocs.
2752 1.1 christos (ppc64_elf_size_stubs): Count new glink reloc.
2753 1.1 christos (ppc64_elf_build_stubs): Emit glink reloc if emitrelocations.
2754 1.1 christos (ppc64_elf_finish_dynamic_sections): Output glink relocs.
2755 1.1 christos * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Describe non-pic
2756 1.1 christos glink code.
2757 1.1 christos
2758 1.1 christos 2008-02-28 Alan Modra <amodra (a] bigpond.net.au>
2759 1.1 christos
2760 1.1 christos * elf32-spu.c (mark_functions_via_relocs): Don't assume that
2761 1.1 christos the "->start" pointer reaches to function origin, so that we
2762 1.1 christos can handle functions split over more than two sections.
2763 1.1 christos (build_call_tree): Likewise.
2764 1.1 christos (pasted_function): Don't attempt to set fun->start back to the
2765 1.1 christos function origin, just go back one section.
2766 1.1 christos
2767 1.1 christos 2008-02-27 Catherine Moore <clm (a] codesourcery.com>
2768 1.1 christos
2769 1.1 christos * elf.c ( _bfd_elf_print_private_bfd_data): Call
2770 1.1 christos elf_backend_get_target_dtag if defined.
2771 1.1 christos * elf32-mips.c (elf_backend_get_target_dtag): Define.
2772 1.1 christos * elf64-mips.c: Likewise.
2773 1.1 christos * elfn32-mips.c: Likewise.
2774 1.1 christos * elfxx-mips.c (_bfd_mips_elf_get_target_dtag): New.
2775 1.1 christos * elfxx-mips.h (_bfd_mips_elf_get_target_dtag): Declare.
2776 1.1 christos * elf-bfd.h (elf_backend_get_target_dtag): Add prototype.
2777 1.1 christos * elfxx-target.h (elf_backend_get_target_dtag): Add default.
2778 1.1 christos (elf_backend_data): Add elf_backend_get_target_dtag.
2779 1.1 christos
2780 1.1 christos 2008-02-26 Alan Modra <amodra (a] bigpond.net.au>
2781 1.1 christos
2782 1.1 christos * elf32-ppc.c (ppc_elf_check_relocs): Set pointer_equality_needed
2783 1.1 christos for R_PPC_REL32 syms. Don't set non_got_ref on branch reloc syms,
2784 1.1 christos and assume branch relocs are not dynamic when non-shared.
2785 1.1 christos (readonly_dynrelocs): New function, split out from..
2786 1.1 christos (maybe_set_textrel): ..here, renamed from old readonly_dynrelocs.
2787 1.1 christos (ppc_elf_adjust_dynamic_symbol): For symbols generating plt entries,
2788 1.1 christos clear non_got_ref..
2789 1.1 christos (allocate_dynrelocs): ..and don't set u.def for undefined weak.
2790 1.1 christos Do allow dynamic relocs on undefined symbols.
2791 1.1 christos (ppc_elf_adjust_dynamic_symbol): Use readonly_dynrelocs.
2792 1.1 christos (ppc_elf_relocate_section): Mirror dynamic reloc changes in
2793 1.1 christos check_relocs.
2794 1.1 christos (ppc_elf_finish_dynamic_symbol): Don't give a warning on weak
2795 1.1 christos plt symbols needing pointer_equality_needed.
2796 1.1 christos
2797 1.1 christos 2008-02-23 Alan Modra <amodra (a] bigpond.net.au>
2798 1.1 christos
2799 1.1 christos * elf32-ppc.c (ppc_elf_check_relocs): Revert non_got_ref change.
2800 1.1 christos
2801 1.1 christos 2008-02-23 Alan Modra <amodra (a] bigpond.net.au>
2802 1.1 christos
2803 1.1 christos * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Copy
2804 1.1 christos pointer_equality_needed.
2805 1.1 christos (ppc_elf_check_relocs): Split out non-branch relocs from others
2806 1.1 christos that might emit dynamic relocs. Set pointer_equality_needed
2807 1.1 christos for their symbols. Don't set non_got_ref on branch reloc symbols.
2808 1.1 christos (ppc_elf_hash_symbol): New function.
2809 1.1 christos (elf_backend_hash_symbol): Define.
2810 1.1 christos (ppc_elf_finish_dynamic_symbol): Handle pointer_equality_needed.
2811 1.1 christos Error if pointer_equality_needed on weak plt symbol.
2812 1.1 christos
2813 1.1 christos 2008-02-22 H.J. Lu <hongjiu.lu (a] intel.com>
2814 1.1 christos
2815 1.1 christos PR ld/5788
2816 1.1 christos * elflink.c (elf_create_symbuf): Correct buffer size and
2817 1.1 christos position.
2818 1.1 christos
2819 1.1 christos 2008-02-22 Nick Clifton <nickc (a] redhat.com>
2820 1.1 christos
2821 1.1 christos PR 868
2822 1.1 christos * dwarf2.c: Revert previous patch. All of the allocate memory is
2823 1.1 christos on an obstack which will be freed at some other time.
2824 1.1 christos
2825 1.1 christos 2008-02-20 Nick Clifton <nickc (a] redhat.com>
2826 1.1 christos
2827 1.1 christos PR 868
2828 1.1 christos * libbfd.c (bfd_realloc_or_free): New function. Performs like
2829 1.1 christos bfd_realloc, but if the (re)allocation fails, the pointer is
2830 1.1 christos freed.
2831 1.1 christos * libbfd-in.h: Prototype.
2832 1.1 christos * libbfd.h: Regenerate.
2833 1.1 christos * bfdio.c (bfd_bwrite): Use the new function.
2834 1.1 christos (bfd_seek): Likewise.
2835 1.1 christos * bfdwin.c:(bfd_get_file_window): Likewise.
2836 1.1 christos * elf-strtab.c (_bfd_elf_strtab_add): Likewise.
2837 1.1 christos * elf32-ppc.c (ppc_elf_relax_section): Likewise.
2838 1.1 christos * elf32-xtensa.c (vsprintf_msg): Likewise.
2839 1.1 christos * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise.
2840 1.1 christos * stabs.c (_bfd_link_seciton_stabs): Likewise.
2841 1.1 christos * vms-misc.c (_bfd_vms_get_record): Likewise.
2842 1.1 christos * vms-tir.c (check_section): Likewise.
2843 1.1 christos * vms.c (vms_new_section_hook): Likewise.
2844 1.1 christos * elf32-arm.c (elf32_arm_section_map_add): Check that the
2845 1.1 christos allocation of sec_data->map succeeded before using it.
2846 1.1 christos * elflink.c (elf_link_output_sym): Do not overwrite finfo->
2847 1.1 christos symshndxbuf until it is known that the reallocation succeeded.
2848 1.1 christos
2849 1.1 christos 2008-02-20 Diogo de Carvalho Kraemer <diogo (a] kraemer.eng.br>
2850 1.1 christos Nick Clifton <nickc (a] redhat.com>
2851 1.1 christos
2852 1.1 christos PR 868
2853 1.1 christos * dwarf2.c (read_abbrevs): Free the abbreviation table if we run
2854 1.1 christos out of memory.
2855 1.1 christos (decode_line_info): Free the line_info_table before returning a
2856 1.1 christos failure result.
2857 1.1 christos (_bfd_dwarf2_cleanup_debug_info): Free the abbreviation table.
2858 1.1 christos Free the line table. Free the function table. Free the variable
2859 1.1 christos table.
2860 1.1 christos
2861 1.1 christos 2008-02-17 Mark Kettenis <kettenis (a] gnu.org>
2862 1.1 christos
2863 1.1 christos * elf.c (swap_out_syms): Avoid preprocessing directive within
2864 1.1 christos macro arg.
2865 1.1 christos
2866 1.1 christos 2008-02-17 Jan Kratochvil <jan.kratochvil (a] redhat.com>
2867 1.1 christos
2868 1.1 christos * elf.c (assign_file_positions_for_load_sections): Set the type of
2869 1.1 christos PT_NOTE sections to SHT_NOTE.
2870 1.1 christos
2871 1.1 christos 2008-02-17 Ulrich Weigand <uweigand (a] de.ibm.com>
2872 1.1 christos
2873 1.1 christos * simple.c (bfd_simple_get_relocated_section_contents): Set
2874 1.1 christos link_info.output_bfd.
2875 1.1 christos
2876 1.1 christos 2008-02-16 Nathan Sidwell <nathan (a] codesourcery.com>
2877 1.1 christos
2878 1.1 christos * dwarf2.c (find_line): Don't trust debug information after an
2879 1.1 christos unparseable compilation unit.
2880 1.1 christos
2881 1.1 christos 2008-02-15 Alan Modra <amodra (a] bigpond.net.au>
2882 1.1 christos
2883 1.1 christos PR 5765
2884 1.1 christos * section.c (SEC_LINK_DUPLICATES): Correct. Renumber following flags.
2885 1.1 christos * bfd-in2.h: Regenerate.
2886 1.1 christos
2887 1.1 christos 2008-02-15 Alan Modra <amodra (a] bigpond.net.au>
2888 1.1 christos
2889 1.1 christos * elf-bfd.h (enum elf_object_id): Add HPPA_ELF_TDATA.
2890 1.1 christos * elf.c (bfd_elf_allocate_object): Don't check for already allocated
2891 1.1 christos tdata.
2892 1.1 christos * elf32-hppa.c (elf32_hppa_mkobject): New function.
2893 1.1 christos (bfd_elf32_mkobject): Define.
2894 1.1 christos * elf32-ppc.c (is_ppc_elf_target): Delete. Replace all uses with..
2895 1.1 christos (is_ppc_elf): ..this new macro.
2896 1.1 christos * elf64-ppc.c (is_ppc64_elf_target): Delete. Replace all uses with..
2897 1.1 christos (is_ppc64_elf): ..this new macro.
2898 1.1 christos
2899 1.1 christos 2008-02-15 Alan Modra <amodra (a] bigpond.net.au>
2900 1.1 christos
2901 1.1 christos * elflink.c: Replace all accesses to hash->creator field with
2902 1.1 christos output_bfd->xvec.
2903 1.1 christos * cofflink.c: Likewise.
2904 1.1 christos * coff-h8300.c: Likewise.
2905 1.1 christos * ecoff.c: Likewise.
2906 1.1 christos * elf32-m68hc1x.c: Likewise.
2907 1.1 christos * elf32-ppc.c: Likewise.
2908 1.1 christos * elf64-alpha.c: Likewise.
2909 1.1 christos * elf64-ppc.c: Likewise.
2910 1.1 christos * elf64-sparc.c: Likewise.
2911 1.1 christos * elfxx-mips.c: Likewise.
2912 1.1 christos * i386linux.c: Likewise.
2913 1.1 christos * m68klinux.c: Likewise.
2914 1.1 christos * sparclinux.c: Likewise.
2915 1.1 christos * sunos.c: Likewise.
2916 1.1 christos * xcofflink.c: Likewise.
2917 1.1 christos * linker.c: Likewise.
2918 1.1 christos (_bfd_link_hash_table_init): Don't store creator.
2919 1.1 christos
2920 1.1 christos 2008-02-14 Peter Jones <pjones (a] redhat.com>
2921 1.1 christos
2922 1.1 christos * efi-rtdrv-ia32.c: New file.
2923 1.1 christos * efi-bsdrv-ia32.c: New file.
2924 1.1 christos * efi-rtdrv-ia64.c: New file.
2925 1.1 christos * efi-bsdrv-ia64.c: New file.
2926 1.1 christos * efi-rtdrv-x86_64.c: New file.
2927 1.1 christos * efi-bsdrv-x86_64.c: New file.
2928 1.1 christos * peicode.h (pe_bfd_object_p): Add support for boot service and
2929 1.1 christos runtime service drivers.
2930 1.1 christos * libpei.h: Add macros for EFI formats, and rename the efi application
2931 1.1 christos format macros to disambiguate.
2932 1.1 christos * targets.c: Add bfd_target _vec externs.
2933 1.1 christos (_bfd_tar): Add EFI _vec entries.
2934 1.1 christos * config.bfd: Add EFI vectors into the selection routines.
2935 1.1 christos * configure.in: add EFI _vec entries.
2936 1.1 christos * configure: Regenerate.
2937 1.1 christos * Makefile.am: Add EFI files.
2938 1.1 christos * Makefile.in: Regenerate.
2939 1.1 christos
2940 1.1 christos 2008-02-14 Nathan Sidwell <nathan (a] codesourcery.com>
2941 1.1 christos
2942 1.1 christos * dwarf1.c (struct dwarf1_debug): Add syms member.
2943 1.1 christos (alloc_dwarf1_unit, alloc_dwarf1_func): Check for out of memory.
2944 1.1 christos (parse_line_table, _bfd_dwarf1_find_nearest_line): Relocate
2945 1.1 christos section contents, check for out of memory.
2946 1.1 christos
2947 1.1 christos * dwarf1.c (struct dwarf1_debug): Change data pointers to bfd_byte.
2948 1.1 christos (parse_die): Change data pointers to bfd_byte.
2949 1.1 christos (parse_line_table, parse_functions_in_unit): Likewise.
2950 1.1 christos
2951 1.1 christos 2008-02-14 Alan Modra <amodra (a] bigpond.net.au>
2952 1.1 christos
2953 1.1 christos * elflink.c (compute_bucket_count): Warning fixes.
2954 1.1 christos
2955 1.1 christos 2008-02-12 DJ Delorie <dj (a] redhat.com>
2956 1.1 christos
2957 1.1 christos * elf32-iq2000.c (iq2000_elf_relocate_section): Adjust addend of
2958 1.1 christos relocation pointing to local symbol in merged section.
2959 1.1 christos
2960 1.1 christos * elf32-iq2000.c (iq2000_elf_relocate_offset16): New.
2961 1.1 christos (iq2000_elf_relocate_section): Call it.
2962 1.1 christos
2963 1.1 christos 2008-02-12 Nick Clifton <nickc (a] redhat.com>
2964 1.1 christos
2965 1.1 christos PR ld/5692
2966 1.1 christos * elf-bfd.h (enum elf_object_id): New enum, used to identify
2967 1.1 christos target specific extensions to the elf_obj_tdata structure.
2968 1.1 christos (struct elf_obj_tdata): New field 'object_id'.
2969 1.1 christos (elf_object_id, elf_program_header_size, elf_symtab_hdr): New
2970 1.1 christos macros for accessing fields in the elf_obj_tdata structure.
2971 1.1 christos (bfd_elf_mkobject): Rename to bfd_elf_make_generic_object.
2972 1.1 christos (bfd_elf_allocate_object): New function.
2973 1.1 christos * elf.c (bfd_elf_mkobject): Rename to bfd_elf_make_generic_object
2974 1.1 christos and implement by calling bfd_elf_allocate_object.
2975 1.1 christos (bfd_elf_allocate_object): New function: Allocates an
2976 1.1 christos elf_obj_tdata structure, possibly with a target specific
2977 1.1 christos extension.
2978 1.1 christos * elfxx-target.h (bfd_elfNN_mkobject): Use
2979 1.1 christos bfd_elf_make_generic_object as the default value.
2980 1.1 christos * elf32-arm.c (elf32_arm_obj_tdata): Rename to elf_arm_obj_tdata
2981 1.1 christos for consistency with other, similar structures.
2982 1.1 christos (is_arm_elf): New macro. Checks a BFD to make sure that is an ARM
2983 1.1 christos ELF bfd.
2984 1.1 christos (elf32_arm_mkobject): Call bfd_elf_allocate_object.
2985 1.1 christos (bfd_elf32_arm_vfp11_erratum_scan): Use is_arm_elf macro to check
2986 1.1 christos the bfd being processed.
2987 1.1 christos (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
2988 1.1 christos (bfd_elf32_arm_set_target_relocs): Likewise.
2989 1.1 christos (bfd_elf32_arm_final_link_relocate): Likewise.
2990 1.1 christos (bfd_elf32_arm_copy_private_bfd_data): Likewise.
2991 1.1 christos (bfd_elf32_arm_merge_eabi_attributes): Likewise.
2992 1.1 christos (bfd_elf32_arm_merge_private_bfd_data): Likewise.
2993 1.1 christos (bfd_elf32_arm_check_relocs): Likewise.
2994 1.1 christos (bfd_elf32_arm_gc_mark_extra_sections): Likewise.
2995 1.1 christos (bfd_elf32_arm_size_dynamic_sections): Likewise.
2996 1.1 christos (bfd_elf32_arm_process_before_allocation): Use elf_symtab_hdr.
2997 1.1 christos (bfd_elf32_arm_init_maps): Likewise.
2998 1.1 christos (bfd_elf32_arm_final_link_relocate): Likewise.
2999 1.1 christos (bfd_elf32_arm_relocate_section): Likewise.
3000 1.1 christos (bfd_elf32_arm_gc_sweep_hook): Likewise.
3001 1.1 christos (bfd_elf32_arm_check_relocs): Likewise.
3002 1.1 christos (bfd_elf32_arm_size_dynamic_sections): Likewise.
3003 1.1 christos * elf32-i386.c (elf_i386_mkobject): Call bfd_elf_allocate_object.
3004 1.1 christos (is_i386_elf): New macro. Checks a BFD to make sure that is an x86
3005 1.1 christos ELF bfd.
3006 1.1 christos (elf_i386_check_relocs): Use is_i386_elf macro to check the bfd
3007 1.1 christos being processed.
3008 1.1 christos (elf_i386_size_dynamic_sections): Likewise.
3009 1.1 christos (elf_i386_relocate_section): Likewise.
3010 1.1 christos (elf_i386_check_relocs): Use elf_symtab_hdr.
3011 1.1 christos (elf_i386_gc_sweep_hook): Likewise.
3012 1.1 christos (elf_i386_size_dynamic_sections): Likewise.
3013 1.1 christos (elf_i386_relocate_section): Likewise.
3014 1.1 christos * elf32-ppc.c (ppc_elf_mkobject): Call bfd_elf_allocate_object.
3015 1.1 christos (elf_create_pointer_linker_section): Use is_ppc_elf_target to
3016 1.1 christos verify that the bfd before accessing target specific fields.
3017 1.1 christos (ppc_elf_check_relocs): Likewise.
3018 1.1 christos (elf_finish_pointer_linker_section): Likewise.
3019 1.1 christos (elf_create_pointer_linker_section): Use elf_symtab_hdr.
3020 1.1 christos (ppc_elf_check_relocs): Likewise.
3021 1.1 christos (ppc_elf_gc_sweep_hook): Likewise.
3022 1.1 christos (ppc_elf_tls_optimize): Likewise.
3023 1.1 christos (ppc_elf_size_dynamic_sections): Likewise.
3024 1.1 christos (ppc_elf_relax_section): Likewise.
3025 1.1 christos (ppc_elf_relocate_section): Likewise.
3026 1.1 christos * elf32-s390.c (struct elf_s390_obj_tdata): Add a comment
3027 1.1 christos reminding programmers to keep this structure in sync with the one
3028 1.1 christos defined in elf64-s390.c.
3029 1.1 christos (elf_s390_mkobject): Call bfd_elf_allocate_object.
3030 1.1 christos (is_s390_elf): New macro. Checks a BFD to make sure that is an s390
3031 1.1 christos ELF bfd.
3032 1.1 christos (elf_s390_check_relocs): Use is_s390_elf macro to check the bfd
3033 1.1 christos being processed.
3034 1.1 christos (elf_s390_size_dynamic_sections): Likewise.
3035 1.1 christos (elf_s390_relocate_section): Likewise.
3036 1.1 christos (elf_s390_check_relocs): Use elf_symtab_hdr.
3037 1.1 christos (elf_s390_gc_sweep_hook): Likewise.
3038 1.1 christos (elf_s390_size_dynamic_sections): Likewise.
3039 1.1 christos (elf_s390_relocate_section): Likewise.
3040 1.1 christos * elf32-sh.c (sh_elf_mkobject): Call bfd_elf_allocate_object.
3041 1.1 christos (is_sh_elf): New macro. Checks a BFD to make sure that is an SH
3042 1.1 christos ELF bfd.
3043 1.1 christos (sh_elf_size_dynamic_sections): Use is_sh_elf macro to check the
3044 1.1 christos bfd being processed.
3045 1.1 christos (sh_elf_relocate_section): Likewise.
3046 1.1 christos (sh_elf_check_relocs): Likewise.
3047 1.1 christos (sh_elf_copy_private_data): Likewise.
3048 1.1 christos (sh_elf_relax_section): Use elf_symtab_hdr.
3049 1.1 christos (sh_elf_size_dynamic_sections): Likewise.
3050 1.1 christos (sh_elf_relocate_section): Likewise.
3051 1.1 christos (sh_elf_get_relocated_section_contents): Likewise.
3052 1.1 christos (sh_elf_gc_sweep_hook): Likewise.
3053 1.1 christos (sh_elf_check_relocs): Likewise.
3054 1.1 christos * elf64-alpha.c (elf64_alpha_mkobject): Call bfd_elf_allocate_object.
3055 1.1 christos (is_alpha_elf): New macro. Checks a BFD to make sure that is an
3056 1.1 christos Alpha ELF bfd.
3057 1.1 christos (elf64_alpha_create_got_section): Use is_alpha_elf macro to check
3058 1.1 christos the bfd being processed.
3059 1.1 christos (elf64_alpha_create_dynamic_section): Likewise.
3060 1.1 christos (elf64_alpha_check_relocs): Likewise.
3061 1.1 christos (elf64_alpha_size_got_sections): Likewise.
3062 1.1 christos (elf64_alpha_relax_section): Likewise.
3063 1.1 christos (elf64_alpha_relocate_section): Likewise.
3064 1.1 christos (elf64_alpha_final_link): Likewise.
3065 1.1 christos (elf64_alpha_check_relocs): Use elf_symtab_hdr.
3066 1.1 christos (elf64_alpha_relax_section): Likewise.
3067 1.1 christos (elf64_alpha_relocate_section_r): Likewise.
3068 1.1 christos (elf64_alpha_relocate_section): Likewise.
3069 1.1 christos * elf64-ppc.c (ppc64_elf_mkobject): Call bfd_elf_allocate_object.
3070 1.1 christos (ppc64_elf_check_relocs): Use is_ppc64_elf_target to check the bfd
3071 1.1 christos being processed.
3072 1.1 christos (opd_entry_value): Likewise.
3073 1.1 christos (allocate_dynrelocs): Likewise.
3074 1.1 christos (ppc64_elf_relocate_section): Likewise.
3075 1.1 christos (ppc64_elf_check_relocs): Use elf_symtab_hdr.
3076 1.1 christos (opd_entry_value): Likewise.
3077 1.1 christos (ppc64_elf_gc_sweep_hook): Likewise.
3078 1.1 christos (get_sym_h): Likewise.
3079 1.1 christos (ppc64_elf_edit_opd): Likewise.
3080 1.1 christos (ppc64_elf_tls_optimize): Likewise.
3081 1.1 christos (ppc64_elf_edit_toc): Likewise.
3082 1.1 christos (ppc64_elf_size_dynamic_sections): Likewise.
3083 1.1 christos (toc_adjusting_stub_needed): Likewise.
3084 1.1 christos (ppc64_elf_size_stubs): Likewise.
3085 1.1 christos (ppc64_elf_relocate_section): Likewise.
3086 1.1 christos * elf64-s390.c (struct elf_s390_obj_tdata): Add a comment
3087 1.1 christos reminding programmers to keep this structure in sync with the one
3088 1.1 christos defined in elf32-s390.c.
3089 1.1 christos (elf_s390_mkobject): Call bfd_elf_allocate_object.
3090 1.1 christos (is_s390_elf): New macro. Checks a BFD to make sure that is an s390
3091 1.1 christos ELF bfd.
3092 1.1 christos (elf_s390_check_relocs): Use is_s390_elf macro to check the bfd
3093 1.1 christos being processed.
3094 1.1 christos (elf_s390_size_dynamic_sections): Likewise.
3095 1.1 christos (elf_s390_relocate_section): Likewise.
3096 1.1 christos (elf_s390_check_relocs): Use elf_symtab_hdr.
3097 1.1 christos (elf_s390_gc_sweep_hook): Likewise.
3098 1.1 christos (elf_s390_size_dynamic_sections): Likewise.
3099 1.1 christos (elf_s390_relocate_section): Likewise.
3100 1.1 christos * elf64-x86_64.c (elf64_x86_64_mkobject): Call bfd_elf_allocate_object.
3101 1.1 christos (is_x86_64_elf): New macro. Checks a BFD to make sure that is an
3102 1.1 christos x86_64 ELF bfd.
3103 1.1 christos (elf64_x86_64_check_relocs): Use is_x86_64_elf macro to check the bfd
3104 1.1 christos being processed.
3105 1.1 christos (elf64_x86_64_size_dynamic_sections): Likewise.
3106 1.1 christos (elf64_x86_64_relocate_section): Likewise.
3107 1.1 christos (elf64_x86_64_check_relocs): Use elf_symtab_hdr.
3108 1.1 christos (elf64_x86_64_gc_sweep_hook): Likewise.
3109 1.1 christos (elf64_x86_64_size_dynamic_sections): Likewise.
3110 1.1 christos (elf64_x86_64_relocate_section): Likewise.
3111 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_mkobject): Call bfd_elf_allocate_object.
3112 1.1 christos (is_sparc_elf): New macro. Checks a BFD to make sure that is a Sparc
3113 1.1 christos ELF bfd.
3114 1.1 christos (_bfd_sparc_elf_check_relocs): Use is_sparc_elf macro to check the
3115 1.1 christos bfd being processed.
3116 1.1 christos (_bfd_sparc_elf_gc_sweep_hook): Likewise.
3117 1.1 christos (_bfd_sparc_elf_size_dynamic_sections): Likewise.
3118 1.1 christos (_bfd_sparc_elf_check_relocs): Use elf_symtab_hdr.
3119 1.1 christos (_bfd_sparc_elf_gc_sweep_hook): Likewise.
3120 1.1 christos (_bfd_sparc_elf_size_dynamic_sections): Likewise.
3121 1.1 christos (_bfd_sparc_elf_relocate_section): Likewise.
3122 1.1 christos
3123 1.1 christos 2008-02-12 Alan Modra <amodra (a] bigpond.net.au>
3124 1.1 christos
3125 1.1 christos PR 5303, 5755
3126 1.1 christos * arange-set.c: Delete.
3127 1.1 christos * arange-set.h: Delete.
3128 1.1 christos * dwarf2.c: Revert 2007-09-21 changes.
3129 1.1 christos * Makefile.am: Likewise.
3130 1.1 christos * Makefile.in: Regenerate.
3131 1.1 christos * po/SRC-POTFILES.in: Regenerate.
3132 1.1 christos
3133 1.1 christos 2008-02-11 Bernd Schmidt <bernd.schmidt (a] analog.com>
3134 1.1 christos
3135 1.1 christos * elf32-bfin.c (bfin_relocate_section): Set up dynobj before using it
3136 1.1 christos if necessary.
3137 1.1 christos (elf32_bfin_merge_private_bfd_data): Simplify, and ensure object type
3138 1.1 christos mismatches are detected.
3139 1.1 christos
3140 1.1 christos * elf32-bfin.c (bfinfdpic_relocate_section): Take more care not to
3141 1.1 christos emit invalid relocs or rofixup entries for deleted .eh_frame entries.
3142 1.1 christos
3143 1.1 christos 2008-02-11 Daniel Jacobowitz <dan (a] codesourcery.com>
3144 1.1 christos
3145 1.1 christos * cache.c (cache_bread): Set bfd_error_file_truncated if EOF
3146 1.1 christos was reached.
3147 1.1 christos * srec.c (srec_scan): Calculate the checksum. Complain on mismatch.
3148 1.1 christos
3149 1.1 christos 2008-02-07 Alan Modra <amodra (a] bigpond.net.au>
3150 1.1 christos
3151 1.1 christos * elf32-spu.c (spu_elf_size_stubs): Revert 2008-01-28 doubling
3152 1.1 christos of _ovly_buf_table size.
3153 1.1 christos (spu_elf_build_stubs): Use low bit of .size as "present" bit.
3154 1.1 christos Adjust initialisations relating to _ovly_buf_table.
3155 1.1 christos
3156 1.1 christos 2008-02-04 Bob Wilson <bob.wilson (a] acm.org>
3157 1.1 christos
3158 1.1 christos * elf32-xtensa (elf_xtensa_relocate_section): After finding an invalid
3159 1.1 christos relocation, do not continue processing it. Ignore R_XTENSA_ASM_EXPAND
3160 1.1 christos relocations against dynamic symbols.
3161 1.1 christos (elf_xtensa_finish_dynamic_sections): Do not fail if there is no
3162 1.1 christos .xt.lit section.
3163 1.1 christos
3164 1.1 christos 2008-02-04 Kai Tietz <kai.tietz (a] onevision.com>
3165 1.1 christos H.J. Lu <hongjiu.lu (a] intel.com>
3166 1.1 christos
3167 1.1 christos PR 5715
3168 1.1 christos * warning.m4: Enable -Wno-format by default when using gcc on
3169 1.1 christos mingw.
3170 1.1 christos * configure: Regenerated.
3171 1.1 christos
3172 1.1 christos 2008-02-04 Adam Nemet <anemet (a] caviumnetworks.com>
3173 1.1 christos
3174 1.1 christos * archures.c: Update copyright.
3175 1.1 christos (bfd_mach_mips_octeon): New macro.
3176 1.1 christos * bfd-in2.h: Regenerate.
3177 1.1 christos * elfxx-mips.c (_bfd_elf_mips_mach): Handle Octeon.
3178 1.1 christos (mips_set_isa_flags): Likewise.
3179 1.1 christos (mips_mach_extensions): Add Octeon.
3180 1.1 christos * cpu-mips.c: Update copyright.
3181 1.1 christos (I_mipsocteon): New enum constant.
3182 1.1 christos (arch_info_struct): Add Octeon.
3183 1.1 christos
3184 1.1 christos 2008-02-04 Alan Modra <amodra (a] bigpond.net.au>
3185 1.1 christos
3186 1.1 christos * elf32-spu.c (spu_elf_relocate_section): Correct return type.
3187 1.1 christos Return error status on unexpected relocation errors.
3188 1.1 christos
3189 1.1 christos 2008-02-04 Alan Modra <amodra (a] bigpond.net.au>
3190 1.1 christos
3191 1.1 christos PR ld/5692
3192 1.1 christos * elf.c (bfd_elf_get_elf_syms): Revert 2008-01-31. Instead abort
3193 1.1 christos on non-ELF input.
3194 1.1 christos * elf32-arm.c (elf32_arm_size_dynamic_sections): Skip glue
3195 1.1 christos processing on non-ELF input.
3196 1.1 christos
3197 1.1 christos 2008-01-31 Marc Gauthier <marc (a] tensilica.com>
3198 1.1 christos
3199 1.1 christos * config.bfd (xtensa*-*-*): Recognize processor variants.
3200 1.1 christos
3201 1.1 christos 2008-01-31 Nick Clifton <nickc (a] redhat.com>
3202 1.1 christos
3203 1.1 christos PR ld/5692
3204 1.1 christos * elf.c (bfd_elf_get_elf_syms): Check the return value of
3205 1.1 christos get_elf_backend_data.
3206 1.1 christos
3207 1.1 christos 2008-01-28 Fabian Groffen <grobian (a] gentoo.org>
3208 1.1 christos
3209 1.1 christos * config.bfd (x86_64-*-solaris2): Add support for this target.
3210 1.1 christos
3211 1.1 christos 2008-01-28 Alan Modra <amodra (a] bigpond.net.au>
3212 1.1 christos
3213 1.1 christos Rewrite SPU overlay handling code. Put overlay calls stubs in the
3214 1.1 christos overlays where possible. Use a faster call stub, or optionally at
3215 1.1 christos compile time, a more compact stub. Double size of _ovly_buf_table
3216 1.1 christos so that low bit of _ovly_table.buf can be used as a "present" bit.
3217 1.1 christos Reserve an extra _ovly_table entry for index zero.
3218 1.1 christos * elf32-spu.c: (struct spu_link_hash_table): Delete a number of fields,
3219 1.1 christos add new ones.
3220 1.1 christos (struct got_entry): New.
3221 1.1 christos (struct spu_stub_hash_entry): Delete.
3222 1.1 christos (stub_hash_newfunc, spu_elf_link_hash_table_free): Delete.
3223 1.1 christos (spu_elf_link_hash_table_create): Adjust for struct changes.
3224 1.1 christos (spu_stub_name): Delete.
3225 1.1 christos (spu_elf_find_overlays): Don't track sections from overlay regions.
3226 1.1 christos Instead set ovl_buf number in spu elf section data. Error if
3227 1.1 christos overlays in one region don't start at the same address. Adjust
3228 1.1 christos for struct _spu_elf_section_data changes.
3229 1.1 christos (SIZEOF_STUB1, SIZEOF_STUB2, ILA_79, ILA_78): Delete.
3230 1.1 christos (OVL_STUB_SIZE, BRSL, LNOP, ILA): Define.
3231 1.1 christos (needs_ovl_stub): Adjust for struct _spu_elf_section_data changes.
3232 1.1 christos (enum _insn_type): New.
3233 1.1 christos (count_stub, build_stub): New functions.
3234 1.1 christos (allocate_spuear_stubs): Use count_stub.
3235 1.1 christos (build_spuear_stubs): Use build_stub.
3236 1.1 christos (populate_stubs, sort_stubs): Delete.
3237 1.1 christos (process_stubs): New function.
3238 1.1 christos (write_one_stub): Delete.
3239 1.1 christos (spu_elf_size_stubs, spu_elf_build_stubs): Rewrite.
3240 1.1 christos (alloc_stack_info): Adjust for struct _spu_elf_section_data changes.
3241 1.1 christos (maybe_insert_function, check_function_ranges): Likewise.
3242 1.1 christos (find_function, pasted_function, build_call_tree): Likewise.
3243 1.1 christos (spu_elf_stack_analysis, spu_elf_modify_segment_map): Likewise.
3244 1.1 christos (spu_elf_modify_program_headers): Likewise.
3245 1.1 christos (interesting_section): Detect stub sections differently. Delete
3246 1.1 christos htab param, adjust all callers.
3247 1.1 christos (spu_elf_relocate_section): Rewrite stub handling.
3248 1.1 christos (spu_elf_output_symbol_hook): Likewise.
3249 1.1 christos (bfd_elf32_bfd_link_hash_table_free): Delete.
3250 1.1 christos * elf32-spu.h (struct _spu_elf_section_data): Move input-only and
3251 1.1 christos output-only fields into a union. Add ovl_buf.
3252 1.1 christos (spu_elf_size_stubs, spu_elf_build_stubs): Update prototypes.
3253 1.1 christos
3254 1.1 christos 2008-01-25 DJ Delorie <dj (a] redhat.com>
3255 1.1 christos
3256 1.1 christos * elf32-m32c.c (_bfd_m32c_elf_eh_frame_address_size): New.
3257 1.1 christos
3258 1.1 christos 2008-01-25 Kai Tietz <kai.tietz (a] onevision.com>
3259 1.1 christos
3260 1.1 christos * bfd-in.h: Add mingw I64 support.
3261 1.1 christos * bfd-in2.h: Regenerated.
3262 1.1 christos * bfd.c: (bfd_get_sign_extend_vma): Add pe-x86-64 and pei-x86-64.
3263 1.1 christos
3264 1.1 christos 2008-01-21 Alan Modra <amodra (a] bigpond.net.au>
3265 1.1 christos
3266 1.1 christos PR 4453
3267 1.1 christos * format.c (bfd_check_format_matches): Don't accept archives as
3268 1.1 christos fully matching unless they have a map.
3269 1.1 christos
3270 1.1 christos 2008-01-21 Alan Modra <amodra (a] bigpond.net.au>
3271 1.1 christos
3272 1.1 christos * elflink.c (_bfd_elf_link_output_relocs): Correct error return.
3273 1.1 christos
3274 1.1 christos 2008-01-21 Alan Modra <amodra (a] bigpond.net.au>
3275 1.1 christos
3276 1.1 christos * ecoff.c (_bfd_ecoff_archive_p): Delete.
3277 1.1 christos * libecoff.h (_bfd_ecoff_archive_p): Delete.
3278 1.1 christos * coff-alpha.c (ecoffalpha_little_vec): Use bfd_generic_archive_p.
3279 1.1 christos * coff-mips.c (ecoff_little_vec, ecoff_big_vec): Likewise.
3280 1.1 christos (ecoff_biglittle_vec): Likewise.
3281 1.1 christos
3282 1.1 christos 2008-01-19 Alan Modra <amodra (a] bigpond.net.au>
3283 1.1 christos
3284 1.1 christos PR 5646
3285 1.1 christos * elf64-ppc.c (ppc64_elf_tls_optimize): Ensure htab->tls_get_addr
3286 1.1 christos non-NULL before dereferencing.
3287 1.1 christos
3288 1.1 christos 2008-01-15 Alan Modra <amodra (a] bigpond.net.au>
3289 1.1 christos
3290 1.1 christos PR 5604
3291 1.1 christos * elf-bfd.h (struct elf_backend_data): Add gc_keep. Remove param
3292 1.1 christos names from others.
3293 1.1 christos (_bfd_elf_gc_keep): Declare.
3294 1.1 christos * elfxx-target.h (elf_backend_gc_keep): Define.
3295 1.1 christos (elfNN_bed): Init new field.
3296 1.1 christos * elflink.c (_bfd_elf_gc_keep): New function.
3297 1.1 christos (bfd_elf_gc_sections): Call gc_keep.
3298 1.1 christos * elf64-ppc.c (elf_backend_gc_keep): Define.
3299 1.1 christos (struct _ppc64_elf_section_data): Move .opd related fields to
3300 1.1 christos a struct so they don't occupy the same storage. Adjust accesses
3301 1.1 christos throughout file.
3302 1.1 christos (ppc64_elf_gc_keep): New function, split out from..
3303 1.1 christos (ppc64_elf_gc_mark_hook): ..here. Don't call _bfd_elf_gc_mark
3304 1.1 christos to mark .opd section, just set gc_mark.
3305 1.1 christos (ppc64_elf_edit_opd): Remove no_opd_opt parm. Don't set opd->adjust
3306 1.1 christos unless we are changing .opd. Test non-NULL opd->adjust at all
3307 1.1 christos accesses throughout file.
3308 1.1 christos * elf64-ppc.h (ppc64_elf_edit_opd): Update prototype.
3309 1.1 christos
3310 1.1 christos 2008-01-15 Alan Modra <amodra (a] bigpond.net.au>
3311 1.1 christos
3312 1.1 christos * bfd-in.h (BFD_HOST_LONG_LONG): Delete.
3313 1.1 christos * bfd-in2.h: Regenerate.
3314 1.1 christos
3315 1.1 christos 2008-01-11 Tristan Gingold <gingold (a] adacore.com>
3316 1.1 christos Eric Botcazou <ebotcazou (a] adacore.com>
3317 1.1 christos
3318 1.1 christos * elf32-ppc.c (ppc_elf_gc_sweep_hook): Exit early if generating a
3319 1.1 christos relocatable.
3320 1.1 christos * elf32-arm.c (elf32_arm_gc_sweep_hook): Likewise.
3321 1.1 christos * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise.
3322 1.1 christos * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise.
3323 1.1 christos * elf32-i386.c (elf_i386_gc_sweep_hook): Likewise.
3324 1.1 christos * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise.
3325 1.1 christos * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise.
3326 1.1 christos * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
3327 1.1 christos * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
3328 1.1 christos * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
3329 1.1 christos * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise.
3330 1.1 christos * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
3331 1.1 christos * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
3332 1.1 christos * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Likewise.
3333 1.1 christos * elfxx-mips.c (_bfd_mips_elf_gc_sweep_hook): Likewise.
3334 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Likewise.
3335 1.1 christos * elflink.c (bfd_elf_gc_sections): Do not punt on relocatable output
3336 1.1 christos or executable output with relocations.
3337 1.1 christos
3338 1.1 christos 2008-01-09 Nick Clifton <nickc (a] redhat.com>
3339 1.1 christos
3340 1.1 christos PR gas/5552
3341 1.1 christos * elf32-fr30.c (fr30_elf_howto_table): Set partial_inplace field
3342 1.1 christos to FALSE for all relocs.
3343 1.1 christos
3344 1.1 christos 2008-01-09 Richard Sandiford <rsandifo (a] nildram.co.uk>
3345 1.1 christos
3346 1.1 christos PR ld/5526
3347 1.1 christos * elf-bfd.h (eh_cie_fde): Add u.cie.u.full_cie and u.cie.merged
3348 1.1 christos fields. Rename u.cie.u.merged to u.cie.u.merged_with.
3349 1.1 christos (eh_frame_sec_info): Add a cies field.
3350 1.1 christos (eh_frame_hdr_info): Add a merge_cies field.
3351 1.1 christos * elf-eh-frame.c (cie): Add a reloc_index member to the personality
3352 1.1 christos union.
3353 1.1 christos (_bfd_elf_begin_eh_frame_parsing): Set hdr_info->merge_cies instead
3354 1.1 christos of hdr_info->cies.
3355 1.1 christos (_bfd_elf_parse_eh_frame): Remove tmp_cie. Ccreate an array of
3356 1.1 christos cie structures in all cases and use it instead of extended_cies.
3357 1.1 christos If merging, store the cie array in sec_info->cies and point each
3358 1.1 christos CIE's eh_fde_cie at the associated element. Do not try to
3359 1.1 christos calculate the value of the personality routine here; record the
3360 1.1 christos offset of the relocation instead. Do not merge CIEs here.
3361 1.1 christos (_bfd_elf_end_eh_frame_parsing): Do not free hdr_info->cies here...
3362 1.1 christos (_bfd_elf_discard_section_eh_frame_hdr): ...do it here instead.
3363 1.1 christos (_bfd_elf_gc_mark_fdes): Mark the original (unmerged) CIE.
3364 1.1 christos (find_merged_cie): New function.
3365 1.1 christos (_bfd_elf_gc_mark_fdes): Use it. Free sec_info->cies.
3366 1.1 christos
3367 1.1 christos 2008-01-07 Nick Clifton <nickc (a] redhat.com>
3368 1.1 christos
3369 1.1 christos PR binutils/5535
3370 1.1 christos * vms.c (vms_close_and_cleanup): Check for the presence of a
3371 1.1 christos vms_private_data_struct before examining any of its fields.
3372 1.1 christos
3373 1.1 christos 2008-01-07 H.J. Lu <hongjiu.lu (a] intel.com>
3374 1.1 christos
3375 1.1 christos PR ld/5522
3376 1.1 christos * elflink.c (elf_link_input_bfd): Don't write out a section if
3377 1.1 christos its output section is marked with SEC_NEVER_LOAD.
3378 1.1 christos
3379 1.1 christos For older changes see ChangeLog-2007
3380 1.1 christos
3382 1.1 christos Copyright (C) 2008 Free Software Foundation, Inc.
3383 1.1 christos
3384 1.1 christos Copying and distribution of this file, with or without modification,
3385 1.1 christos are permitted in any medium without royalty provided the copyright
3386 1.1 christos notice and this notice are preserved.
3387 1.1 christos
3388 1.1 christos Local Variables:
3389 1.1 christos mode: change-log
3390 1.1 christos left-margin: 8
3391 1.1 christos fill-column: 74
3392 1.1 christos version-control: never
3393 End:
3394