]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
2007-09-05 H.J. Lu <hongjiu.lu@intel.com>
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
b427ea91
AM
12007-09-04 Alan Modra <amodra@bigpond.net.au>
2
3 * elf32-spu.c (elf_howto_table): Formatting.
4
aff90a5f
L
52007-09-02 H.J. Lu <hongjiu.lu@intel.com>
6
7 PR ld/4986
8 * dwarf2.c (new_line_sorts_after): Undo the last change.
9 (add_line_info): Only keep the last entry with the same address
10 and end sequence.
11
39934745
L
122007-08-31 H.J. Lu <hongjiu.lu@intel.com>
13
14 PR ld/4986
15 * dwarf2.c (new_line_sorts_after): Also compare line number.
16
3a4743fe
NC
172007-08-31 Jesse Michael <jmichael@suse.de>
18
19 * mach-o.c (bfd_mach_o_make_bfd_section): Fix test for non
20 zerofill sections.
21
5c5d6806
BW
222007-08-28 David Heine <dlheine@tensilica.com>
23
24 * elf32-xtensa.c (compute_ebb_actions): Update removed_bytes when
25 narrowing instructions.
26
7f6a71ff 272007-08-28 Mark Shinwell <shinwell@codesourcery.com>
39934745 28 Joseph Myers <joseph@codesourcery.com>
7f6a71ff
JM
29
30 * elf32-arm.c (elf32_arm_compare_mapping): Compare first on vma,
31 then on type.
32
0b3e17e9
NC
332007-08-28 Robert Sebastian Gerus <arachnist@gmail.com>
34
35 * config.bfd: Add support for i[3-7]86-*-dragonfly*.
36 * configure.in: Likewise.
37 * configure: Regenerate.
38
b15fa79e
AM
392007-08-25 Ulrich Weigand <uweigand@de.ibm.com>
40 Alan Modra <amodra@bigpond.net.au>
41
42 * elf.c (elfcore_grok_spu_note): New function.
43 (elf_parse_notes): Call it.
44
534a31f6
L
452007-08-24 H.J. Lu <hongjiu.lu@intel.com>
46
47 * elf64-x86-64.c (elf64_x86_64_relocate_section): Adjust
48 indentation.
49
4a6636fb
PA
502007-08-24 Pedro Alves <pedro_alves@portugalmail.pt>
51
52 * elf.c (elfcore_grok_win32pstatus): Remove HAVE_WIN32_PSTATUS_T
53 guard. Make it host independent.
54 (elfcore_grok_note): Remove HAVE_WIN32_PSTATUS_T guard around
55 NT_WIN32PSTATUS.
56
718175fa
JK
572007-08-24 Jan Kratochvil <jan.kratochvil@redhat.com>
58
82fc7765
JK
59 * elf-bfd.h (struct elf_obj_tdata): New BUILD_ID_SIZE, BUILD_ID.
60 * elf.c (elfcore_read_notes): Split to ...
718175fa
JK
61 (elf_read_notes) ... here ...
62 (elf_parse_notes): ... and here. Check `bfd_get_format (abfd)' with
63 the former subfunctions called only for BFD_CORE.
64 Call ELFOBJ_GROK_GNU_NOTE for BFD_OBJECT files with the owner "GNU".
65 (_bfd_elf_make_section_from_shdr): Call ELF_PARSE_NOTES for SHT_NOTEs.
66 (bfd_section_from_phdr): Update the call for renamed ELFCORE_READ_NOTES.
67 (elfobj_grok_gnu_build_id, elfobj_grok_gnu_note): New functions.
68 Code advisory: Roland McGrath
69
f1187097
DJ
702007-08-24 Daniel Jacobowitz <dan@codesourcery.com>
71
72 * elf64-mips.c (elf_backend_sign_extend_vma): Define.
73
a30e5f5f
AM
742007-08-24 Alan Modra <amodra@bigpond.net.au>
75
76 * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Warning fix.
77
a351bca6
L
782007-08-23 H.J. Lu <hongjiu.lu@intel.com>
79
80 * Makefile.am: Run "make dep-am".
81 * Makefile.in: Regenerated.
82
142411ca
L
832007-08-23 H.J. Lu <hongjiu.lu@intel.com>
84
85 * elf32-i386.c: Include "bfd_stdint.h".
86 (elf_i386_rtype_to_howto): New function.
87 (elf_i386_info_to_howto_rel): Use it.
88 (x86_64_opcode16): New union type.
89 (elf_i386_check_tls_transition): New function.
90 (elf_i386_tls_transition): Updated to check transition and
91 issue an error if a transition isn't supported.
92 (elf_i386_check_relocs): Return FALSE if
93 elf_i386_tls_transition returns FALSE.
94 (elf_i386_gc_sweep_hook): Likewise.
95 (elf_i386_relocate_section): Likewise. Remove BFD_ASSERT
96 on TLS transitions.
97
98 * elf64-x86-64.c: Include "bfd_stdint.h".
99 (x86_64_opcode16): New union type.
100 (x86_64_opcode32): Likewise.
101 (elf64_x86_64_check_tls_transition): New function.
102 (elf64_x86_64_tls_transition): Updated to check transition and
103 issue an error if a transition isn't supported.
104 (elf64_x86_64_check_relocs): Return FALSE if
105 elf64_x86_64_tls_transition returns FALSE.
106 (elf64_x86_64_gc_sweep_hook): Likewise.
107 (elf64_x86_64_relocate_section): Likewise. Remove BFD_ASSERT
108 on TLS transitions.
109
eae50df2
L
1102007-08-22 H.J. Lu <hongjiu.lu@intel.com>
111
112 * elfxx-ia64.c: Convert to ISO C90 prototypes.
113 (elfNN_hpux_backend_section_from_bfd_section): Make it static.
114
9a2e389a
L
1152007-08-22 H.J. Lu <hongjiu.lu@intel.com>
116
117 * elf64-x86-64.c: Remove trailing whitespace.
118 * elfxx-ia64.c: Likewise.
119
2f3bf80a
L
1202007-08-21 H.J. Lu <hongjiu.lu@intel.com>
121
122 * elf32-i386.c (elf_i386_tls_transition): Accept a pointer
123 to ELF hash entry instead of an integer for local test.
124 (elf_i386_check_relocs): Updated.
125 (elf_i386_gc_sweep_hook): Likewise.
126 (elf_i386_relocate_section): Likewise.
127
128 * elf64-x86-64.c (elf64_x86_64_tls_transition): Accept a
129 pointer to ELF hash entry instead of an integer for local
130 test.
131 (elf64_x86_64_check_relocs): Updated.
132 (elf64_x86_64_gc_sweep_hook): Likewise.
133 (elf64_x86_64_relocate_section): Likewise.
134
3bfa9139
L
1352007-08-20 H.J. Lu <hongjiu.lu@intel.com>
136
137 * elf32-i386.c (elf_i386_tls_transition): Break long line.
138 * elf64-x86-64.c (elf64_x86_64_tls_transition): Likewise.
139
19ec0de7
JK
1402007-08-20 Jan Kratochvil <jan.kratochvil@redhat.com>
141
142 * elfxx-target.h [ELF_COMMONPAGESIZE && ELF_MAXPAGESIZE]
143 (ELF_MINPAGESIZE): Fixed its size guess. Sanity checked its size.
144 (ELF_COMMONPAGESIZE, ELF_MAXPAGESIZE): Sanity checked their size.
145
75ea2736
NC
1462007-08-20 Nick Clifton <nickc@redhat.com>
147
148 * elflink.c (elf_fixup_link_order): Rewrite conversion of
149 s->alignment_power into an offset mask in order to avoid a gcc
150 error message.
151
7e976ae4
JJ
1522007-08-17 Jakub Jelinek <jakub@redhat.com>
153
154 * config.bfd: Handle sparcv*-*-linux-* the same as sparc-*-linux-*.
155 Change sparc64-*-linux-* to sparc64*-*-linux-*.
156
e9f27433
AM
1572007-08-17 Alan Modra <amodra@bigpond.net.au>
158
159 * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
160
2b05f1b7
L
1612007-08-16 H.J. Lu <hongjiu.lu@intel.com>
162
163 * elf.c: Revert last change.
164
94b11780
L
1652007-08-16 H.J. Lu <hongjiu.lu@intel.com>
166
167 * elf.c (get_segment_type): Change PT_GNU_STACK to PT_GNU_ATTR.
168 (bfd_section_from_phdr): Likewise.
169 (get_program_header_size): Likewise. Add a PT_GNU_ATTR segment
170 if there is an attribute section.
171 (_bfd_elf_map_sections_to_segments): Likewise.
172 (IS_SECTION_IN_INPUT_SEGMENT): Likewise.
173
a3fadc9a
L
1742007-08-14 H.J. Lu <hongjiu.lu@intel.com>
175
176 PR ld/4918
177 * elf32-i386.c (elf_i386_relocate_section): Allow R_386_PC32
178 on ___tls_get_addr for GD->LE/LD->LE transitions when not
179 building shared library.
180
181 * elf64-x86-64.c (elf64_x86_64_relocate_section): Allow
182 R_X86_64_PC32 on __tls_get_addr for GD->LE/LD->LE transitions
183 when not building shared library.
184
3fec76aa
JK
1852007-08-14 Jan Kratochvil <jan.kratochvil@redhat.com>
186
187 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): LOADBASE is now
188 initialized only on the first PT_LOAD. New variable LOADBASE_SET.
189 Removed PF_R checking for IA-64 vDSOs as redundant now.
190 Code advisory: Roland McGrath
191
8275b357
RS
1922007-08-13 Richard Sandiford <richard@codesourcery.com>
193
194 * elfxx-mips.c (mips_elf_link_hash_table): Add computed_got_sizes.
195 (mips_elf_record_global_got_symbol): Increment local_gotno for
196 each forced-local symbol.
197 (_bfd_mips_elf_check_relocs): Pass forced-local call symbols to
198 mips_elf_record_global_got_symbol for VxWorks too.
199 (_bfd_mips_elf_always_size_sections): Set computed_got_sizes
200 to true after computing the GOT size.
201 (_bfd_mips_elf_hide_symbol): Increase local_gotno whenever
202 got.offset == 1. Only adjust global_gotno if computed_got_sizes.
203 For VxWorks, add a local entry when hiding a symbol that needs a
204 plt but has not been marked as needing a global got entry.
205 (_bfd_mips_elf_link_hash_table_create): Set computed_got_sizes to
206 false.
207
649aeae3
DJ
2082007-08-12 Daniel Jacobowitz <dan@codesourcery.com>
209
210 * coffgen.c (coff_get_normalized_symtab): Correct cast.
211
3dea8fca
AM
2122007-08-13 Alan Modra <amodra@bigpond.net.au>
213
214 * elf.c (elf_modify_segment_map): Add remove_empty_load param.
215 Don't remove empty PT_LOAD header if false.
216 (_bfd_elf_map_sections_to_segments): If user phdrs, pass false
217 to elf_modify_segment_map.
218 (assign_file_positions_for_load_sections): Pass false to
219 elf_modify_segment_map.
220
ac2df442
AM
2212007-08-13 Alan Modra <amodra@bigpond.net.au>
222
223 * elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define.
224 Update stub comments.
225 (build_plt_stub): Build two variants, one without "addis".
226 (ppc_build_one_stub): Build stubs without "addis" if possible.
227 (ppc_size_one_stub): Size new stubs.
228
2f964f43
RS
2292007-08-11 Richard Sandiford <richard@codesourcery.com>
230
231 * config.bfd (sh-*-vxworks): Define targ_underscore to "yes".
232
6b8f0fd5
MS
2332007-08-09 Michael Snyder <msnyder@access-company.com>
234
235 * aoutx.h (aout_get_external_symbols): Return if count is zero.
236
6d33f217
L
2372007-08-09 H.J. Lu <hongjiu.lu@intel.com>
238
239 PR ld/4909
240 * elf.c (print_segment_map): New function.
241 (assign_file_positions_for_load_sections): Call print_segment_map
242 when a section can't be allocated in segment.
243
c309eac2
JK
2442007-08-09 Jan Kratochvil <jan.kratochvil@redhat.com>
245
246 * opncls.c (bfd_openr_iovec): Fix the OPEN parameter macro expansion.
247
e6902efc
NC
2482007-08-07 Nick Clifton <nickc@redhat.com>
249
250 * po/bfd.pot: Updated template.
251 * po/BLD-POTFILES.in: Regenerate.
252
d5191d0c
AM
2532007-08-07 Alan Modra <amodra@bigpond.net.au>
254
255 * elf.c: (_bfd_elf_make_section_from_phdr): Properly handle
256 bss segments.
257
5eda1c47
DJ
2582007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
259
260 * Makefile.am (BUILD_HFILES): Clean bfd_stdint.h.
261 * Makefile.in: Regenerated.
262
be118e79
DJ
2632007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
264
265 * configure.in: Update version to 2.18.50.
266 * configure: Regenerated.
267
bd97cb95
DJ
2682007-08-06 Paul Brook <paul@codesourcery.com>
269
270 * elf32-arm.c (elf32_arm_link_hash_entry): Add
271 plt_maybe_thumb_refcount.
272 (elf32_arm_link_hash_newfunc): Set plt_maybe_thumb_refcount.
273 (elf32_arm_copy_indirect_symbol): Ditto.
274 (elf32_arm_adjust_dynamic_symbol): Ditto.
275 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_THM_JUMP24.
276 (arm_add_to_rel): Ditto.
277 (elf32_arm_final_link_relocate): Merge R_ARM_THM_JUMP24 with
278 R_ARM_THM_CALL. Handle R_ARM_THM_JUMP19 against a PLT stub.
279 (elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
280 for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
281 (elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
282 and R_ARM_THM_JUMP19.
283 (allocate_dynrelocs): Use plt_maybe_thumb_refcount.
284 (elf32_arm_finish_dynamic_symbol): Ditto.
285 (elf32_arm_output_plt_map): Ditto.
286
c981028a
DJ
2872007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
288
289 * elf.c (rewrite_elf_program_header): Handle sections not sorted
290 by address.
291 (copy_elf_program_header): Likewise.
292
f7231afc
L
2932007-08-04 H.J. Lu <hongjiu.lu@intel.com>
294
295 * elf-bfd.h (xvec_get_elf_backend_data): Add const.
296
297 * elfcode.h (elf_object_p): Use xvec_get_elf_backend_data.
298 * elfcore.h (elf_core_file_p): Likewise.
299
bd33be6e
L
3002007-08-02 H.J. Lu <hongjiu.lu@intel.com>
301
302 * coffcode.h (ALIGN_SET): Removed.
303 (ELIFALIGN_SET): Likewise.
304 (coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES,
305 IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES,
306 IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES,
307 IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES.
308
dcf6c779
MS
3092007-08-01 Michael Snyder <msnyder@access-company.com>
310
9b0ec667
MS
311 * vms-tir.c (new_section): Fix cut and paste error.
312
20c6e70e
MS
313 * aoutx.h (aout_link_add_symbols): Return if count is zero.
314
dcf6c779
MS
315 * elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
316 pointer must be non-null.
317
e708816d
NC
3182007-08-01 Tristan Gingold <gingold@adacore.com>
319
320 * coffcode.h (coff_sort_func_alent): New function.
321 (coff_slurp_line_table): Sort line table if not already sorted.
322
55b581a6
JJ
3232007-08-01 Jakub Jelinek <jakub@redhat.com>
324
325 * elf.c (_bfd_elf_map_sections_to_segments): Work around buggy
326 GCC 3.4.x warning.
327
ad756e3f
AM
3282007-08-01 Alan Modra <amodra@bigpond.net.au>
329
330 * aoutx.h (swap_ext_reloc_in): Set howto to NULL for unknown
331 r_type.
332 (swap_std_reloc_in): Likewise.
333 (aout_link_input_section_std): Likewise. Return with an error
334 on unexpected relocation type.
335 (aout_link_input_section_ext): Likewise.
336
f6e688f7
AM
3372007-08-01 Alan Modra <amodra@bigpond.net.au>
338
339 PR4694
340 * aoutx.h (final_link): Write a zero in first word of
341 stringtab if no symbols rather than corrupting last byte
342 of text/data.
343
1c5265b5
JJ
3442007-07-31 Jakub Jelinek <jakub@redhat.com>
345
346 * elf.c (get_program_header_size): Adjacent loadable .note*
347 sections need just one PT_NOTE segment.
348 (_bfd_elf_map_sections_to_segments): Likewise.
349
9ee2139f
MS
3502007-07-30 Michael Snyder <msnyder@access-company.com>
351
352 * coffgen.c (_bfd_coff_read_internal_relocs): Revert change of
353 2007-07-26. Buffer still in use, can't be freed.
354
c6aa130f
MS
3552007-07-27 Michael Snyder <msnyder@access-company.com>
356
d63388ff
MS
357 * cofflink.c (coff_link_add_symbols): Return if count is zero.
358
50a39e97
MS
359 * coff-i386.c (coff_i386_rtype_to_howto): Off by one error.
360
87b32780
MS
361 * aoutx.h (slurp_symbol_table): Return if count == 0.
362
9d7038d3
MS
363 * coffgen.c (_bfd_coff_read_internal_relocs): Return if count is zero.
364
c6aa130f
MS
365 * elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
366
170bfeb9
L
3672007-07-27 H.J. Lu <hongjiu.lu@intel.com>
368
369 * config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
370
507f5898
MS
3712007-07-26 Michael Snyder <msnyder@access-company.com>
372
373 * coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
a6626e8c
MS
374
375 * linker.c (bfd_section_already_linked_table_insert): Change
376 return type from void to boolean. Return FALSE on failure.
377 (_bfd_generic_section_already_linked): Test return value of
378 bfd_section_already_linked_table_insert, call fatal on error.
379
380 * elflink.c (_bfd_elf_section_already_linked): Test return value
381 of bfd_section_already_linked_table_insert, call fatal on error.
382
383 * libbfd-in.h (bfd_section_already_linked_table_insert): Update
384 return type to bfd_boolean.
385
386 * libbfd.h: Regenerate.
387
36e44abd
AN
3882007-07-26 Adam Nemet <anemet@caviumnetworks.com>
389
390 * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
391 bfd_slurp_armap): Improve function comment.
392
b7fd5ce1
MS
3932007-07-26 Michael Snyder <msnyder@access-company.com>
394
2d4f3e92
MS
395 * linker.c (already_linked_newfunc): Check for NULL return from
396 bfd_hash_allocate.
397
ac38308c
MS
398 * coffgen.c (fixup_symbol_value): Guard against null;
399 bfd_is_com_section will dereference the section pointer.
400
c82a7c57
MS
401 * syms.c (bfd_decode_symclass): Guard against NULL, since
402 bfd_is_com_section dereferences the pointer.
403
3d7b34d8
MS
404 * srec.c (srec_scan): Check for EOF (critical because return value
405 will be used as array index).
406
44c62d9e
MS
407 * coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
408 are not to be cached, free the temporary buffer.
409
078c4bfc
MS
410 * aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
411 or count == zero.
412
814b5378
MS
413 * tekhex.c (first_phase): Check return value for null.
414
b7fd5ce1
MS
415 * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
416 pointer increment.
417
b9da616a
AM
4182007-07-26 Alan Modra <amodra@bigpond.net.au>
419
33774f08
AM
420 * elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
421 check on dynobj. Remove bed shadow.
422
e62071b6
AM
423 * srec.c (srec_get_section_contents): Return immediately on
424 count zero. Check that offset and count are within section.
425 * libbfd.c (_bfd_generic_get_section_contents): Check that
426 offset + count does not overflow.
427
b9da616a
AM
428 * srec.c (srec_canonicalize_symtab): Don't alloc when symcount
429 is zero. Correct return value on error.
430 * mmo.c (mmo_canonicalize_symtab): Likewise.
431 * binary.c (binary_canonicalize_symtab) Correct return on error.
432
c2c96631
TS
4332007-07-26 Thiemo Seufer <ths@mips.com>
434
435 * bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
436
d4947150
AM
4372007-07-26 Alan Modra <amodra@bigpond.net.au>
438
439 * reloc.c (bfd_generic_get_relocated_section_contents): Avoid
440 bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
441 says there are no relocs.
442
bd210d54 4432007-07-26 Doug Kwan <dougkwan@google.com>
d4947150 444
bd210d54
NC
445 Speed up bfd_dwarf2_find_line.
446 * dwarf2.c (struct dwarf2_debug): Add new fields to support function
447 and variable info hash tables. Add last_comp_unit, info_hash_count,
448 funcinfo_hash_table, varinfo_hash_table, hash_units_head.
449 (struct comp_unit): Add prev_unit, cached.
450 (struct info_list_node, struct info_hash_entry,
451 struct info_hash_table): New.
452 (info_hash_table_newfunc, create_info_hash_table,
453 insert_info_hash_table, lookup_info_hash_table): New functions
454 implementing function and variable info hash tables.
455 (scan_unit_for_symbols): Add checks to make sure hash tables are
456 consistent with compilation units.
457 (comp_unit_maybe_decode_line_info): New function.
458 (comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
459 (reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info,
460 info_hash_lookup_funcinfo, info_hash_lookup_varinfo,
461 stash_maybe_update_info_hash_table, stash_verify_info_hash_table,
462 stash_maybe_enable_info_hash_tables, stash_find_line_fast): New
463 functions. Make use of info hash tables to speed up
464 bfd_dwarf2_find_line.
465 (find_line): Use hash table for faster lookup if it is turned on.
466 Also add code to maintain bi-directional link in comp units.
467
353c5574
MS
4682007-07-25 Michael Snyder <msnyder@access-company.com>
469
470 * coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
471 if size == 0; return and avoid possible null pointer issues.
472
f08c429c
AM
4732007-07-25 Alan Modra <amodra@bigpond.net.au>
474
475 * linker.c (generic_link_add_symbol_list): Warning fix.
476
d0f16d5e
MS
4772007-07-24 Michael Snyder <msnyder@access-company.com>
478
f6eea5ae
MS
479 * opncls.c (bfd_make_writable): Check return from bfd_malloc.
480
d0f16d5e
MS
481 * elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
482 on bfd_malloc error rather than goto error_return.
483
4d269e42
AM
4842007-07-24 Alan Modra <amodra@bigpond.net.au>
485
486 * elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
487 _bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
488 _bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
489 _bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
490 bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
491 bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
492 bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
493 bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
494 struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
495 elf_sym_name_compare, elf_create_symbuf,
496 bfd_elf_match_symbols_in_sections,
497 _bfd_elf_match_sections_by_type): Move to here..
498 * elf.c: ..from here.
499
a26587ba
RS
5002007-07-23 Richard Sandiford <richard@codesourcery.com>
501
502 * elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
503 of weakdef->root.type if weakdef has no regular definition.
504
0e53d9da
AN
5052007-07-22 Adam Nemet <anemet@caviumnetworks.com>
506
507 * elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
508 small_data_overflow_reported.
509 (_bfd_mips_elf_link_hash_table_create): Initialize it.
510 (_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
511 small-data section overflow.
512
6b33789f
NC
5132007-07-19 Doug Kwan <dougkwan@google.com>
514
4d269e42
AM
515 PR binutils/4797
516 * dwarf2.c: (find_line) Do not dereference functionname_ptr if
517 do_line is true.
6b33789f 518
13161072 5192007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 520
13161072
BW
521 * elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
522 non-ELF sections.
4d269e42 523
e29297b7 5242007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 525
e29297b7
BW
526 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
527 vma and size for dynamic tags from the output sections.
4d269e42 528
a5d1b3b5
AM
5292007-07-18 Alan Modra <amodra@bigpond.net.au>
530
531 * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
532 * elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
533 symbol. Instead cache ELF section index. Remove redundant
534 checks of st_shndx.
535
d955dada
MF
5362007-07-15 Mike Frysinger <vapier@gentoo.org>
537
538 * trad-core.c (NBPG): If not defined, set to getpagesize().
539
979dc3bc
RM
5402007-07-13 Roland McGrath <roland@redhat.com>
541
542 * elf-bfd.h (struct elf_obj_tdata): Revert last change.
543 Add after_write_object_contents, after_write_object_contents_info.
544 * elf.c (_bfd_elf_write_object_contents): Revert last change.
545 Instead, call after_write_object_contents if set.
546
d2df793a
NC
5472007-07-12 Kai Tietz <kai.tietz@onevision.com>
548
549 * bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New.
550 (BFD_HOSTPTR_T): Host pointer type for casting a
551 pointer to an integer type.
552 (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
553 (sprintf_vma, fprintf_vma): Add support for long long prints.
554 * bfd-in2.h: Regenerate.
555 * configure.in: (BFD_HOST_64BIT_LONG_LONG): New.
556 (BFD_HOSTPTR_T): Host pointer type for casting a
557 pointer to an integer type. Default is "unsigned long".
558 (AC_CHECK_SIZEOF(void *)): New.
559 (host64): Set it if the pointer size is 8.
560 * configure: Regenerate.
561 * config.in: Add macro SIZEOF_VOID_P.
562 * coffcode.h: Replace host ptr type assuming "long" with
563 bfd_hostptr_t type.
564 * coffgen.c: Likewise.
565 * elf-eh-frame.c: Likewise.
566 * peicode.h: Likewise.
567
a3a4ddad
L
5682007-07-10 H.J. Lu <hongjiu.lu@intel.com>
569
570 * Makefile.in: Regenerated.
571
329b43c4
L
5722007-07-10 H.J. Lu <hongjiu.lu@intel.com>
573
574 PR binutils/4756
575 * simple.c (bfd_simple_get_relocated_section_content): Don't
576 apply relocation on executable and shared library.
577
cfd2c773
NS
5782007-07-10 Nathan Sidwell <nathan@codesourcery.com>
579
580 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
581 copy relocs on vxworks.
582
1489a3a0
AM
5832007-07-10 Alan Modra <amodra@bigpond.net.au>
584
585 * elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
586 * elf64-alpha.c (alpha_elf_size_info): Likewise.
587 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
588 * elf64-mips.c (mips_elf64_size_info): Likewise.
589 * elf64-s390.c (s390_elf64_size_info): Likewise.
590 * elf64-sparc.c (elf64_sparc_size_info): Likewise.
591
00cbee0a
L
5922007-07-09 H.J. Lu <hongjiu.lu@intel.com>
593
594 * elflink.c (bfd_elf_record_link_assignment): Handle indirect
595 symbol.
596 (_bfd_elf_merge_symbol): Properly update normal symbol when
597 overriding the versioned symbol from a dynamic library.
598
fd2f25da
RM
5992007-07-09 Roland McGrath <roland@redhat.com>
600
601 * elf-bfd.h (struct elf_obj_tdata): Add members
602 emit_note_gnu_build_id and note_gnu_build_id_sec.
603 * elf.c (_bfd_id_note_section_size): New global function.
604 (read_hex, _bfd_elf_write_build_id_section): New static functions.
605 (_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
606 if emit_note_gnu_build_id is set.
607 * Makefile.am (elf.lo): Update dependencies.
608
609 * elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
610 (bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
611 * elfcode.h (elf_checksum_contents): New macro and function.
612 (NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
613
9af2a943
AM
6142007-07-06 Michael Snyder <msnyder@access-company.com>
615
616 * elflink.c (elf_link_add_object_symbols): Return via
617 error_free_vers on "notice" failure.
618
a93221e5
L
6192007-07-04 H.J. Lu <hongjiu.lu@intel.com>
620
621 * peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
622 if arch is unknown.
623
b4928193
NC
6242007-07-04 Nick Clifton <nickc@redhat.com>
625
626 Import this patch from an internal tree:
9af2a943 627
b4928193
NC
628 2001-07-17 Richard Henderson <rth@redhat.com>
629
630 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
631 compensate for high bit set in R_MEP_LOW16.
632
3cfad14c
JM
6332007-07-03 Joseph Myers <joseph@codesourcery.com>
634
635 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
636 input attributes if value has been copied.
637
cd123cb7
NC
6382007-07-03 Nick Clifton <nickc@redhat.com>
639
640 * COPYING: Replace with GPLv3 text.
641 * aix386-core.c: Update copyright notice to refer to GPLv3.
642 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
643 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
644 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
645 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
646 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
647 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
648 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
649 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
650 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
651 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
652 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
653 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
654 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
655 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
656 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
657 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
658 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
659 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
660 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
661 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
662 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
663 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
664 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
665 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
666 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
667 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
668 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
669 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
670 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
671 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
672 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
673 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
674 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
675 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
676 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
677 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
678 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
679 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
680 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
681 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
682 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
683 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
684 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
685 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
686 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
687 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
688 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
689 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
690 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
691 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
692 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
693 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
694 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
695 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
696 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
697 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
698 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
699 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
700 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
701 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
702 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
703 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
704 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
705 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
706 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
707 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
708 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
709 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
710 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
711 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
712 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
713 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
714 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
715 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
716 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
717 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
718 xtensa-modules.c: Likewise.
719 * elf32-sh-relocs.h: Add copyright notice.
720 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
721 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
722 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
723 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
724 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
725 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
726 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
727 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
728 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
729
741d6ea8
JM
7302007-07-02 Joseph Myers <joseph@codesourcery.com>
731
732 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
733 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
734 * elf64-mips.c (mips_elf64_howto_table_rela): Support
735 R_MIPS_TLS_DTPREL64.
736
ae351704
AM
7372007-07-02 Alan Modra <amodra@bigpond.net.au>
738
739 * Makefile.am: Run "make dep-am".
740 * Makefile.in: Regenerate.
741 * aclocal.m4: Regenerate.
742 * config.in: Regenerate.
743 * po/SRC-POTFILES.in: Regenerate.
744 * po/bfd.pot: Regenerate.
745
3e5484db
AM
7462007-07-02 Alan Modra <amodra@bigpond.net.au>
747
748 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
749 symsec != NULL tests.
750
08a40648
AM
7512007-07-02 Alan Modra <amodra@bigpond.net.au>
752
753 PR 4712
754 * elf.c (assign_file_positions_for_load_sections): Adjust lma
755 by p_vaddr_offset.
756
86b57e31
L
7572007-06-30 H.J. Lu <hongjiu.lu@intel.com>
758
759 * aclocal.m4: Regenerated.
760 * Makefile.in: Likewise.
761
34c8bcba
JM
7622007-06-29 Joseph Myers <joseph@codesourcery.com>
763
764 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
765 (ppc_elf_merge_private_bfd_data): Call it.
766
2cf19d5c
JM
7672007-06-29 Joseph Myers <joseph@codesourcery.com>
768
769 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
770 (_bfd_mips_elf_merge_private_bfd_data): Call it.
771
104d59d1
JM
7722007-06-29 Joseph Myers <joseph@codesourcery.com>
773
774 * elf-attrs.c: New.
775 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
776 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
777 (elf-attrs.lo): Generate dependencies.
778 * Makefile.in: Regenerate.
779 * configure.in (elf): Add elf-attrs.lo.
780 * configure: Regenerate.
781 * elf-bfd.h (struct elf_backend_data): Add entries for object
782 attributes.
783 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
784 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
785 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
786 New.
787 (struct elf_obj_tdata): Add entries for object attributes.
788 (elf_known_obj_attributes, elf_other_obj_attributes,
789 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
790 New.
791 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
792 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
793 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
794 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
795 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
796 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
797 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
798 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
799 (bfd_section_from_shdr): Handle attributes sections.
800 * elflink.c (bfd_elf_final_link): Handle attributes sections.
801 * elfxx-target.h (elf_backend_obj_attrs_vendor,
802 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
803 elf_backend_obj_attrs_section_type): New.
804 (elfNN_bed): Update.
805 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
806 aeabi_attribute_list): Remove.
807 (struct elf32_arm_obj_tdata): Remove object attributes fields.
808 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
809 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
810 Update for new object attributes interfaces.
811 (uleb128_size, is_default_attr, eabi_attr_size,
812 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
813 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
814 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
815 elf32_arm_add_eabi_attr_int, attr_strdup,
816 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
817 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
818 to generic code in elf-attrs.c.
819 (elf32_arm_obj_attrs_arg_type): New.
820 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
821 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
822 (bfd_elf32_bfd_final_link): Remove.
823 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
824 elf_backend_obj_attrs_arg_type,
825 elf_backend_obj_attrs_section_type): New.
826 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
827 attributes.
828 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
829 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
830 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
831 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
832 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
833 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
834
5ab79981
PB
8352007-06-29 Paul Brook <paul@codesourcery.com>
836
837 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
838 call veneers for call relocations against undefined symbols.
839 (elf32_arm_final_link_relocate): Turn call to undefined symbol
840 into a jump to the next instruction.
841
c6aa130f 8422007-06-29 Michael Snyder <msnyder@access-company.com>
32e8a950
NC
843
844 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
845
3d3d428f
NC
8462007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
847
848 * Makefile.am: Add cr16 related entry
849 * Makefile.in: Regenerate
850 * archures.c: Add bfd_cr16_arch
851 * bfd-in2.h: Regenerate
852 * config.bfd: Add cr16-elf
853 * configure.in: Add bfd_elf32_cr16_vec
854 * configure: Regenerate.
855 * targets.c: Added cr16 related information
856 * cpu-cr16.c: New file.
857 * elf32-cr16.c: New file.
858 * reloc.c: Added cr16 relocs.
859
c55fe096
AM
8602007-06-29 Alan Modra <amodra@bigpond.net.au>
861
862 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
863 message for undefined version nodes.
864 (elf_gc_sweep): Don't warn when zero size sections are
865 removed.
866
375de94a
AM
8672007-06-29 Nathan Froyd <froydnj@codesourcery.com>
868
869 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
870 types.
871
7d3287cb
AM
8722007-06-29 Alan Modra <amodra@bigpond.net.au>
873
874 * elf32-spu.c (spu_elf_fake_sections): New function.
875 (elf_backend_fake_sections): Define.
876
6a3cd2b4
AM
8772007-06-29 Alan Modra <amodra@bigpond.net.au>
878
879 * elf.c (assign_file_positions_for_load_sections): Use elf
880 section header sh_size rather than bfd section size, simplifying
881 .tbss handling.
882
bf988460
AM
8832007-06-29 Alan Modra <amodra@bigpond.net.au>
884
36fc76ae 885 PR ld/4701
bf988460
AM
886 * elf.c (assign_file_positions_for_load_sections): Ensure bss
887 segments meet gABI alignment requirements. Don't allocate
888 file space for bss sections in a segment also containing file
889 or program headers.
890
60b31e8d
AM
8912007-06-27 Alan Modra <amodra@bigpond.net.au>
892
cc481421
AM
893 * bfd.c (struct bfd): Rename "next" to "archive_next".
894 * archive.c: Rename uses throughout file.
895 * archive64.c: Likewise.
896 * coff-rs6000.c: Likewise.
897 * ecoff.c: Likewise.
898 * som.c: Likewise.
899 * bfd-in2.h: Regenerate.
900
60b31e8d
AM
901 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
902 input bfds.
58eb693e 903 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 904
bec42b15
NC
9052007-06-26 H.J. Lu <hongjiu.lu@intel.com>
906
907 * dwarf2.c (find_line): New. Contains the duplicated code from:
908 (_bfd_dwarf2_find_nearest_line): Use it.
909 (_bfd_dwarf2_find_line): Use it.
910
3d3e6f9a
JM
9112007-06-26 Joseph Myers <joseph@codesourcery.com>
912
913 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
914
b314ec0e
RS
9152007-06-25 Richard Sandiford <richard@codesourcery.com>
916
917 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
918 to be used for calls from MIPS16 code.
919
0d4a1476
AS
9202007-06-23 Andreas Schwab <schwab@suse.de>
921
922 * configure.in (--with-separate-debug-dir): New option.
923 * configure: Regenerate.
924 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
925 * Makefile.in: Regenerate.
926 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
927 bfd_follow_gnu_debuglink.
928 (_bfd_dwarf2_find_line): Likewise.
929
0d161102
NC
9302007-06-22 Nick Clifton <nickc@redhat.com>
931
932 * dwarf2.c: Add support for reading in debug information via a
933 .gnu_debuglink section:
934 (struct dwarf2_debug): Add bfd field to record the bfd containing
935 the debug info.
936 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
937 field in the dwarf2_debug structure.
938 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
939 be found in the current bfd call bfd_follow_gnu_debuglink to see
940 if another file contains the debug information. If it does, open
941 it and continue.
942 (_bfd_dwarf2_find_line): Likewise.
943
293a0124
L
9442007-06-19 H.J. Lu <hongjiu.lu@intel.com>
945
946 PR ld/4590
947 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
948 when removing duplicated entries.
949 (get_dyn_sym_info): Initialize the got_offset field to -1.
950 Update call to sort_dyn_sym_info.
951 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
952 array of addend and remove duplicates.
953
dc1f3d8a
L
9542007-06-18 H.J. Lu <hongjiu.lu@intel.com>
955
956 * libpei.h (_bfd_XXi_final_link_postscript): Remove
957 duplication.
958 (bfd_target_pei_p): New.
959 (bfd_target_pei_arch): New
960 (bfd_target_efi_p): Likewise.
961 (bfd_target_efi_arch): New
962 (bfd_pe_executable_p): Use bfd_target_pei_p and
963 bfd_target_efi_p.
964
965 * peicode.h (arch_type): New enum.
966 (pe_arch): New function.
967 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
968 if there is an EFI/PE target.
969
79887925
L
9702007-06-14 H.J. Lu <hongjiu.lu@intel.com>
971
972 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
973
974 * acinclude.m4: Don't include m4 files. Remove libtool
975 kludge.
976
977 * Makefile.in: Regenerated.
79887925
L
978 * aclocal.m4: Likewise.
979 * configure: Likewise.
980
99ded152
BW
9812007-06-11 Sterling Augustine <sterling@tensilica.com>
982 Bob Wilson <bob.wilson@acm.org>
bf988460 983
99ded152
BW
984 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
985 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
986 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
987 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
988 (xtensa_get_property_predef_flags): Likewise.
989 (compute_removed_literals): Pass new arguments to is_removable_literal.
990 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
991 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 992
cbf2cba4
RS
9932007-05-31 Richard Sandiford <rsandifo@nildram.co.uk>
994
995 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
996 type (3) single-GOT entry, read tls_type from the hash table entry
997 rather than the GOT entry.
998
a9a4c53e
AM
9992007-06-01 Alan Modra <amodra@bigpond.net.au>
1000
1001 * simple.c (bfd_simple_get_relocated_section_contents): Init
1002 input_bfds_tail.
1003
02bf8d82
AM
10042007-05-30 Alan Modra <amodra@bigpond.net.au>
1005
42bb2e33
AM
1006 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
1007 created by objcopy --only-keep-debug.
1008 (_bfd_elf_init_private_section_data): Only change elf_section_type
1009 if it is SHT_NULL.
1010
02bf8d82
AM
1011 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
1012 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
1013 and sh_flags instead of bfd section flags. Delete voff and code
1014 keeping nobits segments aligned.
1015
4e591bc1
EC
10162007-05-25 Eric Christopher <echristo@apple.com>
1017
1018 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
1019 Check that sym_sec isn't NULL before accessing.
1020
37ad9514
SE
10212007-05-24 Steve Ellcey <sje@cup.hp.com>
1022
1023 * Makefile.in: Regnerate.
1024 * configure: Regenerate.
1025 * aclocal.m4: Regenerate.
1026 * doc/Makefile.in: Regenerate.
1027
91a5743d
PB
10282007-05-22 Paul Brook <paul@codesourcery.com>
1029
1030 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
1031 with sec and sec_shndx.
1032 (elf32_arm_ouput_plt_map_sym): Use them.
1033 (elf32_arm_output_arch_local_syms): Output mapping symbols for
1034 interworking glue.
1035
26079076
PB
10362007-05-18 Paul Brook <paul@codesourcery.com>
1037
1038 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
1039 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
1040 (record_arm_to_thumb_glue): Add v5t non-pic glue.
1041 (elf32_arm_create_thumb_stub): Ditto.
1042
91ac5911
L
10432007-05-16 H.J. Lu <hongjiu.lu@intel.com>
1044 Alan Modra <amodra@bigpond.net.au>
1045
1046 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
1047 section to the minimum alignment.
1048
027297b7
L
10492007-05-15 H.J. Lu <hongjiu.lu@intel.com>
1050 Alan Modra <amodra@bigpond.net.au>
1051
1052 PR ld/4504
1053 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
1054 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
1055
1056 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
1057 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
1058 bss section.
1059 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
1060 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
1061 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
1062 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
1063 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
1064 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
1065 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1066 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1067 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1068 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
1069 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
1070 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1071 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1072 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
1073 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
1074 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
1075 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1076
5c18022e
RS
10772007-05-15 Richard Sandiford <richard@codesourcery.com>
1078
1079 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
1080 input_section argument. Create .rela.dyn relocations against
1081 symbol 0 rather than the section symbol.
1082 (mips_elf_local_got_index): Remove input_section argument.
1083 Update call to mips_elf_create_local_got_entry.
1084 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
1085 (mips_elf_calculate_relocation): Update calls to
1086 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
1087
a00a1f35
MS
10882007-05-15 Mark Shinwell <shinwell@codesourcery.com>
1089
1090 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
1091 handle the Thumb-2 JUMP19 relocation.
1092
0414f35b
AM
10932007-05-15 Alan Modra <amodra@bigpond.net.au>
1094
1095 PR 4479
1096 * elf.c (elf_fake_sections): Don't allow backend to change
1097 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
1098 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
1099 fix from here.
1100
74f2e02b
AM
11012007-05-14 Alan Modra <amodra@bigpond.net.au>
1102
1103 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
1104 invalid shstrndx.
1105 (bfd_elf_get_str_section): Likewise.
1106
f137a54e
AM
11072007-05-12 Alan Modra <amodra@bigpond.net.au>
1108
1109 PR 4497
1110 * elf-eh-frame.c (struct cie): Add "local_personality". Make
1111 "personality" a union.
1112 (cie_eq): Compare local_personality too. Adjust personality
1113 comparison.
1114 (_bfd_elf_discard_section_eh_frame): Check binding on personality
1115 reloc sym to allow for bad symtab. Use stashed local syms rather
1116 than reading personality local sym. Handle discarded sections.
1117
4f4416b5
AM
11182007-05-12 Alan Modra <amodra@bigpond.net.au>
1119
1120 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
1121
016687f8
AM
11222007-05-11 Alan Modra <amodra@bigpond.net.au>
1123
1124 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
1125 (enum ppc_elf_plt_type): Move from..
1126 * elf32-ppc.c: ..here.
1127 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
1128 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
1129 can_use_new_plt. Make is_vxworks a bitfield.
1130 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
1131 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
1132 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
1133 flags to better detect object files needing old bss-style plt.
1134 Allow secure plt to be used without rel16 relocs being detected.
1135 Warn if secure plt request cannot be allowed.
1136
ece5ef60
AM
11372007-05-11 Alan Modra <amodra@bigpond.net.au>
1138
1139 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
1140 * elf-bfd.h (struct elf_backend_data): Change return type of
1141 elf_backend_relocate_section to int.
1142 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
1143 R_SPU_PPU64.
1144 (spu_elf_bfd_to_reloc_type): Convert new relocs.
1145 (spu_elf_count_relocs): New function.
1146 (elf_backend_count_relocs): Define.
1147 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
1148 R_SPU_PPU64 relocs.
1149 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
1150 returns 2.
1151 * bfd-in2.h: Regenerate.
1152 * libbfd.h: Regenerate.
1153
d3753b85
RS
11542007-05-10 Richard Sandiford <richard@codesourcery.com>
1155
1156 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
1157 for R_ARM_ABS12 relocs.
1158 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
1159 non-shared VxWorks PLT entries.
1160
ef8c95ad
AM
11612007-05-11 Alan Modra <amodra@bigpond.net.au>
1162
1163 PR 4454
1164 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
1165 (_bfd_elf_discard_section_eh_frame): Handle local syms on
1166 personality relocation.
1167
8c252fd9
RS
11682007-05-10 Richard Sandiford <richard@codesourcery.com>
1169
1170 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
1171 rather than p_filesz to calculate the LMA of the end of a segment.
1172
b186458a
JJ
11732007-05-10 Jakub Jelinek <jakub@redhat.com>
1174
1175 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
1176 processing if symbol is defined in the executable.
1177
88571279
AO
11782007-05-10 Alexandre Oliva <aoliva@redhat.com>
1179
1180 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
1181 (frvfdpic_elf_discard_info): New.
1182 (elf_backend_discard_info): Define for FDPIC.
1183
2e6030b9
MS
11842007-05-09 Mark Shinwell <shinwell@codesourcery.com>
1185
1186 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
1187 attempt to scan if the bfd doesn't correspond to an ELF image.
1188 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
1189
0d4cc892
AO
11902007-05-08 Alexandre Oliva <aoliva@redhat.com>
1191
1192 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
1193 for which _bfd_elf_section_offset returns -1.
1194
d0249648
AM
11952007-05-08 Alan Modra <amodra@bigpond.net.au>
1196
1197 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
1198 (mark_functions_via_relocs): Likewise.
1199
1182cb93
AM
12002007-05-07 Alan Modra <amodra@bigpond.net.au>
1201
1202 * elflink.c (bfd_elf_final_link): Correct reloc handling for
1203 elf_backend_count_relocs.
1204 (bfd_elf_discard_info): Print an error if we can't read syms.
1205
b16f296e
AM
12062007-05-07 Alan Modra <amodra@bigpond.net.au>
1207
1208 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
1209 invalid reloc code.
1210 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
1211 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
1212 define.
1213
7c928300
AM
12142007-05-07 Alan Modra <amodra@bigpond.net.au>
1215
1216 * elf.c (assign_file_positions_for_load_sections): Don't check
1217 core segment.
1218
fc66a176
L
12192007-05-04 H.J. Lu <hongjiu.lu@intel.com>
1220
1221 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
1222 and .rel.dyn aren't present.
1223
3410fea8
NC
12242007-05-04 Nick Clifton <nickc@redhat.com>
1225
1226 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
1227 sections are present examine the indirect sections in an attempt
1228 to compute the correct relocation size. If there is any
1229 ambiguity, produce an error and refuse to sort.
1230
7bdca076
SL
12312007-05-03 Sandra Loosemore <sandra@codesourcery.com>
1232
1233 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
1234
22184a77
NC
12352007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
1236 Nick Clifton <nickc@redhat.com>
1237
1238 PR gas/3041
1239 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
1240 in the same way as relocs against external symbols.
1241
627b32bc
AM
12422007-05-02 Alan Modra <amodra@bigpond.net.au>
1243
1244 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
1245 here. Set sh_type to SHT_NOBITS if we won't be allocating
1246 file space. Don't bump p_memsz for non-alloc sections. Adjust
1247 section-in-segment check.
1248 (assign_file_positions_for_non_load_sections): Don't set sh_offset
1249 here for sections that have already been handled above.
1250
49fa1e15
AM
12512007-04-30 Alan Modra <amodra@bigpond.net.au>
1252
1253 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
1254 and emit_stack_syms bitfields.
1255 (get_sym_h): Read all symbols if stack analysis will be done.
1256 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
1257 params, and stash in hash table.
1258 (is_hint): Split off from..
1259 (is_branch): ..here. Adjust callers.
1260 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
1261 and keep all syms.
1262 (write_one_stub): Fix mem leak.
1263 (find_function_stack_adjust): New function.
1264 (sort_syms_syms, sort_syms_psecs): New vars.
1265 (sort_syms): New function.
1266 (struct call_info, struct function_info): New.
1267 (struct spu_elf_stack_info): New.
1268 (alloc_stack_info, maybe_insert_function, func_name): New functions.
1269 (is_nop, insns_at_end, check_function_ranges): Likewise.
1270 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
1271 (pasted_function, interesting_section, discover_functions): Likewise.
1272 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
1273 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
1274 (bfd_elf32_bfd_final_link): Define.
1275 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
1276 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
1277
9ddf8309
TS
12782007-04-28 Sergey Rogozhkin <rogozhkin@niisi.msk.ru>
1279
1280 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
1281 memory which we might not own.
1282
95147441
BW
12832007-04-27 Bob Wilson <bob.wilson@acm.org>
1284
1285 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
1286 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
1287 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
1288
bcc2cc8e
BW
12892007-04-27 Bob Wilson <bob.wilson@acm.org>
1290
1291 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
1292 contents and relocs in parallel.
4e591bc1 1293
f29f96b6
BW
12942007-04-27 Bob Wilson <bob.wilson@acm.org>
1295
1296 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
1297
2ce18a16
AM
12982007-04-27 Alan Modra <amodra@bigpond.net.au>
1299
1300 * cpu-rs6000.c: Write Mimi's name in ASCII.
1301 * coff-rs6000.c: Likewise.
1302 * rs6000-core.c: Likewise.
1303
eddc20ad
AM
13042007-04-27 Alan Modra <amodra@bigpond.net.au>
1305
1306 * sysdep.h: Include config.h first.
1307 Many files: Include sysdep.h before bfd.h.
1308 * Makefile.am: Run "make dep-am".
1309 * Makefile.in: Regenerate.
1310
495443d4
AM
13112007-04-25 Alan Modra <amodra@bigpond.net.au>
1312
1313 * sysdep.h: Revert last change.
1314
40b1c6c5
NC
13152007-04-24 Nick Clifton <nickc@redhat.com>
1316
1317 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
1318 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
1319
64be1553
AM
13202007-04-24 Alan Modra <amodra@bigpond.net.au>
1321
1322 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
1323 eh_frame_hdr table won't be created.
1324
d5efd9fc
AM
13252007-04-24 Alan Modra <amodra@bigpond.net.au>
1326
1327 * acinclude.m4: Include config/stdint.m4.
1328 * configure.in: Invoke GCC_HEADER_STDINT.
1329 * sysdep.h: Don't include ansidecl.h here.
1330 * configure: Regenerate.
1331 * config.in: Regenerate.
1332 * Makefile.in: Regenerate.
1333
9a2e615a
NS
13342007-04-23 Nathan Sidwell <nathan@codesourcery.com>
1335
1336 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
1337 bfd_mach_mcf_isa_c_emac): New.
1338 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
1339 elf_isac_plt_entry, elf_isac_plt_info): New.
1340 (elf32_m68k_object_p): Add ISA_C.
1341 (elf32_m68k_print_private_bfd_data): Print ISA_C.
1342 (elf32_m68k_get_plt_info): Detect ISA_C.
1343 * cpu-m68k.c (arch_info): Add ISAC.
1344 (m68k_arch_features): Likewise,
1345 (bfd_m68k_compatible): ISAs B & C are not compatible.
1346
1b0b5b1b
NC
13472007-04-21 Nick Clifton <nickc@redhat.com>
1348
1349 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
1350 (ecoff_link_add_archive_symbols): Likewise.
1351 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
1352 relent.howto.
1353 * ieee.c (parse_int): Initialise x.
1354 (must_parse_int): Initialise result.
1355 (ieee_slurp_external_symbols): Initialise value.
1356
bd7803a9
AM
13572007-04-21 Alan Modra <amodra@bigpond.net.au>
1358
1359 * config.bfd (spu-*-elf): Delete targ_selvecs.
1360
964597d0
NC
13612007-04-19 Nick Clifton <nickc@redhat.com>
1362
1363 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
1364
01e76792
AM
13652007-04-19 Alan Modra <amodra@bigpond.net.au>
1366
1367 * bfd.c (bfd_demangle): New function.
1368 * Makefile.am: Run "make dep-am".
1369 * Makefile.in: Regenerate.
1370 * bfd-in2.h: Regenerate.
1371
ee5c21a0
DJ
13722007-04-18 Matthias Klose <doko@ubuntu.com>
1373
1374 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
1375 (bfdver.h): Use the date in non-release builds for the soversion.
1376 * Makefile.in: Regenerate.
1377
fcb93ecf
PB
13782007-04-17 Paul Brook <paul@codesourcery.com>
1379
1380 * elf.c (_bfd_elf_is_function_type): New function.
1381 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
1382 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
1383 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
1384 * elf-bfd.h (elf_backend_data): Add is_function_type.
1385 (_bfd_elf_is_function_type): Add prototype.
1386 * elfxx-target.h (elf_backend_is_function_type): Add default
1387 definition.
1388 (elfNN_bed): Add elf_backend_is_function_type.
1389 * elf32-arm.c (elf32_arm_is_function_type): New function.
1390 (elf_backend_is_function_type): Define.
1391
5750dcec
DJ
13922007-04-17 Daniel Jacobowitz <dan@codesourcery.com>
1393
1394 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
1395 DT_MIPS_RLD_MAP before DT_DEBUG again.
1396
cfbc9945
SE
13972007-04-14 Steve Ellcey <sje@cup.hp.com>
1398
1399 * Makefile.am: Add ACLOCAL_AMFLAGS.
1400 * configure.in: Change macro call order.
1401 * Makefile.in: Regnerate.
1402 * doc/Makefile.in: Regenerate.
1403 * configure: Regenerate.
1404
3fcd97f1
JJ
14052007-04-14 Jakub Jelinek <jakub@redhat.com>
1406
1407 * elflink.c (bfd_elf_final_link): Don't free symbuf for
1408 non-elf input bfds.
1409 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
1410 for non-elf input bfds.
1411
af5978fb
RS
14122007-04-12 Richard Sandiford <richard@codesourcery.com>
1413
1414 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
1415 DT_MIPS_RTLD_MAP for PIEs.
1416
9e3313ae
RS
14172007-04-12 Richard Sandiford <richard@codesourcery.com>
1418
1419 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
1420 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
1421 in a read-only section.
1422 (_bfd_mips_elf_check_relocs): Likewise.
1423
1d25768e
BW
14242007-04-12 Bob Wilson <bob.wilson@acm.org>
1425
1426 * elf32-xtensa.c (xtensa_is_insntable_section): New.
1427 (xtensa_is_proptable_section): New.
1428 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
1429 tables with 12-byte entries, as well as tables with 8-byte entries.
1430 Sort the relocations before examining them.
1431 (relax_property_section): Use xtensa_is_proptable_section and
1432 xtensa_is_littable_section. Rewrite code for combining table entries
1433 to be more robust in case of unexpected relocations. Do not set offset
1434 of unused relocations to less than zero.
1435 (xtensa_is_property_section): Use other functions instead of
1436 duplicating section name comparisons.
1437 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
1438 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 1439
e1e5c0b5 14402007-04-12 Bob Wilson <bob.wilson@acm.org>
4e591bc1 1441
e1e5c0b5
BW
1442 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
1443 from Xtensa property sections.
4e591bc1 1444
2c67c5f3
AM
14452007-04-12 Alan Modra <amodra@bigpond.net.au>
1446
1447 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
1448 is non-NULL before dereferencing.
1449
8776bb8a
NS
14502007-04-11 Nathan Sidwell <nathan@codesourcery.com>
1451
1452 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
1453 relocs too.
1454
4a828aab
RH
14552007-04-10 Richard Henderson <rth@redhat.com>
1456
1457 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
1458 (elf64_alpha_size_got_sections): Remove unused something_changed local.
1459 (elf64_alpha_size_plt_section): Return void.
1460 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 1461 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
1462 relax_trip counter has changed.
1463
91506736
DJ
14642007-04-09 Daniel Jacobowitz <dan@codesourcery.com>
1465
1466 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
1467 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
1468 (bfdver.texi): New rule.
1469 * Makefile.in, doc/Makefile.in: Regenerated.
1470
da6bcfca
MT
14712007-04-03 Matt Thomas <matt@netbsd.org>
1472
4e591bc1 1473 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
1474 in a shared object if it is not in a CODE section or if it is against
1475 a section symbol. This allows DWARF2 to use pcrel format.
1476
9267588c
L
14772007-04-05 H.J. Lu <hongjiu.lu@intel.com>
1478
1479 PR ld/4304
1480 * elflink.c (bfd_elf_final_link): Call einfo callback in
1481 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
1482 warning.
1483
c1b2796f
AM
14842007-04-05 Alan Modra <amodra@bigpond.net.au>
1485
1486 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
1487 (elf_backend_link_output_symbol_hook): Define.
1488
970ccc77
NC
14892007-04-02 Nick Clifton <nickc@redhat.com>
1490
1491 PR binutils/4292
1492 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
1493 targets as 64-bit values, even if running on a 64-bit host.
1494 * coffgen.c (coff_print_symbol): Likewise.
1495
1783205a
NC
14962007-03-29 Nick Clifton <nickc@redhat.com>
1497
1498 PR binutils/4110
1499 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
1500 (setup_group): Use it. Report corrupt group section headers.
1501 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
1502 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
1503 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
1504
2ce859a1
AM
15052007-03-29 Alan Modra <amodra@bigpond.net.au>
1506
1507 PR ld/4267
947844a3
AM
1508 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
1509 for rel->r_info values.
1510 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
1511 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
1512 unused entries. Don't clear plt.plist in loop.
1513
39817122
RS
15142007-03-28 Richard Sandiford <richard@codesourcery.com>
1515
1516 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
1517 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
1518 Merge into...
1519 (sparc_elf_append_rela): ...this new function.
1520 (SPARC_ELF_APPEND_RELA): Delete.
1521 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
1522 the deleted append_rela field.
1523 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
1524 instead of SPARC_ELF_APPEND_RELA.
1525 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
1526 elf_size_info structure to find the size of a RELA entry and
1527 the associated swap-out function.
1528 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
1529 (sparc_finish_dyn): ...this new function.
1530 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
1531
4ecceb71
RS
15322007-03-28 Richard Sandiford <richard@codesourcery.com>
1533 Phil Edwards <phil@codesourcery.com>
1534
1535 * doc/bfd.texinfo: Put the contents after the title page rather
1536 than at the end of the document.
1537
d4d2b80b
AS
15382007-03-27 Andreas Schwab <schwab@suse.de>
1539
1540 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
1541
831480e9 15422007-03-26 H.J. Lu <hongjiu.lu@intel.com>
5bd8253d
L
1543
1544 * configure: Regenerated.
1545
f4b39977
AM
15462007-03-26 Alan Modra <amodra@bigpond.net.au>
1547
1548 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
1549 (allocate_spuear_stubs): New function.
1550 (spu_elf_size_stubs): Call allocate_spuear_stubs.
1551
157090f7
AM
15522007-03-26 Alan Modra <amodra@bigpond.net.au>
1553
1554 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
1555 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
1556 (MY (bfd_reloc_name_lookup)): New function.
1557 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
1558 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
1559 (MY_bfd_reloc_name_lookup): Define.
1560 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
1561 (MY_bfd_reloc_name_lookup): Define.
1562 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
1563 (NAME (aout, reloc_name_lookup)): New function.
1564 * bout.c (b_out_bfd_reloc_name_lookup): New function.
1565 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
1566 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
1567 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
1568 (coff_bfd_reloc_name_lookup): Define.
1569 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
1570 (coff_i386_reloc_name_lookup): New function.
1571 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
1572 (coff_bfd_reloc_name_lookup): Define.
1573 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
1574 (coff_bfd_reloc_name_lookup): Define.
1575 * coff-m68k.c (m68k_reloc_name_lookup): New function.
1576 (coff_bfd_reloc_name_lookup): Define.
1577 * coff-maxq.c (maxq_reloc_name_lookup): New function.
1578 (coff_bfd_reloc_name_lookup): Define.
1579 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
1580 (coff_bfd_reloc_name_lookup): Define.
1581 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
1582 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
1583 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
1584 (coff_bfd_reloc_name_lookup): Define.
1585 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
1586 (_bfd_xcoff_reloc_name_lookup): New function.
1587 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
1588 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
1589 (sh_coff_reloc_name_lookup): New function.
1590 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
1591 (coff_bfd_reloc_name_lookup): Define.
1592 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
1593 (tic30_coff_reloc_name_lookup): New function.
1594 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
1595 (tic4x_coff_reloc_name_lookup): New function.
1596 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
1597 (tic54x_coff_reloc_name_lookup): New function.
1598 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
1599 (coff_amd64_reloc_name_lookup): New function.
1600 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
1601 (coff_bfd_reloc_name_lookup): Define.
1602 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
1603 (coff_bfd_reloc_name_lookup): Define.
1604 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
1605 (xcoff64_reloc_name_lookup): New function.
1606 (rs6000coff64_vec, aix5coff64_vec): Init new field.
1607 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
1608 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
1609 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1610 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1611 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1612 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
1613 (bfd_elf32_bfd_reloc_name_lookup): Define.
1614 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1615 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
1616 (bfd_elf32_bfd_reloc_name_lookup): Define.
1617 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
1618 (bfd_elf32_bfd_reloc_name_lookup): Define.
1619 * elf32-cris.c (cris_reloc_name_lookup): New function.
1620 (bfd_elf32_bfd_reloc_name_lookup): Define.
1621 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
1622 (bfd_elf32_bfd_reloc_name_lookup): Define.
1623 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1624 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1625 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
1626 (bfd_elf32_bfd_reloc_name_lookup): Define.
1627 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
1628 (bfd_elf32_bfd_reloc_name_lookup): Define.
1629 * elf32-frv.c (frv_reloc_name_lookup): New function.
1630 (bfd_elf32_bfd_reloc_name_lookup): Define.
1631 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1632 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
1633 (bfd_elf32_bfd_reloc_name_lookup): Define.
1634 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1635 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
1636 (bfd_elf32_bfd_reloc_name_lookup): Define.
1637 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
1638 (bfd_elf32_bfd_reloc_name_lookup): Define.
1639 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
1640 (bfd_elf32_bfd_reloc_name_lookup): Define.
1641 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
1642 (bfd_elf32_bfd_reloc_name_lookup): Define.
1643 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
1644 (bfd_elf32_bfd_reloc_name_lookup): Define.
1645 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
1646 (bfd_elf32_bfd_reloc_name_lookup): Define.
1647 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
1648 (bfd_elf32_bfd_reloc_name_lookup): Define.
1649 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1650 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1651 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1652 * elf32-m68k.c (reloc_name_lookup): New function.
1653 (bfd_elf32_bfd_reloc_name_lookup): Define.
1654 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1655 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
1656 (bfd_elf32_bfd_reloc_name_lookup): Define.
1657 * elf32-mep.c (mep_reloc_name_lookup): New function.
1658 (bfd_elf32_bfd_reloc_name_lookup): Define.
1659 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1660 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
1661 (bfd_elf32_bfd_reloc_name_lookup): Define.
1662 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1663 * elf32-mt.c (mt_reloc_name_lookup): New function.
1664 (bfd_elf32_bfd_reloc_name_lookup): Define.
1665 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
1666 (bfd_elf32_bfd_reloc_name_lookup): Define.
1667 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1668 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
1669 (bfd_elf32_bfd_reloc_name_lookup): Define.
1670 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
1671 (bfd_elf32_bfd_reloc_name_lookup): Define.
1672 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
1673 (bfd_elf32_bfd_reloc_name_lookup): Define.
1674 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
1675 (bfd_elf32_bfd_reloc_name_lookup): Define.
1676 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
1677 (bfd_elf32_bfd_reloc_name_lookup): Define.
1678 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1679 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
1680 (bfd_elf32_bfd_reloc_name_lookup): Define.
1681 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
1682 (bfd_elf32_bfd_reloc_name_lookup): Define.
1683 * elf32-vax.c (reloc_name_lookup): New function.
1684 (bfd_elf32_bfd_reloc_name_lookup): Define.
1685 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
1686 (bfd_elf32_bfd_reloc_name_lookup): Define.
1687 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
1688 (bfd_elf32_bfd_reloc_name_lookup): Define.
1689 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
1690 (bfd_elf32_bfd_reloc_name_lookup): Define.
1691 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
1692 (bfd_elf64_bfd_reloc_name_lookup): Define.
1693 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1694 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1695 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
1696 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
1697 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
1698 (bfd_elf64_bfd_reloc_name_lookup): Define.
1699 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
1700 (bfd_elf64_bfd_reloc_name_lookup): Define.
1701 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
1702 (bfd_elf64_bfd_reloc_name_lookup): Define.
1703 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1704 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
1705 (bfd_elf64_bfd_reloc_name_lookup): Define.
1706 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1707 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
1708 (bfd_elfNN_bfd_reloc_name_lookup): Define.
1709 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
1710 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
1711 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
1712 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
1713 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
1714 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
1715 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
1716 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
1717 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
1718 (MY(reloc_name_lookup)): New function.
1719 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
1720 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
1721 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
1722 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
1723 (coff_bfd_reloc_name_lookup): Define.
1724 * reloc.c (bfd_reloc_name_lookup): New function.
1725 * riscix.c (riscix_reloc_name_lookup): New function.
1726 (MY_bfd_reloc_name_lookup): Define.
1727 * som.c (som_bfd_reloc_name_lookup): New function.
1728 * targets.c (struct bfd_target): Add reloc_name_lookup.
1729 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
1730 * versados.c (versados_bfd_reloc_name_lookup): Define.
1731 * vms.c (vms_bfd_reloc_name_lookup): New function.
1732 * bfd-in2.h: Regenerate.
1733 * libbfd.h: Regenerate.
1734
2d82d84d
TS
17352007-03-26 Thiemo Seufer <ths@mips.com>
1736
a5cb1fd7 1737 PR ld/4208
2d82d84d
TS
1738 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
1739 matching relocation is found.
1740 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
1741
831480e9 17422007-03-23 H.J. Lu <hongjiu.lu@intel.com>
1a27db7d
L
1743
1744 * configure: Regenerated.
1745
a1ac8190
JM
17462007-03-23 Joseph Myers <joseph@codesourcery.com>
1747
1748 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
1749 * configure: Regenerate.
1750
aa7a0635
AM
17512007-03-23 Alan Modra <amodra@bigpond.net.au>
1752
1753 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
1754 Remove input_sec param. Adjust all calls.
1755 (write_one_stub): Adjust stub symbol.
1756 (needs_ovl_stub): New function, extracted from..
1757 (spu_elf_size_stubs): ..here.
1758 (spu_elf_relocate_section): Use needs_ovl_stub.
1759
e49e529d
JM
17602007-03-22 Joseph Myers <joseph@codesourcery.com>
1761
1762 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
1763 if nonempty.
1764 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
1765 * Makefile.in, configure, doc/Makefile.in: Regenerate.
1766
831480e9 17672007-03-22 H.J. Lu <hongjiu.lu@intel.com>
50572669
L
1768
1769 PR ld/4210
1770 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
1771 address and virtual size of the last section for the image
1772 size.
1773
0920dee7
L
17742007-03-22 H.J. Lu <hongjiu.lu@intel.com>
1775
1776 PR ld/4007
1777 * elf.c (assign_file_positions_for_load_sections): Check if
1778 all sections are in the segment.
1779
831480e9 17802007-03-20 H.J. Lu <hongjiu.lu@intel.com>
749b8d9d
L
1781
1782 PR ld/4208
1783 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
1784 matching LO16 relocation for HI16 relocation.
1785
27e55c4d
PB
17862007-03-20 Paul Brook <paul@codesourcery.com>
1787
1788 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
1789 * bfd-in2.h: Regenerate.
1790 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
1791 (record_arm_to_thumb_glue): Use globals->pic_veneer.
1792 (elf32_arm_create_thumb_stub): Ditto.
1793 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
1794
bf21ed78
MS
17952007-03-18 Mark Shinwell <shinwell@codesourcery.com>
1796
1797 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
1798 argument and extra last argument.
1799 * bfd-in2.h: Regenerate.
1800 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
1801 member.
1802 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
1803 extra last argument. Set no_enum_size_warning appropriately.
1804 (elf32_arm_merge_eabi_attributes): Improve enum sizes
1805 diagnostic, suppressing it when no_enum_size_warning dictates.
1806
5f6999aa
NC
18072007-03-20 Nick Clifton <nickc@redhat.com>
1808
1809 PR binutils/3535
1810 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
1811 specific conditions that need the program headers to be
1812 rewritten.
1813
831480e9 18142007-03-19 H.J. Lu <hongjiu.lu@intel.com>
d13c9dc6
L
1815
1816 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
1817 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1818 SizeOfInitializedData, SizeOfUninitializedData,
1819 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
1820 extra PE a.out header.
1821 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
1822 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
1823 defined.
1824 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
1825 defined.
1826 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
1827 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1828 SizeOfInitializedData, SizeOfUninitializedData,
1829 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
1830 extra PE a.out header.
1831
831480e9 18322007-03-18 H.J. Lu <hongjiu.lu@intel.com>
739bb57e
L
1833
1834 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
1835 only if BFD64 is defined.
1836
5384511f
AM
18372007-03-17 Alan Modra <amodra@bigpond.net.au>
1838
1839 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
1840 on setjmp calls.
1841
187b3d5d
L
18422007-03-15 H.J. Lu <hongjiu.lu@intel.com>
1843
1844 * doc/Makefile.in: Regenerated.
1845
c428fa83
L
18462007-03-15 H.J. Lu <hongjiu.lu@intel.com>
1847
1848 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
1849 create doc/bfdver.texi.
1850 * Makefile.in: Regenerated.
1851
1852 * configure.in (--with-bugurl): New option.
1853 * configure: Regenerated.
1854
1855 * version.h (REPORT_BUGS_TO): New.
1856
d1036acb
L
18572007-03-13 H.J. Lu <hongjiu.lu@intel.com>
1858
1859 PR binutils/3826
1860 * elf-bfd.h (elf_backend_data): Add elf_osabi.
1861 (_bfd_elf_set_osabi): New.
1862
1863 * elf.c (_bfd_elf_set_osabi): New.
1864
1865 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
1866 (elf_backend_post_process_headers): Defined with
1867 _bfd_elf_set_osabi.
1868 (ELF_OSABI): Properly defined for each target.
1869
1870 * elf32-i370.c (i370_elf_post_process_headers): Removed.
1871 (ELF_OSABI): Defined.
1872 (elf_backend_post_process_headers): Defined with
1873 _bfd_elf_set_osabi.
1874
1875 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1876 freebsd.
1877 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
1878
1879 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
1880 (ELF_OSABI): Defined.
1881 (elf_backend_post_process_headers): Defined with
1882 _bfd_elf_set_osabi.
1883
1884 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1885 freebsd.
1886 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
1887 elf_osabi.
1888
1889 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
1890 with elf_osabi.
1891 (ELF_OSABI): Properly defined for each target.
1892 (elf_backend_post_process_headers): Defined with
1893 _bfd_elf_set_osabi for Linux.
1894
1895 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
1896 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1897 (elf_backend_post_process_headers): Defined with
1898 _bfd_elf_set_osabi.
1899
1900 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
1901 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1902 (elf_backend_post_process_headers): Defined with
1903 _bfd_elf_set_osabi.
1904
1905 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
1906 with any ELF target of the compatible machine for which we do not
1907 have a specific backend.
1908
1909 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
1910 with elf_osabi.
1911
1912 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
1913 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
1914
d4c87fc1
AM
19152007-03-08 Alan Modra <amodra@bigpond.net.au>
1916
1917 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
1918 V850_OTHER_* bits.
1919
9c6fc49d
AM
19202007-03-08 Alan Modra <amodra@bigpond.net.au>
1921
1922 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
1923 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
1924 Run "make dep-am".
1925 * Makefile.in: Regenerate.
1926 * po/SRC-POTFILES.in: Regenerate.
1927
faed74d6
L
19282007-03-07 H.J. Lu <hongjiu.lu@intel.com>
1929
1930 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
1931 (x86_64-*-kfreebsd*-gnu): Likewise.
1932 (x86_64-*-netbsd*): Likewise.
1933 (x86_64-*-openbsd*): Likewise.
1934 (x86_64-*-linux-*): Likewise.
1935
1936 * configure.in: Support bfd_efi_app_x86_64_vec.
1937 * configure: Regenerated.
1938
1939 * efi-app-x86_64.c: New file.
1940
1941 * targets.c (bfd_efi_app_x86_64_vec): New.
1942 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
1943
15344ad7
L
19442007-03-07 Kai Tietz <kai.tietz@onevision.com>
1945
1946 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
1947 const for type reloc_howto_type.
1948
ab96bf03
AM
19492007-03-07 Alan Modra <amodra@bigpond.net.au>
1950
1951 PR 3958
1952 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
1953 (elf_discarded_section): Move..
1954 * bfd-in.h: ..to here.
1955 * bfd-in2.h: Regenerate.
1956 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
1957 from discarded sections before relocate_section has done its job.
1958 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
1959 relocs against symbols from discarded sections.
1960 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
1961 SECREL32.
1962 (elf_hppa_relocate_section): Handle relocatable link after setting
1963 sec, sym, h etc. for final link. Squash error messages for
1964 relocatable link. Clear section contents for relocs against
1965 symbols in discarded sections, and zero reloc. Remove existing
1966 zero r_symndx code.
1967 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
1968 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1969 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1970 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1971 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
1972 (bfin_relocate_section): Likewise.
1973 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1974 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1975 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1976 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1977 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1978 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1979 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1980 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1981 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1982 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1983 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1984 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1985 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1986 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1987 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1988 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1989 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1990 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1991 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1992 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1993 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1994 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1995 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1996 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1997 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
1998 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1999 * elf32-spu.c (spu_elf_relocate_section): Likewise.
2000 * elf32-v850.c (v850_elf_relocate_section): Likewise.
2001 * elf32-vax.c (elf_vax_relocate_section): Likewise.
2002 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
2003 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
2004 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
2005 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
2006 (elf64_alpha_relocate_section): Likewise.
2007 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
2008 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2009 * elf64-s390.c (elf_s390_relocate_section): Likewise.
2010 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
2011 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2012 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
2013 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
2014 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
2015
2016 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
2017 symbols for relocatable link. Don't use always-zero st_value.
2018 (elf_backend_rela_normal): Don't define.
2019 * elf32-bfin.c (bfinfdpic_relocate_section): Use
2020 RELOC_FOR_GLOBAL_SYMBOL.
2021 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2022 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
2023 section symbol adjustments with same for relocatable link.
2024 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2025 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
2026 (elf32_m68hc11_check_relocs): ..to here.
2027 * elf32-score.c (score_elf_final_link_relocate): Remove zero
2028 r_symndx code.
2029 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
2030
0e922b77
AM
20312007-03-07 Alan Modra <amodra@bigpond.net.au>
2032
2033 PR 4144
2034 * elf.c (assign_file_positions_for_load_sections): Don't
2035 adjust p_memsz for !SEC_LOAD section vma modulo page size.
2036 Instead, use the same lma based adjustment for SEC_LOAD
2037 sections.
2038
25c6282a
BW
20392007-03-01 Bob Wilson <bob.wilson@acm.org>
2040
2041 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
2042 (find_relaxable_sections): Do not increment src_count for unknown
2043 opcodes. Decode only once instead of calling is_l32r_relocation.
2044 (compute_text_actions): Remove unused no_insn_move flag. Assert that
2045 src_next matches src_count in relax_info.
2046
066c2a57
JM
20472007-03-01 Joseph Myers <joseph@codesourcery.com>
2048
2049 * Makefile.am (bfdver.h): Use "." not " " between version number
2050 and date.
2051 * Makefile.in: Regenerate.
2052 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
2053 * configure: Regenerate.
2054
ed6ba298
NS
20552007-02-28 Nathan Sidwell <nathan@codesourcery.com>
2056
2057 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
2058
7a8757b3
AM
20592007-02-27 Alan Modra <amodra@bigpond.net.au>
2060
2061 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
2062 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
2063
024b2372
CD
20642007-02-23 Carlos O'Donell <carlos@codesourcery.com>
2065
2066 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
2067 DWARF even with 64-bit addresses.
2068 (_bfd_dwarf2_find_nearest_line): Likewise.
2069
cb3ff1e5
NC
20702007-02-23 Nick Clifton <nickc@redhat.com>
2071
2072 PR binutils/3535
2073 * elf.c (copy_private_bfd_data): Always rewrite the program
2074 headers when a Solaris interpreter segment is involved.
2075
6a5bb875
PB
20762007-02-22 Paul Brook <paul@codesourcery.com>
2077
2078 * elflink.c (gc_mark_hook_fn): Remove.
2079 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
2080 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
2081 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
2082 (elf_backend_data): Add gc_mark_extra_sections.
2083 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
2084 definition.
2085 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
2086 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
2087 (elf_backend_gc_mark_extra_sections): Define.
2088
2889e75b
NC
20892007-02-21 Nick Clifton <nickc@redhat.com>
2090
2091 * elf.c (_bfd_elf_map_sections_to_segments): If the
2092 override_segment_assignment callback is defined then call it.
2093
78859468
AM
20942007-02-21 Alan Modra <amodra@bigpond.net.au>
2095
2096 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
2097
ae0d2616
TS
20982007-02-19 Thiemo Seufer <ths@mips.com>
2099
2100 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
2101 translation marker from untranslatable strings.
2102
6bfdb61b
AM
21032007-02-19 Alan Modra <amodra@bigpond.net.au>
2104
2105 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
2106 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
2107 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
2108 (elfNN_bed): Init new field.
2109 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
2110
92f01d61
JM
21112007-02-17 Mark Mitchell <mark@codesourcery.com>
2112 Nathan Sidwell <nathan@codesourcery.com>
2113 Vladimir Prus <vladimir@codesourcery.com
2114 Joseph Myers <joseph@codesourcery.com>
2115
2116 * configure.in (--with-pkgversion): New option.
2117 * configure: Regenerate.
2118 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
2119 * Makefile.in: Regenerate.
2120 * version.h (BFD_VERSION_STRING): Define using
2121 @bfd_version_package@.
2122
c0e3f241
CD
21232007-02-16 Carlos O'Donell <carlos@codesourcery.com>
2124
2125 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
2126 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
2127 and EF_MIPS_UCODE.
2128
72f6ea61
AM
21292007-02-15 Alan Modra <amodra@bigpond.net.au>
2130
2131 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
2132 declare.
2133 (_bfd_norelocs_canonicalize_reloc): Likewise.
2134 * libbfd.h: Regenerate.
2135 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
2136 (_bfd_norelocs_canonicalize_reloc): Likewise.
2137 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
2138 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
2139 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
2140 * ihex.c: Similarly.
2141 * mach-o-target.c: Similarly.
2142 * mach-o.c: Similarly.
2143 * mmo.c: Similarly.
2144 * pef.c: Similarly.
2145 * ppcboot.c: Similarly.
2146 * srec.c: Similarly.
2147 * xsym.c: Similarly.
2148
fab4a87f
L
21492007-02-14 H.J. Lu <hongjiu.lu@intel.com>
2150
2151 PR ld/3953
2152 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
2153 when adding default symbol.
2154
e4e0193e
AM
21552007-02-13 Alan Modra <amodra@bigpond.net.au>
2156
2157 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
2158 for branch lookup table.
2159
84f5d08e
AM
21602007-02-12 Alan Modra <amodra@bigpond.net.au>
2161
2162 * elf64-ppc.c (create_linkage_sections): Don't create
2163 .rela.rodata.brlt for --emit-relocs.
2164 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
2165 (ppc_size_one_stub): Count them. Simplify test of stub type
2166 when counting stub relocs. Set SEC_RELOC too.
2167 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
2168 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
2169
4aac632e
AM
21702007-02-12 Alan Modra <amodra@bigpond.net.au>
2171
2172 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
2173 with a zero symbol index.
2174
8da3dbc5
AM
21752007-02-12 Alan Modra <amodra@bigpond.net.au>
2176
2177 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
2178
b31847af
DB
21792007-02-05 Dave Brolley <brolley@redhat.com>
2180 Stan Cox <scox@redhat.com>
2181
2182 PR ld/3972
2183 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
2184
722b0ff7 21852007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
2186 Richard Sandiford <rsandifo@redhat.com>
2187 Stan Cox <scox@redhat.com>
2188 Nick Clifton <nickc@redhat.com>
2189 DJ Delorie <dj@redhat.com>
2190 Frank Ch. Eigler <fche@redhat.com>
2191 Ben Elliston <bje@redhat.com>
2192 Richard Henderson <rth@redhat.com>
2193
2194 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
2195 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
2196 (BFD32_BACKENDS): Add elf32-mep.lo.
2197 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
2198 (cpu-mep.lo,elf32-mep.lo): New targets.
2199 * archures.c (bfd_arch_mep): New enumerator.
2200 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
2201 (bfd_mep_arch): New external variable.
2202 (bfd_archures_list): Add bfd_mep_arch.
2203 * config.bfd: Support mep-*-elf.
2204 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
2205 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
2206 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
2207 declarations.
2208 (_bfd_target_vector): Add bfd_elf32_mep_vec and
2209 bfd_elf32_mep_little_vec.
722b0ff7
DB
2210 * mep-relocs.pl: New file.
2211 * cpu-mep.c: New file.
2212 * elf32-mep.c: New file.
2213 * bfd-in2.h: Regenerate.
e382d174 2214 * po/POTFILES.in: Regenerate.
722b0ff7
DB
2215 * libbfd.h: Regenerate.
2216 * Makefile.in: Regenerate.
2217 * configure: Regenerate.
2218
d9352518
DB
22192007-02-05 Dave Brolley <brolley@redhat.com>
2220
2221 * elflink.c (evaluate_complex_relocation_symbols): Check for
2222 STT_SRELC for global symbols.
2223 (perform_complex_relocations): Renamed to
2224 perform_complex_relocation and now examines only one relocation.
2225 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 2226 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
2227 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
2228 (OD,OS,OU): #undefs corrected to N, S and U repectively.
2229 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
2230 (complex_reloc_installation_howto): Removed.
2231 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
2232 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
2233
d9352518 22342007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
2235 Richard Sandiford <rsandifo@redhat.com>
2236 DJ Delorie <dj@redhat.com>
2237 Graydon Hoare <graydon@redhat.com>
2238 Nick Clifton <nickc@cambridge.redhat.com>
2239 Jeff Holcomb <jeffh@redhat.com>
2240 Frank Ch. Eigler <fche@redhat.com>
2241
2242 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
2243 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
2244 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
2245 * elflink.c (set_symbolValue): New static function.
d9352518
DB
2246 (resolve_symbol): Likewise.
2247 (resolve_section): Likewise.
2248 (undefined_reference): Likewise.
2249 (eval_symbol): Likewise.
2250 (evaluate_complex_relocation_symbols): Likewise.
2251 (put_value): Likewise.
2252 (get_value): Likewise.
e382d174
DB
2253 (decode_complex_addend):
2254 (bfd_elf_perform_complex_relocation): New function.
2255 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
2256 * reloc.c (BFD_RELOC_RELC): New relocation number.
2257 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 2258
f1ab2340 22592007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 2260
f1ab2340
BW
2261 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
2262 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
2263 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
2264 (elf_xtensa_allocate_got_size): Replace these with...
2265 (elf_xtensa_allocate_dynrelocs): ...this new function.
2266 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 2267
e5f131d1 22682007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 2269
e5f131d1
BW
2270 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
2271 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
2272 Set src_mask to zero.
2273 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
2274 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 2275
4608f3d9
BW
22762007-02-02 Bob Wilson <bob.wilson@acm.org>
2277
2278 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
2279 (elf_xtensa_dynamic_symbol_p): ...this.
2280
f0e6fdb2
BW
22812007-02-02 Bob Wilson <bob.wilson@acm.org>
2282
2283 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
2284 (struct elf_xtensa_link_hash_table): New.
2285 (elf_xtensa_hash_table): New.
2286 (elf_xtensa_link_hash_table_create): New.
2287 (elf_xtensa_check_relocs): Update plt_reloc_count references.
2288 Update arguments to add_extra_plt_sections.
2289 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
2290 table. Update for plt_reloc_count and add_extra_plt_sections.
2291 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
2292 argument with link info. Update calls to elf_xtensa_get_plt_section
2293 and elf_xtensa_get_gotplt_section.
2294 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
2295 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
2296 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
2297 (relax_property_section): Get sections from the hash table and update
2298 function calls.
2299 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
2300 dynobj argument with link info. Get sections for first plt chunk from
2301 the hash table.
2302 (bfd_elf32_bfd_link_hash_table_create): Define.
2303
c15f73f9
JJ
23042007-02-02 Jakub Jelinek <jakub@redhat.com>
2305
2306 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
2307 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
2308 (struct elf_symbol): Change first member into union.
2309 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
2310 internal syms. Only compare st_shndx fields.
2311 (elf_create_symbuf): New function.
2312 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
2313 for bfds, use a binary search, otherwise don't qsort symbols
2314 unnecessarily only to select which symbols are for the particular
2315 shndx.
2316
effdf42a
NC
23172007-02-01 Nick Clifton <nickc@redhat.com>
2318
2319 PR ld/3852
2320 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
2321 in the elf_link_hash_table structure.
2322
183e98be
AM
23232007-02-01 Alan Modra <amodra@bigpond.net.au>
2324
2325 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
2326 * elfxx-target.h (elf_backend_write_core_note): Define and use.
2327 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
2328 32-bit core note on 64-bit target.
2329 (elfcore_write_prstatus): Likewise.
2330 (elfcore_write_lwpstatus): Make note_name const.
2331 (elfcore_write_prfpreg): Likewise.
2332 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
2333 target.
2334 * elf32-ppc.c (ppc_elf_write_core_note): New function.
2335 (elf_backend_write_core_note): Define.
2336 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
2337 (elf_backend_write_core_note): Define.
2338
fc523535 23392007-01-31 H.J. Lu <hongjiu.lu@intel.com>
16cecee5
L
2340
2341 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
2342 (elf32_bed): Defined for elf32-us-cris.
2343
2344 * elf64-sh64.c (elf64_bed): Defined for Linux.
2345 (INCLUDED_TARGET_FILE): Removed.
2346
2347 * elfxx-target.h (elfNN_bed): Always define. Don't check
2348 INCLUDED_TARGET_FILE.
2349
c9b57b7e
DD
23502007-01-31 DJ Delorie <dj@redhat.com>
2351
2352 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
2353 message for dangerous relocs, special case the common user error.
2354
53020534
L
23552007-01-30 H.J. Lu <hongjiu.lu@intel.com>
2356
2357 * elf.c (copy_elf_program_header): Start from the first section
2358 in a segment and stop when all sections in a segment are
2359 accounted for.
2360
c7b8f16e
JB
23612007-01-29 Julian Brown <julian@codesourcery.com>
2362
2363 * bfd-in2.h: Regenerate.
2364 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
2365 instruction scanning should be done.
2366 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
2367 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
2368 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
2369 prototype.
2370 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
2371 argument.
2372 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
2373 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
2374 (elf32_vfp11_erratum_type): New enum.
2375 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
2376 veneers.
2377 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
2378 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
2379 vfp11_fix and num_vfp11_fixes fields.
2380 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
2381 vfp11_erratum_glue_size, num_vfp11_fixes fields.
2382 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
2383 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
2384 glue section.
2385 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
2386 to a section's map.
2387 (record_vfp11_erratum_veneer): Create a single veneer, and its
2388 associated symbols.
2389 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
2390 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
2391 BFDs.
2392 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
2393 required.
2394 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
2395 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
2396 (bfd_arm_vfp11_write_mask): Update write mask according to coded
2397 register number.
2398 (bfd_arm_vfp11_antidependency): New function.
2399 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
2400 (elf32_arm_compare_mapping): Declare.
2401 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
2402 BFD for potential erratum-triggering insns. Record results.
2403 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
2404 and branches to veneers have been placed in virtual memory after
2405 layout.
2406 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
2407 hash table.
2408 (elf32_arm_output_symbol_hook): Remove.
2409 (elf32_arm_write_section): Output veneers, and branches to veneers.
2410 Use maps from input sections, not output sections, for code
2411 byte-swapping.
2412 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
2413 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
2414 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
2415 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
2416
24172007-01-27 H.J. Lu <hongjiu.lu@intel.com>
83d1651b
L
2418
2419 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 2420 (INCLUDED_TARGET_FILE): Removed.
83d1651b 2421
914dfb0f
DA
24222007-01-27 Mike Frysinger <vapier@gentoo.org>
2423
2424 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
2425 (INCLUDED_TARGET_FILE): Remove.
2426
78eba9b6
DD
24272007-01-25 DJ Delorie <dj@redhat.com>
2428
2429 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
2430 R_M32C_16 or R_M32C_24 relocs.
2431
64ee10b6
NC
24322007-01-25 Nick Clifton <nickc@redhat.com>
2433
2434 PR binutils/3874
2435 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
2436 hash table was created by elf32_avr_link_hash_table_create before
2437 using it.
2438 (elf32_avr_link_hash_newfunc): New function. Just pass the call
2439 through to _bfd_elf_link_hash_newfunc.
2440 (elf32_avr_link_hash_table_create): Use
2441 elf32_avr_link_hash_newfunc instead of
2442 _bfd_elf_link_hash_newfunc.
2443 (elf32_avr_relocate_section): Check for the hash table pointer
2444 being NULL.
2445 (elf32_avr_relax_section, avr_build_one_stub,
2446 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
2447 elf32_avr_build_stubs): Likewise.
2448
40b36307
L
24492007-01-16 H.J. Lu <hongjiu.lu@intel.com>
2450
2451 PR ld/3831
2452 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
2453 argument, Elf_Internal_Sym *.
2454
2455 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
2456 symbol dynamic if info->dynamic_data is TRUE.
2457 (bfd_elf_record_link_assignment): Updated call to
2458 bfd_elf_record_link_assignment.
2459 (_bfd_elf_merge_symbol): Likewise. Always call
2460 bfd_elf_link_mark_dynamic_symbol.
2461
fc523535 24622007-01-12 H.J. Lu <hongjiu.lu@intel.com>
a454209d
L
2463
2464 * Makefile.am (BFD_LIBS): Removed.
2465 * Makefile.in: Regenerated.
2466
fc523535 24672007-01-11 H.J. Lu <hongjiu.lu@intel.com>
21e40a48
L
2468
2469 PR binutils/3631
2470 * Makefile.am (OFILES): Add @bfd64_libs@.
2471 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
2472 * Makefile.in: Regenerated.
2473
2474 * configure.in (bfd_libs): Replaced by ...
2475 (bfd64_libs): This.
2476 * configure: Regenerated.
2477
59e0647f
NS
24782007-01-11 Nathan Sidwell <nathan@codesourcery.com>
2479
2480 * elf.c (assign_file_positions_for_load_sections): We can
2481 require fewer phdrs than expected.
2482
3bdcfdf4
KH
24832007-01-08 Kazu Hirata <kazu@codesourcery.com>
2484
2485 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
2486 * bfd-in2.h: Regenerate.
2487 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
2488 bfd_mach_cpu32_fido.
2489 (m68k_arch_features): Use fido_a instead of cpu32.
2490 (bfd_m68k_compatible): Reject the combination of Fido and
2491 ColdFire. Accept the combination of CPU32 and Fido with a
2492 warning.
2493 * elf32-m68k.c (elf32_m68k_object_p,
2494 elf32_m68k_merge_private_bfd_data,
2495 elf32_m68k_print_private_bfd_data): Treat Fido as an
2496 architecture by itself.
2497
42037fe5
NC
24982007-01-08 Kai Tietz <kai.tietz@onevision.com>
2499
2500 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
2501
ebe8b991
JJ
25022007-01-05 Jakub Jelinek <jakub@redhat.com>
2503
2504 * texhex.c (first_phase): Don't fall through into the default
2505 case.
2506 (pass_over): Replace abort () calls with return FALSE. Fix
2507 buffer overflow.
2508
b327f31f
AM
25092007-01-04 Jie Zhang <jie.zhang@analog.com>
2510
2511 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
2512 SEC_EXCLUDE on zero size .eh_frame.
2513
10a2343e 2514For older changes see ChangeLog-2006
56882138
AM
2515\f
2516Local Variables:
2517mode: change-log
2518left-margin: 8
2519fill-column: 74
2520version-control: never
2521End: