0dcad6c9b51b5c933d7be903a9ababf6266633c4
[binutils-gdb.git] / bfd / ChangeLog
1 2010-02-08 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
2
3 * archures.c (bfd_mach_ppc_titan): Define.
4 * bfd-in2.h: Regenerate.
5 * cpu-powerpc.c (bfd_powerpc_archs): Add titan entry.
6
7 2010-02-08 Alan Modra <amodra@gmail.com>
8
9 * elf32-ppc.c (ppc_elf_check_relocs): Remove dead ifunc code.
10
11 2010-02-05 Sterling Augustine <sterling@tensilica.com>
12
13 * elf.c (assign_file_positions_for_load_sections) Update lma of
14 section if necessary. Fixes Bugzilla 11219.
15
16 2010-02-05 H.J. Lu <hongjiu.lu@intel.com>
17
18 * elf32-i386.c: Remove trailing white spaces.
19 * elf64-x86-64.c: Likewise.
20
21 2010-02-03 Nick Clifton <nickc@redhat.com>
22
23 * elf-bfd.h (emum elf_object_id): Rename to elf_target_id. Add
24 entries for other architectures.
25 (struct elf_link_hash_table): Add hash_table_id field.
26 (elf_hash_table_id): New accessor macro.
27 * elflink.c (_bfd_elf_link_hash_table_init): Add target_id
28 parameter.
29 * elf-m10300.c (elf32_mn10300_hash_table): Check table id before
30 returning cast pointer.
31 (elf32_mn10300_link_hash_table_create): Identify new table as
32 containing MN10300 extensions.
33 (mn10300_elf_relax_section): Check pointer returned by
34 elf32_mn10300_hash_table.
35 * elf32-arm.c: Likewise, except using ARM extensions.
36 * elf32-avr.c: Likewise, except using AVR extensions.
37 * elf32-bfin.c: Likewise, except using BFIN extensions.
38 * elf32-cris.c: Likewise, except using CRIS extensions.
39 * elf32-frv.c: Likewise, except using FRV extensions.
40 * elf32-hppa.c: Likewise, except using HPPA32 extensions.
41 * elf32-i386.c: Likewise, except using I386 extensions.
42 * elf32-lm32.c: Likewise, except using LM32 extensions.
43 * elf32-m32r.c: Likewise, except using M32RM extensions.
44 * elf32-m68hc11.c: Likewise, except using M68HC11 extensions.
45 * elf32-m68hc1x.c: Likewise, except using M68HC11 extensions.
46 * elf32-m68hc1x.h: Likewise, except using M68HC11 extensions.
47 * elf32-m68k.c: Likewise, except using M68K extensions.
48 * elf32-microblaze.c: Likewise, except using MICROBLAZE extensions.
49 * elf32-ppc.c: Likewise, except using PPC32 extensions.
50 * elf32-s390.c: Likewise, except using S390 extensions.
51 * elf32-sh.c: Likewise, except using SH extensions.
52 * elf32-spu.c: Likewise, except using SPU extensions.
53 * elf32-xtensa.c: Likewise, except using XTENSA extensions.
54 * elf64-alpha.c: Likewise, except using ALPHA extensions.
55 * elf64-hppa.c: Likewise, except using HPPA64 extensions.
56 * elf64-ppc.c: Likewise, except using PPC64 extensions.
57 * elf64-s390.c: Likewise, except using S390 extensions.
58 * elf64-x86-64.c: Likewise, except using X86_64 extensions.
59 * elfxx-ia64.c: Likewise, except using IA64 extensions.
60 * elfxx-mips.c: Likewise, except using MIPS extensions.
61 * elfxx-sparc.c: Likewise, except using SPARC extensions.
62 * elfxx-sparc.h: Likewise, except using SPARC extensions.
63 * elf32-cr16.c (struct elf32_cr16_link_hash_table): Delete
64 redundant structure.
65 (elf32_cr16_hash_table): Delete unused macro.
66 (elf32_cr16_link_hash_traverse): Delete unused macro.
67 * elf32-score.c: Likewise.
68 * elf32-score7.c: Likewise.
69 * elf32-vax.c: Likewise.
70 * elf64-sh64.c: Likewise.
71
72 2010-02-03 Alan Modra <amodra@gmail.com>
73
74 * elf64-ppc.c (struct plt_entry): Move earlier in file.
75 (struct got_entry): Likewise. Add is_indirect and got.ent fields.
76 (struct ppc64_elf_obj_tdata): Change tlsld_got to be a struct got_entry.
77 Update all uses.
78 (struct ppc_link_hash_table): Add got_reli_size and second_toc_pass.
79 Remove no_multi_toc.
80 (update_local_sym_info, ppc64_elf_check_relocs): Clear is_indirect
81 when allocating a new struct got_entry.
82 (allocate_got): New function, extracted from..
83 (allocate_dynrelocs): ..here. Abort on got entry in non-ppc64 bfd.
84 (ppc64_elf_size_dynamic_sections): Track got relocs allocated in
85 .reliplt by got_reli_size. Set owner on ppc64_tlsld_got entries.
86 (ppc64_elf_setup_section_lists): Remove output_bfd param and
87 no_multi_toc, add add_stub_section and layout_sections_again. Stash
88 new params in htab. Extract some code to..
89 (ppc64_elf_start_multitoc_partition): ..here. New function.
90 (ppc64_elf_next_toc_section): Check for linker script errors. Handle
91 second pass toc scan.
92 (merge_got_entries, merge_global_got, reallocate_got): New functions.
93 (ppc64_elf_reinit_toc): Rename to..
94 (ppc64_elf_finish_multitoc_partition): ..this.
95 (ppc64_elf_layout_multitoc): New function.
96 (ppc64_elf_size_stubs): Delete output_bfd, add_stub_section and
97 layout_sections_again params.
98 (ppc64_elf_relocate_section): Handle indirect got entries.
99 * elf64-ppc.h: Update prototypes. Declare new functions.
100
101 2010-02-02 H.J. Lu <hongjiu.lu@intel.com>
102
103 * elf-bfd.h (elfcore_write_xstatereg): New.
104
105 * elf.c (elfcore_grok_xstatereg): New.
106 (elfcore_write_xstatereg): Likewise.
107 (elfcore_grok_note): Handle NT_X86_XSTATE.
108 (elfcore_write_register_note): Handle .reg-xstate section.
109
110 2010-02-01 Tristan Gingold <gingold@adacore.com>
111
112 * som.c (som_write_ar_hdr): Define this macro.
113
114 2010-01-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
115
116 * elf32-hppa.c (final_link_relocate): Convert R_PARISC_TLS_GD21L,
117 R_PARISC_TLS_LDM21L and R_PARISC_TLS_IE21L relocations that use the
118 linkage table pointer to use the global table pointer if not doing
119 a shared link.
120
121 2010-01-29 Joel Brobecker <brobecker@adacore.com>
122
123 * elf.c (elfcore_grok_lwpstatus): Do not overwrite the core signal
124 if it has already been set.
125
126 2010-01-27 Tristan Gingold <gingold@adacore.com>
127
128 * vms.h: Remove trailing spaces.
129 (struct hdr_struct): Remove unused hdr_c_cpr field.
130 (enum file_format_enum): Add comments.
131 * vms.c (vms_bfd_print_private_bfd_data): New function that
132 replaces the macro.
133 Remove trailing spaces.
134 * vms-misc.c: Improve comments.
135 (_bfd_vms_get_object_record): Also handle files without pads.
136 * vms-hdr.c (_bfd_vms_write_dbg): Fix format string.
137 * vms-gsd.c (struct flagdescstruct): Make name field const.
138 (gsyflagdesc): Fix typo.
139
140 2010-01-27 Alan Modra <amodra@gmail.com>
141
142 PR ld/11217
143 * elf64-ppc.c (struct ppc_link_hash_table): Add toc_bfd, toc_first_sec.
144 (ppc64_elf_setup_section_lists): Init them.
145 (ppc64_elf_next_toc_section): Don't partition multi-toc between .got
146 and .toc on the same input file.
147 (ppc64_elf_relocate_section): Correct GOT entry offset.
148
149 2010-01-26 Tristan Gingold <gingold@adacore.com>
150
151 * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add initializer for write_ar_hdr.
152 (bfd_target): Add _bfd_write_ar_hdr_fn field.
153 * archive.c (is_bsd44_extended_name): New macro.
154 (_bfd_generic_read_ar_hdr_mag): Use it. Add extra_size.
155 (bfd_slurp_armap): Also check for "__.SYMDEF" as a BSD4.4 extended
156 name.
157 (_bfd_archive_bsd44_construct_extended_name_table): New function.
158 (_bfd_generic_write_ar_hdr): Ditto.
159 (_bfd_bsd44_write_ar_hdr): Ditto.
160 (_bfd_write_archive_contents): Call _bfd_write_ar_hdr.
161 (bsd_write_armap): Adjust firstreal computation.
162 * libbfd-in.h (struct areltdata): Add extra_size field.
163 (_bfd_generic_write_ar_hdr): Add prototype.
164 (_bfd_bsd44_write_ar_hdr): Ditto.
165 (_bfd_write_ar_hdr): Define.
166 (_bfd_noarchive_write_ar_hdr): Ditto.
167 (_bfd_archive_bsd_write_ar_hdr): Ditto.
168 (_bfd_archive_coff_write_ar_hdr): Ditto.
169 (_bfd_archive_bsd44_slurp_armap): Ditto.
170 (_bfd_archive_bsd44_slurp_extended_name_table): Ditto.
171 (_bfd_archive_bsd44_construct_extended_name_table): New prototype.
172 (_bfd_archive_bsd44_truncate_arname): Ditto.
173 (_bfd_archive_bsd44_write_armap): Ditto.
174 (_bfd_archive_bsd44_read_ar_hdr): Ditto.
175 (_bfd_archive_bsd44_write_ar_hdr): Ditto.
176 (_bfd_archive_bsd44_openr_next_archived_file): Ditto.
177 (_bfd_archive_bsd44_get_elt_at_index): Ditto.
178 (_bfd_archive_bsd44_generic_stat_arch_elt): Ditto.
179 (_bfd_archive_bsd44_update_armap_timestamp): Ditto.
180 * libbfd.h: Regenerate.
181 * oasys.c (oasys_write_ar_hdr): Define.
182 * libecoff.h (_bfd_ecoff_write_ar_hdr): Define.
183 * ieee.c (ieee_write_ar_hdr): Define.
184 * elf64-mips.c (bfd_elf64_archive_write_ar_hdr): Define.
185 * coff-rs6000.c (rs6000coff_vec): Adjust for write_ar_hdr field.
186 (bfd_pmac_xcoff_backend_data): Ditto.
187 * coff64-rs6000.c (rs6000coff64_vec): Ditto.
188 (bfd_xcoff_aix5_backend_data): Ditto.
189 * coff-alpha.c (alpha_ecoff_write_ar_hdr): Define.
190 * aout-target.h (MY_write_ar_hdr): Define it if not defined.
191 * aout-tic30.c (MY_write_ar_hdr): Ditto.
192 * mach-o-target.c (TARGET_NAME): Use _bfd_archive_bsd44 archive.
193 (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr)
194 (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table)
195 (bfd_mach_o_construct_extended_name_table)
196 (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap)
197 (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt)
198 (bfd_mach_o_update_armap_timestamp): Moved to mach-o.c
199 * mach-o.c (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr)
200 (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table)
201 (bfd_mach_o_construct_extended_name_table)
202 (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap)
203 (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt)
204 (bfd_mach_o_update_armap_timestamp): Moved from mach-o-target.c
205 * bfd-in2.h: Regenerate.
206
207 2010-01-26 Alan Modra <amodra@gmail.com>
208 H.J. Lu <hongjiu.lu@intel.com>
209
210 PR ld/11218
211 * elflink.c (elf_link_output_extsym): Do not ignore undefined
212 symbols with ref_regular set when gc_sections is active.
213
214 2010-01-25 Alan Modra <amodra@gmail.com>
215
216 PR ld/11217
217 * elf64-ppc.c (ppc64_elf_tls_optimize): Optimize tls sequences
218 with relocations against undefined weak symbols.
219 (ppc64_elf_relocate_section): Don't optimize calls to undefined
220 weak functions if the symbol is dynamic.
221 (ppc64_elf_relocate_section): Edit tprel tls sequences.
222 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
223 (_bfd_elf_ppc_at_tprel_transform): New function.
224 * bfd-in.h (_bfd_elf_ppc_at_tprel_transform): Declare.
225 * bfd-in2.h: Regenerate.
226
227 2010-01-23 Richard Sandiford <r.sandiford@uk.ibm.com>
228
229 * coff-rs6000.c (xcoff_howto_table): Change size to 0 and bitsize to 1.
230 (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_NONE.
231 * coff64-rs6000.c (xcoff64_howto_table): Change size to 0 and
232 bitsize to 1.
233 (xcoff64_reloc_type_lookup): Handle BFD_RELOC_NONE.
234
235 2010-01-21 Nick Clifton <nickc@redhat.com>
236
237 * elflink.c (elf_link_add_object_symbols): Look up name of
238 undefined symbol both before and after versioning has been
239 applied. Do not bother with symbols that are weakly undefined.
240
241 2010-01-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
242
243 * elf32-s390.c (elf32_s390_merge_private_bfd_data): New function.
244 (bfd_elf32_bfd_merge_private_bfd_data): New macro definition.
245
246 2010-01-19 Cary Coutant <ccoutant@google.com>
247
248 * dwarf2.c (read_attribute_value): Add DW_FORM_ref_sig8.
249
250 2010-01-19 Daisuke Hatayama <d.hatayama@jp.fujitsu.com>
251 Alan Modra <amodra@gmail.com>
252
253 * elfcode.h (elf_swap_ehdr_out): Handle e_phnum > 0xffff.
254 (elf_object_p): Read e_phnum extension.
255 (elf_write_shdrs_and_ehdr): Write e_phnum extension.
256 * elfcore.h (elf_core_file_p): Read e_phnum extension. Sanity check
257 that we can read last program header.
258
259 2010-01-19 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
260
261 * elf32-arm.c (elf32_arm_howto_table_1): Correct bitsize of
262 R_ARM_THM_CALL entry.
263 (elf32_arm_final_link_relocate): Correct calculation of
264 reloc_signed_max when doing a R_ARM_THM_CALL, R_ARM_THM_XPC22,
265 or R_ARM_THM_JUMP24 relocation.
266
267 2010-01-18 Alan Modra <amodra@gmail.com>
268
269 PR 11168
270 * coffcode.h (coff_compute_section_file_positions): Move Rs6000COFF_C
271 block past vars in COFF_IMAGE_WITH_PE block. Report error on more
272 than 32k sections.
273
274 2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com>
275
276 Fix compilation warning on gcc-3.4.
277 * vms-tir.c (start_etir_record, sto_imm): Rename the prototype
278 parameter index to sec_index according to the function definition.
279
280 2010-01-13 Chao-ying Fu <fu@mips.com>
281
282 * elfxx-mips.c (JR_TO_B_P): New define to transform JR to B.
283 It is true for all CPUs.
284 (jal_reloc_p): New function.
285 (mips_elf_calculate_relocation): Rename require_jalxp to
286 cross_mode_jump_p.
287 Update comment for CROSS_MODE_JUMP_P.
288 Set up cross_mode_jump_p based on the mode change.
289 (mips_elf_perform_relocation): Rename require_jalx to cross_mode_jump_p.
290 Update comment for CROSS_MODE_JUMP_P.
291 Test cross_mode_jump_p and jal_reloc_p to turn jal to jalx.
292 Use !cross_mode_jump_p to guard conversion.
293 Convert "jr t9" to "b", if possible.
294 (_bfd_mips_elf_relocate_section): Rename require_jalx to
295 cross_mode_jump_p.
296 Pass &cross_mode_jump_p to call mips_elf_calculate_relocation.
297 Pass cross_mode_jump_p to call mips_elf_perform_relocation.
298
299 2010-01-13 Nick Clifton <nickc@redhat.com>
300
301 * cpu-m32c.c (m32c_scan): New function. Ensures that a scan for
302 "m32c" returns the m32c arch_info_struct and not the m16c
303 arch_info_struct.
304 (arch_info_struct): Use the new scan function.
305 (bfd_m32c_arch): Likewise.
306
307 2010-01-13 Tristan Gingold <gingold@adacore.com>
308
309 * config.bfd: Remove duplicated target vector for i386-*-darwin.
310 Appends new arch instead of overriding.
311 Use mach_o_x86_64_vec for x86_64-*-darwin.
312 * configure.in: Add mach_o_x86_64_vec.
313 * configure: Regenerate.
314 * targets.c: Declare mach_o_x86_64_vec, add it to _bfd_target_vector.
315 * Makefile.am (BFD64_BACKENDS): Add mach-o-x86-64.lo
316 (BFD64_BACKENDS_CFILES): Add mach-o-x86-64.c
317 * Makefile.in: Regenerate.
318 * mach-o-x86-64.c: New file.
319
320 2010-01-13 Tristan Gingold <gingold@adacore.com>
321
322 * reloc.c: Add MACH_O_X86_64 relocations.
323 * bfd-in2.h: Regenerate.
324 * libbfd.h: Regenerate.
325
326 2010-01-13 Tristan Gingold <gingold@adacore.com>
327
328 * archive.c (normalize): Use lbasename.
329 (bfd_bsd_truncate_arname): Ditto.
330 (bfd_gnu_truncate_arname): Ditto.
331
332 2010-01-12 Tristan Gingold <gingold@adacore.com>
333
334 * makefile.vms (CFLAGS): Turns warnings into informational messages.
335
336 2010-01-11 Tristan Gingold <gingold@adacore.com>
337
338 * mach-o.h: Add x86-64 relocation types.
339
340 2010-01-11 Tristan Gingold <gingold@adacore.com>
341
342 * mach-o.h (bfd_mach_o_backend_data): Add arch field.
343 (bfd_mach_o_set_arch_mach): New prototype.
344 * mach-o.c (bfd_mach_o_mkobject): Define with bfd_mach_o_gen_mkobject.
345 (bfd_mach_o_set_arch_mach): New function.
346 (bfd_mach_o_gen_mkobject): New function.
347 Set TARGET_ARCHITECTURE for the generic back-ends.
348 * mach-o-target.c (bfd_mach_o_set_arch_mach): Remove define.
349 Check that TARGET_ARCHITECTURE is defined.
350 Add TARGET_ARCHITECTURE in TARGET_NAME_BACKEND structure.
351 * mach-o-i386.c (TARGET_ARCHITECTURE): Define.
352
353 2010-01-11 Tristan Gingold <gingold@adacore.com>
354
355 * archive.c (bfd_slurp_armap): Also check for Mach-O sorted armap.
356
357 2010-01-11 Nick Clifton <nickc@redhat.com>
358
359 * elf32-v850.c (v850_elf_perform_relocation): Fix overflow
360 handling of R_V850_HI16_S relocation.
361
362 2010-01-11 Alan Modra <amodra@gmail.com>
363
364 PR 11103
365 * dwarf1.c (parse_die): Correct FORM_STRING data pointer increment.
366
367 2010-01-11 Alan Modra <amodra@gmail.com>
368
369 PR 6832
370 * dwarf2.c (struct comp_unit): Add sec_info_ptr.
371 (find_abstract_instance_name): Use it.
372 (parse_comp_unit): Set it.
373
374 2010-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
375
376 * Makefile.in: Regenerate.
377 * configure: Regenerate.
378
379 2010-01-08 Tristan Gingold <gingold@adacore.com>
380
381 * archive.c: Remove bfd_special_undocumented_glue.
382
383 2010-01-08 Alan Modra <amodra@gmail.com>
384
385 PR ld/11133
386 * elf32-cr16.c (elf32_cr16_gc_mark_hook): Call _bfd_elf_gc_mark_hook.
387 * elf32-microblaze.c (microblaze_elf_gc_mark_hook): Likewise.
388 * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
389
390 2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
391
392 PR ld/11138
393 * elflink.c (elf_link_check_versioned_symbol): Don't abort if
394 a symbol referenced by DSO is is defined in a non-shared object
395 and forced local.
396
397 2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
398
399 PR ld/11133
400 * elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for
401 undefined __start_XXX/__stop_XXX in all input files and set
402 SEC_KEEP.
403
404 2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
405
406 PR ld/11143
407 * elflink.c (elf_gc_sweep): Keep SHT_NOTE section.
408
409 2010-01-04 Daniel Gutson <dgutson@codesourcery.com>
410
411 * bfd.m4 (BFD_HAVE_SYS_PROCFS_TYPE): Define _STRUCTURE_PROC
412 before including procfs.h.
413 (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise.
414 * configure.in: Added autoconf probe for the pr_fpreg member.
415 * configure: Regenerated.
416 * config.in: Regenerated.
417 * elf.c: Define _STRUCTURE_PROC before including procfs.h.
418
419 2010-01-04 Joel Brobecker <brobecker@adacore.com>
420
421 Fix -Wshadow warnings in dwarf2.c (seen on alpha-tru64).
422 * dwarf2.c (concat_filename): Rename dirname with dir_name
423 to void shadowing the dirname function.
424 Rename subdirname with subdir_name to stay consistent with
425 the new dir_name variable name.
426
427 2010-01-04 Edmar Wienskoski <edmar@freescale.com>
428
429 * archures.c: Add bfd_mach_ppc_e500mc64.
430 * bfd-in2.h: Regenerate.
431 * cpu-powerpc.c (bfd_powerpc_archs): Add entry for
432 bfd_mach_ppc_e500mc64.
433
434 2010-01-01 Joel Brobecker <brobecker@adacore.com>
435
436 Fix -Wshadow warnings (seen on ppc-aix)
437 * xcofflink.c: Replace finfo by flinfo throughout.
438
439 For older changes see ChangeLog-2009
440 \f
441 Local Variables:
442 mode: change-log
443 left-margin: 8
444 fill-column: 74
445 version-control: never
446 End: