* m68k-tdep.c (m68k_ps_type): New.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
34c8bcba
JM
12007-06-29 Joseph Myers <joseph@codesourcery.com>
2
3 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
4 (ppc_elf_merge_private_bfd_data): Call it.
5
2cf19d5c
JM
62007-06-29 Joseph Myers <joseph@codesourcery.com>
7
8 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
9 (_bfd_mips_elf_merge_private_bfd_data): Call it.
10
104d59d1
JM
112007-06-29 Joseph Myers <joseph@codesourcery.com>
12
13 * elf-attrs.c: New.
14 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
15 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
16 (elf-attrs.lo): Generate dependencies.
17 * Makefile.in: Regenerate.
18 * configure.in (elf): Add elf-attrs.lo.
19 * configure: Regenerate.
20 * elf-bfd.h (struct elf_backend_data): Add entries for object
21 attributes.
22 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
23 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
24 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
25 New.
26 (struct elf_obj_tdata): Add entries for object attributes.
27 (elf_known_obj_attributes, elf_other_obj_attributes,
28 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
29 New.
30 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
31 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
32 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
33 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
34 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
35 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
36 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
37 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
38 (bfd_section_from_shdr): Handle attributes sections.
39 * elflink.c (bfd_elf_final_link): Handle attributes sections.
40 * elfxx-target.h (elf_backend_obj_attrs_vendor,
41 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
42 elf_backend_obj_attrs_section_type): New.
43 (elfNN_bed): Update.
44 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
45 aeabi_attribute_list): Remove.
46 (struct elf32_arm_obj_tdata): Remove object attributes fields.
47 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
48 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
49 Update for new object attributes interfaces.
50 (uleb128_size, is_default_attr, eabi_attr_size,
51 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
52 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
53 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
54 elf32_arm_add_eabi_attr_int, attr_strdup,
55 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
56 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
57 to generic code in elf-attrs.c.
58 (elf32_arm_obj_attrs_arg_type): New.
59 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
60 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
61 (bfd_elf32_bfd_final_link): Remove.
62 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
63 elf_backend_obj_attrs_arg_type,
64 elf_backend_obj_attrs_section_type): New.
65 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
66 attributes.
67 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
68 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
69 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
70 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
71 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
72 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
73
5ab79981
PB
742007-06-29 Paul Brook <paul@codesourcery.com>
75
76 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
77 call veneers for call relocations against undefined symbols.
78 (elf32_arm_final_link_relocate): Turn call to undefined symbol
79 into a jump to the next instruction.
80
32e8a950
NC
812007-06-29 Michael Snyder <msnyder@svkmacdonelllnx>
82
83 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
84
3d3d428f
NC
852007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
86
87 * Makefile.am: Add cr16 related entry
88 * Makefile.in: Regenerate
89 * archures.c: Add bfd_cr16_arch
90 * bfd-in2.h: Regenerate
91 * config.bfd: Add cr16-elf
92 * configure.in: Add bfd_elf32_cr16_vec
93 * configure: Regenerate.
94 * targets.c: Added cr16 related information
95 * cpu-cr16.c: New file.
96 * elf32-cr16.c: New file.
97 * reloc.c: Added cr16 relocs.
98
c55fe096
AM
992007-06-29 Alan Modra <amodra@bigpond.net.au>
100
101 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
102 message for undefined version nodes.
103 (elf_gc_sweep): Don't warn when zero size sections are
104 removed.
105
375de94a
AM
1062007-06-29 Nathan Froyd <froydnj@codesourcery.com>
107
108 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
109 types.
110
7d3287cb
AM
1112007-06-29 Alan Modra <amodra@bigpond.net.au>
112
113 * elf32-spu.c (spu_elf_fake_sections): New function.
114 (elf_backend_fake_sections): Define.
115
6a3cd2b4
AM
1162007-06-29 Alan Modra <amodra@bigpond.net.au>
117
118 * elf.c (assign_file_positions_for_load_sections): Use elf
119 section header sh_size rather than bfd section size, simplifying
120 .tbss handling.
121
bf988460
AM
1222007-06-29 Alan Modra <amodra@bigpond.net.au>
123
36fc76ae 124 PR ld/4701
bf988460
AM
125 * elf.c (assign_file_positions_for_load_sections): Ensure bss
126 segments meet gABI alignment requirements. Don't allocate
127 file space for bss sections in a segment also containing file
128 or program headers.
129
60b31e8d
AM
1302007-06-27 Alan Modra <amodra@bigpond.net.au>
131
cc481421
AM
132 * bfd.c (struct bfd): Rename "next" to "archive_next".
133 * archive.c: Rename uses throughout file.
134 * archive64.c: Likewise.
135 * coff-rs6000.c: Likewise.
136 * ecoff.c: Likewise.
137 * som.c: Likewise.
138 * bfd-in2.h: Regenerate.
139
60b31e8d
AM
140 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
141 input bfds.
58eb693e 142 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 143
bec42b15
NC
1442007-06-26 H.J. Lu <hongjiu.lu@intel.com>
145
146 * dwarf2.c (find_line): New. Contains the duplicated code from:
147 (_bfd_dwarf2_find_nearest_line): Use it.
148 (_bfd_dwarf2_find_line): Use it.
149
3d3e6f9a
JM
1502007-06-26 Joseph Myers <joseph@codesourcery.com>
151
152 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
153
b314ec0e
RS
1542007-06-25 Richard Sandiford <richard@codesourcery.com>
155
156 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
157 to be used for calls from MIPS16 code.
158
0d4a1476
AS
1592007-06-23 Andreas Schwab <schwab@suse.de>
160
161 * configure.in (--with-separate-debug-dir): New option.
162 * configure: Regenerate.
163 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
164 * Makefile.in: Regenerate.
165 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
166 bfd_follow_gnu_debuglink.
167 (_bfd_dwarf2_find_line): Likewise.
168
0d161102
NC
1692007-06-22 Nick Clifton <nickc@redhat.com>
170
171 * dwarf2.c: Add support for reading in debug information via a
172 .gnu_debuglink section:
173 (struct dwarf2_debug): Add bfd field to record the bfd containing
174 the debug info.
175 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
176 field in the dwarf2_debug structure.
177 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
178 be found in the current bfd call bfd_follow_gnu_debuglink to see
179 if another file contains the debug information. If it does, open
180 it and continue.
181 (_bfd_dwarf2_find_line): Likewise.
182
293a0124
L
1832007-06-19 H.J. Lu <hongjiu.lu@intel.com>
184
185 PR ld/4590
186 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
187 when removing duplicated entries.
188 (get_dyn_sym_info): Initialize the got_offset field to -1.
189 Update call to sort_dyn_sym_info.
190 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
191 array of addend and remove duplicates.
192
dc1f3d8a
L
1932007-06-18 H.J. Lu <hongjiu.lu@intel.com>
194
195 * libpei.h (_bfd_XXi_final_link_postscript): Remove
196 duplication.
197 (bfd_target_pei_p): New.
198 (bfd_target_pei_arch): New
199 (bfd_target_efi_p): Likewise.
200 (bfd_target_efi_arch): New
201 (bfd_pe_executable_p): Use bfd_target_pei_p and
202 bfd_target_efi_p.
203
204 * peicode.h (arch_type): New enum.
205 (pe_arch): New function.
206 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
207 if there is an EFI/PE target.
208
79887925
L
2092007-06-14 H.J. Lu <hongjiu.lu@intel.com>
210
211 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
212
213 * acinclude.m4: Don't include m4 files. Remove libtool
214 kludge.
215
216 * Makefile.in: Regenerated.
79887925
L
217 * aclocal.m4: Likewise.
218 * configure: Likewise.
219
99ded152
BW
2202007-06-11 Sterling Augustine <sterling@tensilica.com>
221 Bob Wilson <bob.wilson@acm.org>
bf988460 222
99ded152
BW
223 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
224 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
225 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
226 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
227 (xtensa_get_property_predef_flags): Likewise.
228 (compute_removed_literals): Pass new arguments to is_removable_literal.
229 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
230 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 231
cbf2cba4
RS
2322007-05-31 Richard Sandiford <rsandifo@nildram.co.uk>
233
234 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
235 type (3) single-GOT entry, read tls_type from the hash table entry
236 rather than the GOT entry.
237
a9a4c53e
AM
2382007-06-01 Alan Modra <amodra@bigpond.net.au>
239
240 * simple.c (bfd_simple_get_relocated_section_contents): Init
241 input_bfds_tail.
242
02bf8d82
AM
2432007-05-30 Alan Modra <amodra@bigpond.net.au>
244
42bb2e33
AM
245 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
246 created by objcopy --only-keep-debug.
247 (_bfd_elf_init_private_section_data): Only change elf_section_type
248 if it is SHT_NULL.
249
02bf8d82
AM
250 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
251 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
252 and sh_flags instead of bfd section flags. Delete voff and code
253 keeping nobits segments aligned.
254
4e591bc1
EC
2552007-05-25 Eric Christopher <echristo@apple.com>
256
257 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
258 Check that sym_sec isn't NULL before accessing.
259
37ad9514
SE
2602007-05-24 Steve Ellcey <sje@cup.hp.com>
261
262 * Makefile.in: Regnerate.
263 * configure: Regenerate.
264 * aclocal.m4: Regenerate.
265 * doc/Makefile.in: Regenerate.
266
91a5743d
PB
2672007-05-22 Paul Brook <paul@codesourcery.com>
268
269 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
270 with sec and sec_shndx.
271 (elf32_arm_ouput_plt_map_sym): Use them.
272 (elf32_arm_output_arch_local_syms): Output mapping symbols for
273 interworking glue.
274
26079076
PB
2752007-05-18 Paul Brook <paul@codesourcery.com>
276
277 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
278 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
279 (record_arm_to_thumb_glue): Add v5t non-pic glue.
280 (elf32_arm_create_thumb_stub): Ditto.
281
91ac5911
L
2822007-05-16 H.J. Lu <hongjiu.lu@intel.com>
283 Alan Modra <amodra@bigpond.net.au>
284
285 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
286 section to the minimum alignment.
287
027297b7
L
2882007-05-15 H.J. Lu <hongjiu.lu@intel.com>
289 Alan Modra <amodra@bigpond.net.au>
290
291 PR ld/4504
292 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
293 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
294
295 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
296 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
297 bss section.
298 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
299 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
300 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
301 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
302 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
303 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
304 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
305 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
306 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
307 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
308 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
309 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
310 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
311 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
312 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
313 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
314 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
315
5c18022e
RS
3162007-05-15 Richard Sandiford <richard@codesourcery.com>
317
318 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
319 input_section argument. Create .rela.dyn relocations against
320 symbol 0 rather than the section symbol.
321 (mips_elf_local_got_index): Remove input_section argument.
322 Update call to mips_elf_create_local_got_entry.
323 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
324 (mips_elf_calculate_relocation): Update calls to
325 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
326
a00a1f35
MS
3272007-05-15 Mark Shinwell <shinwell@codesourcery.com>
328
329 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
330 handle the Thumb-2 JUMP19 relocation.
331
0414f35b
AM
3322007-05-15 Alan Modra <amodra@bigpond.net.au>
333
334 PR 4479
335 * elf.c (elf_fake_sections): Don't allow backend to change
336 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
337 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
338 fix from here.
339
74f2e02b
AM
3402007-05-14 Alan Modra <amodra@bigpond.net.au>
341
342 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
343 invalid shstrndx.
344 (bfd_elf_get_str_section): Likewise.
345
f137a54e
AM
3462007-05-12 Alan Modra <amodra@bigpond.net.au>
347
348 PR 4497
349 * elf-eh-frame.c (struct cie): Add "local_personality". Make
350 "personality" a union.
351 (cie_eq): Compare local_personality too. Adjust personality
352 comparison.
353 (_bfd_elf_discard_section_eh_frame): Check binding on personality
354 reloc sym to allow for bad symtab. Use stashed local syms rather
355 than reading personality local sym. Handle discarded sections.
356
4f4416b5
AM
3572007-05-12 Alan Modra <amodra@bigpond.net.au>
358
359 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
360
016687f8
AM
3612007-05-11 Alan Modra <amodra@bigpond.net.au>
362
363 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
364 (enum ppc_elf_plt_type): Move from..
365 * elf32-ppc.c: ..here.
366 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
367 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
368 can_use_new_plt. Make is_vxworks a bitfield.
369 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
370 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
371 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
372 flags to better detect object files needing old bss-style plt.
373 Allow secure plt to be used without rel16 relocs being detected.
374 Warn if secure plt request cannot be allowed.
375
ece5ef60
AM
3762007-05-11 Alan Modra <amodra@bigpond.net.au>
377
378 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
379 * elf-bfd.h (struct elf_backend_data): Change return type of
380 elf_backend_relocate_section to int.
381 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
382 R_SPU_PPU64.
383 (spu_elf_bfd_to_reloc_type): Convert new relocs.
384 (spu_elf_count_relocs): New function.
385 (elf_backend_count_relocs): Define.
386 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
387 R_SPU_PPU64 relocs.
388 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
389 returns 2.
390 * bfd-in2.h: Regenerate.
391 * libbfd.h: Regenerate.
392
d3753b85
RS
3932007-05-10 Richard Sandiford <richard@codesourcery.com>
394
395 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
396 for R_ARM_ABS12 relocs.
397 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
398 non-shared VxWorks PLT entries.
399
ef8c95ad
AM
4002007-05-11 Alan Modra <amodra@bigpond.net.au>
401
402 PR 4454
403 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
404 (_bfd_elf_discard_section_eh_frame): Handle local syms on
405 personality relocation.
406
8c252fd9
RS
4072007-05-10 Richard Sandiford <richard@codesourcery.com>
408
409 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
410 rather than p_filesz to calculate the LMA of the end of a segment.
411
b186458a
JJ
4122007-05-10 Jakub Jelinek <jakub@redhat.com>
413
414 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
415 processing if symbol is defined in the executable.
416
88571279
AO
4172007-05-10 Alexandre Oliva <aoliva@redhat.com>
418
419 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
420 (frvfdpic_elf_discard_info): New.
421 (elf_backend_discard_info): Define for FDPIC.
422
2e6030b9
MS
4232007-05-09 Mark Shinwell <shinwell@codesourcery.com>
424
425 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
426 attempt to scan if the bfd doesn't correspond to an ELF image.
427 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
428
0d4cc892
AO
4292007-05-08 Alexandre Oliva <aoliva@redhat.com>
430
431 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
432 for which _bfd_elf_section_offset returns -1.
433
d0249648
AM
4342007-05-08 Alan Modra <amodra@bigpond.net.au>
435
436 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
437 (mark_functions_via_relocs): Likewise.
438
1182cb93
AM
4392007-05-07 Alan Modra <amodra@bigpond.net.au>
440
441 * elflink.c (bfd_elf_final_link): Correct reloc handling for
442 elf_backend_count_relocs.
443 (bfd_elf_discard_info): Print an error if we can't read syms.
444
b16f296e
AM
4452007-05-07 Alan Modra <amodra@bigpond.net.au>
446
447 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
448 invalid reloc code.
449 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
450 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
451 define.
452
7c928300
AM
4532007-05-07 Alan Modra <amodra@bigpond.net.au>
454
455 * elf.c (assign_file_positions_for_load_sections): Don't check
456 core segment.
457
fc66a176
L
4582007-05-04 H.J. Lu <hongjiu.lu@intel.com>
459
460 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
461 and .rel.dyn aren't present.
462
3410fea8
NC
4632007-05-04 Nick Clifton <nickc@redhat.com>
464
465 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
466 sections are present examine the indirect sections in an attempt
467 to compute the correct relocation size. If there is any
468 ambiguity, produce an error and refuse to sort.
469
7bdca076
SL
4702007-05-03 Sandra Loosemore <sandra@codesourcery.com>
471
472 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
473
22184a77
NC
4742007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
475 Nick Clifton <nickc@redhat.com>
476
477 PR gas/3041
478 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
479 in the same way as relocs against external symbols.
480
627b32bc
AM
4812007-05-02 Alan Modra <amodra@bigpond.net.au>
482
483 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
484 here. Set sh_type to SHT_NOBITS if we won't be allocating
485 file space. Don't bump p_memsz for non-alloc sections. Adjust
486 section-in-segment check.
487 (assign_file_positions_for_non_load_sections): Don't set sh_offset
488 here for sections that have already been handled above.
489
49fa1e15
AM
4902007-04-30 Alan Modra <amodra@bigpond.net.au>
491
492 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
493 and emit_stack_syms bitfields.
494 (get_sym_h): Read all symbols if stack analysis will be done.
495 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
496 params, and stash in hash table.
497 (is_hint): Split off from..
498 (is_branch): ..here. Adjust callers.
499 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
500 and keep all syms.
501 (write_one_stub): Fix mem leak.
502 (find_function_stack_adjust): New function.
503 (sort_syms_syms, sort_syms_psecs): New vars.
504 (sort_syms): New function.
505 (struct call_info, struct function_info): New.
506 (struct spu_elf_stack_info): New.
507 (alloc_stack_info, maybe_insert_function, func_name): New functions.
508 (is_nop, insns_at_end, check_function_ranges): Likewise.
509 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
510 (pasted_function, interesting_section, discover_functions): Likewise.
511 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
512 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
513 (bfd_elf32_bfd_final_link): Define.
514 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
515 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
516
9ddf8309
TS
5172007-04-28 Sergey Rogozhkin <rogozhkin@niisi.msk.ru>
518
519 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
520 memory which we might not own.
521
95147441
BW
5222007-04-27 Bob Wilson <bob.wilson@acm.org>
523
524 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
525 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
526 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
527
bcc2cc8e
BW
5282007-04-27 Bob Wilson <bob.wilson@acm.org>
529
530 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
531 contents and relocs in parallel.
4e591bc1 532
f29f96b6
BW
5332007-04-27 Bob Wilson <bob.wilson@acm.org>
534
535 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
536
2ce18a16
AM
5372007-04-27 Alan Modra <amodra@bigpond.net.au>
538
539 * cpu-rs6000.c: Write Mimi's name in ASCII.
540 * coff-rs6000.c: Likewise.
541 * rs6000-core.c: Likewise.
542
eddc20ad
AM
5432007-04-27 Alan Modra <amodra@bigpond.net.au>
544
545 * sysdep.h: Include config.h first.
546 Many files: Include sysdep.h before bfd.h.
547 * Makefile.am: Run "make dep-am".
548 * Makefile.in: Regenerate.
549
495443d4
AM
5502007-04-25 Alan Modra <amodra@bigpond.net.au>
551
552 * sysdep.h: Revert last change.
553
40b1c6c5
NC
5542007-04-24 Nick Clifton <nickc@redhat.com>
555
556 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
557 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
558
64be1553
AM
5592007-04-24 Alan Modra <amodra@bigpond.net.au>
560
561 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
562 eh_frame_hdr table won't be created.
563
d5efd9fc
AM
5642007-04-24 Alan Modra <amodra@bigpond.net.au>
565
566 * acinclude.m4: Include config/stdint.m4.
567 * configure.in: Invoke GCC_HEADER_STDINT.
568 * sysdep.h: Don't include ansidecl.h here.
569 * configure: Regenerate.
570 * config.in: Regenerate.
571 * Makefile.in: Regenerate.
572
9a2e615a
NS
5732007-04-23 Nathan Sidwell <nathan@codesourcery.com>
574
575 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
576 bfd_mach_mcf_isa_c_emac): New.
577 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
578 elf_isac_plt_entry, elf_isac_plt_info): New.
579 (elf32_m68k_object_p): Add ISA_C.
580 (elf32_m68k_print_private_bfd_data): Print ISA_C.
581 (elf32_m68k_get_plt_info): Detect ISA_C.
582 * cpu-m68k.c (arch_info): Add ISAC.
583 (m68k_arch_features): Likewise,
584 (bfd_m68k_compatible): ISAs B & C are not compatible.
585
1b0b5b1b
NC
5862007-04-21 Nick Clifton <nickc@redhat.com>
587
588 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
589 (ecoff_link_add_archive_symbols): Likewise.
590 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
591 relent.howto.
592 * ieee.c (parse_int): Initialise x.
593 (must_parse_int): Initialise result.
594 (ieee_slurp_external_symbols): Initialise value.
595
bd7803a9
AM
5962007-04-21 Alan Modra <amodra@bigpond.net.au>
597
598 * config.bfd (spu-*-elf): Delete targ_selvecs.
599
964597d0
NC
6002007-04-19 Nick Clifton <nickc@redhat.com>
601
602 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
603
01e76792
AM
6042007-04-19 Alan Modra <amodra@bigpond.net.au>
605
606 * bfd.c (bfd_demangle): New function.
607 * Makefile.am: Run "make dep-am".
608 * Makefile.in: Regenerate.
609 * bfd-in2.h: Regenerate.
610
ee5c21a0
DJ
6112007-04-18 Matthias Klose <doko@ubuntu.com>
612
613 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
614 (bfdver.h): Use the date in non-release builds for the soversion.
615 * Makefile.in: Regenerate.
616
fcb93ecf
PB
6172007-04-17 Paul Brook <paul@codesourcery.com>
618
619 * elf.c (_bfd_elf_is_function_type): New function.
620 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
621 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
622 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
623 * elf-bfd.h (elf_backend_data): Add is_function_type.
624 (_bfd_elf_is_function_type): Add prototype.
625 * elfxx-target.h (elf_backend_is_function_type): Add default
626 definition.
627 (elfNN_bed): Add elf_backend_is_function_type.
628 * elf32-arm.c (elf32_arm_is_function_type): New function.
629 (elf_backend_is_function_type): Define.
630
5750dcec
DJ
6312007-04-17 Daniel Jacobowitz <dan@codesourcery.com>
632
633 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
634 DT_MIPS_RLD_MAP before DT_DEBUG again.
635
cfbc9945
SE
6362007-04-14 Steve Ellcey <sje@cup.hp.com>
637
638 * Makefile.am: Add ACLOCAL_AMFLAGS.
639 * configure.in: Change macro call order.
640 * Makefile.in: Regnerate.
641 * doc/Makefile.in: Regenerate.
642 * configure: Regenerate.
643
3fcd97f1
JJ
6442007-04-14 Jakub Jelinek <jakub@redhat.com>
645
646 * elflink.c (bfd_elf_final_link): Don't free symbuf for
647 non-elf input bfds.
648 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
649 for non-elf input bfds.
650
af5978fb
RS
6512007-04-12 Richard Sandiford <richard@codesourcery.com>
652
653 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
654 DT_MIPS_RTLD_MAP for PIEs.
655
9e3313ae
RS
6562007-04-12 Richard Sandiford <richard@codesourcery.com>
657
658 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
659 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
660 in a read-only section.
661 (_bfd_mips_elf_check_relocs): Likewise.
662
1d25768e
BW
6632007-04-12 Bob Wilson <bob.wilson@acm.org>
664
665 * elf32-xtensa.c (xtensa_is_insntable_section): New.
666 (xtensa_is_proptable_section): New.
667 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
668 tables with 12-byte entries, as well as tables with 8-byte entries.
669 Sort the relocations before examining them.
670 (relax_property_section): Use xtensa_is_proptable_section and
671 xtensa_is_littable_section. Rewrite code for combining table entries
672 to be more robust in case of unexpected relocations. Do not set offset
673 of unused relocations to less than zero.
674 (xtensa_is_property_section): Use other functions instead of
675 duplicating section name comparisons.
676 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
677 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 678
e1e5c0b5 6792007-04-12 Bob Wilson <bob.wilson@acm.org>
4e591bc1 680
e1e5c0b5
BW
681 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
682 from Xtensa property sections.
4e591bc1 683
2c67c5f3
AM
6842007-04-12 Alan Modra <amodra@bigpond.net.au>
685
686 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
687 is non-NULL before dereferencing.
688
8776bb8a
NS
6892007-04-11 Nathan Sidwell <nathan@codesourcery.com>
690
691 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
692 relocs too.
693
4a828aab
RH
6942007-04-10 Richard Henderson <rth@redhat.com>
695
696 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
697 (elf64_alpha_size_got_sections): Remove unused something_changed local.
698 (elf64_alpha_size_plt_section): Return void.
699 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 700 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
701 relax_trip counter has changed.
702
91506736
DJ
7032007-04-09 Daniel Jacobowitz <dan@codesourcery.com>
704
705 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
706 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
707 (bfdver.texi): New rule.
708 * Makefile.in, doc/Makefile.in: Regenerated.
709
da6bcfca
MT
7102007-04-03 Matt Thomas <matt@netbsd.org>
711
4e591bc1 712 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
713 in a shared object if it is not in a CODE section or if it is against
714 a section symbol. This allows DWARF2 to use pcrel format.
715
9267588c
L
7162007-04-05 H.J. Lu <hongjiu.lu@intel.com>
717
718 PR ld/4304
719 * elflink.c (bfd_elf_final_link): Call einfo callback in
720 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
721 warning.
722
c1b2796f
AM
7232007-04-05 Alan Modra <amodra@bigpond.net.au>
724
725 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
726 (elf_backend_link_output_symbol_hook): Define.
727
970ccc77
NC
7282007-04-02 Nick Clifton <nickc@redhat.com>
729
730 PR binutils/4292
731 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
732 targets as 64-bit values, even if running on a 64-bit host.
733 * coffgen.c (coff_print_symbol): Likewise.
734
1783205a
NC
7352007-03-29 Nick Clifton <nickc@redhat.com>
736
737 PR binutils/4110
738 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
739 (setup_group): Use it. Report corrupt group section headers.
740 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
741 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
742 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
743
2ce859a1
AM
7442007-03-29 Alan Modra <amodra@bigpond.net.au>
745
746 PR ld/4267
947844a3
AM
747 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
748 for rel->r_info values.
749 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
750 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
751 unused entries. Don't clear plt.plist in loop.
752
39817122
RS
7532007-03-28 Richard Sandiford <richard@codesourcery.com>
754
755 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
756 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
757 Merge into...
758 (sparc_elf_append_rela): ...this new function.
759 (SPARC_ELF_APPEND_RELA): Delete.
760 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
761 the deleted append_rela field.
762 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
763 instead of SPARC_ELF_APPEND_RELA.
764 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
765 elf_size_info structure to find the size of a RELA entry and
766 the associated swap-out function.
767 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
768 (sparc_finish_dyn): ...this new function.
769 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
770
4ecceb71
RS
7712007-03-28 Richard Sandiford <richard@codesourcery.com>
772 Phil Edwards <phil@codesourcery.com>
773
774 * doc/bfd.texinfo: Put the contents after the title page rather
775 than at the end of the document.
776
d4d2b80b
AS
7772007-03-27 Andreas Schwab <schwab@suse.de>
778
779 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
780
831480e9 7812007-03-26 H.J. Lu <hongjiu.lu@intel.com>
5bd8253d
L
782
783 * configure: Regenerated.
784
f4b39977
AM
7852007-03-26 Alan Modra <amodra@bigpond.net.au>
786
787 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
788 (allocate_spuear_stubs): New function.
789 (spu_elf_size_stubs): Call allocate_spuear_stubs.
790
157090f7
AM
7912007-03-26 Alan Modra <amodra@bigpond.net.au>
792
793 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
794 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
795 (MY (bfd_reloc_name_lookup)): New function.
796 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
797 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
798 (MY_bfd_reloc_name_lookup): Define.
799 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
800 (MY_bfd_reloc_name_lookup): Define.
801 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
802 (NAME (aout, reloc_name_lookup)): New function.
803 * bout.c (b_out_bfd_reloc_name_lookup): New function.
804 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
805 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
806 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
807 (coff_bfd_reloc_name_lookup): Define.
808 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
809 (coff_i386_reloc_name_lookup): New function.
810 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
811 (coff_bfd_reloc_name_lookup): Define.
812 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
813 (coff_bfd_reloc_name_lookup): Define.
814 * coff-m68k.c (m68k_reloc_name_lookup): New function.
815 (coff_bfd_reloc_name_lookup): Define.
816 * coff-maxq.c (maxq_reloc_name_lookup): New function.
817 (coff_bfd_reloc_name_lookup): Define.
818 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
819 (coff_bfd_reloc_name_lookup): Define.
820 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
821 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
822 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
823 (coff_bfd_reloc_name_lookup): Define.
824 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
825 (_bfd_xcoff_reloc_name_lookup): New function.
826 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
827 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
828 (sh_coff_reloc_name_lookup): New function.
829 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
830 (coff_bfd_reloc_name_lookup): Define.
831 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
832 (tic30_coff_reloc_name_lookup): New function.
833 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
834 (tic4x_coff_reloc_name_lookup): New function.
835 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
836 (tic54x_coff_reloc_name_lookup): New function.
837 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
838 (coff_amd64_reloc_name_lookup): New function.
839 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
840 (coff_bfd_reloc_name_lookup): Define.
841 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
842 (coff_bfd_reloc_name_lookup): Define.
843 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
844 (xcoff64_reloc_name_lookup): New function.
845 (rs6000coff64_vec, aix5coff64_vec): Init new field.
846 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
847 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
848 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
849 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
850 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
851 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
852 (bfd_elf32_bfd_reloc_name_lookup): Define.
853 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
854 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
855 (bfd_elf32_bfd_reloc_name_lookup): Define.
856 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
857 (bfd_elf32_bfd_reloc_name_lookup): Define.
858 * elf32-cris.c (cris_reloc_name_lookup): New function.
859 (bfd_elf32_bfd_reloc_name_lookup): Define.
860 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
861 (bfd_elf32_bfd_reloc_name_lookup): Define.
862 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
863 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
864 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
865 (bfd_elf32_bfd_reloc_name_lookup): Define.
866 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
867 (bfd_elf32_bfd_reloc_name_lookup): Define.
868 * elf32-frv.c (frv_reloc_name_lookup): New function.
869 (bfd_elf32_bfd_reloc_name_lookup): Define.
870 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
871 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
872 (bfd_elf32_bfd_reloc_name_lookup): Define.
873 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
874 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
875 (bfd_elf32_bfd_reloc_name_lookup): Define.
876 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
877 (bfd_elf32_bfd_reloc_name_lookup): Define.
878 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
879 (bfd_elf32_bfd_reloc_name_lookup): Define.
880 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
881 (bfd_elf32_bfd_reloc_name_lookup): Define.
882 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
883 (bfd_elf32_bfd_reloc_name_lookup): Define.
884 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
885 (bfd_elf32_bfd_reloc_name_lookup): Define.
886 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
887 (bfd_elf32_bfd_reloc_name_lookup): Define.
888 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
889 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
890 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
891 * elf32-m68k.c (reloc_name_lookup): New function.
892 (bfd_elf32_bfd_reloc_name_lookup): Define.
893 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
894 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
895 (bfd_elf32_bfd_reloc_name_lookup): Define.
896 * elf32-mep.c (mep_reloc_name_lookup): New function.
897 (bfd_elf32_bfd_reloc_name_lookup): Define.
898 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
899 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
900 (bfd_elf32_bfd_reloc_name_lookup): Define.
901 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
902 * elf32-mt.c (mt_reloc_name_lookup): New function.
903 (bfd_elf32_bfd_reloc_name_lookup): Define.
904 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
905 (bfd_elf32_bfd_reloc_name_lookup): Define.
906 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
907 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
908 (bfd_elf32_bfd_reloc_name_lookup): Define.
909 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
910 (bfd_elf32_bfd_reloc_name_lookup): Define.
911 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
912 (bfd_elf32_bfd_reloc_name_lookup): Define.
913 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
914 (bfd_elf32_bfd_reloc_name_lookup): Define.
915 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
916 (bfd_elf32_bfd_reloc_name_lookup): Define.
917 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
918 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
919 (bfd_elf32_bfd_reloc_name_lookup): Define.
920 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
921 (bfd_elf32_bfd_reloc_name_lookup): Define.
922 * elf32-vax.c (reloc_name_lookup): New function.
923 (bfd_elf32_bfd_reloc_name_lookup): Define.
924 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
925 (bfd_elf32_bfd_reloc_name_lookup): Define.
926 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
927 (bfd_elf32_bfd_reloc_name_lookup): Define.
928 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
929 (bfd_elf32_bfd_reloc_name_lookup): Define.
930 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
931 (bfd_elf64_bfd_reloc_name_lookup): Define.
932 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
933 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
934 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
935 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
936 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
937 (bfd_elf64_bfd_reloc_name_lookup): Define.
938 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
939 (bfd_elf64_bfd_reloc_name_lookup): Define.
940 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
941 (bfd_elf64_bfd_reloc_name_lookup): Define.
942 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
943 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
944 (bfd_elf64_bfd_reloc_name_lookup): Define.
945 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
946 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
947 (bfd_elfNN_bfd_reloc_name_lookup): Define.
948 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
949 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
950 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
951 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
952 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
953 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
954 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
955 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
956 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
957 (MY(reloc_name_lookup)): New function.
958 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
959 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
960 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
961 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
962 (coff_bfd_reloc_name_lookup): Define.
963 * reloc.c (bfd_reloc_name_lookup): New function.
964 * riscix.c (riscix_reloc_name_lookup): New function.
965 (MY_bfd_reloc_name_lookup): Define.
966 * som.c (som_bfd_reloc_name_lookup): New function.
967 * targets.c (struct bfd_target): Add reloc_name_lookup.
968 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
969 * versados.c (versados_bfd_reloc_name_lookup): Define.
970 * vms.c (vms_bfd_reloc_name_lookup): New function.
971 * bfd-in2.h: Regenerate.
972 * libbfd.h: Regenerate.
973
2d82d84d
TS
9742007-03-26 Thiemo Seufer <ths@mips.com>
975
a5cb1fd7 976 PR ld/4208
2d82d84d
TS
977 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
978 matching relocation is found.
979 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
980
831480e9 9812007-03-23 H.J. Lu <hongjiu.lu@intel.com>
1a27db7d
L
982
983 * configure: Regenerated.
984
a1ac8190
JM
9852007-03-23 Joseph Myers <joseph@codesourcery.com>
986
987 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
988 * configure: Regenerate.
989
aa7a0635
AM
9902007-03-23 Alan Modra <amodra@bigpond.net.au>
991
992 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
993 Remove input_sec param. Adjust all calls.
994 (write_one_stub): Adjust stub symbol.
995 (needs_ovl_stub): New function, extracted from..
996 (spu_elf_size_stubs): ..here.
997 (spu_elf_relocate_section): Use needs_ovl_stub.
998
e49e529d
JM
9992007-03-22 Joseph Myers <joseph@codesourcery.com>
1000
1001 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
1002 if nonempty.
1003 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
1004 * Makefile.in, configure, doc/Makefile.in: Regenerate.
1005
831480e9 10062007-03-22 H.J. Lu <hongjiu.lu@intel.com>
50572669
L
1007
1008 PR ld/4210
1009 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
1010 address and virtual size of the last section for the image
1011 size.
1012
0920dee7
L
10132007-03-22 H.J. Lu <hongjiu.lu@intel.com>
1014
1015 PR ld/4007
1016 * elf.c (assign_file_positions_for_load_sections): Check if
1017 all sections are in the segment.
1018
831480e9 10192007-03-20 H.J. Lu <hongjiu.lu@intel.com>
749b8d9d
L
1020
1021 PR ld/4208
1022 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
1023 matching LO16 relocation for HI16 relocation.
1024
27e55c4d
PB
10252007-03-20 Paul Brook <paul@codesourcery.com>
1026
1027 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
1028 * bfd-in2.h: Regenerate.
1029 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
1030 (record_arm_to_thumb_glue): Use globals->pic_veneer.
1031 (elf32_arm_create_thumb_stub): Ditto.
1032 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
1033
bf21ed78
MS
10342007-03-18 Mark Shinwell <shinwell@codesourcery.com>
1035
1036 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
1037 argument and extra last argument.
1038 * bfd-in2.h: Regenerate.
1039 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
1040 member.
1041 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
1042 extra last argument. Set no_enum_size_warning appropriately.
1043 (elf32_arm_merge_eabi_attributes): Improve enum sizes
1044 diagnostic, suppressing it when no_enum_size_warning dictates.
1045
5f6999aa
NC
10462007-03-20 Nick Clifton <nickc@redhat.com>
1047
1048 PR binutils/3535
1049 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
1050 specific conditions that need the program headers to be
1051 rewritten.
1052
831480e9 10532007-03-19 H.J. Lu <hongjiu.lu@intel.com>
d13c9dc6
L
1054
1055 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
1056 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1057 SizeOfInitializedData, SizeOfUninitializedData,
1058 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
1059 extra PE a.out header.
1060 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
1061 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
1062 defined.
1063 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
1064 defined.
1065 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
1066 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1067 SizeOfInitializedData, SizeOfUninitializedData,
1068 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
1069 extra PE a.out header.
1070
831480e9 10712007-03-18 H.J. Lu <hongjiu.lu@intel.com>
739bb57e
L
1072
1073 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
1074 only if BFD64 is defined.
1075
5384511f
AM
10762007-03-17 Alan Modra <amodra@bigpond.net.au>
1077
1078 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
1079 on setjmp calls.
1080
187b3d5d
L
10812007-03-15 H.J. Lu <hongjiu.lu@intel.com>
1082
1083 * doc/Makefile.in: Regenerated.
1084
c428fa83
L
10852007-03-15 H.J. Lu <hongjiu.lu@intel.com>
1086
1087 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
1088 create doc/bfdver.texi.
1089 * Makefile.in: Regenerated.
1090
1091 * configure.in (--with-bugurl): New option.
1092 * configure: Regenerated.
1093
1094 * version.h (REPORT_BUGS_TO): New.
1095
d1036acb
L
10962007-03-13 H.J. Lu <hongjiu.lu@intel.com>
1097
1098 PR binutils/3826
1099 * elf-bfd.h (elf_backend_data): Add elf_osabi.
1100 (_bfd_elf_set_osabi): New.
1101
1102 * elf.c (_bfd_elf_set_osabi): New.
1103
1104 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
1105 (elf_backend_post_process_headers): Defined with
1106 _bfd_elf_set_osabi.
1107 (ELF_OSABI): Properly defined for each target.
1108
1109 * elf32-i370.c (i370_elf_post_process_headers): Removed.
1110 (ELF_OSABI): Defined.
1111 (elf_backend_post_process_headers): Defined with
1112 _bfd_elf_set_osabi.
1113
1114 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1115 freebsd.
1116 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
1117
1118 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
1119 (ELF_OSABI): Defined.
1120 (elf_backend_post_process_headers): Defined with
1121 _bfd_elf_set_osabi.
1122
1123 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1124 freebsd.
1125 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
1126 elf_osabi.
1127
1128 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
1129 with elf_osabi.
1130 (ELF_OSABI): Properly defined for each target.
1131 (elf_backend_post_process_headers): Defined with
1132 _bfd_elf_set_osabi for Linux.
1133
1134 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
1135 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1136 (elf_backend_post_process_headers): Defined with
1137 _bfd_elf_set_osabi.
1138
1139 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
1140 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1141 (elf_backend_post_process_headers): Defined with
1142 _bfd_elf_set_osabi.
1143
1144 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
1145 with any ELF target of the compatible machine for which we do not
1146 have a specific backend.
1147
1148 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
1149 with elf_osabi.
1150
1151 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
1152 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
1153
d4c87fc1
AM
11542007-03-08 Alan Modra <amodra@bigpond.net.au>
1155
1156 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
1157 V850_OTHER_* bits.
1158
9c6fc49d
AM
11592007-03-08 Alan Modra <amodra@bigpond.net.au>
1160
1161 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
1162 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
1163 Run "make dep-am".
1164 * Makefile.in: Regenerate.
1165 * po/SRC-POTFILES.in: Regenerate.
1166
faed74d6
L
11672007-03-07 H.J. Lu <hongjiu.lu@intel.com>
1168
1169 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
1170 (x86_64-*-kfreebsd*-gnu): Likewise.
1171 (x86_64-*-netbsd*): Likewise.
1172 (x86_64-*-openbsd*): Likewise.
1173 (x86_64-*-linux-*): Likewise.
1174
1175 * configure.in: Support bfd_efi_app_x86_64_vec.
1176 * configure: Regenerated.
1177
1178 * efi-app-x86_64.c: New file.
1179
1180 * targets.c (bfd_efi_app_x86_64_vec): New.
1181 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
1182
15344ad7
L
11832007-03-07 Kai Tietz <kai.tietz@onevision.com>
1184
1185 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
1186 const for type reloc_howto_type.
1187
ab96bf03
AM
11882007-03-07 Alan Modra <amodra@bigpond.net.au>
1189
1190 PR 3958
1191 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
1192 (elf_discarded_section): Move..
1193 * bfd-in.h: ..to here.
1194 * bfd-in2.h: Regenerate.
1195 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
1196 from discarded sections before relocate_section has done its job.
1197 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
1198 relocs against symbols from discarded sections.
1199 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
1200 SECREL32.
1201 (elf_hppa_relocate_section): Handle relocatable link after setting
1202 sec, sym, h etc. for final link. Squash error messages for
1203 relocatable link. Clear section contents for relocs against
1204 symbols in discarded sections, and zero reloc. Remove existing
1205 zero r_symndx code.
1206 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
1207 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1208 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1209 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1210 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
1211 (bfin_relocate_section): Likewise.
1212 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1213 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1214 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1215 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1216 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1217 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1218 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1219 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1220 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1221 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1222 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1223 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1224 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1225 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1226 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1227 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1228 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1229 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1230 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1231 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1232 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1233 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1234 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1235 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1236 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
1237 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1238 * elf32-spu.c (spu_elf_relocate_section): Likewise.
1239 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1240 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1241 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1242 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1243 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1244 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1245 (elf64_alpha_relocate_section): Likewise.
1246 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1247 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1248 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1249 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1250 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1251 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
1252 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1253 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1254
1255 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
1256 symbols for relocatable link. Don't use always-zero st_value.
1257 (elf_backend_rela_normal): Don't define.
1258 * elf32-bfin.c (bfinfdpic_relocate_section): Use
1259 RELOC_FOR_GLOBAL_SYMBOL.
1260 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1261 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
1262 section symbol adjustments with same for relocatable link.
1263 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1264 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
1265 (elf32_m68hc11_check_relocs): ..to here.
1266 * elf32-score.c (score_elf_final_link_relocate): Remove zero
1267 r_symndx code.
1268 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1269
0e922b77
AM
12702007-03-07 Alan Modra <amodra@bigpond.net.au>
1271
1272 PR 4144
1273 * elf.c (assign_file_positions_for_load_sections): Don't
1274 adjust p_memsz for !SEC_LOAD section vma modulo page size.
1275 Instead, use the same lma based adjustment for SEC_LOAD
1276 sections.
1277
25c6282a
BW
12782007-03-01 Bob Wilson <bob.wilson@acm.org>
1279
1280 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
1281 (find_relaxable_sections): Do not increment src_count for unknown
1282 opcodes. Decode only once instead of calling is_l32r_relocation.
1283 (compute_text_actions): Remove unused no_insn_move flag. Assert that
1284 src_next matches src_count in relax_info.
1285
066c2a57
JM
12862007-03-01 Joseph Myers <joseph@codesourcery.com>
1287
1288 * Makefile.am (bfdver.h): Use "." not " " between version number
1289 and date.
1290 * Makefile.in: Regenerate.
1291 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
1292 * configure: Regenerate.
1293
ed6ba298
NS
12942007-02-28 Nathan Sidwell <nathan@codesourcery.com>
1295
1296 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
1297
7a8757b3
AM
12982007-02-27 Alan Modra <amodra@bigpond.net.au>
1299
1300 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
1301 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
1302
024b2372
CD
13032007-02-23 Carlos O'Donell <carlos@codesourcery.com>
1304
1305 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
1306 DWARF even with 64-bit addresses.
1307 (_bfd_dwarf2_find_nearest_line): Likewise.
1308
cb3ff1e5
NC
13092007-02-23 Nick Clifton <nickc@redhat.com>
1310
1311 PR binutils/3535
1312 * elf.c (copy_private_bfd_data): Always rewrite the program
1313 headers when a Solaris interpreter segment is involved.
1314
6a5bb875
PB
13152007-02-22 Paul Brook <paul@codesourcery.com>
1316
1317 * elflink.c (gc_mark_hook_fn): Remove.
1318 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
1319 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
1320 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
1321 (elf_backend_data): Add gc_mark_extra_sections.
1322 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
1323 definition.
1324 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
1325 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
1326 (elf_backend_gc_mark_extra_sections): Define.
1327
2889e75b
NC
13282007-02-21 Nick Clifton <nickc@redhat.com>
1329
1330 * elf.c (_bfd_elf_map_sections_to_segments): If the
1331 override_segment_assignment callback is defined then call it.
1332
78859468
AM
13332007-02-21 Alan Modra <amodra@bigpond.net.au>
1334
1335 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
1336
ae0d2616
TS
13372007-02-19 Thiemo Seufer <ths@mips.com>
1338
1339 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
1340 translation marker from untranslatable strings.
1341
6bfdb61b
AM
13422007-02-19 Alan Modra <amodra@bigpond.net.au>
1343
1344 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
1345 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
1346 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
1347 (elfNN_bed): Init new field.
1348 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
1349
92f01d61
JM
13502007-02-17 Mark Mitchell <mark@codesourcery.com>
1351 Nathan Sidwell <nathan@codesourcery.com>
1352 Vladimir Prus <vladimir@codesourcery.com
1353 Joseph Myers <joseph@codesourcery.com>
1354
1355 * configure.in (--with-pkgversion): New option.
1356 * configure: Regenerate.
1357 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
1358 * Makefile.in: Regenerate.
1359 * version.h (BFD_VERSION_STRING): Define using
1360 @bfd_version_package@.
1361
c0e3f241
CD
13622007-02-16 Carlos O'Donell <carlos@codesourcery.com>
1363
1364 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
1365 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
1366 and EF_MIPS_UCODE.
1367
72f6ea61
AM
13682007-02-15 Alan Modra <amodra@bigpond.net.au>
1369
1370 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
1371 declare.
1372 (_bfd_norelocs_canonicalize_reloc): Likewise.
1373 * libbfd.h: Regenerate.
1374 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
1375 (_bfd_norelocs_canonicalize_reloc): Likewise.
1376 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
1377 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
1378 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
1379 * ihex.c: Similarly.
1380 * mach-o-target.c: Similarly.
1381 * mach-o.c: Similarly.
1382 * mmo.c: Similarly.
1383 * pef.c: Similarly.
1384 * ppcboot.c: Similarly.
1385 * srec.c: Similarly.
1386 * xsym.c: Similarly.
1387
fab4a87f
L
13882007-02-14 H.J. Lu <hongjiu.lu@intel.com>
1389
1390 PR ld/3953
1391 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
1392 when adding default symbol.
1393
e4e0193e
AM
13942007-02-13 Alan Modra <amodra@bigpond.net.au>
1395
1396 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
1397 for branch lookup table.
1398
84f5d08e
AM
13992007-02-12 Alan Modra <amodra@bigpond.net.au>
1400
1401 * elf64-ppc.c (create_linkage_sections): Don't create
1402 .rela.rodata.brlt for --emit-relocs.
1403 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
1404 (ppc_size_one_stub): Count them. Simplify test of stub type
1405 when counting stub relocs. Set SEC_RELOC too.
1406 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
1407 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
1408
4aac632e
AM
14092007-02-12 Alan Modra <amodra@bigpond.net.au>
1410
1411 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
1412 with a zero symbol index.
1413
8da3dbc5
AM
14142007-02-12 Alan Modra <amodra@bigpond.net.au>
1415
1416 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
1417
b31847af
DB
14182007-02-05 Dave Brolley <brolley@redhat.com>
1419 Stan Cox <scox@redhat.com>
1420
1421 PR ld/3972
1422 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
1423
722b0ff7 14242007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
1425 Richard Sandiford <rsandifo@redhat.com>
1426 Stan Cox <scox@redhat.com>
1427 Nick Clifton <nickc@redhat.com>
1428 DJ Delorie <dj@redhat.com>
1429 Frank Ch. Eigler <fche@redhat.com>
1430 Ben Elliston <bje@redhat.com>
1431 Richard Henderson <rth@redhat.com>
1432
1433 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
1434 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
1435 (BFD32_BACKENDS): Add elf32-mep.lo.
1436 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
1437 (cpu-mep.lo,elf32-mep.lo): New targets.
1438 * archures.c (bfd_arch_mep): New enumerator.
1439 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
1440 (bfd_mep_arch): New external variable.
1441 (bfd_archures_list): Add bfd_mep_arch.
1442 * config.bfd: Support mep-*-elf.
1443 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
1444 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
1445 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
1446 declarations.
1447 (_bfd_target_vector): Add bfd_elf32_mep_vec and
1448 bfd_elf32_mep_little_vec.
722b0ff7
DB
1449 * mep-relocs.pl: New file.
1450 * cpu-mep.c: New file.
1451 * elf32-mep.c: New file.
1452 * bfd-in2.h: Regenerate.
e382d174 1453 * po/POTFILES.in: Regenerate.
722b0ff7
DB
1454 * libbfd.h: Regenerate.
1455 * Makefile.in: Regenerate.
1456 * configure: Regenerate.
1457
d9352518
DB
14582007-02-05 Dave Brolley <brolley@redhat.com>
1459
1460 * elflink.c (evaluate_complex_relocation_symbols): Check for
1461 STT_SRELC for global symbols.
1462 (perform_complex_relocations): Renamed to
1463 perform_complex_relocation and now examines only one relocation.
1464 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 1465 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
1466 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
1467 (OD,OS,OU): #undefs corrected to N, S and U repectively.
1468 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
1469 (complex_reloc_installation_howto): Removed.
1470 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
1471 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
1472
d9352518 14732007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
1474 Richard Sandiford <rsandifo@redhat.com>
1475 DJ Delorie <dj@redhat.com>
1476 Graydon Hoare <graydon@redhat.com>
1477 Nick Clifton <nickc@cambridge.redhat.com>
1478 Jeff Holcomb <jeffh@redhat.com>
1479 Frank Ch. Eigler <fche@redhat.com>
1480
1481 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
1482 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
1483 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
1484 * elflink.c (set_symbolValue): New static function.
d9352518
DB
1485 (resolve_symbol): Likewise.
1486 (resolve_section): Likewise.
1487 (undefined_reference): Likewise.
1488 (eval_symbol): Likewise.
1489 (evaluate_complex_relocation_symbols): Likewise.
1490 (put_value): Likewise.
1491 (get_value): Likewise.
e382d174
DB
1492 (decode_complex_addend):
1493 (bfd_elf_perform_complex_relocation): New function.
1494 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
1495 * reloc.c (BFD_RELOC_RELC): New relocation number.
1496 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 1497
f1ab2340 14982007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 1499
f1ab2340
BW
1500 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
1501 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
1502 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
1503 (elf_xtensa_allocate_got_size): Replace these with...
1504 (elf_xtensa_allocate_dynrelocs): ...this new function.
1505 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 1506
e5f131d1 15072007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 1508
e5f131d1
BW
1509 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
1510 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
1511 Set src_mask to zero.
1512 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
1513 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 1514
4608f3d9
BW
15152007-02-02 Bob Wilson <bob.wilson@acm.org>
1516
1517 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
1518 (elf_xtensa_dynamic_symbol_p): ...this.
1519
f0e6fdb2
BW
15202007-02-02 Bob Wilson <bob.wilson@acm.org>
1521
1522 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
1523 (struct elf_xtensa_link_hash_table): New.
1524 (elf_xtensa_hash_table): New.
1525 (elf_xtensa_link_hash_table_create): New.
1526 (elf_xtensa_check_relocs): Update plt_reloc_count references.
1527 Update arguments to add_extra_plt_sections.
1528 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
1529 table. Update for plt_reloc_count and add_extra_plt_sections.
1530 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
1531 argument with link info. Update calls to elf_xtensa_get_plt_section
1532 and elf_xtensa_get_gotplt_section.
1533 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
1534 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
1535 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
1536 (relax_property_section): Get sections from the hash table and update
1537 function calls.
1538 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
1539 dynobj argument with link info. Get sections for first plt chunk from
1540 the hash table.
1541 (bfd_elf32_bfd_link_hash_table_create): Define.
1542
c15f73f9
JJ
15432007-02-02 Jakub Jelinek <jakub@redhat.com>
1544
1545 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
1546 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
1547 (struct elf_symbol): Change first member into union.
1548 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
1549 internal syms. Only compare st_shndx fields.
1550 (elf_create_symbuf): New function.
1551 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
1552 for bfds, use a binary search, otherwise don't qsort symbols
1553 unnecessarily only to select which symbols are for the particular
1554 shndx.
1555
effdf42a
NC
15562007-02-01 Nick Clifton <nickc@redhat.com>
1557
1558 PR ld/3852
1559 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
1560 in the elf_link_hash_table structure.
1561
183e98be
AM
15622007-02-01 Alan Modra <amodra@bigpond.net.au>
1563
1564 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
1565 * elfxx-target.h (elf_backend_write_core_note): Define and use.
1566 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
1567 32-bit core note on 64-bit target.
1568 (elfcore_write_prstatus): Likewise.
1569 (elfcore_write_lwpstatus): Make note_name const.
1570 (elfcore_write_prfpreg): Likewise.
1571 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
1572 target.
1573 * elf32-ppc.c (ppc_elf_write_core_note): New function.
1574 (elf_backend_write_core_note): Define.
1575 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
1576 (elf_backend_write_core_note): Define.
1577
fc523535 15782007-01-31 H.J. Lu <hongjiu.lu@intel.com>
16cecee5
L
1579
1580 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
1581 (elf32_bed): Defined for elf32-us-cris.
1582
1583 * elf64-sh64.c (elf64_bed): Defined for Linux.
1584 (INCLUDED_TARGET_FILE): Removed.
1585
1586 * elfxx-target.h (elfNN_bed): Always define. Don't check
1587 INCLUDED_TARGET_FILE.
1588
c9b57b7e
DD
15892007-01-31 DJ Delorie <dj@redhat.com>
1590
1591 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
1592 message for dangerous relocs, special case the common user error.
1593
53020534
L
15942007-01-30 H.J. Lu <hongjiu.lu@intel.com>
1595
1596 * elf.c (copy_elf_program_header): Start from the first section
1597 in a segment and stop when all sections in a segment are
1598 accounted for.
1599
c7b8f16e
JB
16002007-01-29 Julian Brown <julian@codesourcery.com>
1601
1602 * bfd-in2.h: Regenerate.
1603 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
1604 instruction scanning should be done.
1605 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
1606 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
1607 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
1608 prototype.
1609 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
1610 argument.
1611 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
1612 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
1613 (elf32_vfp11_erratum_type): New enum.
1614 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
1615 veneers.
1616 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
1617 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
1618 vfp11_fix and num_vfp11_fixes fields.
1619 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
1620 vfp11_erratum_glue_size, num_vfp11_fixes fields.
1621 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
1622 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
1623 glue section.
1624 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
1625 to a section's map.
1626 (record_vfp11_erratum_veneer): Create a single veneer, and its
1627 associated symbols.
1628 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
1629 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
1630 BFDs.
1631 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
1632 required.
1633 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
1634 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
1635 (bfd_arm_vfp11_write_mask): Update write mask according to coded
1636 register number.
1637 (bfd_arm_vfp11_antidependency): New function.
1638 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
1639 (elf32_arm_compare_mapping): Declare.
1640 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
1641 BFD for potential erratum-triggering insns. Record results.
1642 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
1643 and branches to veneers have been placed in virtual memory after
1644 layout.
1645 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
1646 hash table.
1647 (elf32_arm_output_symbol_hook): Remove.
1648 (elf32_arm_write_section): Output veneers, and branches to veneers.
1649 Use maps from input sections, not output sections, for code
1650 byte-swapping.
1651 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
1652 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
1653 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
1654 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
1655
16562007-01-27 H.J. Lu <hongjiu.lu@intel.com>
83d1651b
L
1657
1658 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 1659 (INCLUDED_TARGET_FILE): Removed.
83d1651b 1660
914dfb0f
DA
16612007-01-27 Mike Frysinger <vapier@gentoo.org>
1662
1663 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
1664 (INCLUDED_TARGET_FILE): Remove.
1665
78eba9b6
DD
16662007-01-25 DJ Delorie <dj@redhat.com>
1667
1668 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
1669 R_M32C_16 or R_M32C_24 relocs.
1670
64ee10b6
NC
16712007-01-25 Nick Clifton <nickc@redhat.com>
1672
1673 PR binutils/3874
1674 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
1675 hash table was created by elf32_avr_link_hash_table_create before
1676 using it.
1677 (elf32_avr_link_hash_newfunc): New function. Just pass the call
1678 through to _bfd_elf_link_hash_newfunc.
1679 (elf32_avr_link_hash_table_create): Use
1680 elf32_avr_link_hash_newfunc instead of
1681 _bfd_elf_link_hash_newfunc.
1682 (elf32_avr_relocate_section): Check for the hash table pointer
1683 being NULL.
1684 (elf32_avr_relax_section, avr_build_one_stub,
1685 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
1686 elf32_avr_build_stubs): Likewise.
1687
40b36307
L
16882007-01-16 H.J. Lu <hongjiu.lu@intel.com>
1689
1690 PR ld/3831
1691 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
1692 argument, Elf_Internal_Sym *.
1693
1694 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
1695 symbol dynamic if info->dynamic_data is TRUE.
1696 (bfd_elf_record_link_assignment): Updated call to
1697 bfd_elf_record_link_assignment.
1698 (_bfd_elf_merge_symbol): Likewise. Always call
1699 bfd_elf_link_mark_dynamic_symbol.
1700
fc523535 17012007-01-12 H.J. Lu <hongjiu.lu@intel.com>
a454209d
L
1702
1703 * Makefile.am (BFD_LIBS): Removed.
1704 * Makefile.in: Regenerated.
1705
fc523535 17062007-01-11 H.J. Lu <hongjiu.lu@intel.com>
21e40a48
L
1707
1708 PR binutils/3631
1709 * Makefile.am (OFILES): Add @bfd64_libs@.
1710 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
1711 * Makefile.in: Regenerated.
1712
1713 * configure.in (bfd_libs): Replaced by ...
1714 (bfd64_libs): This.
1715 * configure: Regenerated.
1716
59e0647f
NS
17172007-01-11 Nathan Sidwell <nathan@codesourcery.com>
1718
1719 * elf.c (assign_file_positions_for_load_sections): We can
1720 require fewer phdrs than expected.
1721
3bdcfdf4
KH
17222007-01-08 Kazu Hirata <kazu@codesourcery.com>
1723
1724 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
1725 * bfd-in2.h: Regenerate.
1726 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
1727 bfd_mach_cpu32_fido.
1728 (m68k_arch_features): Use fido_a instead of cpu32.
1729 (bfd_m68k_compatible): Reject the combination of Fido and
1730 ColdFire. Accept the combination of CPU32 and Fido with a
1731 warning.
1732 * elf32-m68k.c (elf32_m68k_object_p,
1733 elf32_m68k_merge_private_bfd_data,
1734 elf32_m68k_print_private_bfd_data): Treat Fido as an
1735 architecture by itself.
1736
42037fe5
NC
17372007-01-08 Kai Tietz <kai.tietz@onevision.com>
1738
1739 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
1740
ebe8b991
JJ
17412007-01-05 Jakub Jelinek <jakub@redhat.com>
1742
1743 * texhex.c (first_phase): Don't fall through into the default
1744 case.
1745 (pass_over): Replace abort () calls with return FALSE. Fix
1746 buffer overflow.
1747
b327f31f
AM
17482007-01-04 Jie Zhang <jie.zhang@analog.com>
1749
1750 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
1751 SEC_EXCLUDE on zero size .eh_frame.
1752
10a2343e 1753For older changes see ChangeLog-2006
56882138
AM
1754\f
1755Local Variables:
1756mode: change-log
1757left-margin: 8
1758fill-column: 74
1759version-control: never
1760End:
This page took 0.588191 seconds and 4 git commands to generate.