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