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