PR binutils/5146
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
7ae8e4e8
DA
12007-12-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2
d68aa3e6
DA
3 PR binutils/5146
4 * elf64-hppa.c: Declare alloca when __GNUC__ is defined.
5 * som.c: Likewise.
6
7ae8e4e8
DA
7 * elf-hppa.h (elf_hppa_osec_to_segment): New function.
8 (elf_hppa_record_segment_addrs): Use elf_hppa_osec_to_segment.
9 Remove ATTRIBUTE_UNUSED from abfd argument.
10 * elf32-hppa.c (hppa_record_segment_addr): Likewise.
11
4750aaa4
NC
122007-12-28 Nick Hudson <nick.hudson@dsl.pipex.com>
13
14 * elf32-hppa.c (hppa_record_segment_addr): Locate the segment
15 containing the section using the segment map, rather than guessing
16 based upon the section's vma and file position.
17
0efc80c8
L
182007-12-24 H.J. Lu <hongjiu.lu@intel.com>
19
20 PR binutils/5488
21 * elf.c (IS_NOTE): New.
22 (IS_COREFILE_NOTE): Use IS_NOTE.
23 (IS_SECTION_IN_INPUT_SEGMENT): Use IS_NOTE instead of
24 IS_COREFILE_NOTE.
25
147d51c2
L
262007-12-24 H.J. Lu <hongjiu.lu@intel.com>
27
28 PR binutils/5449
29 * elf.c (rewrite_elf_program_header): Don't adjust p_paddr if
30 p_paddr is set to 0.
31 (copy_private_bfd_data): Call rewrite_elf_program_header if
32 p_paddr is set to 0.
33
34 * elfcode.h (elf_swap_phdr_out): Set p_paddr to 0 if needed.
35
36 * elfxx-ia64.c (ELF_MAXPAGESIZE): Don't redefine it for HPUX.
37
dc96b90a
BW
382007-12-21 Bob Wilson <bob.wilson@acm.org>
39
40 * elf32-xtensa.c (relax_section): Update DIFF relocations in the
41 same way as other relocations.
42
cb2dde36
DJ
432007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
44
45 * section.c (BFD_FAKE_SECTION): Update.
46 * bfd-in2.h: Regenerate.
47
f1a35370
DJ
482007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
49
50 * bfd-in2.h: Regenerate.
51
f164edfa
PA
522007-12-17 Pedro Alves <pedro_alves@portugalmail.pt>
53
54 * config.bfd: Add arm-*-mingw32ce* target.
55
fc802241
RS
562007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
57
58 * elf-bfd.h (eh_cie_fde): Replace u.cie.merged with a union of
59 a merged field and a sec field.
60 (eh_frame_hdr_info): Remove offsets_adjusted.
61 * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Update accesses to
62 the CIE merged field.
63 (_bfd_elf_gc_mark_fdes): Likewise.
64 (_bfd_elf_discard_section_eh_frame): Likewise. Set u.cie.u.sec
65 when clearing the removed flag.
66 (_bfd_elf_eh_frame_section_offset): Remove offsets_adjusted handling.
67 (_bfd_elf_write_section_eh_frame): Likewise. Apply output_offsets
68 where appropriate.
69
6b2cc140
RS
702007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
71
72 * elf-bfd.h (eh_cie_fde): Move add_fde_encoding and
73 per_encoding_relative to u.cie. Add commentary.
74 * elf-eh-frame.c (cie): Remove make_relative.
75 (extra_augmentation_string_bytes): Update use of add_fde_encoding.
76 (extra_augmentation_data_bytes): Likewise. Use an FDE's own
77 add_augmentation_size field, rather than referring to the CIE.
78 (_bfd_elf_parse_eh_frame): Don't set the struct cie
79 make_relative field; set the eh_cie_fde field directly.
80 Update setting of add_fde_encoding and per_encoding_relative.
81 Copy make_relative and add_augmentation_size from the CIE
82 to the FDE.
83 (_bfd_elf_discard_section_eh_frame): Use the FDE's own
84 make_relative field.
85 (_bfd_elf_eh_frame_section_offset): Likewise.
86 (_bfd_elf_write_section_eh_frame): Update accesses to
87 add_fde_encoding and per_encoding_relative. Use the FDE's
88 own make_relative and add_augmentation_size fields.
89
9f4b847e
RS
902007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
91
92 * elf-bfd.h (eh_cie_fde): Remove need_lsda_relative.
93 Move make_lsda_relative to u.cie.
94 * elf-eh-frame.c (cie): Rename make_lsda_relative to
95 can_make_lsda_relative.
96 (_bfd_elf_parse_eh_frame): Don't set the old eh_cie_fde
97 make_lsda_relative field. Update after cie renaming.
98 Set u.cie.make_lsda_relative if can_make_lsda_relative
99 and if we find a relocation against the LSDA.
100 (_bfd_elf_discard_section_eh_frame): Copy make_lsda_relative when
101 changing a CIE's group representative.
102 (_bfd_elf_eh_frame_section_offset): Don't set need_ldsa_relative here.
103 (_bfd_elf_write_section_eh_frame): Check u.cie.make_lsda_relative
104 rather than need_lsda_relative.
105
9d0a14d3
RS
1062007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
107
108 * elf-bfd.h (eh_cie_fde): Add u.fde.next_for_section and
109 u.cie.gc_mark.
110 (bfd_elf_section_data): Add fde_list.
111 (elf_fde_list): New macro.
112 (elf_obj_tdata): Add eh_frame_section.
113 (elf_eh_frame_section): New macro.
114 (_bfd_elf_gc_mark_reloc): Remove last parameter.
115 (_bfd_elf_gc_mark_fdes): Declare.
116 * elf-eh-frame.c (_bfd_elf_get_eh_frame_sec_info): Chain the FDEs
117 for each input section.
118 (mark_entry, _bfd_elf_gc_mark_fdes): New functions.
119 * elflink.c (_bfd_elf_gc_mark_reloc): Remove is_eh parameter.
120 (_bfd_elf_gc_mark): Update call accordingly. Mark the relocations
121 againts the section's FDEs. Don't mark the bfd's elf_eh_frame_section.
122 (bfd_elf_gc_sections): Parse each input bfd's .eh_frame before
123 marking any input sections. Remove the current EH handling.
124 * section.c (bfd_section): Remove gc_mark_from_eh.
125 * ecoff.c (bfd_debug_section): Update initializer accordingly.
126
ca92cecb
RS
1272007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
128
129 * elf-bfd.h (eh_cie_fde): Add u.cie. Document how u.fde.cie_inf
130 changes when removed == 0.
131 (eh_frame_hdr_info): Add parsed_eh_frames.
132 (_bfd_elf_begin_eh_frame_parsing): Declare.
133 (_bfd_elf_parse_eh_frame): Declare.
134 (_bfd_elf_end_eh_frame_parsing): Declare.
135 * elf-eh-frame.c (_bfd_elf_begin_eh_frame_parsing): New function.
136 (_bfd_elf_parse_eh_frame): New function, split out from
137 _bfd_elf_discard_section_eh_frame. Make a first pass through the
138 buffer to calculate the number of entries and CIEs. Allocate memory
139 for them before the main loop. Replace current extended cie
140 representation with a pair of pointers, one to the local eh_cie_fde
141 and one to the full struct cie. Allocate a separate array of struct
142 cies if not merging. Merge CIEs during the main loop and set up each
143 u.cie.merged field. Point an FDE's cie_inf field directly at the
144 local CIE. Initially assume that all entries should be removed.
145 (_bfd_elf_end_eh_frame_parsing): New function.
146 (_bfd_elf_discard_section_eh_frame): Assume that the section has
147 already been parsed. Use a separate pass to mark entries that
148 need to be kept. Use the u.cie.merged field to track a CIE's
149 group representative.
150 * elflink.c (bfd_elf_discard_info): Call _bfd_elf_parse_eh_frame
151 before _bfd_elf_discard_section_eh_frame. Wrap loop with calls to
152 _bfd_elf_begin_eh_frame_parsing and _bfd_elf_end_eh_frame_parsing.
153
155eaaa0
RS
1542007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
155
156 * elf-bfd.h (eh_cie_fde): Put cie_inf in a union. Add a reloc_index
157 field. Use bitfields for fde_encoding, lsda_encoding and lsda_offset.
158 * elf-eh-frame.c (extra_augmentation_data_bytes): Adjust cie_inf
159 accesses after the above change.
160 (_bfd_elf_eh_frame_section_offset): Likewise.
161 (_bfd_elf_write_section_eh_frame): Likewise.
162 (_bfd_elf_discard_section_eh_frame): Likewise. Set up reloc_index.
163
5241d853
RS
1642007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
165
166 * elf-bfd.h (_bfd_elf_gc_mark_rsec, _bfd_elf_gc_mark_reloc): Declare.
167 (_bfd_elf_gc_mark): Use elf_gc_mark_hook_fn.
168 * elflink.c (init_reloc_cookie, fini_reloc_cookie)
169 (init_reloc_cookie_rels, fini_reloc_cookie_rels): New functions,
170 split out from...
171 (bfd_elf_discard_info): ...here.
172 (init_reloc_cookie_for_section): New function.
173 (fini_reloc_cookie_for_section): Likewise.
174 (_bfd_elf_gc_mark_rsec, _bfd_elf_gc_mark_reloc): New functions,
175 split out from...
176 (_bfd_elf_gc_mark): ...here. Use init_reloc_cookie_for_section
177 and fini_reloc_cookie_for_section.
178
c46082c8
BW
1792007-12-12 Bob Wilson <bob.wilson@acm.org>
180
181 * elf32-xtensa.c (elf_xtensa_do_reloc): Update self_address along with
182 address.
183 (print_action_list): Fix name for ta_convert_longcall.
184
8424d8f5
CM
1852007-12-11 Catherine Moore <clm@codesourcery.com>
186
187 * elf.c (_bfd_elf_copy_private_symbol_data): Don't copy shndx if
188 the symbol's section is the undefined section.
189
58f0869b
AM
1902007-12-11 Alan Modra <amodra@bigpond.net.au>
191
192 * elf.c (elf_fake_sections): Add "warning:" to "..changed to PROGBITS"
193 message.
194
1bbb5f21
BW
1952007-12-07 Bob Wilson <bob.wilson@acm.org>
196
197 * elf32-xtensa.c (elf_howto_table): Add R_XTENSA_32_PCREL.
198 (elf_xtensa_reloc_type_lookup): Handle BFD_RELOC_32_PCREL.
199 (elf_xtensa_check_relocs): Use default case for all relocations that
200 need nothing done here.
201 (elf_xtensa_do_reloc): Compute self_address for all relocation types.
202 Handle R_XTENSA_32_PCREL.
203 (elf_xtensa_relocate_section): Check for R_XTENSA_32_PCREL for dynamic
204 symbols.
205 (check_section_ebb_pcrels_fit): Ignore R_XTENSA_32_PCREL relocations.
206
d688b66e
AM
2072007-12-05 Alan Modra <amodra@bigpond.net.au>
208
209 * elf32-spu.c (spu_elf_size_stubs): Do consider branches to
210 non-function symbols for overlay stubs.
211
c243ad3b
BW
2122007-12-04 Bob Wilson <bob.wilson@acm.org>
213
214 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Create DT_PLTGOT
215 entry for all dynamic objects.
216
b8e22491
AM
2172007-12-04 Alan Modra <amodra@bigpond.net.au>
218
219 * elf32-spu.c (spu_elf_size_stubs): Correct section alignment.
220
888cab37
RS
2212007-11-30 Richard Sandiford <rsandifo@nildram.co.uk>
222
223 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use the
224 ELF header to choose between 32-bit and 64-bit relocation structures.
225
350cc38d
MS
2262007-11-29 Mark Shinwell <shinwell@codesourcery.com>
227
228 * archures.c (bfd_mach_mips_loongson_2e): New.
229 (bfd_mach_mips_loongson_2f): New.
230 * bfd-in2.h (bfd_mach_mips_loongson_2e): New.
231 (bfd_mach_mips_loongson_2f): New.
232 * cpu-mips.c: Add I_loongson_2e and I_loongson_2f to
233 anonymous enum.
234 (arch_info_struct): Add Loongson-2E and Loongson-2F entries.
235 * elfxx-mips.c (_bfd_elf_mips_mach): Handle Loongson-2E
236 and Loongson-2F flags.
237 (mips_set_isa_flags): Likewise.
238 (mips_mach_extensions): Add Loongson-2E and Loongson-2F
239 entries.
240
39ce1a6a
NC
2412007-11-29 Nick Clifton <nickc@redhat.com>
242
243 PR ld/5398
244 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Do not
245 complain if there is no glue bfd, just return.
246
e23f1610
NC
2472007-11-28 Nick Clifton <nickc@redhat.com>
248
249 * elf-m10300.c (mn10300_elf_relax_section): Extend previous fix to
250 cover forward jumps.
251
fc91707c
NC
2522007-11-21 Nick Clifton <nickc@redhat.com>
253
254 * elf-m10300.c (mn10300_elf_relax_section): Allow for alignment
255 relocs when computing whether instructions can be relaxed.
256
430a16a5
NC
2572007-11-16 Tristan Gingold <gingold@adacore.com>
258
259 * elflink.c (elf_link_output_extsym): Weaken assertion: if
260 --gc-section is set, there may be no TLS segment.
261
cdfeee4f
AM
2622007-11-19 Alan Modra <amodra@bigpond.net.au>
263
264 * elf-bfd.h (bfd_elf_perform_complex_relocation): Update prototype.
265 * elflink.c (bfd_elf_perform_complex_relocation): Return status.
266 Don't print reloc overflow message.
267 * elf32-mep.c (mep_elf_relocate_section): Handle status from
268 bfd_elf_perform_complex_relocation.
269
42554f6a
TS
2702007-11-17 Thiemo Seufer <ths@mips.com>
271
272 * elfxx-mips.c (mips_elf_merge_obj_attributes): Handle -mips32r2
273 -mfp64 attribute.
274
62d7f790
NC
2752007-11-16 Nick Clifton <nickc@redhat.com>
276
277 * elf-m10300.c (mn10300_elf_check_relocs): Fix memory leak and
278 check that bfd_elf_get_elf_syms is only called once.
279
6f610d07
UW
2802007-11-16 Ulrich Weigand <uweigand@de.ibm.com>
281
282 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Set udata.p of
283 synthetic symbol to point to the ELF symbol it was derived from.
284
fed590bb
AM
2852007-11-15 Alan Modra <amodra@bigpond.net.au>
286
287 PR 5328
288 * opncls.c (separate_debug_file_exists): Use fopen/fread
289 rather than open/read and open in binary mode.
290
c224138d
RS
2912007-11-14 Richard Sandiford <richard@codesourcery.com>
292
293 * elfxx-mips.c (mips_got_page_range): New structure.
294 (mips_got_page_entry): Likewise.
295 (mips_got_info): Add page_gotno and got_page_entries fields.
296 (mips_elf_got_per_bfd_arg): Add max_pages field. Delete
297 primary_count and current_count fields.
298 (mips_got_page_entry_hash, mips_got_page_entry_eq): New functions.
299 (mips_elf_pages_for_range, mips_elf_record_got_page_entry): Likewise.
300 (mips_elf_get_got_for_bfd): New function, split out from
301 mips_elf_make_got_per_bfd. Initialize the page_gotno and
302 got_page_entries fields when creating a new GOT structure.
303 (mips_elf_make_got_pages_per_bfd): New function.
304 (mips_elf_merge_got_with): New function, split out from
305 mips_elf_make_got_per_bfd. Merge page entries as well as
306 non-page entries. Use the minimum of max_pages and the sum
307 of the page_gotnos to estimate the number of page entries.
308 (mips_elf_merge_gots): Use the minimum of max_pages and the
309 bfd's page_gotno to estimate the number of page entries.
310 Use the above functions.
311 (mips_elf_multi_got): Add page entries as well as non-page entries
312 to the individual per-bfd GOTs. Initialize got_per_bfd_arg.max_pages.
313 Initialize the page_gotno and got_page_entries fields when creating
314 a new primary GOT. Use the minimum of pages and page_gotno when
315 adding the number of pages entries to local_gotno.
316 (mips_elf_create_got_section): Initialize the page_gotno and
317 got_page_entries fields of the GOT structure.
318 (mips_elf_rel_relocation_p, mips_elf_read_rel_addend)
319 (mips_elf_add_lo16_rel_addend, mips_elf_get_section_contents): New
320 functions, split out from...
321 (_bfd_mips_elf_relocate_section): ...here.
322 (_bfd_mips_elf_check_relocs): Record GOT page entries too.
323 (_bfd_mips_relax_section): Use mips_elf_get_section_contents.
324 (_bfd_mips_elf_always_size_sections): Use the smaller of the
325 loadable_size- and page_gotno-derived estimates.
326
51a0dd31
TS
3272007-11-14 Thiemo Seufer <ths@mips.com>
328
329 * elfxx-mips.c (mips_elf_merge_obj_attributes): Prevent
330 unwanted fallthroughs in case statement.
331
4be8cddc
L
3322007-11-13 H.J. Lu <hongjiu.lu@intel.com>
333
334 PR binutils/5307
335 * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Don't
336 copy input subsystem if output is different from input.
337
b5f5fd96
NC
3382007-11-13 Nick Clifton <nickc@redhat.com>
339
340 * elf-m10300.c (mn10300_elf_final_link_relocate): Prevent the
341 accidental termination of DWARF location list entries.
342 (mn10300_elf_relax_delete_bytes): Stop deletion if an align reloc
343 is encountered that is larger than or not a mutliple of the number
344 of bytes being deleted.
345 When adjusting symbols, any symbols inside the region being
346 deleted must be moved to the end of the region.
347 Move align relocs forward if there is room for them after the
348 deletion of the region.
349
0067a569
AM
3502007-11-13 Alan Modra <amodra@bigpond.net.au>
351
352 PR 5233
353 * elf.c (rewrite_elf_program_header): Formatting. Add
354 first_matching_lma and first_suggested_lma booleans and use
355 instead of testing matching_lma and suggested_lma for zero.
356
fa4dfc15
L
3572007-11-12 H.J. Lu <hongjiu.lu@intel.com>
358
359 PR binutils/5299
360 * peicode.h (pe_bfd_object_p): Save and restore previous bfd
361 state when calling coff_object_p.
362
8f39ba8e
AM
3632007-11-12 Alan Modra <amodra@bigpond.net.au>
364
365 * elf.c (_bfd_elf_get_synthetic_symtab): Only bump the symbol
fa4dfc15 366 pointer when we have a valid symbol. Init udata.p to NULL.
8f39ba8e 367
6b60be10
NS
3682007-11-09 Nathan Sidwell <nathan@codesourcery.com>
369
370 * elf-vxworks.c (elf_vxworks_emit_relocs): Don't clobber
371 rel_hash. Move loop inside if test.
372
7a2b07ff
NS
3732007-11-08 Nathan Sidwell <nathan@codesourcery.com>
374
375 * elf-vxworks.h (elf_vxworks_add_dynamic_entries): Declare.
376 (elf_vxworks_finish_dynamic_entry): Declare.
377 * elf-vxworks.c: Include elf/vxworks.h.
378 (elf_vxworks_add_dynamic_entries): New.
379 (elf_vxworks_finish_dynamic_entry): New.
380 * Makefile.am (elf-vxworks.lo): Add dependency.
381 * Makefile.in (elf-vxworks.lo): Add dependency.
382 * elf32-i386.c (elf_i386_size_dynamic_sections,
383 elf_i386_finish_dynamic_sections): Call
384 elf_vxworks_add_dynamic_entries and
385 elf_vxworks_finish_dynamic_entry.
386 * elf32-ppc.c (ppc_elf_size_dynamic_sections,
387 ppc_elf_finish_dynamic_sections): Likewise.
388 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections,
389 sparc_finish_dyn): Likewise.
390 * elf32-sh.c (sh_elf_size_dynamic_sections,
391 sh_elf_finish_dynamic_sections): Likewise.
392 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections,
393 _bfd_mips_elf_finish_dynamic_sections): Likewise.
394 * elf32-arm.c (elf32_arm_size_dynamic_sections,
395 elf32_arm_finish_dynamic_sections): Likewise.
396
b5482f21
NC
3972007-11-07 Olivier Hainque <hainque@adacore.com>
398
399 * bfd/elfxx-mips.c (_bfd_mips_elf_fake_sections): Force
400 SHF_MIPS_NOSTRIP on .debug_frame for Irix.
401
b7fcf6f6
AM
4022007-11-06 Alan Modra <amodra@bigpond.net.au>
403
102890f0
AM
404 * elf64-ppc.c (ppc64_elf_check_relocs): Don't refcount tlsld_got here..
405 (ppc64_elf_gc_sweep_hook): ..or here..
406 (ppc64_elf_tls_optimize): ..or here. Make two passes through the
407 relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
408 (allocate_dynrelocs): Refcount tlsld_got here.
409 (ppc64_elf_size_dynamic_sections): Allocate local got and call
410 allocate_dynrelocs before allocating tlsld_got.
411 (ppc64_elf_relocate_section): Remove check that a tls_get_addr
412 call follows gd and ld relocs.
413
b7fcf6f6
AM
414 * elf32-ppc.c (ppc_elf_check_relocs): Don't refcount tlsld_got here..
415 (ppc_elf_gc_sweep_hook): ..or here..
416 (ppc_elf_tls_optimize): ..or here. Make two passes through the
417 relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
418 (allocate_dynrelocs): Refcount tlsld_got here.
419 (ppc_elf_size_dynamic_sections): Call allocate_dynrelocs before
420 allocating tlsld_got.
421 (ppc_elf_relocate_section): Remove check that a tls_get_addr
422 call follows gd and ld relocs.
423
9ca98086
AM
4242007-11-05 Alan Modra <amodra@bigpond.net.au>
425
426 * merge.c (sec_merge_hash_lookup): Revert last change.
427 (record_section): Likewise.
428 (_bfd_merge_sections): Likewise.
429 (_bfd_merged_section_offset): Properly handle NULL secinfo.
430 (_bfd_add_merge_section): Allocate extra space for a zero
431 terminator on SEC_STRINGS sections.
432
11ec4ba9
DS
4332007-11-05 Danny Smith <dannysmith@users.sourceforge.net>
434
435 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Let .data, .text
436 and .bss section use the default.
437 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
438
e6c6c8f3
JM
4392007-11-01 Joseph Myers <joseph@codesourcery.com>
440
441 * merge.c (sec_merge_hash_lookup): Add parameter sec_end. Check
442 for unterminated strings. All callers changed.
443 (record_section): Add parameter abfd. Give error message for
444 unterminated strings.
445 (_bfd_merge_sections): Update call to record_section.
446 (_bfd_write_merged_section, _bfd_merged_section_offset): Handle
447 NULL secinfo from merge failures.
448
cf4a529b
NC
4492007-10-31 Nick Clifton <nickc@redhat.com>
450
451 * elf-m10300.c (mn10300_elf_relax_delete_bytes): Do not look for
452 align relocs when there are no relocs attached to the section.
453
8f317e31
AM
4542007-10-31 Alan Modra <amodra@bigpond.net.au>
455
456 * elf-bfd.h (bfd_elf_match_symbols_in_sections): Don't declare.
457 * elflink.c (bfd_elf_match_symbols_in_sections): Make static.
458 Remove section name comparisons.
459
569006e5
NC
4602007-10-30 Nick Clifton <nickc@redhat.com>
461
462 * reloc.c (BFD_RELOC_MN10300_ALIGN): Add.
463 * bfd-in2.h: Regenerate.
464 * libbfd.h: Regnerate.
465 * elf-m10300.h: Handle R_MN10300_ALIGN relocs.
466 (mn10300_elf_relax_delete_bytes): Honour R_MN10300_ALIGN relocs.
467 Re-fix off by one error in comparisons.
468
db86b2dc
PA
4692007-10-25 Pedro Alves <pedro_alves@portugalmail.pt>
470
471 * bfd-in.h (STRING_COMMA_LEN): Don't handle NULL STR case.
472 * bfd-in2.h: Regenerate.
473
c6e65352
DJ
4742007-10-25 Daniel Jacobowitz <dan@codesourcery.com>
475
476 * elf32-ppc.c (ppc_elf_merge_obj_attributes): Add support for
477 Tag_GNU_Power_ABI_Vector.
478
7c8b76cc
JM
4792007-10-25 Joseph Myers <joseph@codesourcery.com>
480
481 * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Do not add
482 PT_NULL header when not linking.
483
97753bd5
AM
4842007-10-25 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
485
486 * elf.c (elfcore_grok_ppc_vmx): New function.
487 (elfcore_grok_note): Handle NT_PPC_VMX.
488 (elfcore_write_ppc_vmx): New function.
489 * elf-bfd.h (elfcore_write_ppc_vmx): Declare.
490
dd323078
AM
4912007-10-24 Alan Modra <amodra@bigpond.net.au>
492
493 * Makefile.am: Run "make dep-am".
494 * Makefile.in: Regenerate.
495 * po/SRC-POTFILES.in: Regenerate.
496
f94498ff
AM
4972007-10-23 Alan Modra <amodra@bigpond.net.au>
498
499 * elf64-ppc.c (ppc_build_one_stub): Don't duplicate relocs
500 emitted for ".brlt" entries.
501 (toc_adjusting_stub_needed): Don't treat ".fixup" specially here..
502 (ppc64_elf_next_input_section): ..instead do so here.
503
bfff1642
NC
5042007-10-19 Nick Clifton <nickc@redhat.com>
505
506 * config.bfd: Recognise am34-linux-gnu target.
507 * reloc.c: Add BFD_RELOC_MN10300_SYM_DIFF relocation.
508 * bfd-in2.h: Regenerate.
509 * libbfd.h: Regenerate.
510 * elf-m10300.c (elf_mn10300_howto): Add R_MN10300_SYM_DIFF.
511 (mn10300_reloc_map): Likewise.
512 (mn10300_elf_check_relocs): Do not create dynamic relocs for
513 symbol differences or relocations against absolute symbols.
514 (mn10300_elf_final_link_relocate): Likewise.
515 Handle R_MN10300_SYM_DIFF relocs.
516 (mn10300_elf_relocate_section): Fix for creating local copys of
517 dynamic relocs.
518 (mn10300_elf_relax_delete_bytes): Adjust symbols at the end of the
519 region. Adjust the size of function symbols.
520 (mn10300_elf_relax_section): Ignore symbols that are in discarded
521 sections.
522
603b7257
NC
5232007-10-19 Nick Clifton <nickc@redhat.com>
524
525 * elf-m10300.c: Convert to ISO C.
526
13285a1b
AM
5272007-10-18 H.J. Lu <hongjiu.lu@intel.com>
528 Alan Modra <amodra@bigpond.net.au>
529
530 PR ld/4424
531 * config.bfd (targ_selvecs): Add bfd_elf64_alpha_vec for
532 alpha/FreeBSD. Add bfd_elf64_sparc_vec for sparc64/FreeBSD.
533 Add bfd_elf32_i386_vec and bfd_efi_app_ia32_vec for i386/FreeBSD.
534 (targ64_selvecs): Set for i386/FreeBSD.
535 * elf-bfd.h (elf_backend_data): Add relocs_compatible.
536 (_bfd_elf_default_relocs_compatible): Declare.
537 (_bfd_elf_relocs_compatible): Declare.
538 * elfxx-target.h (elf_backend_relocs_compatible): Define.
539 (elfNN_bed): Init new relocs_compatible field.
540 * elflink.c (_bfd_elf_default_relocs_compatible): New function.
541 (_bfd_elf_relocs_compatible): New function.
542 (elf_link_add_object_symbols): Call bed->relocs_compatible.
543 * elf32-i386.c (elf_backend_relocs_compatible): Define.
544 * elf64-alpha.c: Likewise.
545 * elf64-sparc.c: Likewise.
546 * elf64-x86-64.c: Likewise.
547
ae326da8
BW
5482007-10-16 Bob Wilson <bob.wilson@acm.org>
549
550 * elf32-xtensa.c (relax_section): Check for a reference to a discarded
551 DWARF section and anticipate its replacement with the kept section.
552
a3ef2d63
BW
5532007-10-16 Bob Wilson <bob.wilson@acm.org>
554
555 * elf32-xtensa.c (elf_xtensa_discard_info_for_section): Remove
556 unnecessary size variables. Set sec->rawsize.
557 (relax_section, relax_property_section): Likewise.
558
73c5c7a8
BW
5592007-10-16 Bob Wilson <bob.wilson@acm.org>
560
561 * section.c (struct bfd_section): Clarify comment for rawsize field.
562 * bfd-in2.h: Regenerate.
563
1dd2625f
BW
5642007-10-16 Bob Wilson <bob.wilson@acm.org>
565
566 * elflink.c (_bfd_elf_check_kept_section): Use the section rawsize
567 values if they are set.
568
8bc9c892
NC
5692007-10-16 Nick Clifton <nickc@redhat.com>
570
571 PR 5146
572 * configure.in (AC_CHECK_HEADERS): Add alloca.h
573 * configure: Regenerate.
574 * config.in: Regenerate.
575 * som.c: Replace alloca-conf.h inclusion with code recommended in
576 autoconf documentation.
577 * elf64-hppa.c: Likewise.
578
504b7d20
NC
5792007-10-16 Nick Clifton <nickc@redhat.com>
580
581 * configure.in (--enable-elf-stt-common): New configure
582 option. If enabled then the tools can generate symbols with
583 the ELF STT_COMMON type.
584 * config.in: Regenerate.
585 * configure: Regenerate.
586 * elf.c (swap_out_syms): If USE_STT_COMMON is defined then set
587 the type of emitted common symbols to STT_COMMON.
588 * elfcode.h (elf_slurp_symbol_table): Accept STT_COMMON symbol
589 types.
590
b1657152
AM
5912007-10-15 Alan Modra <amodra@bigpond.net.au>
592
593 * coff-arm.c (arm_emit_base_file_entry): Check fwrite return value.
594 Return status. Adjust callers.
595 * coff-mcore.c (mcore_emit_base_file_entry): Likewise.
596 * coff-ppc.c (write_base_file_entry): New function.
597 (coff_ppc_relocate_section): Use it.
598 * elf32-arm.c (find_thumb_glue): Check asprintf return status.
599 (find_arm_glue): Likewise.
600 * vms-misc.c (_bfd_vms_output_flush): Check fwrite return value.
601
4b93929b
NC
6022007-10-12 Nick Clifton <nickc@redhat.com>
603
604 PR 5160
605 * elflink.c (eval_symbol): Remove bufsz variable and use
606 sizeof(symbuf) where necessary.
607
e9deb29d
NC
6082007-10-12 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
609
610 * elf32-cr16.c (elf32_cr16_relax_section): Fix condition check typo.
611
720199d6
DJ
6122007-10-12 Daniel Jacobowitz <dan@codesourcery.com>
613
614 * elfxx-mips.c (mips_elf_sort_hash_table_f): Handle forced
615 local symbols specially.
616 (mips_elf_set_global_got_offset): Skip forced local symbols.
617
971d4640
AM
6182007-10-12 Alan Modra <amodra@bigpond.net.au>
619
620 * elf.c (elfcore_grok_prxfpreg): Fix comment typo.
621
f210dcff
L
6222007-10-10 H.J. Lu <hongjiu.lu@intel.com>
623
624 * elf.c (get_program_header_size): Always add a PT_GNU_RELRO
625 segment for -z relro.
626 (_bfd_elf_map_sections_to_segments): Make a PT_GNU_RELRO
627 segment only when needed.
628
9b7f5d20
BW
6292007-10-05 Bob Wilson <bob.wilson@acm.org>
630
631 * elf32-xtensa.c (relax_section): Call pin_internal_relocs when
632 changing a relocation's offset. Adjust call to translate_reloc. Do
633 not add a fix record for a DIFF reloc. For other relocs, only add a
634 fix record if the translated target is in a different object file;
635 otherwise, just update the relocation. Call pin_internal_relocs when
636 updating a reloc but not when adding a fix record.
637 (translate_reloc): Get the target section from a new argument, not
638 from the relocation. Change check for relaxable sections to an
639 assertion. Compute separate offset adjustments for the base symbol
640 and the addend, and set the new relocation's addend correctly. Return
641 the new target section.
642
768a5a74
BW
6432007-10-05 Bob Wilson <bob.wilson@acm.org>
644
645 * elf32-xtensa.c (elf_xtensa_relocate_section): Remove updates of
646 r_type and howto after calling do_fix_for_relocateable_link and
647 do_fix_for_final_link.
648
03669f1c
BW
6492007-10-05 Bob Wilson <bob.wilson@acm.org>
650
651 * elf32-xtensa.c (removed_by_actions): New.
652 (offset_with_removed_text): Reimplement using removed_by_actions.
653 (offset_with_removed_text_before_fill): Delete.
654 (relax_property_section): Use removed_by_actions. Rearrange logic.
655 (relax_section_symbols): Likewise.
656
0f5f1638
BW
6572007-10-04 Bob Wilson <bob.wilson@acm.org>
658
659 * elf32-xtensa.c (reloc_bfd_fix_struct): Delete target_abfd field.
660 (reloc_bfd_fix_init): Remove target_abfd argument.
661 (relax_section, move_literal): Adjust calls to reloc_bfd_fix_init.
662
1f7a4e42
NC
6632007-10-04 Nick Clifton <nickc@redhat.com>
664
665 PR linker/5099
666 * elf64-x86-64.c (elf64_x86_64_check_relocs): Add missing
667 apostrophe to error message.
668
7fac7ff4
NC
6692007-10-01 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
670
671 * elf32-cr16.c: Fixed DISP8, DISP20 and IMM20 relocations at
672 final relocation phase.
673 Added the below relaxations: IMM32 -> IMM20/IM16 -> IMM4.
674 * reloc.c: Added 3 new relocations: R_CR16_SWITCH8,
675 R_CR16_SWITCH16, R_CR16_SWITCH32.
676 * libbfd.h: Regenerate.
677 * bfd-in2.h: Regenerate.
678
a0c8462f
AM
6792007-09-30 Alan Modra <amodra@bigpond.net.au>
680
681 * elflink.c: Formatting.
682
0f02bbd9
AM
6832007-09-29 Alan Modra <amodra@bigpond.net.au>
684
685 * elflink.c (resolve_symbol): Handle symbols in SEC_MERGE
686 sections. Don't test symbol st_shndx. Don't bother with
687 bfd_link_hash_common symbols. Print longs rather than ints
688 in debug messages.
689 (eval_symbol): Replace "sym" and "advanced" params with "symp".
690 Replace "addr" and "section_offset" params with "dot". Don't
691 cast bfd_vma values to signed, cast them to bfd_signed_vma.
692 (bfd_elf_perform_complex_relocation): Delete "output_bfd", "info",
693 "local_syms" and "local_sections" params. Add "relocation".
694 Delete code calculating relocation value.
695 (evaluate_complex_relocation_symbols): Delete function. Fold into..
696 (elf_link_input_bfd): ..existing code examining relocs.
697 * elf-bfd.h (bfd_elf_perform_complex_relocation): Update prototype.
698 * elf32-mep.c (mep_elf_check_relocs): Delete function.
699 (mep_elf_gc_sweep_hook, mep_elf_gc_mark_hook): Likewise.
700 (mep_elf_object_p): Don't set elf_bad_symtab.
701 (elf_backend_check_relocs): Don't define.
702 (elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook): Likewise.
703 (elf_backend_can_gc_sections, USE_RELA): Likwise.
704 (mep_elf_relocate_section): Move bfd_elf_perform_complex_relocation
705 call after we have calculated reloc value. Delete local sym
706 debug code. Use RELOC_FOR_GLOBAL_SYMBOL. Delete addend
707 adjusting code..
708 (elf_backend_rela_normal): ..instead define this.
709
5582a088
AM
7102007-09-28 Alan Modra <amodra@bigpond.net.au>
711
712 * elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
713 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
714 * elf32-avr.c (elf32_avr_check_relocs): Likewise.
715 * elf32-bfin.c (bfinfdpic_check_relocs): Likewise.
716 * elf32-cris.c (cris_elf_check_relocs): Likewise.
717 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
718 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
719 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
720 * elf32-frv.c (_frvfdpic_check_discarded_relocs): Likewise.
721 (elf32_frv_check_relocs): Likewise.
722 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
723 * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
724 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
725 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
726 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
727 * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
728 * elf32-mt.c (mt_elf_check_relocs): Likewise.
729 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
730 * elf32-sh.c (sh_elf_check_relocs): Likewise.
731 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
732 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
733 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
734 (score_elf_local_relocation_p): Likewise.
735 (_bfd_score_elf_relocate_section): Likewise.
736 (score_elf_final_link_relocate): Likewise.
737
d17e0c6e
JB
7382007-09-26 Jan Beulich <jbeulich@novell.com>
739
740 * elf32-i386.c (elf_i386_check_relocs): Revert NULL pointer
741 check for R_386_GNU_VTINHERIT.
742 * elf-m10300.c (mn10300_elf_check_relocs): Check for NULL
743 pointer for R_xxx_GNU_VTENTRY.
744 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
745 * elf32-bfin.c (bfin_check_relocs): Likewise.
746 (bfinfdpic_check_relocs): Likewise.
747 * elf32-cris.c (cris_elf_check_relocs): Likewise.
748 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
749 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
750 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
751 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
752 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
753 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
754 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
755 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
756 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
757 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
758 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
759 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
760 * elf32-s390.c (elf_s390_check_relocs): Likewise.
761 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
762 * elf32-sh.c (sh_elf_check_relocs): Likewise.
763 * elf32-v850.c (v850_elf_check_relocs): Likewise.
764 * elf32-vax.c (elf_vax_check_relocs): Likewise.
765 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
766 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
767 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
768 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
769 * elf64-s390.c (elf_s390_check_relocs): Likewise.
770 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
771 * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
772 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
773 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
774
8977835c
AM
7752007-09-26 Alan Modra <amodra@bigpond.net.au>
776
777 * elflink.c (set_symbol_value): Add isymbuf and locsymcount
778 params. Change symidx to a size_t. Don't access past end
779 of symbol buffer.
780 (resolve_symbol): Add isymbuf param and use instead of
781 finfo->internal_syms.
782 (eval_symbol, evaluate_complex_relocation_symbols): Likewise.
783 (elf_link_input_bfd): Don't read symbols specially for
784 evaluate_complex_relocation_symbols.
785
06dcabb0
NC
7862007-09-26 Tristan Gingold <gingold@adacore.com>
787
788 * som.c (som_get_reloc_upper_bound): If there are no relocs return
789 enough space to hold a NULL pointer.
790
2e5b2d74
AM
7912007-09-26 Alan Modra <amodra@bigpond.net.au>
792
793 * elf64-ppc.c (ppc_build_one_stub): Correct rel_hdr.sh_size.
794
98e89a7d
AM
7952007-09-25 Alan Modra <amodra@bigpond.net.au>
796
2cb5950e
AM
797 * elf32-spu.c (struct spu_link_hash_table): Add ovly_load_r_symndx.
798 (spu_elf_size_stubs): Count stub relocs.
799 (write_one_stub): Emit relocs on overlay call stubs.
800
98e89a7d
AM
801 * elf32-spu.c (struct spu_link_hash_table): Add "stubs".
802 (spu_elf_link_hash_table_create): Init new field.
803 (spu_elf_size_stubs): Store sorted stub syms in new htab field
804 rather than local var.
805 (spu_elf_build_stubs): Iterate over htab stubs rather than
806 hash traversal.
807 (struct stubarr): Delete.
808 (allocate_spuear_stubs, populate_stubs, write_one_stub): Adjust.
809
e970b90a
DJ
8102007-09-24 Daniel Jacobowitz <dan@codesourcery.com>
811
812 * elf.c (assign_file_positions_for_load_sections): Trust
813 p_align_valid.
814 (copy_elf_program_header): Copy PT_NULL segments.
815
fad9eaf0
AM
8162007-09-24 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
817
818 * elf32-spu.c (is_indirect_branch): New function.
819 (find_function_stack_adjust): End scan on hitting indirect branch.
820 (sum_stack): Cast %v arg to correct type.
821
10569aeb
L
8222007-09-21 H.J. Lu <hongjiu.lu@intel.com>
823
824 * Makefile.am: Run "make dep-am".
825 * Makefile.in: Regenerated.
826
4ab20029
NC
8272007-09-21 Doug Kwan <dougkwan@google.com>
828
829 * Makefile.am (BFD32_LIBS): Add arange-set.lo.
830 (BFD32_LIBS_CFILES): Add arange-set.c.
831 (SOURCE_HFILES): Add arange-set.h
832 (dwarf2.lo): Add dependency upon arange-set.h.
833 (arange-set.lo): New target.
834 * Makefile.in: Regenerate.
835 * arange-set.c: New file.
836 * arange-set.h: New file.
837 * dwarf2.c: Include arange-set.h.
838 (struct dwarf2_debug) Add new fields comp_unit_count and
839 comp_unit_arange_set.
840 (struct comp_unit) Replace field arange with a new field arange_set.
841 (dwarf2_arange_set_allocate, dwarf2_arange_set_deallocate,
842 dwarf2_combine_arange_value, dwarf2_arange_set_new,
843 dwarf2_arange_set_with_value_new, dwarf2_comp_unit_arange_add): New
844 functions to utilize arange set in dwarf2.c.
845 (arange_add): Formatting change for a line longer than 80 characters.
846 (decode_line_info): Replace call target arange_add with
847 dwarf2_comp_unit_arange_add.
848 (read_rangelist_insert_arange_list,
849 read_rangelist_comp_unit_arange_add): New functions used as callbacks
850 for read_rangelist.
851 (read_rangelist): Change interface to accept a callback and data to
852 allow caller to select the action peformed on a new range list read.
853 (scan_unit_for_symbols): Use new interface of read_rangelist.
fed590bb
AM
854 (parse_comp_unit): Create an arange set for each new comp unit.
855 Use new interface of read_rangelist. Replace call to arange_add
856 with that to dwarf2_comp_unit_arange_add.
4ab20029
NC
857 (comp_unit_contains_address): Replace sequential search with a call to
858 arange_set_lookup_address, which can handles large set efficiently.
859 (stash_copy_local_aranges, stash_maybe_enable_arange_set,
860 stash_find_nearest_line_fast): New functions maintaining and using a
861 valued global arange set for all compilation units to speed up
862 bfd_dwarf2_find_nearest_line.
863 (find_line): Use global arange set. Replace sequential search over all
864 compilation units with a call to stash_find_nearest_line_fast. Add
865 book keeping to count number of compilation units. Replace empty
866 arange list test with a call to arange_set_empty_p.
867
6119d252
NC
8682007-09-21 Olivier Hainque <hainque@adacore.com>
869 Tristan Gingold <gingold@adacore.com>
870
871 * syms.c (_bfd_stab_section_find_nearest_line): Look at the
872 specific SOM sections for stabs if the regular ones are not found.
873 * som.h (struct somdata): Add a line_info field, to be used by
874 som_find_nearest_line.
875 * som.c (som_find_nearest_line): Implement using the bfd stabs
876 function above.
877
b55fd4d4
DJ
8782007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
879
880 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make sure .got
881 will be output.
882
a69898aa
AM
8832007-09-19 Alan Modra <amodra@bigpond.net.au>
884 Doug Kwan <dougkwan@google.com>
885
886 * bfd-in.h (bfd_hash_insert): Declare.
887 * bfd-in2.h: Regenerate.
888 * hash.c (bfd_hash_insert): New function. Split out from..
889 (bfd_hash_lookup): ..here.
890 * merge.c (sec_merge_hash_lookup): Use bfd_hash_insert.
891
14b1c01e
AM
8922007-09-18 Alan Modra <amodra@bigpond.net.au>
893
894 * elf.c (bfd_section_from_shdr): Check bfd_alloc return.
895 (elfcore_write_note): Check realloc return.
896 * elflink.c (_bfd_elf_link_find_version_dependencies): Check
897 bfd_zalloc return.
898 (_bfd_elf_link_assign_sym_version): Check bfd_malloc return.
899 (elf_link_add_object_symbols): Likewise.
900 (struct hash_codes_info): New.
901 (elf_collect_hash_codes): Return bfd_malloc error.
902 (struct collect_gnu_hash_codes): Add "error".
903 (elf_collect_gnu_hash_codes): Return bfd_malloc error.
904 (bfd_elf_size_dynamic_sections): Check return status of
905 _bfd_elf_link_find_version_dependencies.
906 (bfd_elf_size_dynsym_hash_dynstr): Adjust for elf_collect_hash_codes
907 and elf_collect_gnu_hash_codes changes.
908 (elf_sym_name_compare): Formatting.
909 (elf_fixup_link_order): Use bfd_malloc, not xmalloc.
910
b10a8ae0
L
9112007-09-17 H.J. Lu <hongjiu.lu@intel.com>
912
913 PR binutils/3281
914 PR binutils/5037
915 * elf-bfd.h (elf_obj_tdata): Remove relro.
916
917 * elf.c (get_program_header_size): Check info->relro instead
918 of elf_tdata (abfd)->relro.
919 (_bfd_elf_map_sections_to_segments): Likewise.
920 (assign_file_positions_for_load_sections): Don't set
921 PT_GNU_RELRO segment alignment here.
922 (assign_file_positions_for_non_load_sections): Properly set up
923 PT_GNU_RELRO segment for copying executable/shared library.
924 (rewrite_elf_program_header): Remove PT_GNU_RELRO segment.
925 (copy_elf_program_header): Set p_size and p_size_valid fields for
926 PT_GNU_RELRO segment.
927
041a1845
NC
9282007-09-17 Nick Clifton <nickc@redhat.com>
929
930 * po/fi.po: New Finnish translation.
931 * po/es.po: Updated Spanish translation.
932 * configure.in (ALL_LINGUAS): Add fi.
933 * configure: Regenerate.
934 * po/bfd.pot: Regenerate.
935
0bc43230
AM
9362007-09-15 Nick Clifton <nickc@redhat.com>
937
938 * bfd.c (_bfd_default_error_handler): fflush stdout.
939
3ea6b9a5
AM
9402007-09-14 Alan Modra <amodra@bigpond.net.au>
941
942 * opncls.c (find_separate_debug_file): Ensure bfd_set_error has
943 been called on all error return paths.
944 (bfd_fill_in_gnu_debuglink_section): Use bfd_malloc, not malloc.
945 Clear padding after filename
946
5a1dcb7e
AM
9472007-09-14 Alan Modra <amodra@bigpond.net.au>
948
949 * format.c (bfd_check_format_matches): Record matching targets even
950 when "matching" is NULL to allow bfd_associated_vector matches.
951 Consolidate error return code. Consolidate ok return code. Always
952 restore original target and format on error.
953
bce5e5c9
AM
9542007-09-14 Alan Modra <amodra@bigpond.net.au>
955
956 * configure.in: Delete BFD_HOST_LONG_LONG and bfd checks for
957 long long. Partly revert 2007-07-12 change, so that
958 BFD_HOST_64BIT_LONG and BFD_HOST_64BIT_LONG_LONG are set
959 independent of "void *" size.
960 * configure: Regenerate.
961 * config.in: Regenerate.
962 * Makefile.in: Regenerate.
963
01a3c213
AM
9642007-09-12 Alan Modra <amodra@bigpond.net.au>
965
966 * elf-bfd.h (struct elf_backend_data): Delete elf_backend_sprintf_vma
967 and elf_backend_fprintf_vma.
968 (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
969 * elf.c (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
970 * elfxx-target.h (elf_backend_sprintf_vma): Don't define.
971 (elf_backend_fprintf_vma): Likewise.
972 (elfNN_bed): Don't init removed fields.
973 * bfd.c (is32bit): New function.
974 (bfd_sprintf_vma, bfd_fprintf_vma): Use the above.
975
8d100c32
KH
9762007-09-11 Nathan Sidwell <nathan@codesourcery.com>
977
978 * archures.c: Add bfd_mach_mcf_isa_c_nodiv,
979 bfd_mach_mcf_isa_c_nodiv_mac & bfd_mach_mcf_isa_c_nodiv_emac.
980 * ieee.c (ieee_write_processor): Update coldfire architecture
981 list.
982 * bfd-in2.h: Rebuilt.
983 * cpu-m68k.c (arch_info_struct): Add isa_c nodiv architectures.
984 (m68k_arch_features): Likewise.
985 * elf32-m68k.c (elf32_m68k_object_p): Add EF_M68K_CF_ISA_C_NODIV.
986 (elf32_m68k_print_private_bfd_data): Likewise.
987
2f629d23
JB
9882007-09-11 Jan Beulich <jbeulich@novell.com>
989
990 * elf64-i386.c (elf64_i386_tls_transition): Remove redundant 'const'.
991 * elf64-x86_64.c (elf64_x86_64_tls_transition): Likewise.
992
2b953679
AM
9932007-09-08 Alan Modra <amodra@bigpond.net.au>
994
995 * elf64-ppc.c (func_desc_adjust): When resolving undefined
996 references to dot-symbols, transfer def_regular and
997 def_dynamic from the descriptor symbol.
998
78b8434d
AM
9992007-09-08 Alan Modra <amodra@bigpond.net.au>
1000
1001 * config.bfd: Set want64 for spu-*-elf.
1002
98ece1b3
AM
10032007-09-08 Alan Modra <amodra@bigpond.net.au>
1004
1005 PR ld/2864, ld/5006
1006 * elf.c (special_sections): Comment typo.
1007 (elf_fake_sections): Force SHT_PROGBITS for sections that are
1008 SHT_NOBITS if BFD section flags say they have contents.
1009
5dff4664
MS
10102007-09-04 Michael Snyder <msnyder@access-company.com>
1011
1012 * elf32-bfin.c (howto_table): Cut and paste error?
1013 Name field of reloc is wrong.
1014
b427ea91
AM
10152007-09-04 Alan Modra <amodra@bigpond.net.au>
1016
1017 * elf32-spu.c (elf_howto_table): Formatting.
1018
aff90a5f
L
10192007-09-02 H.J. Lu <hongjiu.lu@intel.com>
1020
1021 PR ld/4986
1022 * dwarf2.c (new_line_sorts_after): Undo the last change.
1023 (add_line_info): Only keep the last entry with the same address
1024 and end sequence.
1025
39934745
L
10262007-08-31 H.J. Lu <hongjiu.lu@intel.com>
1027
1028 PR ld/4986
1029 * dwarf2.c (new_line_sorts_after): Also compare line number.
1030
3a4743fe
NC
10312007-08-31 Jesse Michael <jmichael@suse.de>
1032
1033 * mach-o.c (bfd_mach_o_make_bfd_section): Fix test for non
1034 zerofill sections.
1035
5c5d6806
BW
10362007-08-28 David Heine <dlheine@tensilica.com>
1037
1038 * elf32-xtensa.c (compute_ebb_actions): Update removed_bytes when
1039 narrowing instructions.
1040
7f6a71ff 10412007-08-28 Mark Shinwell <shinwell@codesourcery.com>
39934745 1042 Joseph Myers <joseph@codesourcery.com>
7f6a71ff
JM
1043
1044 * elf32-arm.c (elf32_arm_compare_mapping): Compare first on vma,
1045 then on type.
1046
0b3e17e9
NC
10472007-08-28 Robert Sebastian Gerus <arachnist@gmail.com>
1048
1049 * config.bfd: Add support for i[3-7]86-*-dragonfly*.
1050 * configure.in: Likewise.
1051 * configure: Regenerate.
1052
b15fa79e
AM
10532007-08-25 Ulrich Weigand <uweigand@de.ibm.com>
1054 Alan Modra <amodra@bigpond.net.au>
1055
1056 * elf.c (elfcore_grok_spu_note): New function.
1057 (elf_parse_notes): Call it.
1058
534a31f6
L
10592007-08-24 H.J. Lu <hongjiu.lu@intel.com>
1060
1061 * elf64-x86-64.c (elf64_x86_64_relocate_section): Adjust
1062 indentation.
1063
4a6636fb
PA
10642007-08-24 Pedro Alves <pedro_alves@portugalmail.pt>
1065
1066 * elf.c (elfcore_grok_win32pstatus): Remove HAVE_WIN32_PSTATUS_T
1067 guard. Make it host independent.
1068 (elfcore_grok_note): Remove HAVE_WIN32_PSTATUS_T guard around
1069 NT_WIN32PSTATUS.
1070
718175fa
JK
10712007-08-24 Jan Kratochvil <jan.kratochvil@redhat.com>
1072
82fc7765
JK
1073 * elf-bfd.h (struct elf_obj_tdata): New BUILD_ID_SIZE, BUILD_ID.
1074 * elf.c (elfcore_read_notes): Split to ...
718175fa
JK
1075 (elf_read_notes) ... here ...
1076 (elf_parse_notes): ... and here. Check `bfd_get_format (abfd)' with
1077 the former subfunctions called only for BFD_CORE.
1078 Call ELFOBJ_GROK_GNU_NOTE for BFD_OBJECT files with the owner "GNU".
1079 (_bfd_elf_make_section_from_shdr): Call ELF_PARSE_NOTES for SHT_NOTEs.
1080 (bfd_section_from_phdr): Update the call for renamed ELFCORE_READ_NOTES.
1081 (elfobj_grok_gnu_build_id, elfobj_grok_gnu_note): New functions.
1082 Code advisory: Roland McGrath
1083
f1187097
DJ
10842007-08-24 Daniel Jacobowitz <dan@codesourcery.com>
1085
1086 * elf64-mips.c (elf_backend_sign_extend_vma): Define.
1087
a30e5f5f
AM
10882007-08-24 Alan Modra <amodra@bigpond.net.au>
1089
1090 * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Warning fix.
1091
a351bca6
L
10922007-08-23 H.J. Lu <hongjiu.lu@intel.com>
1093
1094 * Makefile.am: Run "make dep-am".
1095 * Makefile.in: Regenerated.
1096
142411ca
L
10972007-08-23 H.J. Lu <hongjiu.lu@intel.com>
1098
1099 * elf32-i386.c: Include "bfd_stdint.h".
1100 (elf_i386_rtype_to_howto): New function.
1101 (elf_i386_info_to_howto_rel): Use it.
1102 (x86_64_opcode16): New union type.
1103 (elf_i386_check_tls_transition): New function.
1104 (elf_i386_tls_transition): Updated to check transition and
1105 issue an error if a transition isn't supported.
1106 (elf_i386_check_relocs): Return FALSE if
1107 elf_i386_tls_transition returns FALSE.
1108 (elf_i386_gc_sweep_hook): Likewise.
1109 (elf_i386_relocate_section): Likewise. Remove BFD_ASSERT
1110 on TLS transitions.
1111
1112 * elf64-x86-64.c: Include "bfd_stdint.h".
1113 (x86_64_opcode16): New union type.
1114 (x86_64_opcode32): Likewise.
1115 (elf64_x86_64_check_tls_transition): New function.
1116 (elf64_x86_64_tls_transition): Updated to check transition and
1117 issue an error if a transition isn't supported.
1118 (elf64_x86_64_check_relocs): Return FALSE if
1119 elf64_x86_64_tls_transition returns FALSE.
1120 (elf64_x86_64_gc_sweep_hook): Likewise.
1121 (elf64_x86_64_relocate_section): Likewise. Remove BFD_ASSERT
1122 on TLS transitions.
1123
eae50df2
L
11242007-08-22 H.J. Lu <hongjiu.lu@intel.com>
1125
1126 * elfxx-ia64.c: Convert to ISO C90 prototypes.
1127 (elfNN_hpux_backend_section_from_bfd_section): Make it static.
1128
9a2e389a
L
11292007-08-22 H.J. Lu <hongjiu.lu@intel.com>
1130
1131 * elf64-x86-64.c: Remove trailing whitespace.
1132 * elfxx-ia64.c: Likewise.
1133
2f3bf80a
L
11342007-08-21 H.J. Lu <hongjiu.lu@intel.com>
1135
1136 * elf32-i386.c (elf_i386_tls_transition): Accept a pointer
1137 to ELF hash entry instead of an integer for local test.
1138 (elf_i386_check_relocs): Updated.
1139 (elf_i386_gc_sweep_hook): Likewise.
1140 (elf_i386_relocate_section): Likewise.
1141
1142 * elf64-x86-64.c (elf64_x86_64_tls_transition): Accept a
1143 pointer to ELF hash entry instead of an integer for local
1144 test.
1145 (elf64_x86_64_check_relocs): Updated.
1146 (elf64_x86_64_gc_sweep_hook): Likewise.
1147 (elf64_x86_64_relocate_section): Likewise.
1148
3bfa9139
L
11492007-08-20 H.J. Lu <hongjiu.lu@intel.com>
1150
1151 * elf32-i386.c (elf_i386_tls_transition): Break long line.
1152 * elf64-x86-64.c (elf64_x86_64_tls_transition): Likewise.
1153
19ec0de7
JK
11542007-08-20 Jan Kratochvil <jan.kratochvil@redhat.com>
1155
1156 * elfxx-target.h [ELF_COMMONPAGESIZE && ELF_MAXPAGESIZE]
1157 (ELF_MINPAGESIZE): Fixed its size guess. Sanity checked its size.
1158 (ELF_COMMONPAGESIZE, ELF_MAXPAGESIZE): Sanity checked their size.
1159
75ea2736
NC
11602007-08-20 Nick Clifton <nickc@redhat.com>
1161
1162 * elflink.c (elf_fixup_link_order): Rewrite conversion of
1163 s->alignment_power into an offset mask in order to avoid a gcc
1164 error message.
1165
7e976ae4
JJ
11662007-08-17 Jakub Jelinek <jakub@redhat.com>
1167
1168 * config.bfd: Handle sparcv*-*-linux-* the same as sparc-*-linux-*.
1169 Change sparc64-*-linux-* to sparc64*-*-linux-*.
1170
e9f27433
AM
11712007-08-17 Alan Modra <amodra@bigpond.net.au>
1172
1173 * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
1174
2b05f1b7
L
11752007-08-16 H.J. Lu <hongjiu.lu@intel.com>
1176
1177 * elf.c: Revert last change.
1178
94b11780
L
11792007-08-16 H.J. Lu <hongjiu.lu@intel.com>
1180
1181 * elf.c (get_segment_type): Change PT_GNU_STACK to PT_GNU_ATTR.
1182 (bfd_section_from_phdr): Likewise.
1183 (get_program_header_size): Likewise. Add a PT_GNU_ATTR segment
1184 if there is an attribute section.
1185 (_bfd_elf_map_sections_to_segments): Likewise.
1186 (IS_SECTION_IN_INPUT_SEGMENT): Likewise.
1187
a3fadc9a
L
11882007-08-14 H.J. Lu <hongjiu.lu@intel.com>
1189
1190 PR ld/4918
1191 * elf32-i386.c (elf_i386_relocate_section): Allow R_386_PC32
1192 on ___tls_get_addr for GD->LE/LD->LE transitions when not
1193 building shared library.
1194
1195 * elf64-x86-64.c (elf64_x86_64_relocate_section): Allow
1196 R_X86_64_PC32 on __tls_get_addr for GD->LE/LD->LE transitions
1197 when not building shared library.
1198
3fec76aa
JK
11992007-08-14 Jan Kratochvil <jan.kratochvil@redhat.com>
1200
1201 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): LOADBASE is now
1202 initialized only on the first PT_LOAD. New variable LOADBASE_SET.
1203 Removed PF_R checking for IA-64 vDSOs as redundant now.
1204 Code advisory: Roland McGrath
1205
8275b357
RS
12062007-08-13 Richard Sandiford <richard@codesourcery.com>
1207
1208 * elfxx-mips.c (mips_elf_link_hash_table): Add computed_got_sizes.
1209 (mips_elf_record_global_got_symbol): Increment local_gotno for
1210 each forced-local symbol.
1211 (_bfd_mips_elf_check_relocs): Pass forced-local call symbols to
1212 mips_elf_record_global_got_symbol for VxWorks too.
1213 (_bfd_mips_elf_always_size_sections): Set computed_got_sizes
1214 to true after computing the GOT size.
1215 (_bfd_mips_elf_hide_symbol): Increase local_gotno whenever
1216 got.offset == 1. Only adjust global_gotno if computed_got_sizes.
1217 For VxWorks, add a local entry when hiding a symbol that needs a
1218 plt but has not been marked as needing a global got entry.
1219 (_bfd_mips_elf_link_hash_table_create): Set computed_got_sizes to
1220 false.
1221
649aeae3
DJ
12222007-08-12 Daniel Jacobowitz <dan@codesourcery.com>
1223
1224 * coffgen.c (coff_get_normalized_symtab): Correct cast.
1225
3dea8fca
AM
12262007-08-13 Alan Modra <amodra@bigpond.net.au>
1227
1228 * elf.c (elf_modify_segment_map): Add remove_empty_load param.
1229 Don't remove empty PT_LOAD header if false.
1230 (_bfd_elf_map_sections_to_segments): If user phdrs, pass false
1231 to elf_modify_segment_map.
1232 (assign_file_positions_for_load_sections): Pass false to
1233 elf_modify_segment_map.
1234
ac2df442
AM
12352007-08-13 Alan Modra <amodra@bigpond.net.au>
1236
1237 * elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define.
1238 Update stub comments.
1239 (build_plt_stub): Build two variants, one without "addis".
1240 (ppc_build_one_stub): Build stubs without "addis" if possible.
1241 (ppc_size_one_stub): Size new stubs.
1242
2f964f43
RS
12432007-08-11 Richard Sandiford <richard@codesourcery.com>
1244
1245 * config.bfd (sh-*-vxworks): Define targ_underscore to "yes".
1246
6b8f0fd5
MS
12472007-08-09 Michael Snyder <msnyder@access-company.com>
1248
1249 * aoutx.h (aout_get_external_symbols): Return if count is zero.
1250
6d33f217
L
12512007-08-09 H.J. Lu <hongjiu.lu@intel.com>
1252
1253 PR ld/4909
1254 * elf.c (print_segment_map): New function.
1255 (assign_file_positions_for_load_sections): Call print_segment_map
1256 when a section can't be allocated in segment.
1257
c309eac2
JK
12582007-08-09 Jan Kratochvil <jan.kratochvil@redhat.com>
1259
1260 * opncls.c (bfd_openr_iovec): Fix the OPEN parameter macro expansion.
1261
e6902efc
NC
12622007-08-07 Nick Clifton <nickc@redhat.com>
1263
1264 * po/bfd.pot: Updated template.
1265 * po/BLD-POTFILES.in: Regenerate.
1266
d5191d0c
AM
12672007-08-07 Alan Modra <amodra@bigpond.net.au>
1268
1269 * elf.c: (_bfd_elf_make_section_from_phdr): Properly handle
1270 bss segments.
1271
5eda1c47
DJ
12722007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
1273
1274 * Makefile.am (BUILD_HFILES): Clean bfd_stdint.h.
1275 * Makefile.in: Regenerated.
1276
be118e79
DJ
12772007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
1278
1279 * configure.in: Update version to 2.18.50.
1280 * configure: Regenerated.
1281
bd97cb95
DJ
12822007-08-06 Paul Brook <paul@codesourcery.com>
1283
1284 * elf32-arm.c (elf32_arm_link_hash_entry): Add
1285 plt_maybe_thumb_refcount.
1286 (elf32_arm_link_hash_newfunc): Set plt_maybe_thumb_refcount.
1287 (elf32_arm_copy_indirect_symbol): Ditto.
1288 (elf32_arm_adjust_dynamic_symbol): Ditto.
1289 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_THM_JUMP24.
1290 (arm_add_to_rel): Ditto.
1291 (elf32_arm_final_link_relocate): Merge R_ARM_THM_JUMP24 with
1292 R_ARM_THM_CALL. Handle R_ARM_THM_JUMP19 against a PLT stub.
1293 (elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
1294 for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
1295 (elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
1296 and R_ARM_THM_JUMP19.
1297 (allocate_dynrelocs): Use plt_maybe_thumb_refcount.
1298 (elf32_arm_finish_dynamic_symbol): Ditto.
1299 (elf32_arm_output_plt_map): Ditto.
1300
c981028a
DJ
13012007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
1302
1303 * elf.c (rewrite_elf_program_header): Handle sections not sorted
1304 by address.
1305 (copy_elf_program_header): Likewise.
1306
f7231afc
L
13072007-08-04 H.J. Lu <hongjiu.lu@intel.com>
1308
1309 * elf-bfd.h (xvec_get_elf_backend_data): Add const.
1310
1311 * elfcode.h (elf_object_p): Use xvec_get_elf_backend_data.
1312 * elfcore.h (elf_core_file_p): Likewise.
1313
bd33be6e
L
13142007-08-02 H.J. Lu <hongjiu.lu@intel.com>
1315
1316 * coffcode.h (ALIGN_SET): Removed.
1317 (ELIFALIGN_SET): Likewise.
1318 (coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES,
1319 IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES,
1320 IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES,
1321 IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES.
1322
dcf6c779
MS
13232007-08-01 Michael Snyder <msnyder@access-company.com>
1324
9b0ec667
MS
1325 * vms-tir.c (new_section): Fix cut and paste error.
1326
20c6e70e
MS
1327 * aoutx.h (aout_link_add_symbols): Return if count is zero.
1328
dcf6c779
MS
1329 * elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
1330 pointer must be non-null.
1331
e708816d
NC
13322007-08-01 Tristan Gingold <gingold@adacore.com>
1333
1334 * coffcode.h (coff_sort_func_alent): New function.
1335 (coff_slurp_line_table): Sort line table if not already sorted.
1336
55b581a6
JJ
13372007-08-01 Jakub Jelinek <jakub@redhat.com>
1338
1339 * elf.c (_bfd_elf_map_sections_to_segments): Work around buggy
1340 GCC 3.4.x warning.
1341
ad756e3f
AM
13422007-08-01 Alan Modra <amodra@bigpond.net.au>
1343
1344 * aoutx.h (swap_ext_reloc_in): Set howto to NULL for unknown
1345 r_type.
1346 (swap_std_reloc_in): Likewise.
1347 (aout_link_input_section_std): Likewise. Return with an error
1348 on unexpected relocation type.
1349 (aout_link_input_section_ext): Likewise.
1350
f6e688f7
AM
13512007-08-01 Alan Modra <amodra@bigpond.net.au>
1352
1353 PR4694
1354 * aoutx.h (final_link): Write a zero in first word of
1355 stringtab if no symbols rather than corrupting last byte
1356 of text/data.
1357
1c5265b5
JJ
13582007-07-31 Jakub Jelinek <jakub@redhat.com>
1359
1360 * elf.c (get_program_header_size): Adjacent loadable .note*
1361 sections need just one PT_NOTE segment.
1362 (_bfd_elf_map_sections_to_segments): Likewise.
1363
9ee2139f
MS
13642007-07-30 Michael Snyder <msnyder@access-company.com>
1365
1366 * coffgen.c (_bfd_coff_read_internal_relocs): Revert change of
1367 2007-07-26. Buffer still in use, can't be freed.
1368
c6aa130f
MS
13692007-07-27 Michael Snyder <msnyder@access-company.com>
1370
d63388ff
MS
1371 * cofflink.c (coff_link_add_symbols): Return if count is zero.
1372
50a39e97
MS
1373 * coff-i386.c (coff_i386_rtype_to_howto): Off by one error.
1374
87b32780
MS
1375 * aoutx.h (slurp_symbol_table): Return if count == 0.
1376
9d7038d3
MS
1377 * coffgen.c (_bfd_coff_read_internal_relocs): Return if count is zero.
1378
c6aa130f
MS
1379 * elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
1380
170bfeb9
L
13812007-07-27 H.J. Lu <hongjiu.lu@intel.com>
1382
1383 * config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
1384
507f5898
MS
13852007-07-26 Michael Snyder <msnyder@access-company.com>
1386
1387 * coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
a6626e8c
MS
1388
1389 * linker.c (bfd_section_already_linked_table_insert): Change
1390 return type from void to boolean. Return FALSE on failure.
1391 (_bfd_generic_section_already_linked): Test return value of
1392 bfd_section_already_linked_table_insert, call fatal on error.
1393
1394 * elflink.c (_bfd_elf_section_already_linked): Test return value
1395 of bfd_section_already_linked_table_insert, call fatal on error.
1396
1397 * libbfd-in.h (bfd_section_already_linked_table_insert): Update
1398 return type to bfd_boolean.
1399
1400 * libbfd.h: Regenerate.
1401
36e44abd
AN
14022007-07-26 Adam Nemet <anemet@caviumnetworks.com>
1403
1404 * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
1405 bfd_slurp_armap): Improve function comment.
1406
b7fd5ce1
MS
14072007-07-26 Michael Snyder <msnyder@access-company.com>
1408
2d4f3e92
MS
1409 * linker.c (already_linked_newfunc): Check for NULL return from
1410 bfd_hash_allocate.
1411
ac38308c
MS
1412 * coffgen.c (fixup_symbol_value): Guard against null;
1413 bfd_is_com_section will dereference the section pointer.
1414
c82a7c57
MS
1415 * syms.c (bfd_decode_symclass): Guard against NULL, since
1416 bfd_is_com_section dereferences the pointer.
1417
3d7b34d8
MS
1418 * srec.c (srec_scan): Check for EOF (critical because return value
1419 will be used as array index).
1420
44c62d9e
MS
1421 * coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
1422 are not to be cached, free the temporary buffer.
1423
078c4bfc
MS
1424 * aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
1425 or count == zero.
1426
814b5378
MS
1427 * tekhex.c (first_phase): Check return value for null.
1428
b7fd5ce1
MS
1429 * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
1430 pointer increment.
1431
b9da616a
AM
14322007-07-26 Alan Modra <amodra@bigpond.net.au>
1433
33774f08
AM
1434 * elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
1435 check on dynobj. Remove bed shadow.
1436
e62071b6
AM
1437 * srec.c (srec_get_section_contents): Return immediately on
1438 count zero. Check that offset and count are within section.
1439 * libbfd.c (_bfd_generic_get_section_contents): Check that
1440 offset + count does not overflow.
1441
b9da616a
AM
1442 * srec.c (srec_canonicalize_symtab): Don't alloc when symcount
1443 is zero. Correct return value on error.
1444 * mmo.c (mmo_canonicalize_symtab): Likewise.
1445 * binary.c (binary_canonicalize_symtab) Correct return on error.
1446
c2c96631
TS
14472007-07-26 Thiemo Seufer <ths@mips.com>
1448
1449 * bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
1450
d4947150
AM
14512007-07-26 Alan Modra <amodra@bigpond.net.au>
1452
1453 * reloc.c (bfd_generic_get_relocated_section_contents): Avoid
1454 bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
1455 says there are no relocs.
1456
bd210d54 14572007-07-26 Doug Kwan <dougkwan@google.com>
d4947150 1458
bd210d54
NC
1459 Speed up bfd_dwarf2_find_line.
1460 * dwarf2.c (struct dwarf2_debug): Add new fields to support function
1461 and variable info hash tables. Add last_comp_unit, info_hash_count,
1462 funcinfo_hash_table, varinfo_hash_table, hash_units_head.
1463 (struct comp_unit): Add prev_unit, cached.
1464 (struct info_list_node, struct info_hash_entry,
1465 struct info_hash_table): New.
1466 (info_hash_table_newfunc, create_info_hash_table,
1467 insert_info_hash_table, lookup_info_hash_table): New functions
1468 implementing function and variable info hash tables.
1469 (scan_unit_for_symbols): Add checks to make sure hash tables are
1470 consistent with compilation units.
1471 (comp_unit_maybe_decode_line_info): New function.
1472 (comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
1473 (reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info,
1474 info_hash_lookup_funcinfo, info_hash_lookup_varinfo,
1475 stash_maybe_update_info_hash_table, stash_verify_info_hash_table,
1476 stash_maybe_enable_info_hash_tables, stash_find_line_fast): New
1477 functions. Make use of info hash tables to speed up
1478 bfd_dwarf2_find_line.
1479 (find_line): Use hash table for faster lookup if it is turned on.
1480 Also add code to maintain bi-directional link in comp units.
1481
353c5574
MS
14822007-07-25 Michael Snyder <msnyder@access-company.com>
1483
1484 * coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
1485 if size == 0; return and avoid possible null pointer issues.
1486
f08c429c
AM
14872007-07-25 Alan Modra <amodra@bigpond.net.au>
1488
1489 * linker.c (generic_link_add_symbol_list): Warning fix.
1490
d0f16d5e
MS
14912007-07-24 Michael Snyder <msnyder@access-company.com>
1492
f6eea5ae
MS
1493 * opncls.c (bfd_make_writable): Check return from bfd_malloc.
1494
d0f16d5e
MS
1495 * elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
1496 on bfd_malloc error rather than goto error_return.
1497
4d269e42
AM
14982007-07-24 Alan Modra <amodra@bigpond.net.au>
1499
1500 * elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
1501 _bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
1502 _bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
1503 _bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
1504 bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
1505 bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
1506 bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
1507 bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
1508 struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
1509 elf_sym_name_compare, elf_create_symbuf,
1510 bfd_elf_match_symbols_in_sections,
1511 _bfd_elf_match_sections_by_type): Move to here..
1512 * elf.c: ..from here.
1513
a26587ba
RS
15142007-07-23 Richard Sandiford <richard@codesourcery.com>
1515
1516 * elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
1517 of weakdef->root.type if weakdef has no regular definition.
1518
0e53d9da
AN
15192007-07-22 Adam Nemet <anemet@caviumnetworks.com>
1520
1521 * elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
1522 small_data_overflow_reported.
1523 (_bfd_mips_elf_link_hash_table_create): Initialize it.
1524 (_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
1525 small-data section overflow.
1526
6b33789f
NC
15272007-07-19 Doug Kwan <dougkwan@google.com>
1528
4d269e42
AM
1529 PR binutils/4797
1530 * dwarf2.c: (find_line) Do not dereference functionname_ptr if
1531 do_line is true.
6b33789f 1532
13161072 15332007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 1534
13161072
BW
1535 * elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
1536 non-ELF sections.
4d269e42 1537
e29297b7 15382007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 1539
e29297b7
BW
1540 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
1541 vma and size for dynamic tags from the output sections.
4d269e42 1542
a5d1b3b5
AM
15432007-07-18 Alan Modra <amodra@bigpond.net.au>
1544
1545 * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
1546 * elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
1547 symbol. Instead cache ELF section index. Remove redundant
1548 checks of st_shndx.
1549
d955dada
MF
15502007-07-15 Mike Frysinger <vapier@gentoo.org>
1551
1552 * trad-core.c (NBPG): If not defined, set to getpagesize().
1553
979dc3bc
RM
15542007-07-13 Roland McGrath <roland@redhat.com>
1555
1556 * elf-bfd.h (struct elf_obj_tdata): Revert last change.
1557 Add after_write_object_contents, after_write_object_contents_info.
1558 * elf.c (_bfd_elf_write_object_contents): Revert last change.
1559 Instead, call after_write_object_contents if set.
1560
d2df793a
NC
15612007-07-12 Kai Tietz <kai.tietz@onevision.com>
1562
1563 * bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New.
1564 (BFD_HOSTPTR_T): Host pointer type for casting a
1565 pointer to an integer type.
1566 (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
1567 (sprintf_vma, fprintf_vma): Add support for long long prints.
1568 * bfd-in2.h: Regenerate.
1569 * configure.in: (BFD_HOST_64BIT_LONG_LONG): New.
1570 (BFD_HOSTPTR_T): Host pointer type for casting a
1571 pointer to an integer type. Default is "unsigned long".
1572 (AC_CHECK_SIZEOF(void *)): New.
1573 (host64): Set it if the pointer size is 8.
1574 * configure: Regenerate.
1575 * config.in: Add macro SIZEOF_VOID_P.
1576 * coffcode.h: Replace host ptr type assuming "long" with
1577 bfd_hostptr_t type.
1578 * coffgen.c: Likewise.
1579 * elf-eh-frame.c: Likewise.
1580 * peicode.h: Likewise.
1581
a3a4ddad
L
15822007-07-10 H.J. Lu <hongjiu.lu@intel.com>
1583
1584 * Makefile.in: Regenerated.
1585
329b43c4
L
15862007-07-10 H.J. Lu <hongjiu.lu@intel.com>
1587
1588 PR binutils/4756
1589 * simple.c (bfd_simple_get_relocated_section_content): Don't
1590 apply relocation on executable and shared library.
1591
cfd2c773
NS
15922007-07-10 Nathan Sidwell <nathan@codesourcery.com>
1593
1594 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
1595 copy relocs on vxworks.
1596
1489a3a0
AM
15972007-07-10 Alan Modra <amodra@bigpond.net.au>
1598
1599 * elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
1600 * elf64-alpha.c (alpha_elf_size_info): Likewise.
1601 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
1602 * elf64-mips.c (mips_elf64_size_info): Likewise.
1603 * elf64-s390.c (s390_elf64_size_info): Likewise.
1604 * elf64-sparc.c (elf64_sparc_size_info): Likewise.
1605
00cbee0a
L
16062007-07-09 H.J. Lu <hongjiu.lu@intel.com>
1607
1608 * elflink.c (bfd_elf_record_link_assignment): Handle indirect
1609 symbol.
1610 (_bfd_elf_merge_symbol): Properly update normal symbol when
1611 overriding the versioned symbol from a dynamic library.
1612
fd2f25da
RM
16132007-07-09 Roland McGrath <roland@redhat.com>
1614
1615 * elf-bfd.h (struct elf_obj_tdata): Add members
1616 emit_note_gnu_build_id and note_gnu_build_id_sec.
1617 * elf.c (_bfd_id_note_section_size): New global function.
1618 (read_hex, _bfd_elf_write_build_id_section): New static functions.
1619 (_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
1620 if emit_note_gnu_build_id is set.
1621 * Makefile.am (elf.lo): Update dependencies.
1622
1623 * elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
1624 (bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
1625 * elfcode.h (elf_checksum_contents): New macro and function.
1626 (NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
1627
9af2a943
AM
16282007-07-06 Michael Snyder <msnyder@access-company.com>
1629
1630 * elflink.c (elf_link_add_object_symbols): Return via
1631 error_free_vers on "notice" failure.
1632
a93221e5
L
16332007-07-04 H.J. Lu <hongjiu.lu@intel.com>
1634
1635 * peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
1636 if arch is unknown.
1637
b4928193
NC
16382007-07-04 Nick Clifton <nickc@redhat.com>
1639
1640 Import this patch from an internal tree:
9af2a943 1641
b4928193
NC
1642 2001-07-17 Richard Henderson <rth@redhat.com>
1643
1644 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
1645 compensate for high bit set in R_MEP_LOW16.
1646
3cfad14c
JM
16472007-07-03 Joseph Myers <joseph@codesourcery.com>
1648
1649 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
1650 input attributes if value has been copied.
1651
cd123cb7
NC
16522007-07-03 Nick Clifton <nickc@redhat.com>
1653
1654 * COPYING: Replace with GPLv3 text.
1655 * aix386-core.c: Update copyright notice to refer to GPLv3.
1656 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
1657 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
1658 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
1659 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
1660 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
1661 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
1662 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
1663 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
1664 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
1665 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
1666 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
1667 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
1668 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
1669 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
1670 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
1671 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
1672 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
1673 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
1674 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
1675 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
1676 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
1677 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
1678 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
1679 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
1680 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
1681 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
1682 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
1683 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
1684 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
1685 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
1686 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
1687 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
1688 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
1689 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
1690 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
1691 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
1692 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
1693 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
1694 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
1695 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
1696 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
1697 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
1698 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
1699 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
1700 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
1701 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
1702 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
1703 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
1704 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
1705 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
1706 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
1707 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
1708 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
1709 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
1710 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
1711 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
1712 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
1713 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
1714 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
1715 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
1716 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
1717 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
1718 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
1719 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
1720 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
1721 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
1722 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
1723 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
1724 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
1725 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
1726 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
1727 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
1728 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
1729 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
1730 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
1731 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
1732 xtensa-modules.c: Likewise.
1733 * elf32-sh-relocs.h: Add copyright notice.
1734 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
1735 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
1736 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
1737 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
1738 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
1739 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
1740 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
1741 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
1742 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
1743
741d6ea8
JM
17442007-07-02 Joseph Myers <joseph@codesourcery.com>
1745
1746 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
1747 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
1748 * elf64-mips.c (mips_elf64_howto_table_rela): Support
1749 R_MIPS_TLS_DTPREL64.
1750
ae351704
AM
17512007-07-02 Alan Modra <amodra@bigpond.net.au>
1752
1753 * Makefile.am: Run "make dep-am".
1754 * Makefile.in: Regenerate.
1755 * aclocal.m4: Regenerate.
1756 * config.in: Regenerate.
1757 * po/SRC-POTFILES.in: Regenerate.
1758 * po/bfd.pot: Regenerate.
1759
3e5484db
AM
17602007-07-02 Alan Modra <amodra@bigpond.net.au>
1761
1762 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
1763 symsec != NULL tests.
1764
08a40648
AM
17652007-07-02 Alan Modra <amodra@bigpond.net.au>
1766
1767 PR 4712
1768 * elf.c (assign_file_positions_for_load_sections): Adjust lma
1769 by p_vaddr_offset.
1770
86b57e31
L
17712007-06-30 H.J. Lu <hongjiu.lu@intel.com>
1772
1773 * aclocal.m4: Regenerated.
1774 * Makefile.in: Likewise.
1775
34c8bcba
JM
17762007-06-29 Joseph Myers <joseph@codesourcery.com>
1777
1778 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
1779 (ppc_elf_merge_private_bfd_data): Call it.
1780
2cf19d5c
JM
17812007-06-29 Joseph Myers <joseph@codesourcery.com>
1782
1783 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
1784 (_bfd_mips_elf_merge_private_bfd_data): Call it.
1785
104d59d1
JM
17862007-06-29 Joseph Myers <joseph@codesourcery.com>
1787
1788 * elf-attrs.c: New.
1789 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
1790 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
1791 (elf-attrs.lo): Generate dependencies.
1792 * Makefile.in: Regenerate.
1793 * configure.in (elf): Add elf-attrs.lo.
1794 * configure: Regenerate.
1795 * elf-bfd.h (struct elf_backend_data): Add entries for object
1796 attributes.
1797 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
1798 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
1799 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
1800 New.
1801 (struct elf_obj_tdata): Add entries for object attributes.
1802 (elf_known_obj_attributes, elf_other_obj_attributes,
1803 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
1804 New.
1805 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
1806 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
1807 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
1808 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
1809 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
1810 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
1811 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
1812 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
1813 (bfd_section_from_shdr): Handle attributes sections.
1814 * elflink.c (bfd_elf_final_link): Handle attributes sections.
1815 * elfxx-target.h (elf_backend_obj_attrs_vendor,
1816 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
1817 elf_backend_obj_attrs_section_type): New.
1818 (elfNN_bed): Update.
1819 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
1820 aeabi_attribute_list): Remove.
1821 (struct elf32_arm_obj_tdata): Remove object attributes fields.
1822 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
1823 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
1824 Update for new object attributes interfaces.
1825 (uleb128_size, is_default_attr, eabi_attr_size,
1826 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
1827 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
1828 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
1829 elf32_arm_add_eabi_attr_int, attr_strdup,
1830 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
1831 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
1832 to generic code in elf-attrs.c.
1833 (elf32_arm_obj_attrs_arg_type): New.
1834 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
1835 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
1836 (bfd_elf32_bfd_final_link): Remove.
1837 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
1838 elf_backend_obj_attrs_arg_type,
1839 elf_backend_obj_attrs_section_type): New.
1840 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
1841 attributes.
1842 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
1843 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
1844 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
1845 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
1846 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
1847 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
1848
5ab79981
PB
18492007-06-29 Paul Brook <paul@codesourcery.com>
1850
1851 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
1852 call veneers for call relocations against undefined symbols.
1853 (elf32_arm_final_link_relocate): Turn call to undefined symbol
1854 into a jump to the next instruction.
1855
c6aa130f 18562007-06-29 Michael Snyder <msnyder@access-company.com>
32e8a950
NC
1857
1858 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
1859
3d3d428f
NC
18602007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
1861
1862 * Makefile.am: Add cr16 related entry
1863 * Makefile.in: Regenerate
1864 * archures.c: Add bfd_cr16_arch
1865 * bfd-in2.h: Regenerate
1866 * config.bfd: Add cr16-elf
1867 * configure.in: Add bfd_elf32_cr16_vec
1868 * configure: Regenerate.
1869 * targets.c: Added cr16 related information
1870 * cpu-cr16.c: New file.
1871 * elf32-cr16.c: New file.
1872 * reloc.c: Added cr16 relocs.
1873
c55fe096
AM
18742007-06-29 Alan Modra <amodra@bigpond.net.au>
1875
1876 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
1877 message for undefined version nodes.
1878 (elf_gc_sweep): Don't warn when zero size sections are
1879 removed.
1880
375de94a
AM
18812007-06-29 Nathan Froyd <froydnj@codesourcery.com>
1882
1883 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
1884 types.
1885
7d3287cb
AM
18862007-06-29 Alan Modra <amodra@bigpond.net.au>
1887
1888 * elf32-spu.c (spu_elf_fake_sections): New function.
1889 (elf_backend_fake_sections): Define.
1890
6a3cd2b4
AM
18912007-06-29 Alan Modra <amodra@bigpond.net.au>
1892
1893 * elf.c (assign_file_positions_for_load_sections): Use elf
1894 section header sh_size rather than bfd section size, simplifying
1895 .tbss handling.
1896
bf988460
AM
18972007-06-29 Alan Modra <amodra@bigpond.net.au>
1898
36fc76ae 1899 PR ld/4701
bf988460
AM
1900 * elf.c (assign_file_positions_for_load_sections): Ensure bss
1901 segments meet gABI alignment requirements. Don't allocate
1902 file space for bss sections in a segment also containing file
1903 or program headers.
1904
60b31e8d
AM
19052007-06-27 Alan Modra <amodra@bigpond.net.au>
1906
cc481421
AM
1907 * bfd.c (struct bfd): Rename "next" to "archive_next".
1908 * archive.c: Rename uses throughout file.
1909 * archive64.c: Likewise.
1910 * coff-rs6000.c: Likewise.
1911 * ecoff.c: Likewise.
1912 * som.c: Likewise.
1913 * bfd-in2.h: Regenerate.
1914
60b31e8d
AM
1915 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
1916 input bfds.
58eb693e 1917 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 1918
bec42b15
NC
19192007-06-26 H.J. Lu <hongjiu.lu@intel.com>
1920
1921 * dwarf2.c (find_line): New. Contains the duplicated code from:
1922 (_bfd_dwarf2_find_nearest_line): Use it.
1923 (_bfd_dwarf2_find_line): Use it.
1924
3d3e6f9a
JM
19252007-06-26 Joseph Myers <joseph@codesourcery.com>
1926
1927 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
1928
b314ec0e
RS
19292007-06-25 Richard Sandiford <richard@codesourcery.com>
1930
1931 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
1932 to be used for calls from MIPS16 code.
1933
0d4a1476
AS
19342007-06-23 Andreas Schwab <schwab@suse.de>
1935
1936 * configure.in (--with-separate-debug-dir): New option.
1937 * configure: Regenerate.
1938 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
1939 * Makefile.in: Regenerate.
1940 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
1941 bfd_follow_gnu_debuglink.
1942 (_bfd_dwarf2_find_line): Likewise.
1943
0d161102
NC
19442007-06-22 Nick Clifton <nickc@redhat.com>
1945
1946 * dwarf2.c: Add support for reading in debug information via a
1947 .gnu_debuglink section:
1948 (struct dwarf2_debug): Add bfd field to record the bfd containing
1949 the debug info.
1950 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
1951 field in the dwarf2_debug structure.
1952 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
1953 be found in the current bfd call bfd_follow_gnu_debuglink to see
1954 if another file contains the debug information. If it does, open
1955 it and continue.
1956 (_bfd_dwarf2_find_line): Likewise.
1957
293a0124
L
19582007-06-19 H.J. Lu <hongjiu.lu@intel.com>
1959
1960 PR ld/4590
1961 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
1962 when removing duplicated entries.
1963 (get_dyn_sym_info): Initialize the got_offset field to -1.
1964 Update call to sort_dyn_sym_info.
1965 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
1966 array of addend and remove duplicates.
1967
dc1f3d8a
L
19682007-06-18 H.J. Lu <hongjiu.lu@intel.com>
1969
1970 * libpei.h (_bfd_XXi_final_link_postscript): Remove
1971 duplication.
1972 (bfd_target_pei_p): New.
1973 (bfd_target_pei_arch): New
1974 (bfd_target_efi_p): Likewise.
1975 (bfd_target_efi_arch): New
1976 (bfd_pe_executable_p): Use bfd_target_pei_p and
1977 bfd_target_efi_p.
1978
1979 * peicode.h (arch_type): New enum.
1980 (pe_arch): New function.
1981 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
1982 if there is an EFI/PE target.
1983
79887925
L
19842007-06-14 H.J. Lu <hongjiu.lu@intel.com>
1985
1986 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
1987
1988 * acinclude.m4: Don't include m4 files. Remove libtool
1989 kludge.
1990
1991 * Makefile.in: Regenerated.
79887925
L
1992 * aclocal.m4: Likewise.
1993 * configure: Likewise.
1994
99ded152
BW
19952007-06-11 Sterling Augustine <sterling@tensilica.com>
1996 Bob Wilson <bob.wilson@acm.org>
bf988460 1997
99ded152
BW
1998 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
1999 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
2000 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
2001 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
2002 (xtensa_get_property_predef_flags): Likewise.
2003 (compute_removed_literals): Pass new arguments to is_removable_literal.
2004 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
2005 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 2006
cbf2cba4
RS
20072007-05-31 Richard Sandiford <rsandifo@nildram.co.uk>
2008
2009 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
2010 type (3) single-GOT entry, read tls_type from the hash table entry
2011 rather than the GOT entry.
2012
a9a4c53e
AM
20132007-06-01 Alan Modra <amodra@bigpond.net.au>
2014
2015 * simple.c (bfd_simple_get_relocated_section_contents): Init
2016 input_bfds_tail.
2017
02bf8d82
AM
20182007-05-30 Alan Modra <amodra@bigpond.net.au>
2019
42bb2e33
AM
2020 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
2021 created by objcopy --only-keep-debug.
2022 (_bfd_elf_init_private_section_data): Only change elf_section_type
2023 if it is SHT_NULL.
2024
02bf8d82
AM
2025 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
2026 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
2027 and sh_flags instead of bfd section flags. Delete voff and code
2028 keeping nobits segments aligned.
2029
4e591bc1
EC
20302007-05-25 Eric Christopher <echristo@apple.com>
2031
2032 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
2033 Check that sym_sec isn't NULL before accessing.
2034
37ad9514
SE
20352007-05-24 Steve Ellcey <sje@cup.hp.com>
2036
2037 * Makefile.in: Regnerate.
2038 * configure: Regenerate.
2039 * aclocal.m4: Regenerate.
2040 * doc/Makefile.in: Regenerate.
2041
91a5743d
PB
20422007-05-22 Paul Brook <paul@codesourcery.com>
2043
2044 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
2045 with sec and sec_shndx.
2046 (elf32_arm_ouput_plt_map_sym): Use them.
2047 (elf32_arm_output_arch_local_syms): Output mapping symbols for
2048 interworking glue.
2049
26079076
PB
20502007-05-18 Paul Brook <paul@codesourcery.com>
2051
2052 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
2053 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
2054 (record_arm_to_thumb_glue): Add v5t non-pic glue.
2055 (elf32_arm_create_thumb_stub): Ditto.
2056
91ac5911
L
20572007-05-16 H.J. Lu <hongjiu.lu@intel.com>
2058 Alan Modra <amodra@bigpond.net.au>
2059
2060 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
2061 section to the minimum alignment.
2062
027297b7
L
20632007-05-15 H.J. Lu <hongjiu.lu@intel.com>
2064 Alan Modra <amodra@bigpond.net.au>
2065
2066 PR ld/4504
2067 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
2068 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
2069
2070 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
2071 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
2072 bss section.
2073 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
2074 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
2075 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
2076 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
2077 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
2078 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
2079 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
2080 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
2081 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
2082 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
2083 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
2084 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
2085 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
2086 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
2087 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
2088 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
2089 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
2090
5c18022e
RS
20912007-05-15 Richard Sandiford <richard@codesourcery.com>
2092
2093 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
2094 input_section argument. Create .rela.dyn relocations against
2095 symbol 0 rather than the section symbol.
2096 (mips_elf_local_got_index): Remove input_section argument.
2097 Update call to mips_elf_create_local_got_entry.
2098 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
2099 (mips_elf_calculate_relocation): Update calls to
2100 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
2101
a00a1f35
MS
21022007-05-15 Mark Shinwell <shinwell@codesourcery.com>
2103
2104 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
2105 handle the Thumb-2 JUMP19 relocation.
2106
0414f35b
AM
21072007-05-15 Alan Modra <amodra@bigpond.net.au>
2108
2109 PR 4479
2110 * elf.c (elf_fake_sections): Don't allow backend to change
2111 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
2112 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
2113 fix from here.
2114
74f2e02b
AM
21152007-05-14 Alan Modra <amodra@bigpond.net.au>
2116
2117 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
2118 invalid shstrndx.
2119 (bfd_elf_get_str_section): Likewise.
2120
f137a54e
AM
21212007-05-12 Alan Modra <amodra@bigpond.net.au>
2122
2123 PR 4497
2124 * elf-eh-frame.c (struct cie): Add "local_personality". Make
2125 "personality" a union.
2126 (cie_eq): Compare local_personality too. Adjust personality
2127 comparison.
2128 (_bfd_elf_discard_section_eh_frame): Check binding on personality
2129 reloc sym to allow for bad symtab. Use stashed local syms rather
2130 than reading personality local sym. Handle discarded sections.
2131
4f4416b5
AM
21322007-05-12 Alan Modra <amodra@bigpond.net.au>
2133
2134 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
2135
016687f8
AM
21362007-05-11 Alan Modra <amodra@bigpond.net.au>
2137
2138 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
2139 (enum ppc_elf_plt_type): Move from..
2140 * elf32-ppc.c: ..here.
2141 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
2142 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
2143 can_use_new_plt. Make is_vxworks a bitfield.
2144 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
2145 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
2146 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
2147 flags to better detect object files needing old bss-style plt.
2148 Allow secure plt to be used without rel16 relocs being detected.
2149 Warn if secure plt request cannot be allowed.
2150
ece5ef60
AM
21512007-05-11 Alan Modra <amodra@bigpond.net.au>
2152
2153 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
2154 * elf-bfd.h (struct elf_backend_data): Change return type of
2155 elf_backend_relocate_section to int.
2156 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
2157 R_SPU_PPU64.
2158 (spu_elf_bfd_to_reloc_type): Convert new relocs.
2159 (spu_elf_count_relocs): New function.
2160 (elf_backend_count_relocs): Define.
2161 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
2162 R_SPU_PPU64 relocs.
2163 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
2164 returns 2.
2165 * bfd-in2.h: Regenerate.
2166 * libbfd.h: Regenerate.
2167
d3753b85
RS
21682007-05-10 Richard Sandiford <richard@codesourcery.com>
2169
2170 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
2171 for R_ARM_ABS12 relocs.
2172 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
2173 non-shared VxWorks PLT entries.
2174
ef8c95ad
AM
21752007-05-11 Alan Modra <amodra@bigpond.net.au>
2176
2177 PR 4454
2178 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
2179 (_bfd_elf_discard_section_eh_frame): Handle local syms on
2180 personality relocation.
2181
8c252fd9
RS
21822007-05-10 Richard Sandiford <richard@codesourcery.com>
2183
2184 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
2185 rather than p_filesz to calculate the LMA of the end of a segment.
2186
b186458a
JJ
21872007-05-10 Jakub Jelinek <jakub@redhat.com>
2188
2189 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
2190 processing if symbol is defined in the executable.
2191
88571279
AO
21922007-05-10 Alexandre Oliva <aoliva@redhat.com>
2193
2194 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
2195 (frvfdpic_elf_discard_info): New.
2196 (elf_backend_discard_info): Define for FDPIC.
2197
2e6030b9
MS
21982007-05-09 Mark Shinwell <shinwell@codesourcery.com>
2199
2200 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
2201 attempt to scan if the bfd doesn't correspond to an ELF image.
2202 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
2203
0d4cc892
AO
22042007-05-08 Alexandre Oliva <aoliva@redhat.com>
2205
2206 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
2207 for which _bfd_elf_section_offset returns -1.
2208
d0249648
AM
22092007-05-08 Alan Modra <amodra@bigpond.net.au>
2210
2211 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
2212 (mark_functions_via_relocs): Likewise.
2213
1182cb93
AM
22142007-05-07 Alan Modra <amodra@bigpond.net.au>
2215
2216 * elflink.c (bfd_elf_final_link): Correct reloc handling for
2217 elf_backend_count_relocs.
2218 (bfd_elf_discard_info): Print an error if we can't read syms.
2219
b16f296e
AM
22202007-05-07 Alan Modra <amodra@bigpond.net.au>
2221
2222 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
2223 invalid reloc code.
2224 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
2225 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
2226 define.
2227
7c928300
AM
22282007-05-07 Alan Modra <amodra@bigpond.net.au>
2229
2230 * elf.c (assign_file_positions_for_load_sections): Don't check
2231 core segment.
2232
fc66a176
L
22332007-05-04 H.J. Lu <hongjiu.lu@intel.com>
2234
2235 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
2236 and .rel.dyn aren't present.
2237
3410fea8
NC
22382007-05-04 Nick Clifton <nickc@redhat.com>
2239
2240 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
2241 sections are present examine the indirect sections in an attempt
2242 to compute the correct relocation size. If there is any
2243 ambiguity, produce an error and refuse to sort.
2244
7bdca076
SL
22452007-05-03 Sandra Loosemore <sandra@codesourcery.com>
2246
2247 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
2248
22184a77
NC
22492007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
2250 Nick Clifton <nickc@redhat.com>
2251
2252 PR gas/3041
2253 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
2254 in the same way as relocs against external symbols.
2255
627b32bc
AM
22562007-05-02 Alan Modra <amodra@bigpond.net.au>
2257
2258 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
2259 here. Set sh_type to SHT_NOBITS if we won't be allocating
2260 file space. Don't bump p_memsz for non-alloc sections. Adjust
2261 section-in-segment check.
2262 (assign_file_positions_for_non_load_sections): Don't set sh_offset
2263 here for sections that have already been handled above.
2264
49fa1e15
AM
22652007-04-30 Alan Modra <amodra@bigpond.net.au>
2266
2267 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
2268 and emit_stack_syms bitfields.
2269 (get_sym_h): Read all symbols if stack analysis will be done.
2270 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
2271 params, and stash in hash table.
2272 (is_hint): Split off from..
2273 (is_branch): ..here. Adjust callers.
2274 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
2275 and keep all syms.
2276 (write_one_stub): Fix mem leak.
2277 (find_function_stack_adjust): New function.
2278 (sort_syms_syms, sort_syms_psecs): New vars.
2279 (sort_syms): New function.
2280 (struct call_info, struct function_info): New.
2281 (struct spu_elf_stack_info): New.
2282 (alloc_stack_info, maybe_insert_function, func_name): New functions.
2283 (is_nop, insns_at_end, check_function_ranges): Likewise.
2284 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
2285 (pasted_function, interesting_section, discover_functions): Likewise.
2286 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
2287 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
2288 (bfd_elf32_bfd_final_link): Define.
2289 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
2290 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
2291
9ddf8309
TS
22922007-04-28 Sergey Rogozhkin <rogozhkin@niisi.msk.ru>
2293
2294 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
2295 memory which we might not own.
2296
95147441
BW
22972007-04-27 Bob Wilson <bob.wilson@acm.org>
2298
2299 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
2300 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
2301 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
2302
bcc2cc8e
BW
23032007-04-27 Bob Wilson <bob.wilson@acm.org>
2304
2305 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
2306 contents and relocs in parallel.
4e591bc1 2307
f29f96b6
BW
23082007-04-27 Bob Wilson <bob.wilson@acm.org>
2309
2310 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
2311
2ce18a16
AM
23122007-04-27 Alan Modra <amodra@bigpond.net.au>
2313
2314 * cpu-rs6000.c: Write Mimi's name in ASCII.
2315 * coff-rs6000.c: Likewise.
2316 * rs6000-core.c: Likewise.
2317
eddc20ad
AM
23182007-04-27 Alan Modra <amodra@bigpond.net.au>
2319
2320 * sysdep.h: Include config.h first.
2321 Many files: Include sysdep.h before bfd.h.
2322 * Makefile.am: Run "make dep-am".
2323 * Makefile.in: Regenerate.
2324
495443d4
AM
23252007-04-25 Alan Modra <amodra@bigpond.net.au>
2326
2327 * sysdep.h: Revert last change.
2328
40b1c6c5
NC
23292007-04-24 Nick Clifton <nickc@redhat.com>
2330
2331 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
2332 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
2333
64be1553
AM
23342007-04-24 Alan Modra <amodra@bigpond.net.au>
2335
2336 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
2337 eh_frame_hdr table won't be created.
2338
d5efd9fc
AM
23392007-04-24 Alan Modra <amodra@bigpond.net.au>
2340
2341 * acinclude.m4: Include config/stdint.m4.
2342 * configure.in: Invoke GCC_HEADER_STDINT.
2343 * sysdep.h: Don't include ansidecl.h here.
2344 * configure: Regenerate.
2345 * config.in: Regenerate.
2346 * Makefile.in: Regenerate.
2347
9a2e615a
NS
23482007-04-23 Nathan Sidwell <nathan@codesourcery.com>
2349
2350 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
2351 bfd_mach_mcf_isa_c_emac): New.
2352 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
2353 elf_isac_plt_entry, elf_isac_plt_info): New.
2354 (elf32_m68k_object_p): Add ISA_C.
2355 (elf32_m68k_print_private_bfd_data): Print ISA_C.
2356 (elf32_m68k_get_plt_info): Detect ISA_C.
2357 * cpu-m68k.c (arch_info): Add ISAC.
2358 (m68k_arch_features): Likewise,
2359 (bfd_m68k_compatible): ISAs B & C are not compatible.
2360
1b0b5b1b
NC
23612007-04-21 Nick Clifton <nickc@redhat.com>
2362
2363 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
2364 (ecoff_link_add_archive_symbols): Likewise.
2365 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
2366 relent.howto.
2367 * ieee.c (parse_int): Initialise x.
2368 (must_parse_int): Initialise result.
2369 (ieee_slurp_external_symbols): Initialise value.
2370
bd7803a9
AM
23712007-04-21 Alan Modra <amodra@bigpond.net.au>
2372
2373 * config.bfd (spu-*-elf): Delete targ_selvecs.
2374
964597d0
NC
23752007-04-19 Nick Clifton <nickc@redhat.com>
2376
2377 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
2378
01e76792
AM
23792007-04-19 Alan Modra <amodra@bigpond.net.au>
2380
2381 * bfd.c (bfd_demangle): New function.
2382 * Makefile.am: Run "make dep-am".
2383 * Makefile.in: Regenerate.
2384 * bfd-in2.h: Regenerate.
2385
ee5c21a0
DJ
23862007-04-18 Matthias Klose <doko@ubuntu.com>
2387
2388 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
2389 (bfdver.h): Use the date in non-release builds for the soversion.
2390 * Makefile.in: Regenerate.
2391
fcb93ecf
PB
23922007-04-17 Paul Brook <paul@codesourcery.com>
2393
2394 * elf.c (_bfd_elf_is_function_type): New function.
2395 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
2396 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
2397 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
2398 * elf-bfd.h (elf_backend_data): Add is_function_type.
2399 (_bfd_elf_is_function_type): Add prototype.
2400 * elfxx-target.h (elf_backend_is_function_type): Add default
2401 definition.
2402 (elfNN_bed): Add elf_backend_is_function_type.
2403 * elf32-arm.c (elf32_arm_is_function_type): New function.
2404 (elf_backend_is_function_type): Define.
2405
5750dcec
DJ
24062007-04-17 Daniel Jacobowitz <dan@codesourcery.com>
2407
2408 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
2409 DT_MIPS_RLD_MAP before DT_DEBUG again.
2410
cfbc9945
SE
24112007-04-14 Steve Ellcey <sje@cup.hp.com>
2412
2413 * Makefile.am: Add ACLOCAL_AMFLAGS.
2414 * configure.in: Change macro call order.
2415 * Makefile.in: Regnerate.
2416 * doc/Makefile.in: Regenerate.
2417 * configure: Regenerate.
2418
3fcd97f1
JJ
24192007-04-14 Jakub Jelinek <jakub@redhat.com>
2420
2421 * elflink.c (bfd_elf_final_link): Don't free symbuf for
2422 non-elf input bfds.
2423 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
2424 for non-elf input bfds.
2425
af5978fb
RS
24262007-04-12 Richard Sandiford <richard@codesourcery.com>
2427
2428 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
2429 DT_MIPS_RTLD_MAP for PIEs.
2430
9e3313ae
RS
24312007-04-12 Richard Sandiford <richard@codesourcery.com>
2432
2433 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
2434 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
2435 in a read-only section.
2436 (_bfd_mips_elf_check_relocs): Likewise.
2437
1d25768e
BW
24382007-04-12 Bob Wilson <bob.wilson@acm.org>
2439
2440 * elf32-xtensa.c (xtensa_is_insntable_section): New.
2441 (xtensa_is_proptable_section): New.
2442 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
2443 tables with 12-byte entries, as well as tables with 8-byte entries.
2444 Sort the relocations before examining them.
2445 (relax_property_section): Use xtensa_is_proptable_section and
2446 xtensa_is_littable_section. Rewrite code for combining table entries
2447 to be more robust in case of unexpected relocations. Do not set offset
2448 of unused relocations to less than zero.
2449 (xtensa_is_property_section): Use other functions instead of
2450 duplicating section name comparisons.
2451 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
2452 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 2453
e1e5c0b5 24542007-04-12 Bob Wilson <bob.wilson@acm.org>
4e591bc1 2455
e1e5c0b5
BW
2456 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
2457 from Xtensa property sections.
4e591bc1 2458
2c67c5f3
AM
24592007-04-12 Alan Modra <amodra@bigpond.net.au>
2460
2461 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
2462 is non-NULL before dereferencing.
2463
8776bb8a
NS
24642007-04-11 Nathan Sidwell <nathan@codesourcery.com>
2465
2466 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
2467 relocs too.
2468
4a828aab
RH
24692007-04-10 Richard Henderson <rth@redhat.com>
2470
2471 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
2472 (elf64_alpha_size_got_sections): Remove unused something_changed local.
2473 (elf64_alpha_size_plt_section): Return void.
2474 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 2475 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
2476 relax_trip counter has changed.
2477
91506736
DJ
24782007-04-09 Daniel Jacobowitz <dan@codesourcery.com>
2479
2480 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
2481 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
2482 (bfdver.texi): New rule.
2483 * Makefile.in, doc/Makefile.in: Regenerated.
2484
da6bcfca
MT
24852007-04-03 Matt Thomas <matt@netbsd.org>
2486
4e591bc1 2487 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
2488 in a shared object if it is not in a CODE section or if it is against
2489 a section symbol. This allows DWARF2 to use pcrel format.
2490
9267588c
L
24912007-04-05 H.J. Lu <hongjiu.lu@intel.com>
2492
2493 PR ld/4304
2494 * elflink.c (bfd_elf_final_link): Call einfo callback in
2495 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
2496 warning.
2497
c1b2796f
AM
24982007-04-05 Alan Modra <amodra@bigpond.net.au>
2499
2500 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
2501 (elf_backend_link_output_symbol_hook): Define.
2502
970ccc77
NC
25032007-04-02 Nick Clifton <nickc@redhat.com>
2504
2505 PR binutils/4292
2506 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
2507 targets as 64-bit values, even if running on a 64-bit host.
2508 * coffgen.c (coff_print_symbol): Likewise.
2509
1783205a
NC
25102007-03-29 Nick Clifton <nickc@redhat.com>
2511
2512 PR binutils/4110
2513 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
2514 (setup_group): Use it. Report corrupt group section headers.
2515 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
2516 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
2517 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
2518
2ce859a1
AM
25192007-03-29 Alan Modra <amodra@bigpond.net.au>
2520
2521 PR ld/4267
947844a3
AM
2522 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
2523 for rel->r_info values.
2524 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
2525 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
2526 unused entries. Don't clear plt.plist in loop.
2527
39817122
RS
25282007-03-28 Richard Sandiford <richard@codesourcery.com>
2529
2530 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
2531 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
2532 Merge into...
2533 (sparc_elf_append_rela): ...this new function.
2534 (SPARC_ELF_APPEND_RELA): Delete.
2535 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
2536 the deleted append_rela field.
2537 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
2538 instead of SPARC_ELF_APPEND_RELA.
2539 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
2540 elf_size_info structure to find the size of a RELA entry and
2541 the associated swap-out function.
2542 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
2543 (sparc_finish_dyn): ...this new function.
2544 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
2545
4ecceb71
RS
25462007-03-28 Richard Sandiford <richard@codesourcery.com>
2547 Phil Edwards <phil@codesourcery.com>
2548
2549 * doc/bfd.texinfo: Put the contents after the title page rather
2550 than at the end of the document.
2551
d4d2b80b
AS
25522007-03-27 Andreas Schwab <schwab@suse.de>
2553
2554 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
2555
831480e9 25562007-03-26 H.J. Lu <hongjiu.lu@intel.com>
5bd8253d
L
2557
2558 * configure: Regenerated.
2559
f4b39977
AM
25602007-03-26 Alan Modra <amodra@bigpond.net.au>
2561
2562 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
2563 (allocate_spuear_stubs): New function.
2564 (spu_elf_size_stubs): Call allocate_spuear_stubs.
2565
157090f7
AM
25662007-03-26 Alan Modra <amodra@bigpond.net.au>
2567
2568 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
2569 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
2570 (MY (bfd_reloc_name_lookup)): New function.
2571 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
2572 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
2573 (MY_bfd_reloc_name_lookup): Define.
2574 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
2575 (MY_bfd_reloc_name_lookup): Define.
2576 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
2577 (NAME (aout, reloc_name_lookup)): New function.
2578 * bout.c (b_out_bfd_reloc_name_lookup): New function.
2579 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
2580 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
2581 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
2582 (coff_bfd_reloc_name_lookup): Define.
2583 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
2584 (coff_i386_reloc_name_lookup): New function.
2585 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
2586 (coff_bfd_reloc_name_lookup): Define.
2587 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
2588 (coff_bfd_reloc_name_lookup): Define.
2589 * coff-m68k.c (m68k_reloc_name_lookup): New function.
2590 (coff_bfd_reloc_name_lookup): Define.
2591 * coff-maxq.c (maxq_reloc_name_lookup): New function.
2592 (coff_bfd_reloc_name_lookup): Define.
2593 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
2594 (coff_bfd_reloc_name_lookup): Define.
2595 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
2596 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
2597 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
2598 (coff_bfd_reloc_name_lookup): Define.
2599 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
2600 (_bfd_xcoff_reloc_name_lookup): New function.
2601 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
2602 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
2603 (sh_coff_reloc_name_lookup): New function.
2604 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
2605 (coff_bfd_reloc_name_lookup): Define.
2606 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
2607 (tic30_coff_reloc_name_lookup): New function.
2608 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
2609 (tic4x_coff_reloc_name_lookup): New function.
2610 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
2611 (tic54x_coff_reloc_name_lookup): New function.
2612 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
2613 (coff_amd64_reloc_name_lookup): New function.
2614 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
2615 (coff_bfd_reloc_name_lookup): Define.
2616 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
2617 (coff_bfd_reloc_name_lookup): Define.
2618 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
2619 (xcoff64_reloc_name_lookup): New function.
2620 (rs6000coff64_vec, aix5coff64_vec): Init new field.
2621 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
2622 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
2623 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2624 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2625 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2626 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
2627 (bfd_elf32_bfd_reloc_name_lookup): Define.
2628 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2629 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
2630 (bfd_elf32_bfd_reloc_name_lookup): Define.
2631 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
2632 (bfd_elf32_bfd_reloc_name_lookup): Define.
2633 * elf32-cris.c (cris_reloc_name_lookup): New function.
2634 (bfd_elf32_bfd_reloc_name_lookup): Define.
2635 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
2636 (bfd_elf32_bfd_reloc_name_lookup): Define.
2637 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2638 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2639 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
2640 (bfd_elf32_bfd_reloc_name_lookup): Define.
2641 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
2642 (bfd_elf32_bfd_reloc_name_lookup): Define.
2643 * elf32-frv.c (frv_reloc_name_lookup): New function.
2644 (bfd_elf32_bfd_reloc_name_lookup): Define.
2645 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2646 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
2647 (bfd_elf32_bfd_reloc_name_lookup): Define.
2648 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2649 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
2650 (bfd_elf32_bfd_reloc_name_lookup): Define.
2651 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
2652 (bfd_elf32_bfd_reloc_name_lookup): Define.
2653 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
2654 (bfd_elf32_bfd_reloc_name_lookup): Define.
2655 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
2656 (bfd_elf32_bfd_reloc_name_lookup): Define.
2657 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
2658 (bfd_elf32_bfd_reloc_name_lookup): Define.
2659 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
2660 (bfd_elf32_bfd_reloc_name_lookup): Define.
2661 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
2662 (bfd_elf32_bfd_reloc_name_lookup): Define.
2663 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2664 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2665 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2666 * elf32-m68k.c (reloc_name_lookup): New function.
2667 (bfd_elf32_bfd_reloc_name_lookup): Define.
2668 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2669 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
2670 (bfd_elf32_bfd_reloc_name_lookup): Define.
2671 * elf32-mep.c (mep_reloc_name_lookup): New function.
2672 (bfd_elf32_bfd_reloc_name_lookup): Define.
2673 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2674 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
2675 (bfd_elf32_bfd_reloc_name_lookup): Define.
2676 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2677 * elf32-mt.c (mt_reloc_name_lookup): New function.
2678 (bfd_elf32_bfd_reloc_name_lookup): Define.
2679 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
2680 (bfd_elf32_bfd_reloc_name_lookup): Define.
2681 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2682 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
2683 (bfd_elf32_bfd_reloc_name_lookup): Define.
2684 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
2685 (bfd_elf32_bfd_reloc_name_lookup): Define.
2686 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
2687 (bfd_elf32_bfd_reloc_name_lookup): Define.
2688 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
2689 (bfd_elf32_bfd_reloc_name_lookup): Define.
2690 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
2691 (bfd_elf32_bfd_reloc_name_lookup): Define.
2692 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2693 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
2694 (bfd_elf32_bfd_reloc_name_lookup): Define.
2695 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
2696 (bfd_elf32_bfd_reloc_name_lookup): Define.
2697 * elf32-vax.c (reloc_name_lookup): New function.
2698 (bfd_elf32_bfd_reloc_name_lookup): Define.
2699 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
2700 (bfd_elf32_bfd_reloc_name_lookup): Define.
2701 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
2702 (bfd_elf32_bfd_reloc_name_lookup): Define.
2703 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
2704 (bfd_elf32_bfd_reloc_name_lookup): Define.
2705 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
2706 (bfd_elf64_bfd_reloc_name_lookup): Define.
2707 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2708 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2709 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2710 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2711 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
2712 (bfd_elf64_bfd_reloc_name_lookup): Define.
2713 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
2714 (bfd_elf64_bfd_reloc_name_lookup): Define.
2715 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
2716 (bfd_elf64_bfd_reloc_name_lookup): Define.
2717 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2718 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
2719 (bfd_elf64_bfd_reloc_name_lookup): Define.
2720 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2721 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
2722 (bfd_elfNN_bfd_reloc_name_lookup): Define.
2723 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
2724 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
2725 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
2726 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
2727 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
2728 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
2729 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
2730 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
2731 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
2732 (MY(reloc_name_lookup)): New function.
2733 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
2734 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
2735 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
2736 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
2737 (coff_bfd_reloc_name_lookup): Define.
2738 * reloc.c (bfd_reloc_name_lookup): New function.
2739 * riscix.c (riscix_reloc_name_lookup): New function.
2740 (MY_bfd_reloc_name_lookup): Define.
2741 * som.c (som_bfd_reloc_name_lookup): New function.
2742 * targets.c (struct bfd_target): Add reloc_name_lookup.
2743 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
2744 * versados.c (versados_bfd_reloc_name_lookup): Define.
2745 * vms.c (vms_bfd_reloc_name_lookup): New function.
2746 * bfd-in2.h: Regenerate.
2747 * libbfd.h: Regenerate.
2748
2d82d84d
TS
27492007-03-26 Thiemo Seufer <ths@mips.com>
2750
a5cb1fd7 2751 PR ld/4208
2d82d84d
TS
2752 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
2753 matching relocation is found.
2754 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
2755
831480e9 27562007-03-23 H.J. Lu <hongjiu.lu@intel.com>
1a27db7d
L
2757
2758 * configure: Regenerated.
2759
a1ac8190
JM
27602007-03-23 Joseph Myers <joseph@codesourcery.com>
2761
2762 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
2763 * configure: Regenerate.
2764
aa7a0635
AM
27652007-03-23 Alan Modra <amodra@bigpond.net.au>
2766
2767 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
2768 Remove input_sec param. Adjust all calls.
2769 (write_one_stub): Adjust stub symbol.
2770 (needs_ovl_stub): New function, extracted from..
2771 (spu_elf_size_stubs): ..here.
2772 (spu_elf_relocate_section): Use needs_ovl_stub.
2773
e49e529d
JM
27742007-03-22 Joseph Myers <joseph@codesourcery.com>
2775
2776 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
2777 if nonempty.
2778 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
2779 * Makefile.in, configure, doc/Makefile.in: Regenerate.
2780
831480e9 27812007-03-22 H.J. Lu <hongjiu.lu@intel.com>
50572669
L
2782
2783 PR ld/4210
2784 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
2785 address and virtual size of the last section for the image
2786 size.
2787
0920dee7
L
27882007-03-22 H.J. Lu <hongjiu.lu@intel.com>
2789
2790 PR ld/4007
2791 * elf.c (assign_file_positions_for_load_sections): Check if
2792 all sections are in the segment.
2793
831480e9 27942007-03-20 H.J. Lu <hongjiu.lu@intel.com>
749b8d9d
L
2795
2796 PR ld/4208
2797 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
2798 matching LO16 relocation for HI16 relocation.
2799
27e55c4d
PB
28002007-03-20 Paul Brook <paul@codesourcery.com>
2801
2802 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
2803 * bfd-in2.h: Regenerate.
2804 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
2805 (record_arm_to_thumb_glue): Use globals->pic_veneer.
2806 (elf32_arm_create_thumb_stub): Ditto.
2807 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
2808
bf21ed78
MS
28092007-03-18 Mark Shinwell <shinwell@codesourcery.com>
2810
2811 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
2812 argument and extra last argument.
2813 * bfd-in2.h: Regenerate.
2814 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
2815 member.
2816 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
2817 extra last argument. Set no_enum_size_warning appropriately.
2818 (elf32_arm_merge_eabi_attributes): Improve enum sizes
2819 diagnostic, suppressing it when no_enum_size_warning dictates.
2820
5f6999aa
NC
28212007-03-20 Nick Clifton <nickc@redhat.com>
2822
2823 PR binutils/3535
2824 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
2825 specific conditions that need the program headers to be
2826 rewritten.
2827
831480e9 28282007-03-19 H.J. Lu <hongjiu.lu@intel.com>
d13c9dc6
L
2829
2830 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
2831 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2832 SizeOfInitializedData, SizeOfUninitializedData,
2833 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
2834 extra PE a.out header.
2835 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
2836 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
2837 defined.
2838 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
2839 defined.
2840 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
2841 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2842 SizeOfInitializedData, SizeOfUninitializedData,
2843 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
2844 extra PE a.out header.
2845
831480e9 28462007-03-18 H.J. Lu <hongjiu.lu@intel.com>
739bb57e
L
2847
2848 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
2849 only if BFD64 is defined.
2850
5384511f
AM
28512007-03-17 Alan Modra <amodra@bigpond.net.au>
2852
2853 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
2854 on setjmp calls.
2855
187b3d5d
L
28562007-03-15 H.J. Lu <hongjiu.lu@intel.com>
2857
2858 * doc/Makefile.in: Regenerated.
2859
c428fa83
L
28602007-03-15 H.J. Lu <hongjiu.lu@intel.com>
2861
2862 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
2863 create doc/bfdver.texi.
2864 * Makefile.in: Regenerated.
2865
2866 * configure.in (--with-bugurl): New option.
2867 * configure: Regenerated.
2868
2869 * version.h (REPORT_BUGS_TO): New.
2870
d1036acb
L
28712007-03-13 H.J. Lu <hongjiu.lu@intel.com>
2872
2873 PR binutils/3826
2874 * elf-bfd.h (elf_backend_data): Add elf_osabi.
2875 (_bfd_elf_set_osabi): New.
2876
2877 * elf.c (_bfd_elf_set_osabi): New.
2878
2879 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
2880 (elf_backend_post_process_headers): Defined with
2881 _bfd_elf_set_osabi.
2882 (ELF_OSABI): Properly defined for each target.
2883
2884 * elf32-i370.c (i370_elf_post_process_headers): Removed.
2885 (ELF_OSABI): Defined.
2886 (elf_backend_post_process_headers): Defined with
2887 _bfd_elf_set_osabi.
2888
2889 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2890 freebsd.
2891 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
2892
2893 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
2894 (ELF_OSABI): Defined.
2895 (elf_backend_post_process_headers): Defined with
2896 _bfd_elf_set_osabi.
2897
2898 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2899 freebsd.
2900 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
2901 elf_osabi.
2902
2903 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
2904 with elf_osabi.
2905 (ELF_OSABI): Properly defined for each target.
2906 (elf_backend_post_process_headers): Defined with
2907 _bfd_elf_set_osabi for Linux.
2908
2909 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
2910 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2911 (elf_backend_post_process_headers): Defined with
2912 _bfd_elf_set_osabi.
2913
2914 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
2915 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2916 (elf_backend_post_process_headers): Defined with
2917 _bfd_elf_set_osabi.
2918
2919 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
2920 with any ELF target of the compatible machine for which we do not
2921 have a specific backend.
2922
2923 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
2924 with elf_osabi.
2925
2926 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
2927 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
2928
d4c87fc1
AM
29292007-03-08 Alan Modra <amodra@bigpond.net.au>
2930
2931 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
2932 V850_OTHER_* bits.
2933
9c6fc49d
AM
29342007-03-08 Alan Modra <amodra@bigpond.net.au>
2935
2936 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
2937 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
2938 Run "make dep-am".
2939 * Makefile.in: Regenerate.
2940 * po/SRC-POTFILES.in: Regenerate.
2941
faed74d6
L
29422007-03-07 H.J. Lu <hongjiu.lu@intel.com>
2943
2944 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
2945 (x86_64-*-kfreebsd*-gnu): Likewise.
2946 (x86_64-*-netbsd*): Likewise.
2947 (x86_64-*-openbsd*): Likewise.
2948 (x86_64-*-linux-*): Likewise.
2949
2950 * configure.in: Support bfd_efi_app_x86_64_vec.
2951 * configure: Regenerated.
2952
2953 * efi-app-x86_64.c: New file.
2954
2955 * targets.c (bfd_efi_app_x86_64_vec): New.
2956 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
2957
15344ad7
L
29582007-03-07 Kai Tietz <kai.tietz@onevision.com>
2959
2960 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
2961 const for type reloc_howto_type.
2962
ab96bf03
AM
29632007-03-07 Alan Modra <amodra@bigpond.net.au>
2964
2965 PR 3958
2966 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
2967 (elf_discarded_section): Move..
2968 * bfd-in.h: ..to here.
2969 * bfd-in2.h: Regenerate.
2970 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
2971 from discarded sections before relocate_section has done its job.
2972 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
2973 relocs against symbols from discarded sections.
2974 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
2975 SECREL32.
2976 (elf_hppa_relocate_section): Handle relocatable link after setting
2977 sec, sym, h etc. for final link. Squash error messages for
2978 relocatable link. Clear section contents for relocs against
2979 symbols in discarded sections, and zero reloc. Remove existing
2980 zero r_symndx code.
2981 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
2982 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
2983 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
2984 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
2985 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
2986 (bfin_relocate_section): Likewise.
2987 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
2988 * elf32-cris.c (cris_elf_relocate_section): Likewise.
2989 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
2990 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
2991 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
2992 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2993 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
2994 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
2995 * elf32-i370.c (i370_elf_relocate_section): Likewise.
2996 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2997 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
2998 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
2999 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
3000 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
3001 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
3002 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
3003 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
3004 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
3005 * elf32-mep.c (mep_elf_relocate_section): Likewise.
3006 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
3007 * elf32-mt.c (mt_elf_relocate_section): Likewise.
3008 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
3009 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
3010 * elf32-s390.c (elf_s390_relocate_section): Likewise.
3011 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
3012 * elf32-sh.c (sh_elf_relocate_section): Likewise.
3013 * elf32-spu.c (spu_elf_relocate_section): Likewise.
3014 * elf32-v850.c (v850_elf_relocate_section): Likewise.
3015 * elf32-vax.c (elf_vax_relocate_section): Likewise.
3016 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
3017 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
3018 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
3019 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
3020 (elf64_alpha_relocate_section): Likewise.
3021 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
3022 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
3023 * elf64-s390.c (elf_s390_relocate_section): Likewise.
3024 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
3025 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
3026 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
3027 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
3028 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
3029
3030 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
3031 symbols for relocatable link. Don't use always-zero st_value.
3032 (elf_backend_rela_normal): Don't define.
3033 * elf32-bfin.c (bfinfdpic_relocate_section): Use
3034 RELOC_FOR_GLOBAL_SYMBOL.
3035 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
3036 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
3037 section symbol adjustments with same for relocatable link.
3038 * elf32-i386.c (elf_i386_relocate_section): Likewise.
3039 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
3040 (elf32_m68hc11_check_relocs): ..to here.
3041 * elf32-score.c (score_elf_final_link_relocate): Remove zero
3042 r_symndx code.
3043 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
3044
0e922b77
AM
30452007-03-07 Alan Modra <amodra@bigpond.net.au>
3046
3047 PR 4144
3048 * elf.c (assign_file_positions_for_load_sections): Don't
3049 adjust p_memsz for !SEC_LOAD section vma modulo page size.
3050 Instead, use the same lma based adjustment for SEC_LOAD
3051 sections.
3052
25c6282a
BW
30532007-03-01 Bob Wilson <bob.wilson@acm.org>
3054
3055 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
3056 (find_relaxable_sections): Do not increment src_count for unknown
3057 opcodes. Decode only once instead of calling is_l32r_relocation.
3058 (compute_text_actions): Remove unused no_insn_move flag. Assert that
3059 src_next matches src_count in relax_info.
3060
066c2a57
JM
30612007-03-01 Joseph Myers <joseph@codesourcery.com>
3062
3063 * Makefile.am (bfdver.h): Use "." not " " between version number
3064 and date.
3065 * Makefile.in: Regenerate.
3066 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
3067 * configure: Regenerate.
3068
ed6ba298
NS
30692007-02-28 Nathan Sidwell <nathan@codesourcery.com>
3070
3071 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
3072
7a8757b3
AM
30732007-02-27 Alan Modra <amodra@bigpond.net.au>
3074
3075 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
3076 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
3077
024b2372
CD
30782007-02-23 Carlos O'Donell <carlos@codesourcery.com>
3079
3080 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
3081 DWARF even with 64-bit addresses.
3082 (_bfd_dwarf2_find_nearest_line): Likewise.
3083
cb3ff1e5
NC
30842007-02-23 Nick Clifton <nickc@redhat.com>
3085
3086 PR binutils/3535
3087 * elf.c (copy_private_bfd_data): Always rewrite the program
3088 headers when a Solaris interpreter segment is involved.
3089
6a5bb875
PB
30902007-02-22 Paul Brook <paul@codesourcery.com>
3091
3092 * elflink.c (gc_mark_hook_fn): Remove.
3093 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
3094 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
3095 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
3096 (elf_backend_data): Add gc_mark_extra_sections.
3097 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
3098 definition.
3099 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
3100 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
3101 (elf_backend_gc_mark_extra_sections): Define.
3102
2889e75b
NC
31032007-02-21 Nick Clifton <nickc@redhat.com>
3104
3105 * elf.c (_bfd_elf_map_sections_to_segments): If the
3106 override_segment_assignment callback is defined then call it.
3107
78859468
AM
31082007-02-21 Alan Modra <amodra@bigpond.net.au>
3109
3110 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
3111
ae0d2616
TS
31122007-02-19 Thiemo Seufer <ths@mips.com>
3113
3114 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
3115 translation marker from untranslatable strings.
3116
6bfdb61b
AM
31172007-02-19 Alan Modra <amodra@bigpond.net.au>
3118
3119 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
3120 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
3121 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
3122 (elfNN_bed): Init new field.
3123 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
3124
92f01d61
JM
31252007-02-17 Mark Mitchell <mark@codesourcery.com>
3126 Nathan Sidwell <nathan@codesourcery.com>
3127 Vladimir Prus <vladimir@codesourcery.com
3128 Joseph Myers <joseph@codesourcery.com>
3129
3130 * configure.in (--with-pkgversion): New option.
3131 * configure: Regenerate.
3132 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
3133 * Makefile.in: Regenerate.
3134 * version.h (BFD_VERSION_STRING): Define using
3135 @bfd_version_package@.
3136
c0e3f241
CD
31372007-02-16 Carlos O'Donell <carlos@codesourcery.com>
3138
3139 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
3140 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
3141 and EF_MIPS_UCODE.
3142
72f6ea61
AM
31432007-02-15 Alan Modra <amodra@bigpond.net.au>
3144
3145 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
3146 declare.
3147 (_bfd_norelocs_canonicalize_reloc): Likewise.
3148 * libbfd.h: Regenerate.
3149 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
3150 (_bfd_norelocs_canonicalize_reloc): Likewise.
3151 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
3152 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
3153 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
3154 * ihex.c: Similarly.
3155 * mach-o-target.c: Similarly.
3156 * mach-o.c: Similarly.
3157 * mmo.c: Similarly.
3158 * pef.c: Similarly.
3159 * ppcboot.c: Similarly.
3160 * srec.c: Similarly.
3161 * xsym.c: Similarly.
3162
fab4a87f
L
31632007-02-14 H.J. Lu <hongjiu.lu@intel.com>
3164
3165 PR ld/3953
3166 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
3167 when adding default symbol.
3168
e4e0193e
AM
31692007-02-13 Alan Modra <amodra@bigpond.net.au>
3170
3171 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
3172 for branch lookup table.
3173
84f5d08e
AM
31742007-02-12 Alan Modra <amodra@bigpond.net.au>
3175
3176 * elf64-ppc.c (create_linkage_sections): Don't create
3177 .rela.rodata.brlt for --emit-relocs.
3178 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
3179 (ppc_size_one_stub): Count them. Simplify test of stub type
3180 when counting stub relocs. Set SEC_RELOC too.
3181 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
3182 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
3183
4aac632e
AM
31842007-02-12 Alan Modra <amodra@bigpond.net.au>
3185
3186 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
3187 with a zero symbol index.
3188
8da3dbc5
AM
31892007-02-12 Alan Modra <amodra@bigpond.net.au>
3190
3191 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
3192
b31847af
DB
31932007-02-05 Dave Brolley <brolley@redhat.com>
3194 Stan Cox <scox@redhat.com>
3195
3196 PR ld/3972
3197 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
3198
722b0ff7 31992007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
3200 Richard Sandiford <rsandifo@redhat.com>
3201 Stan Cox <scox@redhat.com>
3202 Nick Clifton <nickc@redhat.com>
3203 DJ Delorie <dj@redhat.com>
3204 Frank Ch. Eigler <fche@redhat.com>
3205 Ben Elliston <bje@redhat.com>
3206 Richard Henderson <rth@redhat.com>
3207
3208 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
3209 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
3210 (BFD32_BACKENDS): Add elf32-mep.lo.
3211 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
3212 (cpu-mep.lo,elf32-mep.lo): New targets.
3213 * archures.c (bfd_arch_mep): New enumerator.
3214 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
3215 (bfd_mep_arch): New external variable.
3216 (bfd_archures_list): Add bfd_mep_arch.
3217 * config.bfd: Support mep-*-elf.
3218 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
3219 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
3220 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
3221 declarations.
3222 (_bfd_target_vector): Add bfd_elf32_mep_vec and
3223 bfd_elf32_mep_little_vec.
722b0ff7
DB
3224 * mep-relocs.pl: New file.
3225 * cpu-mep.c: New file.
3226 * elf32-mep.c: New file.
3227 * bfd-in2.h: Regenerate.
e382d174 3228 * po/POTFILES.in: Regenerate.
722b0ff7
DB
3229 * libbfd.h: Regenerate.
3230 * Makefile.in: Regenerate.
3231 * configure: Regenerate.
3232
d9352518
DB
32332007-02-05 Dave Brolley <brolley@redhat.com>
3234
3235 * elflink.c (evaluate_complex_relocation_symbols): Check for
3236 STT_SRELC for global symbols.
3237 (perform_complex_relocations): Renamed to
3238 perform_complex_relocation and now examines only one relocation.
3239 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 3240 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
3241 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
3242 (OD,OS,OU): #undefs corrected to N, S and U repectively.
3243 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
3244 (complex_reloc_installation_howto): Removed.
3245 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
3246 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
3247
d9352518 32482007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
3249 Richard Sandiford <rsandifo@redhat.com>
3250 DJ Delorie <dj@redhat.com>
3251 Graydon Hoare <graydon@redhat.com>
3252 Nick Clifton <nickc@cambridge.redhat.com>
3253 Jeff Holcomb <jeffh@redhat.com>
3254 Frank Ch. Eigler <fche@redhat.com>
3255
3256 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
3257 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
3258 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
3259 * elflink.c (set_symbolValue): New static function.
d9352518
DB
3260 (resolve_symbol): Likewise.
3261 (resolve_section): Likewise.
3262 (undefined_reference): Likewise.
3263 (eval_symbol): Likewise.
3264 (evaluate_complex_relocation_symbols): Likewise.
3265 (put_value): Likewise.
3266 (get_value): Likewise.
e382d174
DB
3267 (decode_complex_addend):
3268 (bfd_elf_perform_complex_relocation): New function.
3269 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
3270 * reloc.c (BFD_RELOC_RELC): New relocation number.
3271 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 3272
f1ab2340 32732007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 3274
f1ab2340
BW
3275 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
3276 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
3277 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
3278 (elf_xtensa_allocate_got_size): Replace these with...
3279 (elf_xtensa_allocate_dynrelocs): ...this new function.
3280 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 3281
e5f131d1 32822007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 3283
e5f131d1
BW
3284 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
3285 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
3286 Set src_mask to zero.
3287 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
3288 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 3289
4608f3d9
BW
32902007-02-02 Bob Wilson <bob.wilson@acm.org>
3291
3292 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
3293 (elf_xtensa_dynamic_symbol_p): ...this.
3294
f0e6fdb2
BW
32952007-02-02 Bob Wilson <bob.wilson@acm.org>
3296
3297 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
3298 (struct elf_xtensa_link_hash_table): New.
3299 (elf_xtensa_hash_table): New.
3300 (elf_xtensa_link_hash_table_create): New.
3301 (elf_xtensa_check_relocs): Update plt_reloc_count references.
3302 Update arguments to add_extra_plt_sections.
3303 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
3304 table. Update for plt_reloc_count and add_extra_plt_sections.
3305 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
3306 argument with link info. Update calls to elf_xtensa_get_plt_section
3307 and elf_xtensa_get_gotplt_section.
3308 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
3309 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
3310 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
3311 (relax_property_section): Get sections from the hash table and update
3312 function calls.
3313 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
3314 dynobj argument with link info. Get sections for first plt chunk from
3315 the hash table.
3316 (bfd_elf32_bfd_link_hash_table_create): Define.
3317
c15f73f9
JJ
33182007-02-02 Jakub Jelinek <jakub@redhat.com>
3319
3320 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
3321 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
3322 (struct elf_symbol): Change first member into union.
3323 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
3324 internal syms. Only compare st_shndx fields.
3325 (elf_create_symbuf): New function.
3326 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
3327 for bfds, use a binary search, otherwise don't qsort symbols
3328 unnecessarily only to select which symbols are for the particular
3329 shndx.
3330
effdf42a
NC
33312007-02-01 Nick Clifton <nickc@redhat.com>
3332
3333 PR ld/3852
3334 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
3335 in the elf_link_hash_table structure.
3336
183e98be
AM
33372007-02-01 Alan Modra <amodra@bigpond.net.au>
3338
3339 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
3340 * elfxx-target.h (elf_backend_write_core_note): Define and use.
3341 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
3342 32-bit core note on 64-bit target.
3343 (elfcore_write_prstatus): Likewise.
3344 (elfcore_write_lwpstatus): Make note_name const.
3345 (elfcore_write_prfpreg): Likewise.
3346 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
3347 target.
3348 * elf32-ppc.c (ppc_elf_write_core_note): New function.
3349 (elf_backend_write_core_note): Define.
3350 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
3351 (elf_backend_write_core_note): Define.
3352
fc523535 33532007-01-31 H.J. Lu <hongjiu.lu@intel.com>
16cecee5
L
3354
3355 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
3356 (elf32_bed): Defined for elf32-us-cris.
3357
3358 * elf64-sh64.c (elf64_bed): Defined for Linux.
3359 (INCLUDED_TARGET_FILE): Removed.
3360
3361 * elfxx-target.h (elfNN_bed): Always define. Don't check
3362 INCLUDED_TARGET_FILE.
3363
c9b57b7e
DD
33642007-01-31 DJ Delorie <dj@redhat.com>
3365
3366 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
3367 message for dangerous relocs, special case the common user error.
3368
53020534
L
33692007-01-30 H.J. Lu <hongjiu.lu@intel.com>
3370
3371 * elf.c (copy_elf_program_header): Start from the first section
3372 in a segment and stop when all sections in a segment are
3373 accounted for.
3374
c7b8f16e
JB
33752007-01-29 Julian Brown <julian@codesourcery.com>
3376
3377 * bfd-in2.h: Regenerate.
3378 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
3379 instruction scanning should be done.
3380 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
3381 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
3382 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
3383 prototype.
3384 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
3385 argument.
3386 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
3387 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
3388 (elf32_vfp11_erratum_type): New enum.
3389 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
3390 veneers.
3391 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
3392 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
3393 vfp11_fix and num_vfp11_fixes fields.
3394 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
3395 vfp11_erratum_glue_size, num_vfp11_fixes fields.
3396 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
3397 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
3398 glue section.
3399 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
3400 to a section's map.
3401 (record_vfp11_erratum_veneer): Create a single veneer, and its
3402 associated symbols.
3403 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
3404 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
3405 BFDs.
3406 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
3407 required.
3408 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
3409 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
3410 (bfd_arm_vfp11_write_mask): Update write mask according to coded
3411 register number.
3412 (bfd_arm_vfp11_antidependency): New function.
3413 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
3414 (elf32_arm_compare_mapping): Declare.
3415 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
3416 BFD for potential erratum-triggering insns. Record results.
3417 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
3418 and branches to veneers have been placed in virtual memory after
3419 layout.
3420 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
3421 hash table.
3422 (elf32_arm_output_symbol_hook): Remove.
3423 (elf32_arm_write_section): Output veneers, and branches to veneers.
3424 Use maps from input sections, not output sections, for code
3425 byte-swapping.
3426 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
3427 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
3428 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
3429 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
3430
34312007-01-27 H.J. Lu <hongjiu.lu@intel.com>
83d1651b
L
3432
3433 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 3434 (INCLUDED_TARGET_FILE): Removed.
83d1651b 3435
914dfb0f
DA
34362007-01-27 Mike Frysinger <vapier@gentoo.org>
3437
3438 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
3439 (INCLUDED_TARGET_FILE): Remove.
3440
78eba9b6
DD
34412007-01-25 DJ Delorie <dj@redhat.com>
3442
3443 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
3444 R_M32C_16 or R_M32C_24 relocs.
3445
64ee10b6
NC
34462007-01-25 Nick Clifton <nickc@redhat.com>
3447
3448 PR binutils/3874
3449 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
3450 hash table was created by elf32_avr_link_hash_table_create before
3451 using it.
3452 (elf32_avr_link_hash_newfunc): New function. Just pass the call
3453 through to _bfd_elf_link_hash_newfunc.
3454 (elf32_avr_link_hash_table_create): Use
3455 elf32_avr_link_hash_newfunc instead of
3456 _bfd_elf_link_hash_newfunc.
3457 (elf32_avr_relocate_section): Check for the hash table pointer
3458 being NULL.
3459 (elf32_avr_relax_section, avr_build_one_stub,
3460 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
3461 elf32_avr_build_stubs): Likewise.
3462
40b36307
L
34632007-01-16 H.J. Lu <hongjiu.lu@intel.com>
3464
3465 PR ld/3831
3466 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
3467 argument, Elf_Internal_Sym *.
3468
3469 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
3470 symbol dynamic if info->dynamic_data is TRUE.
3471 (bfd_elf_record_link_assignment): Updated call to
3472 bfd_elf_record_link_assignment.
3473 (_bfd_elf_merge_symbol): Likewise. Always call
3474 bfd_elf_link_mark_dynamic_symbol.
3475
fc523535 34762007-01-12 H.J. Lu <hongjiu.lu@intel.com>
a454209d
L
3477
3478 * Makefile.am (BFD_LIBS): Removed.
3479 * Makefile.in: Regenerated.
3480
fc523535 34812007-01-11 H.J. Lu <hongjiu.lu@intel.com>
21e40a48
L
3482
3483 PR binutils/3631
3484 * Makefile.am (OFILES): Add @bfd64_libs@.
3485 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
3486 * Makefile.in: Regenerated.
3487
3488 * configure.in (bfd_libs): Replaced by ...
3489 (bfd64_libs): This.
3490 * configure: Regenerated.
3491
59e0647f
NS
34922007-01-11 Nathan Sidwell <nathan@codesourcery.com>
3493
3494 * elf.c (assign_file_positions_for_load_sections): We can
3495 require fewer phdrs than expected.
3496
3bdcfdf4
KH
34972007-01-08 Kazu Hirata <kazu@codesourcery.com>
3498
3499 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
3500 * bfd-in2.h: Regenerate.
3501 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
3502 bfd_mach_cpu32_fido.
3503 (m68k_arch_features): Use fido_a instead of cpu32.
3504 (bfd_m68k_compatible): Reject the combination of Fido and
3505 ColdFire. Accept the combination of CPU32 and Fido with a
3506 warning.
3507 * elf32-m68k.c (elf32_m68k_object_p,
3508 elf32_m68k_merge_private_bfd_data,
3509 elf32_m68k_print_private_bfd_data): Treat Fido as an
3510 architecture by itself.
3511
42037fe5
NC
35122007-01-08 Kai Tietz <kai.tietz@onevision.com>
3513
3514 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
3515
ebe8b991
JJ
35162007-01-05 Jakub Jelinek <jakub@redhat.com>
3517
3518 * texhex.c (first_phase): Don't fall through into the default
3519 case.
3520 (pass_over): Replace abort () calls with return FALSE. Fix
3521 buffer overflow.
3522
b327f31f
AM
35232007-01-04 Jie Zhang <jie.zhang@analog.com>
3524
3525 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
3526 SEC_EXCLUDE on zero size .eh_frame.
3527
10a2343e 3528For older changes see ChangeLog-2006
56882138
AM
3529\f
3530Local Variables:
3531mode: change-log
3532left-margin: 8
3533fill-column: 74
3534version-control: never
3535End:
This page took 0.563986 seconds and 4 git commands to generate.