]> Git Repo - binutils.git/blame - bfd/ChangeLog
* elf.c (elfcore_grok_ppc_vmx): New function.
[binutils.git] / bfd / ChangeLog
CommitLineData
97753bd5
AM
12007-10-25 Carlos Eduardo Seo <[email protected]>
2
3 * elf.c (elfcore_grok_ppc_vmx): New function.
4 (elfcore_grok_note): Handle NT_PPC_VMX.
5 (elfcore_write_ppc_vmx): New function.
6 * elf-bfd.h (elfcore_write_ppc_vmx): Declare.
7
dd323078
AM
82007-10-24 Alan Modra <[email protected]>
9
10 * Makefile.am: Run "make dep-am".
11 * Makefile.in: Regenerate.
12 * po/SRC-POTFILES.in: Regenerate.
13
f94498ff
AM
142007-10-23 Alan Modra <[email protected]>
15
16 * elf64-ppc.c (ppc_build_one_stub): Don't duplicate relocs
17 emitted for ".brlt" entries.
18 (toc_adjusting_stub_needed): Don't treat ".fixup" specially here..
19 (ppc64_elf_next_input_section): ..instead do so here.
20
bfff1642
NC
212007-10-19 Nick Clifton <[email protected]>
22
23 * config.bfd: Recognise am34-linux-gnu target.
24 * reloc.c: Add BFD_RELOC_MN10300_SYM_DIFF relocation.
25 * bfd-in2.h: Regenerate.
26 * libbfd.h: Regenerate.
27 * elf-m10300.c (elf_mn10300_howto): Add R_MN10300_SYM_DIFF.
28 (mn10300_reloc_map): Likewise.
29 (mn10300_elf_check_relocs): Do not create dynamic relocs for
30 symbol differences or relocations against absolute symbols.
31 (mn10300_elf_final_link_relocate): Likewise.
32 Handle R_MN10300_SYM_DIFF relocs.
33 (mn10300_elf_relocate_section): Fix for creating local copys of
34 dynamic relocs.
35 (mn10300_elf_relax_delete_bytes): Adjust symbols at the end of the
36 region. Adjust the size of function symbols.
37 (mn10300_elf_relax_section): Ignore symbols that are in discarded
38 sections.
39
603b7257
NC
402007-10-19 Nick Clifton <[email protected]>
41
42 * elf-m10300.c: Convert to ISO C.
43
13285a1b
AM
442007-10-18 H.J. Lu <[email protected]>
45 Alan Modra <[email protected]>
46
47 PR ld/4424
48 * config.bfd (targ_selvecs): Add bfd_elf64_alpha_vec for
49 alpha/FreeBSD. Add bfd_elf64_sparc_vec for sparc64/FreeBSD.
50 Add bfd_elf32_i386_vec and bfd_efi_app_ia32_vec for i386/FreeBSD.
51 (targ64_selvecs): Set for i386/FreeBSD.
52 * elf-bfd.h (elf_backend_data): Add relocs_compatible.
53 (_bfd_elf_default_relocs_compatible): Declare.
54 (_bfd_elf_relocs_compatible): Declare.
55 * elfxx-target.h (elf_backend_relocs_compatible): Define.
56 (elfNN_bed): Init new relocs_compatible field.
57 * elflink.c (_bfd_elf_default_relocs_compatible): New function.
58 (_bfd_elf_relocs_compatible): New function.
59 (elf_link_add_object_symbols): Call bed->relocs_compatible.
60 * elf32-i386.c (elf_backend_relocs_compatible): Define.
61 * elf64-alpha.c: Likewise.
62 * elf64-sparc.c: Likewise.
63 * elf64-x86-64.c: Likewise.
64
ae326da8
BW
652007-10-16 Bob Wilson <[email protected]>
66
67 * elf32-xtensa.c (relax_section): Check for a reference to a discarded
68 DWARF section and anticipate its replacement with the kept section.
69
a3ef2d63
BW
702007-10-16 Bob Wilson <[email protected]>
71
72 * elf32-xtensa.c (elf_xtensa_discard_info_for_section): Remove
73 unnecessary size variables. Set sec->rawsize.
74 (relax_section, relax_property_section): Likewise.
75
73c5c7a8
BW
762007-10-16 Bob Wilson <[email protected]>
77
78 * section.c (struct bfd_section): Clarify comment for rawsize field.
79 * bfd-in2.h: Regenerate.
80
1dd2625f
BW
812007-10-16 Bob Wilson <[email protected]>
82
83 * elflink.c (_bfd_elf_check_kept_section): Use the section rawsize
84 values if they are set.
85
8bc9c892
NC
862007-10-16 Nick Clifton <[email protected]>
87
88 PR 5146
89 * configure.in (AC_CHECK_HEADERS): Add alloca.h
90 * configure: Regenerate.
91 * config.in: Regenerate.
92 * som.c: Replace alloca-conf.h inclusion with code recommended in
93 autoconf documentation.
94 * elf64-hppa.c: Likewise.
95
504b7d20
NC
962007-10-16 Nick Clifton <[email protected]>
97
98 * configure.in (--enable-elf-stt-common): New configure
99 option. If enabled then the tools can generate symbols with
100 the ELF STT_COMMON type.
101 * config.in: Regenerate.
102 * configure: Regenerate.
103 * elf.c (swap_out_syms): If USE_STT_COMMON is defined then set
104 the type of emitted common symbols to STT_COMMON.
105 * elfcode.h (elf_slurp_symbol_table): Accept STT_COMMON symbol
106 types.
107
b1657152
AM
1082007-10-15 Alan Modra <[email protected]>
109
110 * coff-arm.c (arm_emit_base_file_entry): Check fwrite return value.
111 Return status. Adjust callers.
112 * coff-mcore.c (mcore_emit_base_file_entry): Likewise.
113 * coff-ppc.c (write_base_file_entry): New function.
114 (coff_ppc_relocate_section): Use it.
115 * elf32-arm.c (find_thumb_glue): Check asprintf return status.
116 (find_arm_glue): Likewise.
117 * vms-misc.c (_bfd_vms_output_flush): Check fwrite return value.
118
4b93929b
NC
1192007-10-12 Nick Clifton <[email protected]>
120
121 PR 5160
122 * elflink.c (eval_symbol): Remove bufsz variable and use
123 sizeof(symbuf) where necessary.
124
e9deb29d
NC
1252007-10-12 M R Swami Reddy <[email protected]>
126
127 * elf32-cr16.c (elf32_cr16_relax_section): Fix condition check typo.
128
720199d6
DJ
1292007-10-12 Daniel Jacobowitz <[email protected]>
130
131 * elfxx-mips.c (mips_elf_sort_hash_table_f): Handle forced
132 local symbols specially.
133 (mips_elf_set_global_got_offset): Skip forced local symbols.
134
971d4640
AM
1352007-10-12 Alan Modra <[email protected]>
136
137 * elf.c (elfcore_grok_prxfpreg): Fix comment typo.
138
f210dcff
L
1392007-10-10 H.J. Lu <[email protected]>
140
141 * elf.c (get_program_header_size): Always add a PT_GNU_RELRO
142 segment for -z relro.
143 (_bfd_elf_map_sections_to_segments): Make a PT_GNU_RELRO
144 segment only when needed.
145
9b7f5d20
BW
1462007-10-05 Bob Wilson <[email protected]>
147
148 * elf32-xtensa.c (relax_section): Call pin_internal_relocs when
149 changing a relocation's offset. Adjust call to translate_reloc. Do
150 not add a fix record for a DIFF reloc. For other relocs, only add a
151 fix record if the translated target is in a different object file;
152 otherwise, just update the relocation. Call pin_internal_relocs when
153 updating a reloc but not when adding a fix record.
154 (translate_reloc): Get the target section from a new argument, not
155 from the relocation. Change check for relaxable sections to an
156 assertion. Compute separate offset adjustments for the base symbol
157 and the addend, and set the new relocation's addend correctly. Return
158 the new target section.
159
768a5a74
BW
1602007-10-05 Bob Wilson <[email protected]>
161
162 * elf32-xtensa.c (elf_xtensa_relocate_section): Remove updates of
163 r_type and howto after calling do_fix_for_relocateable_link and
164 do_fix_for_final_link.
165
03669f1c
BW
1662007-10-05 Bob Wilson <[email protected]>
167
168 * elf32-xtensa.c (removed_by_actions): New.
169 (offset_with_removed_text): Reimplement using removed_by_actions.
170 (offset_with_removed_text_before_fill): Delete.
171 (relax_property_section): Use removed_by_actions. Rearrange logic.
172 (relax_section_symbols): Likewise.
173
0f5f1638
BW
1742007-10-04 Bob Wilson <[email protected]>
175
176 * elf32-xtensa.c (reloc_bfd_fix_struct): Delete target_abfd field.
177 (reloc_bfd_fix_init): Remove target_abfd argument.
178 (relax_section, move_literal): Adjust calls to reloc_bfd_fix_init.
179
1f7a4e42
NC
1802007-10-04 Nick Clifton <[email protected]>
181
182 PR linker/5099
183 * elf64-x86-64.c (elf64_x86_64_check_relocs): Add missing
184 apostrophe to error message.
185
7fac7ff4
NC
1862007-10-01 M R Swami Reddy <[email protected]>
187
188 * elf32-cr16.c: Fixed DISP8, DISP20 and IMM20 relocations at
189 final relocation phase.
190 Added the below relaxations: IMM32 -> IMM20/IM16 -> IMM4.
191 * reloc.c: Added 3 new relocations: R_CR16_SWITCH8,
192 R_CR16_SWITCH16, R_CR16_SWITCH32.
193 * libbfd.h: Regenerate.
194 * bfd-in2.h: Regenerate.
195
a0c8462f
AM
1962007-09-30 Alan Modra <[email protected]>
197
198 * elflink.c: Formatting.
199
0f02bbd9
AM
2002007-09-29 Alan Modra <[email protected]>
201
202 * elflink.c (resolve_symbol): Handle symbols in SEC_MERGE
203 sections. Don't test symbol st_shndx. Don't bother with
204 bfd_link_hash_common symbols. Print longs rather than ints
205 in debug messages.
206 (eval_symbol): Replace "sym" and "advanced" params with "symp".
207 Replace "addr" and "section_offset" params with "dot". Don't
208 cast bfd_vma values to signed, cast them to bfd_signed_vma.
209 (bfd_elf_perform_complex_relocation): Delete "output_bfd", "info",
210 "local_syms" and "local_sections" params. Add "relocation".
211 Delete code calculating relocation value.
212 (evaluate_complex_relocation_symbols): Delete function. Fold into..
213 (elf_link_input_bfd): ..existing code examining relocs.
214 * elf-bfd.h (bfd_elf_perform_complex_relocation): Update prototype.
215 * elf32-mep.c (mep_elf_check_relocs): Delete function.
216 (mep_elf_gc_sweep_hook, mep_elf_gc_mark_hook): Likewise.
217 (mep_elf_object_p): Don't set elf_bad_symtab.
218 (elf_backend_check_relocs): Don't define.
219 (elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook): Likewise.
220 (elf_backend_can_gc_sections, USE_RELA): Likwise.
221 (mep_elf_relocate_section): Move bfd_elf_perform_complex_relocation
222 call after we have calculated reloc value. Delete local sym
223 debug code. Use RELOC_FOR_GLOBAL_SYMBOL. Delete addend
224 adjusting code..
225 (elf_backend_rela_normal): ..instead define this.
226
5582a088
AM
2272007-09-28 Alan Modra <[email protected]>
228
229 * elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
230 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
231 * elf32-avr.c (elf32_avr_check_relocs): Likewise.
232 * elf32-bfin.c (bfinfdpic_check_relocs): Likewise.
233 * elf32-cris.c (cris_elf_check_relocs): Likewise.
234 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
235 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
236 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
237 * elf32-frv.c (_frvfdpic_check_discarded_relocs): Likewise.
238 (elf32_frv_check_relocs): Likewise.
239 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
240 * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
241 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
242 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
243 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
244 * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
245 * elf32-mt.c (mt_elf_check_relocs): Likewise.
246 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
247 * elf32-sh.c (sh_elf_check_relocs): Likewise.
248 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
249 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
250 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
251 (score_elf_local_relocation_p): Likewise.
252 (_bfd_score_elf_relocate_section): Likewise.
253 (score_elf_final_link_relocate): Likewise.
254
d17e0c6e
JB
2552007-09-26 Jan Beulich <[email protected]>
256
257 * elf32-i386.c (elf_i386_check_relocs): Revert NULL pointer
258 check for R_386_GNU_VTINHERIT.
259 * elf-m10300.c (mn10300_elf_check_relocs): Check for NULL
260 pointer for R_xxx_GNU_VTENTRY.
261 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
262 * elf32-bfin.c (bfin_check_relocs): Likewise.
263 (bfinfdpic_check_relocs): Likewise.
264 * elf32-cris.c (cris_elf_check_relocs): Likewise.
265 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
266 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
267 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
268 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
269 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
270 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
271 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
272 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
273 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
274 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
275 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
276 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
277 * elf32-s390.c (elf_s390_check_relocs): Likewise.
278 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
279 * elf32-sh.c (sh_elf_check_relocs): Likewise.
280 * elf32-v850.c (v850_elf_check_relocs): Likewise.
281 * elf32-vax.c (elf_vax_check_relocs): Likewise.
282 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
283 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
284 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
285 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
286 * elf64-s390.c (elf_s390_check_relocs): Likewise.
287 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
288 * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
289 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
290 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
291
8977835c
AM
2922007-09-26 Alan Modra <[email protected]>
293
294 * elflink.c (set_symbol_value): Add isymbuf and locsymcount
295 params. Change symidx to a size_t. Don't access past end
296 of symbol buffer.
297 (resolve_symbol): Add isymbuf param and use instead of
298 finfo->internal_syms.
299 (eval_symbol, evaluate_complex_relocation_symbols): Likewise.
300 (elf_link_input_bfd): Don't read symbols specially for
301 evaluate_complex_relocation_symbols.
302
06dcabb0
NC
3032007-09-26 Tristan Gingold <[email protected]>
304
305 * som.c (som_get_reloc_upper_bound): If there are no relocs return
306 enough space to hold a NULL pointer.
307
2e5b2d74
AM
3082007-09-26 Alan Modra <[email protected]>
309
310 * elf64-ppc.c (ppc_build_one_stub): Correct rel_hdr.sh_size.
311
98e89a7d
AM
3122007-09-25 Alan Modra <[email protected]>
313
2cb5950e
AM
314 * elf32-spu.c (struct spu_link_hash_table): Add ovly_load_r_symndx.
315 (spu_elf_size_stubs): Count stub relocs.
316 (write_one_stub): Emit relocs on overlay call stubs.
317
98e89a7d
AM
318 * elf32-spu.c (struct spu_link_hash_table): Add "stubs".
319 (spu_elf_link_hash_table_create): Init new field.
320 (spu_elf_size_stubs): Store sorted stub syms in new htab field
321 rather than local var.
322 (spu_elf_build_stubs): Iterate over htab stubs rather than
323 hash traversal.
324 (struct stubarr): Delete.
325 (allocate_spuear_stubs, populate_stubs, write_one_stub): Adjust.
326
e970b90a
DJ
3272007-09-24 Daniel Jacobowitz <[email protected]>
328
329 * elf.c (assign_file_positions_for_load_sections): Trust
330 p_align_valid.
331 (copy_elf_program_header): Copy PT_NULL segments.
332
fad9eaf0
AM
3332007-09-24 Trevor Smigiel <[email protected]>
334
335 * elf32-spu.c (is_indirect_branch): New function.
336 (find_function_stack_adjust): End scan on hitting indirect branch.
337 (sum_stack): Cast %v arg to correct type.
338
10569aeb
L
3392007-09-21 H.J. Lu <[email protected]>
340
341 * Makefile.am: Run "make dep-am".
342 * Makefile.in: Regenerated.
343
4ab20029
NC
3442007-09-21 Doug Kwan <[email protected]>
345
346 * Makefile.am (BFD32_LIBS): Add arange-set.lo.
347 (BFD32_LIBS_CFILES): Add arange-set.c.
348 (SOURCE_HFILES): Add arange-set.h
349 (dwarf2.lo): Add dependency upon arange-set.h.
350 (arange-set.lo): New target.
351 * Makefile.in: Regenerate.
352 * arange-set.c: New file.
353 * arange-set.h: New file.
354 * dwarf2.c: Include arange-set.h.
355 (struct dwarf2_debug) Add new fields comp_unit_count and
356 comp_unit_arange_set.
357 (struct comp_unit) Replace field arange with a new field arange_set.
358 (dwarf2_arange_set_allocate, dwarf2_arange_set_deallocate,
359 dwarf2_combine_arange_value, dwarf2_arange_set_new,
360 dwarf2_arange_set_with_value_new, dwarf2_comp_unit_arange_add): New
361 functions to utilize arange set in dwarf2.c.
362 (arange_add): Formatting change for a line longer than 80 characters.
363 (decode_line_info): Replace call target arange_add with
364 dwarf2_comp_unit_arange_add.
365 (read_rangelist_insert_arange_list,
366 read_rangelist_comp_unit_arange_add): New functions used as callbacks
367 for read_rangelist.
368 (read_rangelist): Change interface to accept a callback and data to
369 allow caller to select the action peformed on a new range list read.
370 (scan_unit_for_symbols): Use new interface of read_rangelist.
371 (parse_comp_unit): Create an arange set for each new comp unit. Use new
372 interface of read_rangelist. Replace call to arange_add with that to
373 dwarf2_comp_unit_arange_add.
374 (comp_unit_contains_address): Replace sequential search with a call to
375 arange_set_lookup_address, which can handles large set efficiently.
376 (stash_copy_local_aranges, stash_maybe_enable_arange_set,
377 stash_find_nearest_line_fast): New functions maintaining and using a
378 valued global arange set for all compilation units to speed up
379 bfd_dwarf2_find_nearest_line.
380 (find_line): Use global arange set. Replace sequential search over all
381 compilation units with a call to stash_find_nearest_line_fast. Add
382 book keeping to count number of compilation units. Replace empty
383 arange list test with a call to arange_set_empty_p.
384
6119d252
NC
3852007-09-21 Olivier Hainque <[email protected]>
386 Tristan Gingold <[email protected]>
387
388 * syms.c (_bfd_stab_section_find_nearest_line): Look at the
389 specific SOM sections for stabs if the regular ones are not found.
390 * som.h (struct somdata): Add a line_info field, to be used by
391 som_find_nearest_line.
392 * som.c (som_find_nearest_line): Implement using the bfd stabs
393 function above.
394
b55fd4d4
DJ
3952007-09-19 Daniel Jacobowitz <[email protected]>
396
397 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make sure .got
398 will be output.
399
a69898aa
AM
4002007-09-19 Alan Modra <[email protected]>
401 Doug Kwan <[email protected]>
402
403 * bfd-in.h (bfd_hash_insert): Declare.
404 * bfd-in2.h: Regenerate.
405 * hash.c (bfd_hash_insert): New function. Split out from..
406 (bfd_hash_lookup): ..here.
407 * merge.c (sec_merge_hash_lookup): Use bfd_hash_insert.
408
14b1c01e
AM
4092007-09-18 Alan Modra <[email protected]>
410
411 * elf.c (bfd_section_from_shdr): Check bfd_alloc return.
412 (elfcore_write_note): Check realloc return.
413 * elflink.c (_bfd_elf_link_find_version_dependencies): Check
414 bfd_zalloc return.
415 (_bfd_elf_link_assign_sym_version): Check bfd_malloc return.
416 (elf_link_add_object_symbols): Likewise.
417 (struct hash_codes_info): New.
418 (elf_collect_hash_codes): Return bfd_malloc error.
419 (struct collect_gnu_hash_codes): Add "error".
420 (elf_collect_gnu_hash_codes): Return bfd_malloc error.
421 (bfd_elf_size_dynamic_sections): Check return status of
422 _bfd_elf_link_find_version_dependencies.
423 (bfd_elf_size_dynsym_hash_dynstr): Adjust for elf_collect_hash_codes
424 and elf_collect_gnu_hash_codes changes.
425 (elf_sym_name_compare): Formatting.
426 (elf_fixup_link_order): Use bfd_malloc, not xmalloc.
427
b10a8ae0
L
4282007-09-17 H.J. Lu <[email protected]>
429
430 PR binutils/3281
431 PR binutils/5037
432 * elf-bfd.h (elf_obj_tdata): Remove relro.
433
434 * elf.c (get_program_header_size): Check info->relro instead
435 of elf_tdata (abfd)->relro.
436 (_bfd_elf_map_sections_to_segments): Likewise.
437 (assign_file_positions_for_load_sections): Don't set
438 PT_GNU_RELRO segment alignment here.
439 (assign_file_positions_for_non_load_sections): Properly set up
440 PT_GNU_RELRO segment for copying executable/shared library.
441 (rewrite_elf_program_header): Remove PT_GNU_RELRO segment.
442 (copy_elf_program_header): Set p_size and p_size_valid fields for
443 PT_GNU_RELRO segment.
444
041a1845
NC
4452007-09-17 Nick Clifton <[email protected]>
446
447 * po/fi.po: New Finnish translation.
448 * po/es.po: Updated Spanish translation.
449 * configure.in (ALL_LINGUAS): Add fi.
450 * configure: Regenerate.
451 * po/bfd.pot: Regenerate.
452
0bc43230
AM
4532007-09-15 Nick Clifton <[email protected]>
454
455 * bfd.c (_bfd_default_error_handler): fflush stdout.
456
3ea6b9a5
AM
4572007-09-14 Alan Modra <[email protected]>
458
459 * opncls.c (find_separate_debug_file): Ensure bfd_set_error has
460 been called on all error return paths.
461 (bfd_fill_in_gnu_debuglink_section): Use bfd_malloc, not malloc.
462 Clear padding after filename
463
5a1dcb7e
AM
4642007-09-14 Alan Modra <[email protected]>
465
466 * format.c (bfd_check_format_matches): Record matching targets even
467 when "matching" is NULL to allow bfd_associated_vector matches.
468 Consolidate error return code. Consolidate ok return code. Always
469 restore original target and format on error.
470
bce5e5c9
AM
4712007-09-14 Alan Modra <[email protected]>
472
473 * configure.in: Delete BFD_HOST_LONG_LONG and bfd checks for
474 long long. Partly revert 2007-07-12 change, so that
475 BFD_HOST_64BIT_LONG and BFD_HOST_64BIT_LONG_LONG are set
476 independent of "void *" size.
477 * configure: Regenerate.
478 * config.in: Regenerate.
479 * Makefile.in: Regenerate.
480
01a3c213
AM
4812007-09-12 Alan Modra <[email protected]>
482
483 * elf-bfd.h (struct elf_backend_data): Delete elf_backend_sprintf_vma
484 and elf_backend_fprintf_vma.
485 (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
486 * elf.c (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
487 * elfxx-target.h (elf_backend_sprintf_vma): Don't define.
488 (elf_backend_fprintf_vma): Likewise.
489 (elfNN_bed): Don't init removed fields.
490 * bfd.c (is32bit): New function.
491 (bfd_sprintf_vma, bfd_fprintf_vma): Use the above.
492
8d100c32
KH
4932007-09-11 Nathan Sidwell <[email protected]>
494
495 * archures.c: Add bfd_mach_mcf_isa_c_nodiv,
496 bfd_mach_mcf_isa_c_nodiv_mac & bfd_mach_mcf_isa_c_nodiv_emac.
497 * ieee.c (ieee_write_processor): Update coldfire architecture
498 list.
499 * bfd-in2.h: Rebuilt.
500 * cpu-m68k.c (arch_info_struct): Add isa_c nodiv architectures.
501 (m68k_arch_features): Likewise.
502 * elf32-m68k.c (elf32_m68k_object_p): Add EF_M68K_CF_ISA_C_NODIV.
503 (elf32_m68k_print_private_bfd_data): Likewise.
504
2f629d23
JB
5052007-09-11 Jan Beulich <[email protected]>
506
507 * elf64-i386.c (elf64_i386_tls_transition): Remove redundant 'const'.
508 * elf64-x86_64.c (elf64_x86_64_tls_transition): Likewise.
509
2b953679
AM
5102007-09-08 Alan Modra <[email protected]>
511
512 * elf64-ppc.c (func_desc_adjust): When resolving undefined
513 references to dot-symbols, transfer def_regular and
514 def_dynamic from the descriptor symbol.
515
78b8434d
AM
5162007-09-08 Alan Modra <[email protected]>
517
518 * config.bfd: Set want64 for spu-*-elf.
519
98ece1b3
AM
5202007-09-08 Alan Modra <[email protected]>
521
522 PR ld/2864, ld/5006
523 * elf.c (special_sections): Comment typo.
524 (elf_fake_sections): Force SHT_PROGBITS for sections that are
525 SHT_NOBITS if BFD section flags say they have contents.
526
5dff4664
MS
5272007-09-04 Michael Snyder <[email protected]>
528
529 * elf32-bfin.c (howto_table): Cut and paste error?
530 Name field of reloc is wrong.
531
b427ea91
AM
5322007-09-04 Alan Modra <[email protected]>
533
534 * elf32-spu.c (elf_howto_table): Formatting.
535
aff90a5f
L
5362007-09-02 H.J. Lu <[email protected]>
537
538 PR ld/4986
539 * dwarf2.c (new_line_sorts_after): Undo the last change.
540 (add_line_info): Only keep the last entry with the same address
541 and end sequence.
542
39934745
L
5432007-08-31 H.J. Lu <[email protected]>
544
545 PR ld/4986
546 * dwarf2.c (new_line_sorts_after): Also compare line number.
547
3a4743fe
NC
5482007-08-31 Jesse Michael <[email protected]>
549
550 * mach-o.c (bfd_mach_o_make_bfd_section): Fix test for non
551 zerofill sections.
552
5c5d6806
BW
5532007-08-28 David Heine <[email protected]>
554
555 * elf32-xtensa.c (compute_ebb_actions): Update removed_bytes when
556 narrowing instructions.
557
7f6a71ff 5582007-08-28 Mark Shinwell <[email protected]>
39934745 559 Joseph Myers <[email protected]>
7f6a71ff
JM
560
561 * elf32-arm.c (elf32_arm_compare_mapping): Compare first on vma,
562 then on type.
563
0b3e17e9
NC
5642007-08-28 Robert Sebastian Gerus <[email protected]>
565
566 * config.bfd: Add support for i[3-7]86-*-dragonfly*.
567 * configure.in: Likewise.
568 * configure: Regenerate.
569
b15fa79e
AM
5702007-08-25 Ulrich Weigand <[email protected]>
571 Alan Modra <[email protected]>
572
573 * elf.c (elfcore_grok_spu_note): New function.
574 (elf_parse_notes): Call it.
575
534a31f6
L
5762007-08-24 H.J. Lu <[email protected]>
577
578 * elf64-x86-64.c (elf64_x86_64_relocate_section): Adjust
579 indentation.
580
4a6636fb
PA
5812007-08-24 Pedro Alves <[email protected]>
582
583 * elf.c (elfcore_grok_win32pstatus): Remove HAVE_WIN32_PSTATUS_T
584 guard. Make it host independent.
585 (elfcore_grok_note): Remove HAVE_WIN32_PSTATUS_T guard around
586 NT_WIN32PSTATUS.
587
718175fa
JK
5882007-08-24 Jan Kratochvil <[email protected]>
589
82fc7765
JK
590 * elf-bfd.h (struct elf_obj_tdata): New BUILD_ID_SIZE, BUILD_ID.
591 * elf.c (elfcore_read_notes): Split to ...
718175fa
JK
592 (elf_read_notes) ... here ...
593 (elf_parse_notes): ... and here. Check `bfd_get_format (abfd)' with
594 the former subfunctions called only for BFD_CORE.
595 Call ELFOBJ_GROK_GNU_NOTE for BFD_OBJECT files with the owner "GNU".
596 (_bfd_elf_make_section_from_shdr): Call ELF_PARSE_NOTES for SHT_NOTEs.
597 (bfd_section_from_phdr): Update the call for renamed ELFCORE_READ_NOTES.
598 (elfobj_grok_gnu_build_id, elfobj_grok_gnu_note): New functions.
599 Code advisory: Roland McGrath
600
f1187097
DJ
6012007-08-24 Daniel Jacobowitz <[email protected]>
602
603 * elf64-mips.c (elf_backend_sign_extend_vma): Define.
604
a30e5f5f
AM
6052007-08-24 Alan Modra <[email protected]>
606
607 * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Warning fix.
608
a351bca6
L
6092007-08-23 H.J. Lu <[email protected]>
610
611 * Makefile.am: Run "make dep-am".
612 * Makefile.in: Regenerated.
613
142411ca
L
6142007-08-23 H.J. Lu <[email protected]>
615
616 * elf32-i386.c: Include "bfd_stdint.h".
617 (elf_i386_rtype_to_howto): New function.
618 (elf_i386_info_to_howto_rel): Use it.
619 (x86_64_opcode16): New union type.
620 (elf_i386_check_tls_transition): New function.
621 (elf_i386_tls_transition): Updated to check transition and
622 issue an error if a transition isn't supported.
623 (elf_i386_check_relocs): Return FALSE if
624 elf_i386_tls_transition returns FALSE.
625 (elf_i386_gc_sweep_hook): Likewise.
626 (elf_i386_relocate_section): Likewise. Remove BFD_ASSERT
627 on TLS transitions.
628
629 * elf64-x86-64.c: Include "bfd_stdint.h".
630 (x86_64_opcode16): New union type.
631 (x86_64_opcode32): Likewise.
632 (elf64_x86_64_check_tls_transition): New function.
633 (elf64_x86_64_tls_transition): Updated to check transition and
634 issue an error if a transition isn't supported.
635 (elf64_x86_64_check_relocs): Return FALSE if
636 elf64_x86_64_tls_transition returns FALSE.
637 (elf64_x86_64_gc_sweep_hook): Likewise.
638 (elf64_x86_64_relocate_section): Likewise. Remove BFD_ASSERT
639 on TLS transitions.
640
eae50df2
L
6412007-08-22 H.J. Lu <[email protected]>
642
643 * elfxx-ia64.c: Convert to ISO C90 prototypes.
644 (elfNN_hpux_backend_section_from_bfd_section): Make it static.
645
9a2e389a
L
6462007-08-22 H.J. Lu <[email protected]>
647
648 * elf64-x86-64.c: Remove trailing whitespace.
649 * elfxx-ia64.c: Likewise.
650
2f3bf80a
L
6512007-08-21 H.J. Lu <[email protected]>
652
653 * elf32-i386.c (elf_i386_tls_transition): Accept a pointer
654 to ELF hash entry instead of an integer for local test.
655 (elf_i386_check_relocs): Updated.
656 (elf_i386_gc_sweep_hook): Likewise.
657 (elf_i386_relocate_section): Likewise.
658
659 * elf64-x86-64.c (elf64_x86_64_tls_transition): Accept a
660 pointer to ELF hash entry instead of an integer for local
661 test.
662 (elf64_x86_64_check_relocs): Updated.
663 (elf64_x86_64_gc_sweep_hook): Likewise.
664 (elf64_x86_64_relocate_section): Likewise.
665
3bfa9139
L
6662007-08-20 H.J. Lu <[email protected]>
667
668 * elf32-i386.c (elf_i386_tls_transition): Break long line.
669 * elf64-x86-64.c (elf64_x86_64_tls_transition): Likewise.
670
19ec0de7
JK
6712007-08-20 Jan Kratochvil <[email protected]>
672
673 * elfxx-target.h [ELF_COMMONPAGESIZE && ELF_MAXPAGESIZE]
674 (ELF_MINPAGESIZE): Fixed its size guess. Sanity checked its size.
675 (ELF_COMMONPAGESIZE, ELF_MAXPAGESIZE): Sanity checked their size.
676
75ea2736
NC
6772007-08-20 Nick Clifton <[email protected]>
678
679 * elflink.c (elf_fixup_link_order): Rewrite conversion of
680 s->alignment_power into an offset mask in order to avoid a gcc
681 error message.
682
7e976ae4
JJ
6832007-08-17 Jakub Jelinek <[email protected]>
684
685 * config.bfd: Handle sparcv*-*-linux-* the same as sparc-*-linux-*.
686 Change sparc64-*-linux-* to sparc64*-*-linux-*.
687
e9f27433
AM
6882007-08-17 Alan Modra <[email protected]>
689
690 * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
691
2b05f1b7
L
6922007-08-16 H.J. Lu <[email protected]>
693
694 * elf.c: Revert last change.
695
94b11780
L
6962007-08-16 H.J. Lu <[email protected]>
697
698 * elf.c (get_segment_type): Change PT_GNU_STACK to PT_GNU_ATTR.
699 (bfd_section_from_phdr): Likewise.
700 (get_program_header_size): Likewise. Add a PT_GNU_ATTR segment
701 if there is an attribute section.
702 (_bfd_elf_map_sections_to_segments): Likewise.
703 (IS_SECTION_IN_INPUT_SEGMENT): Likewise.
704
a3fadc9a
L
7052007-08-14 H.J. Lu <[email protected]>
706
707 PR ld/4918
708 * elf32-i386.c (elf_i386_relocate_section): Allow R_386_PC32
709 on ___tls_get_addr for GD->LE/LD->LE transitions when not
710 building shared library.
711
712 * elf64-x86-64.c (elf64_x86_64_relocate_section): Allow
713 R_X86_64_PC32 on __tls_get_addr for GD->LE/LD->LE transitions
714 when not building shared library.
715
3fec76aa
JK
7162007-08-14 Jan Kratochvil <[email protected]>
717
718 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): LOADBASE is now
719 initialized only on the first PT_LOAD. New variable LOADBASE_SET.
720 Removed PF_R checking for IA-64 vDSOs as redundant now.
721 Code advisory: Roland McGrath
722
8275b357
RS
7232007-08-13 Richard Sandiford <[email protected]>
724
725 * elfxx-mips.c (mips_elf_link_hash_table): Add computed_got_sizes.
726 (mips_elf_record_global_got_symbol): Increment local_gotno for
727 each forced-local symbol.
728 (_bfd_mips_elf_check_relocs): Pass forced-local call symbols to
729 mips_elf_record_global_got_symbol for VxWorks too.
730 (_bfd_mips_elf_always_size_sections): Set computed_got_sizes
731 to true after computing the GOT size.
732 (_bfd_mips_elf_hide_symbol): Increase local_gotno whenever
733 got.offset == 1. Only adjust global_gotno if computed_got_sizes.
734 For VxWorks, add a local entry when hiding a symbol that needs a
735 plt but has not been marked as needing a global got entry.
736 (_bfd_mips_elf_link_hash_table_create): Set computed_got_sizes to
737 false.
738
649aeae3
DJ
7392007-08-12 Daniel Jacobowitz <[email protected]>
740
741 * coffgen.c (coff_get_normalized_symtab): Correct cast.
742
3dea8fca
AM
7432007-08-13 Alan Modra <[email protected]>
744
745 * elf.c (elf_modify_segment_map): Add remove_empty_load param.
746 Don't remove empty PT_LOAD header if false.
747 (_bfd_elf_map_sections_to_segments): If user phdrs, pass false
748 to elf_modify_segment_map.
749 (assign_file_positions_for_load_sections): Pass false to
750 elf_modify_segment_map.
751
ac2df442
AM
7522007-08-13 Alan Modra <[email protected]>
753
754 * elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define.
755 Update stub comments.
756 (build_plt_stub): Build two variants, one without "addis".
757 (ppc_build_one_stub): Build stubs without "addis" if possible.
758 (ppc_size_one_stub): Size new stubs.
759
2f964f43
RS
7602007-08-11 Richard Sandiford <[email protected]>
761
762 * config.bfd (sh-*-vxworks): Define targ_underscore to "yes".
763
6b8f0fd5
MS
7642007-08-09 Michael Snyder <[email protected]>
765
766 * aoutx.h (aout_get_external_symbols): Return if count is zero.
767
6d33f217
L
7682007-08-09 H.J. Lu <[email protected]>
769
770 PR ld/4909
771 * elf.c (print_segment_map): New function.
772 (assign_file_positions_for_load_sections): Call print_segment_map
773 when a section can't be allocated in segment.
774
c309eac2
JK
7752007-08-09 Jan Kratochvil <[email protected]>
776
777 * opncls.c (bfd_openr_iovec): Fix the OPEN parameter macro expansion.
778
e6902efc
NC
7792007-08-07 Nick Clifton <[email protected]>
780
781 * po/bfd.pot: Updated template.
782 * po/BLD-POTFILES.in: Regenerate.
783
d5191d0c
AM
7842007-08-07 Alan Modra <[email protected]>
785
786 * elf.c: (_bfd_elf_make_section_from_phdr): Properly handle
787 bss segments.
788
5eda1c47
DJ
7892007-08-06 Daniel Jacobowitz <[email protected]>
790
791 * Makefile.am (BUILD_HFILES): Clean bfd_stdint.h.
792 * Makefile.in: Regenerated.
793
be118e79
DJ
7942007-08-06 Daniel Jacobowitz <[email protected]>
795
796 * configure.in: Update version to 2.18.50.
797 * configure: Regenerated.
798
bd97cb95
DJ
7992007-08-06 Paul Brook <[email protected]>
800
801 * elf32-arm.c (elf32_arm_link_hash_entry): Add
802 plt_maybe_thumb_refcount.
803 (elf32_arm_link_hash_newfunc): Set plt_maybe_thumb_refcount.
804 (elf32_arm_copy_indirect_symbol): Ditto.
805 (elf32_arm_adjust_dynamic_symbol): Ditto.
806 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_THM_JUMP24.
807 (arm_add_to_rel): Ditto.
808 (elf32_arm_final_link_relocate): Merge R_ARM_THM_JUMP24 with
809 R_ARM_THM_CALL. Handle R_ARM_THM_JUMP19 against a PLT stub.
810 (elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
811 for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
812 (elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
813 and R_ARM_THM_JUMP19.
814 (allocate_dynrelocs): Use plt_maybe_thumb_refcount.
815 (elf32_arm_finish_dynamic_symbol): Ditto.
816 (elf32_arm_output_plt_map): Ditto.
817
c981028a
DJ
8182007-08-06 Daniel Jacobowitz <[email protected]>
819
820 * elf.c (rewrite_elf_program_header): Handle sections not sorted
821 by address.
822 (copy_elf_program_header): Likewise.
823
f7231afc
L
8242007-08-04 H.J. Lu <[email protected]>
825
826 * elf-bfd.h (xvec_get_elf_backend_data): Add const.
827
828 * elfcode.h (elf_object_p): Use xvec_get_elf_backend_data.
829 * elfcore.h (elf_core_file_p): Likewise.
830
bd33be6e
L
8312007-08-02 H.J. Lu <[email protected]>
832
833 * coffcode.h (ALIGN_SET): Removed.
834 (ELIFALIGN_SET): Likewise.
835 (coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES,
836 IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES,
837 IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES,
838 IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES.
839
dcf6c779
MS
8402007-08-01 Michael Snyder <[email protected]>
841
9b0ec667
MS
842 * vms-tir.c (new_section): Fix cut and paste error.
843
20c6e70e
MS
844 * aoutx.h (aout_link_add_symbols): Return if count is zero.
845
dcf6c779
MS
846 * elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
847 pointer must be non-null.
848
e708816d
NC
8492007-08-01 Tristan Gingold <[email protected]>
850
851 * coffcode.h (coff_sort_func_alent): New function.
852 (coff_slurp_line_table): Sort line table if not already sorted.
853
55b581a6
JJ
8542007-08-01 Jakub Jelinek <[email protected]>
855
856 * elf.c (_bfd_elf_map_sections_to_segments): Work around buggy
857 GCC 3.4.x warning.
858
ad756e3f
AM
8592007-08-01 Alan Modra <[email protected]>
860
861 * aoutx.h (swap_ext_reloc_in): Set howto to NULL for unknown
862 r_type.
863 (swap_std_reloc_in): Likewise.
864 (aout_link_input_section_std): Likewise. Return with an error
865 on unexpected relocation type.
866 (aout_link_input_section_ext): Likewise.
867
f6e688f7
AM
8682007-08-01 Alan Modra <[email protected]>
869
870 PR4694
871 * aoutx.h (final_link): Write a zero in first word of
872 stringtab if no symbols rather than corrupting last byte
873 of text/data.
874
1c5265b5
JJ
8752007-07-31 Jakub Jelinek <[email protected]>
876
877 * elf.c (get_program_header_size): Adjacent loadable .note*
878 sections need just one PT_NOTE segment.
879 (_bfd_elf_map_sections_to_segments): Likewise.
880
9ee2139f
MS
8812007-07-30 Michael Snyder <[email protected]>
882
883 * coffgen.c (_bfd_coff_read_internal_relocs): Revert change of
884 2007-07-26. Buffer still in use, can't be freed.
885
c6aa130f
MS
8862007-07-27 Michael Snyder <[email protected]>
887
d63388ff
MS
888 * cofflink.c (coff_link_add_symbols): Return if count is zero.
889
50a39e97
MS
890 * coff-i386.c (coff_i386_rtype_to_howto): Off by one error.
891
87b32780
MS
892 * aoutx.h (slurp_symbol_table): Return if count == 0.
893
9d7038d3
MS
894 * coffgen.c (_bfd_coff_read_internal_relocs): Return if count is zero.
895
c6aa130f
MS
896 * elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
897
170bfeb9
L
8982007-07-27 H.J. Lu <[email protected]>
899
900 * config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
901
507f5898
MS
9022007-07-26 Michael Snyder <[email protected]>
903
904 * coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
a6626e8c
MS
905
906 * linker.c (bfd_section_already_linked_table_insert): Change
907 return type from void to boolean. Return FALSE on failure.
908 (_bfd_generic_section_already_linked): Test return value of
909 bfd_section_already_linked_table_insert, call fatal on error.
910
911 * elflink.c (_bfd_elf_section_already_linked): Test return value
912 of bfd_section_already_linked_table_insert, call fatal on error.
913
914 * libbfd-in.h (bfd_section_already_linked_table_insert): Update
915 return type to bfd_boolean.
916
917 * libbfd.h: Regenerate.
918
36e44abd
AN
9192007-07-26 Adam Nemet <[email protected]>
920
921 * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
922 bfd_slurp_armap): Improve function comment.
923
b7fd5ce1
MS
9242007-07-26 Michael Snyder <[email protected]>
925
2d4f3e92
MS
926 * linker.c (already_linked_newfunc): Check for NULL return from
927 bfd_hash_allocate.
928
ac38308c
MS
929 * coffgen.c (fixup_symbol_value): Guard against null;
930 bfd_is_com_section will dereference the section pointer.
931
c82a7c57
MS
932 * syms.c (bfd_decode_symclass): Guard against NULL, since
933 bfd_is_com_section dereferences the pointer.
934
3d7b34d8
MS
935 * srec.c (srec_scan): Check for EOF (critical because return value
936 will be used as array index).
937
44c62d9e
MS
938 * coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
939 are not to be cached, free the temporary buffer.
940
078c4bfc
MS
941 * aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
942 or count == zero.
943
814b5378
MS
944 * tekhex.c (first_phase): Check return value for null.
945
b7fd5ce1
MS
946 * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
947 pointer increment.
948
b9da616a
AM
9492007-07-26 Alan Modra <[email protected]>
950
33774f08
AM
951 * elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
952 check on dynobj. Remove bed shadow.
953
e62071b6
AM
954 * srec.c (srec_get_section_contents): Return immediately on
955 count zero. Check that offset and count are within section.
956 * libbfd.c (_bfd_generic_get_section_contents): Check that
957 offset + count does not overflow.
958
b9da616a
AM
959 * srec.c (srec_canonicalize_symtab): Don't alloc when symcount
960 is zero. Correct return value on error.
961 * mmo.c (mmo_canonicalize_symtab): Likewise.
962 * binary.c (binary_canonicalize_symtab) Correct return on error.
963
c2c96631
TS
9642007-07-26 Thiemo Seufer <[email protected]>
965
966 * bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
967
d4947150
AM
9682007-07-26 Alan Modra <[email protected]>
969
970 * reloc.c (bfd_generic_get_relocated_section_contents): Avoid
971 bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
972 says there are no relocs.
973
bd210d54 9742007-07-26 Doug Kwan <[email protected]>
d4947150 975
bd210d54
NC
976 Speed up bfd_dwarf2_find_line.
977 * dwarf2.c (struct dwarf2_debug): Add new fields to support function
978 and variable info hash tables. Add last_comp_unit, info_hash_count,
979 funcinfo_hash_table, varinfo_hash_table, hash_units_head.
980 (struct comp_unit): Add prev_unit, cached.
981 (struct info_list_node, struct info_hash_entry,
982 struct info_hash_table): New.
983 (info_hash_table_newfunc, create_info_hash_table,
984 insert_info_hash_table, lookup_info_hash_table): New functions
985 implementing function and variable info hash tables.
986 (scan_unit_for_symbols): Add checks to make sure hash tables are
987 consistent with compilation units.
988 (comp_unit_maybe_decode_line_info): New function.
989 (comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
990 (reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info,
991 info_hash_lookup_funcinfo, info_hash_lookup_varinfo,
992 stash_maybe_update_info_hash_table, stash_verify_info_hash_table,
993 stash_maybe_enable_info_hash_tables, stash_find_line_fast): New
994 functions. Make use of info hash tables to speed up
995 bfd_dwarf2_find_line.
996 (find_line): Use hash table for faster lookup if it is turned on.
997 Also add code to maintain bi-directional link in comp units.
998
353c5574
MS
9992007-07-25 Michael Snyder <[email protected]>
1000
1001 * coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
1002 if size == 0; return and avoid possible null pointer issues.
1003
f08c429c
AM
10042007-07-25 Alan Modra <[email protected]>
1005
1006 * linker.c (generic_link_add_symbol_list): Warning fix.
1007
d0f16d5e
MS
10082007-07-24 Michael Snyder <[email protected]>
1009
f6eea5ae
MS
1010 * opncls.c (bfd_make_writable): Check return from bfd_malloc.
1011
d0f16d5e
MS
1012 * elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
1013 on bfd_malloc error rather than goto error_return.
1014
4d269e42
AM
10152007-07-24 Alan Modra <[email protected]>
1016
1017 * elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
1018 _bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
1019 _bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
1020 _bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
1021 bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
1022 bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
1023 bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
1024 bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
1025 struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
1026 elf_sym_name_compare, elf_create_symbuf,
1027 bfd_elf_match_symbols_in_sections,
1028 _bfd_elf_match_sections_by_type): Move to here..
1029 * elf.c: ..from here.
1030
a26587ba
RS
10312007-07-23 Richard Sandiford <[email protected]>
1032
1033 * elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
1034 of weakdef->root.type if weakdef has no regular definition.
1035
0e53d9da
AN
10362007-07-22 Adam Nemet <[email protected]>
1037
1038 * elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
1039 small_data_overflow_reported.
1040 (_bfd_mips_elf_link_hash_table_create): Initialize it.
1041 (_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
1042 small-data section overflow.
1043
6b33789f
NC
10442007-07-19 Doug Kwan <[email protected]>
1045
4d269e42
AM
1046 PR binutils/4797
1047 * dwarf2.c: (find_line) Do not dereference functionname_ptr if
1048 do_line is true.
6b33789f 1049
13161072 10502007-07-18 Bob Wilson <[email protected]>
4d269e42 1051
13161072
BW
1052 * elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
1053 non-ELF sections.
4d269e42 1054
e29297b7 10552007-07-18 Bob Wilson <[email protected]>
4d269e42 1056
e29297b7
BW
1057 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
1058 vma and size for dynamic tags from the output sections.
4d269e42 1059
a5d1b3b5
AM
10602007-07-18 Alan Modra <[email protected]>
1061
1062 * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
1063 * elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
1064 symbol. Instead cache ELF section index. Remove redundant
1065 checks of st_shndx.
1066
d955dada
MF
10672007-07-15 Mike Frysinger <[email protected]>
1068
1069 * trad-core.c (NBPG): If not defined, set to getpagesize().
1070
979dc3bc
RM
10712007-07-13 Roland McGrath <[email protected]>
1072
1073 * elf-bfd.h (struct elf_obj_tdata): Revert last change.
1074 Add after_write_object_contents, after_write_object_contents_info.
1075 * elf.c (_bfd_elf_write_object_contents): Revert last change.
1076 Instead, call after_write_object_contents if set.
1077
d2df793a
NC
10782007-07-12 Kai Tietz <[email protected]>
1079
1080 * bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New.
1081 (BFD_HOSTPTR_T): Host pointer type for casting a
1082 pointer to an integer type.
1083 (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
1084 (sprintf_vma, fprintf_vma): Add support for long long prints.
1085 * bfd-in2.h: Regenerate.
1086 * configure.in: (BFD_HOST_64BIT_LONG_LONG): New.
1087 (BFD_HOSTPTR_T): Host pointer type for casting a
1088 pointer to an integer type. Default is "unsigned long".
1089 (AC_CHECK_SIZEOF(void *)): New.
1090 (host64): Set it if the pointer size is 8.
1091 * configure: Regenerate.
1092 * config.in: Add macro SIZEOF_VOID_P.
1093 * coffcode.h: Replace host ptr type assuming "long" with
1094 bfd_hostptr_t type.
1095 * coffgen.c: Likewise.
1096 * elf-eh-frame.c: Likewise.
1097 * peicode.h: Likewise.
1098
a3a4ddad
L
10992007-07-10 H.J. Lu <[email protected]>
1100
1101 * Makefile.in: Regenerated.
1102
329b43c4
L
11032007-07-10 H.J. Lu <[email protected]>
1104
1105 PR binutils/4756
1106 * simple.c (bfd_simple_get_relocated_section_content): Don't
1107 apply relocation on executable and shared library.
1108
cfd2c773
NS
11092007-07-10 Nathan Sidwell <[email protected]>
1110
1111 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
1112 copy relocs on vxworks.
1113
1489a3a0
AM
11142007-07-10 Alan Modra <[email protected]>
1115
1116 * elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
1117 * elf64-alpha.c (alpha_elf_size_info): Likewise.
1118 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
1119 * elf64-mips.c (mips_elf64_size_info): Likewise.
1120 * elf64-s390.c (s390_elf64_size_info): Likewise.
1121 * elf64-sparc.c (elf64_sparc_size_info): Likewise.
1122
00cbee0a
L
11232007-07-09 H.J. Lu <[email protected]>
1124
1125 * elflink.c (bfd_elf_record_link_assignment): Handle indirect
1126 symbol.
1127 (_bfd_elf_merge_symbol): Properly update normal symbol when
1128 overriding the versioned symbol from a dynamic library.
1129
fd2f25da
RM
11302007-07-09 Roland McGrath <[email protected]>
1131
1132 * elf-bfd.h (struct elf_obj_tdata): Add members
1133 emit_note_gnu_build_id and note_gnu_build_id_sec.
1134 * elf.c (_bfd_id_note_section_size): New global function.
1135 (read_hex, _bfd_elf_write_build_id_section): New static functions.
1136 (_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
1137 if emit_note_gnu_build_id is set.
1138 * Makefile.am (elf.lo): Update dependencies.
1139
1140 * elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
1141 (bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
1142 * elfcode.h (elf_checksum_contents): New macro and function.
1143 (NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
1144
9af2a943
AM
11452007-07-06 Michael Snyder <[email protected]>
1146
1147 * elflink.c (elf_link_add_object_symbols): Return via
1148 error_free_vers on "notice" failure.
1149
a93221e5
L
11502007-07-04 H.J. Lu <[email protected]>
1151
1152 * peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
1153 if arch is unknown.
1154
b4928193
NC
11552007-07-04 Nick Clifton <[email protected]>
1156
1157 Import this patch from an internal tree:
9af2a943 1158
b4928193
NC
1159 2001-07-17 Richard Henderson <[email protected]>
1160
1161 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
1162 compensate for high bit set in R_MEP_LOW16.
1163
3cfad14c
JM
11642007-07-03 Joseph Myers <[email protected]>
1165
1166 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
1167 input attributes if value has been copied.
1168
cd123cb7
NC
11692007-07-03 Nick Clifton <[email protected]>
1170
1171 * COPYING: Replace with GPLv3 text.
1172 * aix386-core.c: Update copyright notice to refer to GPLv3.
1173 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
1174 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
1175 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
1176 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
1177 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
1178 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
1179 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
1180 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
1181 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
1182 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
1183 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
1184 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
1185 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
1186 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
1187 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
1188 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
1189 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
1190 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
1191 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
1192 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
1193 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
1194 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
1195 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
1196 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
1197 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
1198 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
1199 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
1200 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
1201 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
1202 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
1203 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
1204 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
1205 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
1206 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
1207 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
1208 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
1209 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
1210 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
1211 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
1212 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
1213 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
1214 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
1215 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
1216 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
1217 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
1218 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
1219 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
1220 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
1221 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
1222 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
1223 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
1224 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
1225 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
1226 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
1227 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
1228 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
1229 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
1230 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
1231 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
1232 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
1233 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
1234 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
1235 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
1236 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
1237 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
1238 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
1239 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
1240 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
1241 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
1242 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
1243 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
1244 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
1245 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
1246 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
1247 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
1248 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
1249 xtensa-modules.c: Likewise.
1250 * elf32-sh-relocs.h: Add copyright notice.
1251 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
1252 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
1253 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
1254 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
1255 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
1256 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
1257 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
1258 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
1259 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
1260
741d6ea8
JM
12612007-07-02 Joseph Myers <[email protected]>
1262
1263 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
1264 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
1265 * elf64-mips.c (mips_elf64_howto_table_rela): Support
1266 R_MIPS_TLS_DTPREL64.
1267
ae351704
AM
12682007-07-02 Alan Modra <[email protected]>
1269
1270 * Makefile.am: Run "make dep-am".
1271 * Makefile.in: Regenerate.
1272 * aclocal.m4: Regenerate.
1273 * config.in: Regenerate.
1274 * po/SRC-POTFILES.in: Regenerate.
1275 * po/bfd.pot: Regenerate.
1276
3e5484db
AM
12772007-07-02 Alan Modra <[email protected]>
1278
1279 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
1280 symsec != NULL tests.
1281
08a40648
AM
12822007-07-02 Alan Modra <[email protected]>
1283
1284 PR 4712
1285 * elf.c (assign_file_positions_for_load_sections): Adjust lma
1286 by p_vaddr_offset.
1287
86b57e31
L
12882007-06-30 H.J. Lu <[email protected]>
1289
1290 * aclocal.m4: Regenerated.
1291 * Makefile.in: Likewise.
1292
34c8bcba
JM
12932007-06-29 Joseph Myers <[email protected]>
1294
1295 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
1296 (ppc_elf_merge_private_bfd_data): Call it.
1297
2cf19d5c
JM
12982007-06-29 Joseph Myers <[email protected]>
1299
1300 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
1301 (_bfd_mips_elf_merge_private_bfd_data): Call it.
1302
104d59d1
JM
13032007-06-29 Joseph Myers <[email protected]>
1304
1305 * elf-attrs.c: New.
1306 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
1307 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
1308 (elf-attrs.lo): Generate dependencies.
1309 * Makefile.in: Regenerate.
1310 * configure.in (elf): Add elf-attrs.lo.
1311 * configure: Regenerate.
1312 * elf-bfd.h (struct elf_backend_data): Add entries for object
1313 attributes.
1314 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
1315 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
1316 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
1317 New.
1318 (struct elf_obj_tdata): Add entries for object attributes.
1319 (elf_known_obj_attributes, elf_other_obj_attributes,
1320 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
1321 New.
1322 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
1323 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
1324 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
1325 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
1326 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
1327 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
1328 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
1329 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
1330 (bfd_section_from_shdr): Handle attributes sections.
1331 * elflink.c (bfd_elf_final_link): Handle attributes sections.
1332 * elfxx-target.h (elf_backend_obj_attrs_vendor,
1333 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
1334 elf_backend_obj_attrs_section_type): New.
1335 (elfNN_bed): Update.
1336 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
1337 aeabi_attribute_list): Remove.
1338 (struct elf32_arm_obj_tdata): Remove object attributes fields.
1339 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
1340 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
1341 Update for new object attributes interfaces.
1342 (uleb128_size, is_default_attr, eabi_attr_size,
1343 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
1344 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
1345 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
1346 elf32_arm_add_eabi_attr_int, attr_strdup,
1347 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
1348 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
1349 to generic code in elf-attrs.c.
1350 (elf32_arm_obj_attrs_arg_type): New.
1351 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
1352 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
1353 (bfd_elf32_bfd_final_link): Remove.
1354 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
1355 elf_backend_obj_attrs_arg_type,
1356 elf_backend_obj_attrs_section_type): New.
1357 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
1358 attributes.
1359 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
1360 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
1361 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
1362 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
1363 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
1364 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
1365
5ab79981
PB
13662007-06-29 Paul Brook <[email protected]>
1367
1368 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
1369 call veneers for call relocations against undefined symbols.
1370 (elf32_arm_final_link_relocate): Turn call to undefined symbol
1371 into a jump to the next instruction.
1372
c6aa130f 13732007-06-29 Michael Snyder <[email protected]>
32e8a950
NC
1374
1375 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
1376
3d3d428f
NC
13772007-06-29 M R Swami Reddy <[email protected]>
1378
1379 * Makefile.am: Add cr16 related entry
1380 * Makefile.in: Regenerate
1381 * archures.c: Add bfd_cr16_arch
1382 * bfd-in2.h: Regenerate
1383 * config.bfd: Add cr16-elf
1384 * configure.in: Add bfd_elf32_cr16_vec
1385 * configure: Regenerate.
1386 * targets.c: Added cr16 related information
1387 * cpu-cr16.c: New file.
1388 * elf32-cr16.c: New file.
1389 * reloc.c: Added cr16 relocs.
1390
c55fe096
AM
13912007-06-29 Alan Modra <[email protected]>
1392
1393 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
1394 message for undefined version nodes.
1395 (elf_gc_sweep): Don't warn when zero size sections are
1396 removed.
1397
375de94a
AM
13982007-06-29 Nathan Froyd <[email protected]>
1399
1400 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
1401 types.
1402
7d3287cb
AM
14032007-06-29 Alan Modra <[email protected]>
1404
1405 * elf32-spu.c (spu_elf_fake_sections): New function.
1406 (elf_backend_fake_sections): Define.
1407
6a3cd2b4
AM
14082007-06-29 Alan Modra <[email protected]>
1409
1410 * elf.c (assign_file_positions_for_load_sections): Use elf
1411 section header sh_size rather than bfd section size, simplifying
1412 .tbss handling.
1413
bf988460
AM
14142007-06-29 Alan Modra <[email protected]>
1415
36fc76ae 1416 PR ld/4701
bf988460
AM
1417 * elf.c (assign_file_positions_for_load_sections): Ensure bss
1418 segments meet gABI alignment requirements. Don't allocate
1419 file space for bss sections in a segment also containing file
1420 or program headers.
1421
60b31e8d
AM
14222007-06-27 Alan Modra <[email protected]>
1423
cc481421
AM
1424 * bfd.c (struct bfd): Rename "next" to "archive_next".
1425 * archive.c: Rename uses throughout file.
1426 * archive64.c: Likewise.
1427 * coff-rs6000.c: Likewise.
1428 * ecoff.c: Likewise.
1429 * som.c: Likewise.
1430 * bfd-in2.h: Regenerate.
1431
60b31e8d
AM
1432 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
1433 input bfds.
58eb693e 1434 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 1435
bec42b15
NC
14362007-06-26 H.J. Lu <[email protected]>
1437
1438 * dwarf2.c (find_line): New. Contains the duplicated code from:
1439 (_bfd_dwarf2_find_nearest_line): Use it.
1440 (_bfd_dwarf2_find_line): Use it.
1441
3d3e6f9a
JM
14422007-06-26 Joseph Myers <[email protected]>
1443
1444 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
1445
b314ec0e
RS
14462007-06-25 Richard Sandiford <[email protected]>
1447
1448 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
1449 to be used for calls from MIPS16 code.
1450
0d4a1476
AS
14512007-06-23 Andreas Schwab <[email protected]>
1452
1453 * configure.in (--with-separate-debug-dir): New option.
1454 * configure: Regenerate.
1455 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
1456 * Makefile.in: Regenerate.
1457 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
1458 bfd_follow_gnu_debuglink.
1459 (_bfd_dwarf2_find_line): Likewise.
1460
0d161102
NC
14612007-06-22 Nick Clifton <[email protected]>
1462
1463 * dwarf2.c: Add support for reading in debug information via a
1464 .gnu_debuglink section:
1465 (struct dwarf2_debug): Add bfd field to record the bfd containing
1466 the debug info.
1467 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
1468 field in the dwarf2_debug structure.
1469 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
1470 be found in the current bfd call bfd_follow_gnu_debuglink to see
1471 if another file contains the debug information. If it does, open
1472 it and continue.
1473 (_bfd_dwarf2_find_line): Likewise.
1474
293a0124
L
14752007-06-19 H.J. Lu <[email protected]>
1476
1477 PR ld/4590
1478 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
1479 when removing duplicated entries.
1480 (get_dyn_sym_info): Initialize the got_offset field to -1.
1481 Update call to sort_dyn_sym_info.
1482 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
1483 array of addend and remove duplicates.
1484
dc1f3d8a
L
14852007-06-18 H.J. Lu <[email protected]>
1486
1487 * libpei.h (_bfd_XXi_final_link_postscript): Remove
1488 duplication.
1489 (bfd_target_pei_p): New.
1490 (bfd_target_pei_arch): New
1491 (bfd_target_efi_p): Likewise.
1492 (bfd_target_efi_arch): New
1493 (bfd_pe_executable_p): Use bfd_target_pei_p and
1494 bfd_target_efi_p.
1495
1496 * peicode.h (arch_type): New enum.
1497 (pe_arch): New function.
1498 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
1499 if there is an EFI/PE target.
1500
79887925
L
15012007-06-14 H.J. Lu <[email protected]>
1502
1503 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
1504
1505 * acinclude.m4: Don't include m4 files. Remove libtool
1506 kludge.
1507
1508 * Makefile.in: Regenerated.
79887925
L
1509 * aclocal.m4: Likewise.
1510 * configure: Likewise.
1511
99ded152
BW
15122007-06-11 Sterling Augustine <[email protected]>
1513 Bob Wilson <[email protected]>
bf988460 1514
99ded152
BW
1515 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
1516 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
1517 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
1518 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
1519 (xtensa_get_property_predef_flags): Likewise.
1520 (compute_removed_literals): Pass new arguments to is_removable_literal.
1521 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
1522 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 1523
cbf2cba4
RS
15242007-05-31 Richard Sandiford <[email protected]>
1525
1526 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
1527 type (3) single-GOT entry, read tls_type from the hash table entry
1528 rather than the GOT entry.
1529
a9a4c53e
AM
15302007-06-01 Alan Modra <[email protected]>
1531
1532 * simple.c (bfd_simple_get_relocated_section_contents): Init
1533 input_bfds_tail.
1534
02bf8d82
AM
15352007-05-30 Alan Modra <[email protected]>
1536
42bb2e33
AM
1537 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
1538 created by objcopy --only-keep-debug.
1539 (_bfd_elf_init_private_section_data): Only change elf_section_type
1540 if it is SHT_NULL.
1541
02bf8d82
AM
1542 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
1543 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
1544 and sh_flags instead of bfd section flags. Delete voff and code
1545 keeping nobits segments aligned.
1546
4e591bc1
EC
15472007-05-25 Eric Christopher <[email protected]>
1548
1549 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
1550 Check that sym_sec isn't NULL before accessing.
1551
37ad9514
SE
15522007-05-24 Steve Ellcey <[email protected]>
1553
1554 * Makefile.in: Regnerate.
1555 * configure: Regenerate.
1556 * aclocal.m4: Regenerate.
1557 * doc/Makefile.in: Regenerate.
1558
91a5743d
PB
15592007-05-22 Paul Brook <[email protected]>
1560
1561 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
1562 with sec and sec_shndx.
1563 (elf32_arm_ouput_plt_map_sym): Use them.
1564 (elf32_arm_output_arch_local_syms): Output mapping symbols for
1565 interworking glue.
1566
26079076
PB
15672007-05-18 Paul Brook <[email protected]>
1568
1569 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
1570 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
1571 (record_arm_to_thumb_glue): Add v5t non-pic glue.
1572 (elf32_arm_create_thumb_stub): Ditto.
1573
91ac5911
L
15742007-05-16 H.J. Lu <[email protected]>
1575 Alan Modra <[email protected]>
1576
1577 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
1578 section to the minimum alignment.
1579
027297b7
L
15802007-05-15 H.J. Lu <[email protected]>
1581 Alan Modra <[email protected]>
1582
1583 PR ld/4504
1584 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
1585 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
1586
1587 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
1588 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
1589 bss section.
1590 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
1591 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
1592 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
1593 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
1594 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
1595 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
1596 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1597 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1598 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1599 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
1600 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
1601 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1602 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1603 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
1604 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
1605 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
1606 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1607
5c18022e
RS
16082007-05-15 Richard Sandiford <[email protected]>
1609
1610 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
1611 input_section argument. Create .rela.dyn relocations against
1612 symbol 0 rather than the section symbol.
1613 (mips_elf_local_got_index): Remove input_section argument.
1614 Update call to mips_elf_create_local_got_entry.
1615 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
1616 (mips_elf_calculate_relocation): Update calls to
1617 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
1618
a00a1f35
MS
16192007-05-15 Mark Shinwell <[email protected]>
1620
1621 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
1622 handle the Thumb-2 JUMP19 relocation.
1623
0414f35b
AM
16242007-05-15 Alan Modra <[email protected]>
1625
1626 PR 4479
1627 * elf.c (elf_fake_sections): Don't allow backend to change
1628 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
1629 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
1630 fix from here.
1631
74f2e02b
AM
16322007-05-14 Alan Modra <[email protected]>
1633
1634 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
1635 invalid shstrndx.
1636 (bfd_elf_get_str_section): Likewise.
1637
f137a54e
AM
16382007-05-12 Alan Modra <[email protected]>
1639
1640 PR 4497
1641 * elf-eh-frame.c (struct cie): Add "local_personality". Make
1642 "personality" a union.
1643 (cie_eq): Compare local_personality too. Adjust personality
1644 comparison.
1645 (_bfd_elf_discard_section_eh_frame): Check binding on personality
1646 reloc sym to allow for bad symtab. Use stashed local syms rather
1647 than reading personality local sym. Handle discarded sections.
1648
4f4416b5
AM
16492007-05-12 Alan Modra <[email protected]>
1650
1651 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
1652
016687f8
AM
16532007-05-11 Alan Modra <[email protected]>
1654
1655 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
1656 (enum ppc_elf_plt_type): Move from..
1657 * elf32-ppc.c: ..here.
1658 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
1659 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
1660 can_use_new_plt. Make is_vxworks a bitfield.
1661 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
1662 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
1663 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
1664 flags to better detect object files needing old bss-style plt.
1665 Allow secure plt to be used without rel16 relocs being detected.
1666 Warn if secure plt request cannot be allowed.
1667
ece5ef60
AM
16682007-05-11 Alan Modra <[email protected]>
1669
1670 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
1671 * elf-bfd.h (struct elf_backend_data): Change return type of
1672 elf_backend_relocate_section to int.
1673 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
1674 R_SPU_PPU64.
1675 (spu_elf_bfd_to_reloc_type): Convert new relocs.
1676 (spu_elf_count_relocs): New function.
1677 (elf_backend_count_relocs): Define.
1678 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
1679 R_SPU_PPU64 relocs.
1680 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
1681 returns 2.
1682 * bfd-in2.h: Regenerate.
1683 * libbfd.h: Regenerate.
1684
d3753b85
RS
16852007-05-10 Richard Sandiford <[email protected]>
1686
1687 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
1688 for R_ARM_ABS12 relocs.
1689 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
1690 non-shared VxWorks PLT entries.
1691
ef8c95ad
AM
16922007-05-11 Alan Modra <[email protected]>
1693
1694 PR 4454
1695 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
1696 (_bfd_elf_discard_section_eh_frame): Handle local syms on
1697 personality relocation.
1698
8c252fd9
RS
16992007-05-10 Richard Sandiford <[email protected]>
1700
1701 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
1702 rather than p_filesz to calculate the LMA of the end of a segment.
1703
b186458a
JJ
17042007-05-10 Jakub Jelinek <[email protected]>
1705
1706 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
1707 processing if symbol is defined in the executable.
1708
88571279
AO
17092007-05-10 Alexandre Oliva <[email protected]>
1710
1711 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
1712 (frvfdpic_elf_discard_info): New.
1713 (elf_backend_discard_info): Define for FDPIC.
1714
2e6030b9
MS
17152007-05-09 Mark Shinwell <[email protected]>
1716
1717 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
1718 attempt to scan if the bfd doesn't correspond to an ELF image.
1719 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
1720
0d4cc892
AO
17212007-05-08 Alexandre Oliva <[email protected]>
1722
1723 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
1724 for which _bfd_elf_section_offset returns -1.
1725
d0249648
AM
17262007-05-08 Alan Modra <[email protected]>
1727
1728 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
1729 (mark_functions_via_relocs): Likewise.
1730
1182cb93
AM
17312007-05-07 Alan Modra <[email protected]>
1732
1733 * elflink.c (bfd_elf_final_link): Correct reloc handling for
1734 elf_backend_count_relocs.
1735 (bfd_elf_discard_info): Print an error if we can't read syms.
1736
b16f296e
AM
17372007-05-07 Alan Modra <[email protected]>
1738
1739 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
1740 invalid reloc code.
1741 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
1742 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
1743 define.
1744
7c928300
AM
17452007-05-07 Alan Modra <[email protected]>
1746
1747 * elf.c (assign_file_positions_for_load_sections): Don't check
1748 core segment.
1749
fc66a176
L
17502007-05-04 H.J. Lu <[email protected]>
1751
1752 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
1753 and .rel.dyn aren't present.
1754
3410fea8
NC
17552007-05-04 Nick Clifton <[email protected]>
1756
1757 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
1758 sections are present examine the indirect sections in an attempt
1759 to compute the correct relocation size. If there is any
1760 ambiguity, produce an error and refuse to sort.
1761
7bdca076
SL
17622007-05-03 Sandra Loosemore <[email protected]>
1763
1764 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
1765
22184a77
NC
17662007-05-03 Vincent Riviere <[email protected]>
1767 Nick Clifton <[email protected]>
1768
1769 PR gas/3041
1770 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
1771 in the same way as relocs against external symbols.
1772
627b32bc
AM
17732007-05-02 Alan Modra <[email protected]>
1774
1775 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
1776 here. Set sh_type to SHT_NOBITS if we won't be allocating
1777 file space. Don't bump p_memsz for non-alloc sections. Adjust
1778 section-in-segment check.
1779 (assign_file_positions_for_non_load_sections): Don't set sh_offset
1780 here for sections that have already been handled above.
1781
49fa1e15
AM
17822007-04-30 Alan Modra <[email protected]>
1783
1784 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
1785 and emit_stack_syms bitfields.
1786 (get_sym_h): Read all symbols if stack analysis will be done.
1787 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
1788 params, and stash in hash table.
1789 (is_hint): Split off from..
1790 (is_branch): ..here. Adjust callers.
1791 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
1792 and keep all syms.
1793 (write_one_stub): Fix mem leak.
1794 (find_function_stack_adjust): New function.
1795 (sort_syms_syms, sort_syms_psecs): New vars.
1796 (sort_syms): New function.
1797 (struct call_info, struct function_info): New.
1798 (struct spu_elf_stack_info): New.
1799 (alloc_stack_info, maybe_insert_function, func_name): New functions.
1800 (is_nop, insns_at_end, check_function_ranges): Likewise.
1801 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
1802 (pasted_function, interesting_section, discover_functions): Likewise.
1803 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
1804 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
1805 (bfd_elf32_bfd_final_link): Define.
1806 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
1807 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
1808
9ddf8309
TS
18092007-04-28 Sergey Rogozhkin <[email protected]>
1810
1811 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
1812 memory which we might not own.
1813
95147441
BW
18142007-04-27 Bob Wilson <[email protected]>
1815
1816 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
1817 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
1818 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
1819
bcc2cc8e
BW
18202007-04-27 Bob Wilson <[email protected]>
1821
1822 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
1823 contents and relocs in parallel.
4e591bc1 1824
f29f96b6
BW
18252007-04-27 Bob Wilson <[email protected]>
1826
1827 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
1828
2ce18a16
AM
18292007-04-27 Alan Modra <[email protected]>
1830
1831 * cpu-rs6000.c: Write Mimi's name in ASCII.
1832 * coff-rs6000.c: Likewise.
1833 * rs6000-core.c: Likewise.
1834
eddc20ad
AM
18352007-04-27 Alan Modra <[email protected]>
1836
1837 * sysdep.h: Include config.h first.
1838 Many files: Include sysdep.h before bfd.h.
1839 * Makefile.am: Run "make dep-am".
1840 * Makefile.in: Regenerate.
1841
495443d4
AM
18422007-04-25 Alan Modra <[email protected]>
1843
1844 * sysdep.h: Revert last change.
1845
40b1c6c5
NC
18462007-04-24 Nick Clifton <[email protected]>
1847
1848 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
1849 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
1850
64be1553
AM
18512007-04-24 Alan Modra <[email protected]>
1852
1853 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
1854 eh_frame_hdr table won't be created.
1855
d5efd9fc
AM
18562007-04-24 Alan Modra <[email protected]>
1857
1858 * acinclude.m4: Include config/stdint.m4.
1859 * configure.in: Invoke GCC_HEADER_STDINT.
1860 * sysdep.h: Don't include ansidecl.h here.
1861 * configure: Regenerate.
1862 * config.in: Regenerate.
1863 * Makefile.in: Regenerate.
1864
9a2e615a
NS
18652007-04-23 Nathan Sidwell <[email protected]>
1866
1867 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
1868 bfd_mach_mcf_isa_c_emac): New.
1869 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
1870 elf_isac_plt_entry, elf_isac_plt_info): New.
1871 (elf32_m68k_object_p): Add ISA_C.
1872 (elf32_m68k_print_private_bfd_data): Print ISA_C.
1873 (elf32_m68k_get_plt_info): Detect ISA_C.
1874 * cpu-m68k.c (arch_info): Add ISAC.
1875 (m68k_arch_features): Likewise,
1876 (bfd_m68k_compatible): ISAs B & C are not compatible.
1877
1b0b5b1b
NC
18782007-04-21 Nick Clifton <[email protected]>
1879
1880 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
1881 (ecoff_link_add_archive_symbols): Likewise.
1882 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
1883 relent.howto.
1884 * ieee.c (parse_int): Initialise x.
1885 (must_parse_int): Initialise result.
1886 (ieee_slurp_external_symbols): Initialise value.
1887
bd7803a9
AM
18882007-04-21 Alan Modra <[email protected]>
1889
1890 * config.bfd (spu-*-elf): Delete targ_selvecs.
1891
964597d0
NC
18922007-04-19 Nick Clifton <[email protected]>
1893
1894 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
1895
01e76792
AM
18962007-04-19 Alan Modra <[email protected]>
1897
1898 * bfd.c (bfd_demangle): New function.
1899 * Makefile.am: Run "make dep-am".
1900 * Makefile.in: Regenerate.
1901 * bfd-in2.h: Regenerate.
1902
ee5c21a0
DJ
19032007-04-18 Matthias Klose <[email protected]>
1904
1905 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
1906 (bfdver.h): Use the date in non-release builds for the soversion.
1907 * Makefile.in: Regenerate.
1908
fcb93ecf
PB
19092007-04-17 Paul Brook <[email protected]>
1910
1911 * elf.c (_bfd_elf_is_function_type): New function.
1912 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
1913 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
1914 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
1915 * elf-bfd.h (elf_backend_data): Add is_function_type.
1916 (_bfd_elf_is_function_type): Add prototype.
1917 * elfxx-target.h (elf_backend_is_function_type): Add default
1918 definition.
1919 (elfNN_bed): Add elf_backend_is_function_type.
1920 * elf32-arm.c (elf32_arm_is_function_type): New function.
1921 (elf_backend_is_function_type): Define.
1922
5750dcec
DJ
19232007-04-17 Daniel Jacobowitz <[email protected]>
1924
1925 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
1926 DT_MIPS_RLD_MAP before DT_DEBUG again.
1927
cfbc9945
SE
19282007-04-14 Steve Ellcey <[email protected]>
1929
1930 * Makefile.am: Add ACLOCAL_AMFLAGS.
1931 * configure.in: Change macro call order.
1932 * Makefile.in: Regnerate.
1933 * doc/Makefile.in: Regenerate.
1934 * configure: Regenerate.
1935
3fcd97f1
JJ
19362007-04-14 Jakub Jelinek <[email protected]>
1937
1938 * elflink.c (bfd_elf_final_link): Don't free symbuf for
1939 non-elf input bfds.
1940 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
1941 for non-elf input bfds.
1942
af5978fb
RS
19432007-04-12 Richard Sandiford <[email protected]>
1944
1945 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
1946 DT_MIPS_RTLD_MAP for PIEs.
1947
9e3313ae
RS
19482007-04-12 Richard Sandiford <[email protected]>
1949
1950 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
1951 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
1952 in a read-only section.
1953 (_bfd_mips_elf_check_relocs): Likewise.
1954
1d25768e
BW
19552007-04-12 Bob Wilson <[email protected]>
1956
1957 * elf32-xtensa.c (xtensa_is_insntable_section): New.
1958 (xtensa_is_proptable_section): New.
1959 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
1960 tables with 12-byte entries, as well as tables with 8-byte entries.
1961 Sort the relocations before examining them.
1962 (relax_property_section): Use xtensa_is_proptable_section and
1963 xtensa_is_littable_section. Rewrite code for combining table entries
1964 to be more robust in case of unexpected relocations. Do not set offset
1965 of unused relocations to less than zero.
1966 (xtensa_is_property_section): Use other functions instead of
1967 duplicating section name comparisons.
1968 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
1969 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 1970
e1e5c0b5 19712007-04-12 Bob Wilson <[email protected]>
4e591bc1 1972
e1e5c0b5
BW
1973 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
1974 from Xtensa property sections.
4e591bc1 1975
2c67c5f3
AM
19762007-04-12 Alan Modra <[email protected]>
1977
1978 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
1979 is non-NULL before dereferencing.
1980
8776bb8a
NS
19812007-04-11 Nathan Sidwell <[email protected]>
1982
1983 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
1984 relocs too.
1985
4a828aab
RH
19862007-04-10 Richard Henderson <[email protected]>
1987
1988 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
1989 (elf64_alpha_size_got_sections): Remove unused something_changed local.
1990 (elf64_alpha_size_plt_section): Return void.
1991 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 1992 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
1993 relax_trip counter has changed.
1994
91506736
DJ
19952007-04-09 Daniel Jacobowitz <[email protected]>
1996
1997 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
1998 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
1999 (bfdver.texi): New rule.
2000 * Makefile.in, doc/Makefile.in: Regenerated.
2001
da6bcfca
MT
20022007-04-03 Matt Thomas <[email protected]>
2003
4e591bc1 2004 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
2005 in a shared object if it is not in a CODE section or if it is against
2006 a section symbol. This allows DWARF2 to use pcrel format.
2007
9267588c
L
20082007-04-05 H.J. Lu <[email protected]>
2009
2010 PR ld/4304
2011 * elflink.c (bfd_elf_final_link): Call einfo callback in
2012 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
2013 warning.
2014
c1b2796f
AM
20152007-04-05 Alan Modra <[email protected]>
2016
2017 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
2018 (elf_backend_link_output_symbol_hook): Define.
2019
970ccc77
NC
20202007-04-02 Nick Clifton <[email protected]>
2021
2022 PR binutils/4292
2023 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
2024 targets as 64-bit values, even if running on a 64-bit host.
2025 * coffgen.c (coff_print_symbol): Likewise.
2026
1783205a
NC
20272007-03-29 Nick Clifton <[email protected]>
2028
2029 PR binutils/4110
2030 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
2031 (setup_group): Use it. Report corrupt group section headers.
2032 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
2033 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
2034 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
2035
2ce859a1
AM
20362007-03-29 Alan Modra <[email protected]>
2037
2038 PR ld/4267
947844a3
AM
2039 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
2040 for rel->r_info values.
2041 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
2042 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
2043 unused entries. Don't clear plt.plist in loop.
2044
39817122
RS
20452007-03-28 Richard Sandiford <[email protected]>
2046
2047 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
2048 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
2049 Merge into...
2050 (sparc_elf_append_rela): ...this new function.
2051 (SPARC_ELF_APPEND_RELA): Delete.
2052 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
2053 the deleted append_rela field.
2054 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
2055 instead of SPARC_ELF_APPEND_RELA.
2056 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
2057 elf_size_info structure to find the size of a RELA entry and
2058 the associated swap-out function.
2059 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
2060 (sparc_finish_dyn): ...this new function.
2061 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
2062
4ecceb71
RS
20632007-03-28 Richard Sandiford <[email protected]>
2064 Phil Edwards <[email protected]>
2065
2066 * doc/bfd.texinfo: Put the contents after the title page rather
2067 than at the end of the document.
2068
d4d2b80b
AS
20692007-03-27 Andreas Schwab <[email protected]>
2070
2071 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
2072
831480e9 20732007-03-26 H.J. Lu <[email protected]>
5bd8253d
L
2074
2075 * configure: Regenerated.
2076
f4b39977
AM
20772007-03-26 Alan Modra <[email protected]>
2078
2079 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
2080 (allocate_spuear_stubs): New function.
2081 (spu_elf_size_stubs): Call allocate_spuear_stubs.
2082
157090f7
AM
20832007-03-26 Alan Modra <[email protected]>
2084
2085 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
2086 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
2087 (MY (bfd_reloc_name_lookup)): New function.
2088 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
2089 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
2090 (MY_bfd_reloc_name_lookup): Define.
2091 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
2092 (MY_bfd_reloc_name_lookup): Define.
2093 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
2094 (NAME (aout, reloc_name_lookup)): New function.
2095 * bout.c (b_out_bfd_reloc_name_lookup): New function.
2096 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
2097 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
2098 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
2099 (coff_bfd_reloc_name_lookup): Define.
2100 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
2101 (coff_i386_reloc_name_lookup): New function.
2102 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
2103 (coff_bfd_reloc_name_lookup): Define.
2104 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
2105 (coff_bfd_reloc_name_lookup): Define.
2106 * coff-m68k.c (m68k_reloc_name_lookup): New function.
2107 (coff_bfd_reloc_name_lookup): Define.
2108 * coff-maxq.c (maxq_reloc_name_lookup): New function.
2109 (coff_bfd_reloc_name_lookup): Define.
2110 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
2111 (coff_bfd_reloc_name_lookup): Define.
2112 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
2113 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
2114 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
2115 (coff_bfd_reloc_name_lookup): Define.
2116 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
2117 (_bfd_xcoff_reloc_name_lookup): New function.
2118 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
2119 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
2120 (sh_coff_reloc_name_lookup): New function.
2121 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
2122 (coff_bfd_reloc_name_lookup): Define.
2123 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
2124 (tic30_coff_reloc_name_lookup): New function.
2125 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
2126 (tic4x_coff_reloc_name_lookup): New function.
2127 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
2128 (tic54x_coff_reloc_name_lookup): New function.
2129 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
2130 (coff_amd64_reloc_name_lookup): New function.
2131 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
2132 (coff_bfd_reloc_name_lookup): Define.
2133 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
2134 (coff_bfd_reloc_name_lookup): Define.
2135 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
2136 (xcoff64_reloc_name_lookup): New function.
2137 (rs6000coff64_vec, aix5coff64_vec): Init new field.
2138 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
2139 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
2140 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2141 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2142 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2143 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
2144 (bfd_elf32_bfd_reloc_name_lookup): Define.
2145 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2146 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
2147 (bfd_elf32_bfd_reloc_name_lookup): Define.
2148 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
2149 (bfd_elf32_bfd_reloc_name_lookup): Define.
2150 * elf32-cris.c (cris_reloc_name_lookup): New function.
2151 (bfd_elf32_bfd_reloc_name_lookup): Define.
2152 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
2153 (bfd_elf32_bfd_reloc_name_lookup): Define.
2154 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2155 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2156 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
2157 (bfd_elf32_bfd_reloc_name_lookup): Define.
2158 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
2159 (bfd_elf32_bfd_reloc_name_lookup): Define.
2160 * elf32-frv.c (frv_reloc_name_lookup): New function.
2161 (bfd_elf32_bfd_reloc_name_lookup): Define.
2162 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2163 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
2164 (bfd_elf32_bfd_reloc_name_lookup): Define.
2165 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2166 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
2167 (bfd_elf32_bfd_reloc_name_lookup): Define.
2168 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
2169 (bfd_elf32_bfd_reloc_name_lookup): Define.
2170 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
2171 (bfd_elf32_bfd_reloc_name_lookup): Define.
2172 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
2173 (bfd_elf32_bfd_reloc_name_lookup): Define.
2174 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
2175 (bfd_elf32_bfd_reloc_name_lookup): Define.
2176 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
2177 (bfd_elf32_bfd_reloc_name_lookup): Define.
2178 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
2179 (bfd_elf32_bfd_reloc_name_lookup): Define.
2180 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2181 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2182 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2183 * elf32-m68k.c (reloc_name_lookup): New function.
2184 (bfd_elf32_bfd_reloc_name_lookup): Define.
2185 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2186 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
2187 (bfd_elf32_bfd_reloc_name_lookup): Define.
2188 * elf32-mep.c (mep_reloc_name_lookup): New function.
2189 (bfd_elf32_bfd_reloc_name_lookup): Define.
2190 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2191 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
2192 (bfd_elf32_bfd_reloc_name_lookup): Define.
2193 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2194 * elf32-mt.c (mt_reloc_name_lookup): New function.
2195 (bfd_elf32_bfd_reloc_name_lookup): Define.
2196 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
2197 (bfd_elf32_bfd_reloc_name_lookup): Define.
2198 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2199 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
2200 (bfd_elf32_bfd_reloc_name_lookup): Define.
2201 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
2202 (bfd_elf32_bfd_reloc_name_lookup): Define.
2203 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
2204 (bfd_elf32_bfd_reloc_name_lookup): Define.
2205 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
2206 (bfd_elf32_bfd_reloc_name_lookup): Define.
2207 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
2208 (bfd_elf32_bfd_reloc_name_lookup): Define.
2209 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
2210 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
2211 (bfd_elf32_bfd_reloc_name_lookup): Define.
2212 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
2213 (bfd_elf32_bfd_reloc_name_lookup): Define.
2214 * elf32-vax.c (reloc_name_lookup): New function.
2215 (bfd_elf32_bfd_reloc_name_lookup): Define.
2216 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
2217 (bfd_elf32_bfd_reloc_name_lookup): Define.
2218 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
2219 (bfd_elf32_bfd_reloc_name_lookup): Define.
2220 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
2221 (bfd_elf32_bfd_reloc_name_lookup): Define.
2222 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
2223 (bfd_elf64_bfd_reloc_name_lookup): Define.
2224 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2225 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2226 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2227 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2228 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
2229 (bfd_elf64_bfd_reloc_name_lookup): Define.
2230 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
2231 (bfd_elf64_bfd_reloc_name_lookup): Define.
2232 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
2233 (bfd_elf64_bfd_reloc_name_lookup): Define.
2234 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2235 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
2236 (bfd_elf64_bfd_reloc_name_lookup): Define.
2237 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2238 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
2239 (bfd_elfNN_bfd_reloc_name_lookup): Define.
2240 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
2241 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
2242 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
2243 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
2244 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
2245 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
2246 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
2247 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
2248 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
2249 (MY(reloc_name_lookup)): New function.
2250 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
2251 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
2252 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
2253 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
2254 (coff_bfd_reloc_name_lookup): Define.
2255 * reloc.c (bfd_reloc_name_lookup): New function.
2256 * riscix.c (riscix_reloc_name_lookup): New function.
2257 (MY_bfd_reloc_name_lookup): Define.
2258 * som.c (som_bfd_reloc_name_lookup): New function.
2259 * targets.c (struct bfd_target): Add reloc_name_lookup.
2260 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
2261 * versados.c (versados_bfd_reloc_name_lookup): Define.
2262 * vms.c (vms_bfd_reloc_name_lookup): New function.
2263 * bfd-in2.h: Regenerate.
2264 * libbfd.h: Regenerate.
2265
2d82d84d
TS
22662007-03-26 Thiemo Seufer <[email protected]>
2267
a5cb1fd7 2268 PR ld/4208
2d82d84d
TS
2269 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
2270 matching relocation is found.
2271 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
2272
831480e9 22732007-03-23 H.J. Lu <[email protected]>
1a27db7d
L
2274
2275 * configure: Regenerated.
2276
a1ac8190
JM
22772007-03-23 Joseph Myers <[email protected]>
2278
2279 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
2280 * configure: Regenerate.
2281
aa7a0635
AM
22822007-03-23 Alan Modra <[email protected]>
2283
2284 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
2285 Remove input_sec param. Adjust all calls.
2286 (write_one_stub): Adjust stub symbol.
2287 (needs_ovl_stub): New function, extracted from..
2288 (spu_elf_size_stubs): ..here.
2289 (spu_elf_relocate_section): Use needs_ovl_stub.
2290
e49e529d
JM
22912007-03-22 Joseph Myers <[email protected]>
2292
2293 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
2294 if nonempty.
2295 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
2296 * Makefile.in, configure, doc/Makefile.in: Regenerate.
2297
831480e9 22982007-03-22 H.J. Lu <[email protected]>
50572669
L
2299
2300 PR ld/4210
2301 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
2302 address and virtual size of the last section for the image
2303 size.
2304
0920dee7
L
23052007-03-22 H.J. Lu <[email protected]>
2306
2307 PR ld/4007
2308 * elf.c (assign_file_positions_for_load_sections): Check if
2309 all sections are in the segment.
2310
831480e9 23112007-03-20 H.J. Lu <[email protected]>
749b8d9d
L
2312
2313 PR ld/4208
2314 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
2315 matching LO16 relocation for HI16 relocation.
2316
27e55c4d
PB
23172007-03-20 Paul Brook <[email protected]>
2318
2319 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
2320 * bfd-in2.h: Regenerate.
2321 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
2322 (record_arm_to_thumb_glue): Use globals->pic_veneer.
2323 (elf32_arm_create_thumb_stub): Ditto.
2324 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
2325
bf21ed78
MS
23262007-03-18 Mark Shinwell <[email protected]>
2327
2328 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
2329 argument and extra last argument.
2330 * bfd-in2.h: Regenerate.
2331 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
2332 member.
2333 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
2334 extra last argument. Set no_enum_size_warning appropriately.
2335 (elf32_arm_merge_eabi_attributes): Improve enum sizes
2336 diagnostic, suppressing it when no_enum_size_warning dictates.
2337
5f6999aa
NC
23382007-03-20 Nick Clifton <[email protected]>
2339
2340 PR binutils/3535
2341 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
2342 specific conditions that need the program headers to be
2343 rewritten.
2344
831480e9 23452007-03-19 H.J. Lu <[email protected]>
d13c9dc6
L
2346
2347 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
2348 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2349 SizeOfInitializedData, SizeOfUninitializedData,
2350 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
2351 extra PE a.out header.
2352 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
2353 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
2354 defined.
2355 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
2356 defined.
2357 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
2358 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2359 SizeOfInitializedData, SizeOfUninitializedData,
2360 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
2361 extra PE a.out header.
2362
831480e9 23632007-03-18 H.J. Lu <[email protected]>
739bb57e
L
2364
2365 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
2366 only if BFD64 is defined.
2367
5384511f
AM
23682007-03-17 Alan Modra <[email protected]>
2369
2370 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
2371 on setjmp calls.
2372
187b3d5d
L
23732007-03-15 H.J. Lu <[email protected]>
2374
2375 * doc/Makefile.in: Regenerated.
2376
c428fa83
L
23772007-03-15 H.J. Lu <[email protected]>
2378
2379 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
2380 create doc/bfdver.texi.
2381 * Makefile.in: Regenerated.
2382
2383 * configure.in (--with-bugurl): New option.
2384 * configure: Regenerated.
2385
2386 * version.h (REPORT_BUGS_TO): New.
2387
d1036acb
L
23882007-03-13 H.J. Lu <[email protected]>
2389
2390 PR binutils/3826
2391 * elf-bfd.h (elf_backend_data): Add elf_osabi.
2392 (_bfd_elf_set_osabi): New.
2393
2394 * elf.c (_bfd_elf_set_osabi): New.
2395
2396 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
2397 (elf_backend_post_process_headers): Defined with
2398 _bfd_elf_set_osabi.
2399 (ELF_OSABI): Properly defined for each target.
2400
2401 * elf32-i370.c (i370_elf_post_process_headers): Removed.
2402 (ELF_OSABI): Defined.
2403 (elf_backend_post_process_headers): Defined with
2404 _bfd_elf_set_osabi.
2405
2406 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2407 freebsd.
2408 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
2409
2410 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
2411 (ELF_OSABI): Defined.
2412 (elf_backend_post_process_headers): Defined with
2413 _bfd_elf_set_osabi.
2414
2415 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2416 freebsd.
2417 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
2418 elf_osabi.
2419
2420 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
2421 with elf_osabi.
2422 (ELF_OSABI): Properly defined for each target.
2423 (elf_backend_post_process_headers): Defined with
2424 _bfd_elf_set_osabi for Linux.
2425
2426 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
2427 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2428 (elf_backend_post_process_headers): Defined with
2429 _bfd_elf_set_osabi.
2430
2431 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
2432 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2433 (elf_backend_post_process_headers): Defined with
2434 _bfd_elf_set_osabi.
2435
2436 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
2437 with any ELF target of the compatible machine for which we do not
2438 have a specific backend.
2439
2440 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
2441 with elf_osabi.
2442
2443 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
2444 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
2445
d4c87fc1
AM
24462007-03-08 Alan Modra <[email protected]>
2447
2448 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
2449 V850_OTHER_* bits.
2450
9c6fc49d
AM
24512007-03-08 Alan Modra <[email protected]>
2452
2453 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
2454 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
2455 Run "make dep-am".
2456 * Makefile.in: Regenerate.
2457 * po/SRC-POTFILES.in: Regenerate.
2458
faed74d6
L
24592007-03-07 H.J. Lu <[email protected]>
2460
2461 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
2462 (x86_64-*-kfreebsd*-gnu): Likewise.
2463 (x86_64-*-netbsd*): Likewise.
2464 (x86_64-*-openbsd*): Likewise.
2465 (x86_64-*-linux-*): Likewise.
2466
2467 * configure.in: Support bfd_efi_app_x86_64_vec.
2468 * configure: Regenerated.
2469
2470 * efi-app-x86_64.c: New file.
2471
2472 * targets.c (bfd_efi_app_x86_64_vec): New.
2473 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
2474
15344ad7
L
24752007-03-07 Kai Tietz <[email protected]>
2476
2477 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
2478 const for type reloc_howto_type.
2479
ab96bf03
AM
24802007-03-07 Alan Modra <[email protected]>
2481
2482 PR 3958
2483 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
2484 (elf_discarded_section): Move..
2485 * bfd-in.h: ..to here.
2486 * bfd-in2.h: Regenerate.
2487 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
2488 from discarded sections before relocate_section has done its job.
2489 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
2490 relocs against symbols from discarded sections.
2491 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
2492 SECREL32.
2493 (elf_hppa_relocate_section): Handle relocatable link after setting
2494 sec, sym, h etc. for final link. Squash error messages for
2495 relocatable link. Clear section contents for relocs against
2496 symbols in discarded sections, and zero reloc. Remove existing
2497 zero r_symndx code.
2498 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
2499 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
2500 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
2501 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
2502 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
2503 (bfin_relocate_section): Likewise.
2504 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
2505 * elf32-cris.c (cris_elf_relocate_section): Likewise.
2506 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
2507 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
2508 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
2509 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2510 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
2511 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
2512 * elf32-i370.c (i370_elf_relocate_section): Likewise.
2513 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2514 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
2515 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
2516 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
2517 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
2518 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
2519 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
2520 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2521 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
2522 * elf32-mep.c (mep_elf_relocate_section): Likewise.
2523 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
2524 * elf32-mt.c (mt_elf_relocate_section): Likewise.
2525 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
2526 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2527 * elf32-s390.c (elf_s390_relocate_section): Likewise.
2528 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
2529 * elf32-sh.c (sh_elf_relocate_section): Likewise.
2530 * elf32-spu.c (spu_elf_relocate_section): Likewise.
2531 * elf32-v850.c (v850_elf_relocate_section): Likewise.
2532 * elf32-vax.c (elf_vax_relocate_section): Likewise.
2533 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
2534 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
2535 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
2536 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
2537 (elf64_alpha_relocate_section): Likewise.
2538 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
2539 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2540 * elf64-s390.c (elf_s390_relocate_section): Likewise.
2541 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
2542 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2543 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
2544 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
2545 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
2546
2547 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
2548 symbols for relocatable link. Don't use always-zero st_value.
2549 (elf_backend_rela_normal): Don't define.
2550 * elf32-bfin.c (bfinfdpic_relocate_section): Use
2551 RELOC_FOR_GLOBAL_SYMBOL.
2552 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2553 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
2554 section symbol adjustments with same for relocatable link.
2555 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2556 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
2557 (elf32_m68hc11_check_relocs): ..to here.
2558 * elf32-score.c (score_elf_final_link_relocate): Remove zero
2559 r_symndx code.
2560 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
2561
0e922b77
AM
25622007-03-07 Alan Modra <[email protected]>
2563
2564 PR 4144
2565 * elf.c (assign_file_positions_for_load_sections): Don't
2566 adjust p_memsz for !SEC_LOAD section vma modulo page size.
2567 Instead, use the same lma based adjustment for SEC_LOAD
2568 sections.
2569
25c6282a
BW
25702007-03-01 Bob Wilson <[email protected]>
2571
2572 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
2573 (find_relaxable_sections): Do not increment src_count for unknown
2574 opcodes. Decode only once instead of calling is_l32r_relocation.
2575 (compute_text_actions): Remove unused no_insn_move flag. Assert that
2576 src_next matches src_count in relax_info.
2577
066c2a57
JM
25782007-03-01 Joseph Myers <[email protected]>
2579
2580 * Makefile.am (bfdver.h): Use "." not " " between version number
2581 and date.
2582 * Makefile.in: Regenerate.
2583 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
2584 * configure: Regenerate.
2585
ed6ba298
NS
25862007-02-28 Nathan Sidwell <[email protected]>
2587
2588 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
2589
7a8757b3
AM
25902007-02-27 Alan Modra <[email protected]>
2591
2592 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
2593 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
2594
024b2372
CD
25952007-02-23 Carlos O'Donell <[email protected]>
2596
2597 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
2598 DWARF even with 64-bit addresses.
2599 (_bfd_dwarf2_find_nearest_line): Likewise.
2600
cb3ff1e5
NC
26012007-02-23 Nick Clifton <[email protected]>
2602
2603 PR binutils/3535
2604 * elf.c (copy_private_bfd_data): Always rewrite the program
2605 headers when a Solaris interpreter segment is involved.
2606
6a5bb875
PB
26072007-02-22 Paul Brook <[email protected]>
2608
2609 * elflink.c (gc_mark_hook_fn): Remove.
2610 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
2611 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
2612 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
2613 (elf_backend_data): Add gc_mark_extra_sections.
2614 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
2615 definition.
2616 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
2617 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
2618 (elf_backend_gc_mark_extra_sections): Define.
2619
2889e75b
NC
26202007-02-21 Nick Clifton <[email protected]>
2621
2622 * elf.c (_bfd_elf_map_sections_to_segments): If the
2623 override_segment_assignment callback is defined then call it.
2624
78859468
AM
26252007-02-21 Alan Modra <[email protected]>
2626
2627 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
2628
ae0d2616
TS
26292007-02-19 Thiemo Seufer <[email protected]>
2630
2631 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
2632 translation marker from untranslatable strings.
2633
6bfdb61b
AM
26342007-02-19 Alan Modra <[email protected]>
2635
2636 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
2637 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
2638 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
2639 (elfNN_bed): Init new field.
2640 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
2641
92f01d61
JM
26422007-02-17 Mark Mitchell <[email protected]>
2643 Nathan Sidwell <[email protected]>
2644 Vladimir Prus <[email protected]
2645 Joseph Myers <[email protected]>
2646
2647 * configure.in (--with-pkgversion): New option.
2648 * configure: Regenerate.
2649 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
2650 * Makefile.in: Regenerate.
2651 * version.h (BFD_VERSION_STRING): Define using
2652 @bfd_version_package@.
2653
c0e3f241
CD
26542007-02-16 Carlos O'Donell <[email protected]>
2655
2656 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
2657 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
2658 and EF_MIPS_UCODE.
2659
72f6ea61
AM
26602007-02-15 Alan Modra <[email protected]>
2661
2662 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
2663 declare.
2664 (_bfd_norelocs_canonicalize_reloc): Likewise.
2665 * libbfd.h: Regenerate.
2666 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
2667 (_bfd_norelocs_canonicalize_reloc): Likewise.
2668 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
2669 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
2670 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
2671 * ihex.c: Similarly.
2672 * mach-o-target.c: Similarly.
2673 * mach-o.c: Similarly.
2674 * mmo.c: Similarly.
2675 * pef.c: Similarly.
2676 * ppcboot.c: Similarly.
2677 * srec.c: Similarly.
2678 * xsym.c: Similarly.
2679
fab4a87f
L
26802007-02-14 H.J. Lu <[email protected]>
2681
2682 PR ld/3953
2683 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
2684 when adding default symbol.
2685
e4e0193e
AM
26862007-02-13 Alan Modra <[email protected]>
2687
2688 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
2689 for branch lookup table.
2690
84f5d08e
AM
26912007-02-12 Alan Modra <[email protected]>
2692
2693 * elf64-ppc.c (create_linkage_sections): Don't create
2694 .rela.rodata.brlt for --emit-relocs.
2695 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
2696 (ppc_size_one_stub): Count them. Simplify test of stub type
2697 when counting stub relocs. Set SEC_RELOC too.
2698 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
2699 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
2700
4aac632e
AM
27012007-02-12 Alan Modra <[email protected]>
2702
2703 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
2704 with a zero symbol index.
2705
8da3dbc5
AM
27062007-02-12 Alan Modra <[email protected]>
2707
2708 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
2709
b31847af
DB
27102007-02-05 Dave Brolley <[email protected]>
2711 Stan Cox <[email protected]>
2712
2713 PR ld/3972
2714 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
2715
722b0ff7 27162007-02-05 Dave Brolley <[email protected]>
e382d174
DB
2717 Richard Sandiford <[email protected]>
2718 Stan Cox <[email protected]>
2719 Nick Clifton <[email protected]>
2720 DJ Delorie <[email protected]>
2721 Frank Ch. Eigler <[email protected]>
2722 Ben Elliston <[email protected]>
2723 Richard Henderson <[email protected]>
2724
2725 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
2726 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
2727 (BFD32_BACKENDS): Add elf32-mep.lo.
2728 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
2729 (cpu-mep.lo,elf32-mep.lo): New targets.
2730 * archures.c (bfd_arch_mep): New enumerator.
2731 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
2732 (bfd_mep_arch): New external variable.
2733 (bfd_archures_list): Add bfd_mep_arch.
2734 * config.bfd: Support mep-*-elf.
2735 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
2736 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
2737 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
2738 declarations.
2739 (_bfd_target_vector): Add bfd_elf32_mep_vec and
2740 bfd_elf32_mep_little_vec.
722b0ff7
DB
2741 * mep-relocs.pl: New file.
2742 * cpu-mep.c: New file.
2743 * elf32-mep.c: New file.
2744 * bfd-in2.h: Regenerate.
e382d174 2745 * po/POTFILES.in: Regenerate.
722b0ff7
DB
2746 * libbfd.h: Regenerate.
2747 * Makefile.in: Regenerate.
2748 * configure: Regenerate.
2749
d9352518
DB
27502007-02-05 Dave Brolley <[email protected]>
2751
2752 * elflink.c (evaluate_complex_relocation_symbols): Check for
2753 STT_SRELC for global symbols.
2754 (perform_complex_relocations): Renamed to
2755 perform_complex_relocation and now examines only one relocation.
2756 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 2757 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
2758 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
2759 (OD,OS,OU): #undefs corrected to N, S and U repectively.
2760 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
2761 (complex_reloc_installation_howto): Removed.
2762 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
2763 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
2764
d9352518 27652007-02-05 Dave Brolley <[email protected]>
e382d174
DB
2766 Richard Sandiford <[email protected]>
2767 DJ Delorie <[email protected]>
2768 Graydon Hoare <[email protected]>
2769 Nick Clifton <[email protected]>
2770 Jeff Holcomb <[email protected]>
2771 Frank Ch. Eigler <[email protected]>
2772
2773 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
2774 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
2775 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
2776 * elflink.c (set_symbolValue): New static function.
d9352518
DB
2777 (resolve_symbol): Likewise.
2778 (resolve_section): Likewise.
2779 (undefined_reference): Likewise.
2780 (eval_symbol): Likewise.
2781 (evaluate_complex_relocation_symbols): Likewise.
2782 (put_value): Likewise.
2783 (get_value): Likewise.
e382d174
DB
2784 (decode_complex_addend):
2785 (bfd_elf_perform_complex_relocation): New function.
2786 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
2787 * reloc.c (BFD_RELOC_RELC): New relocation number.
2788 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 2789
f1ab2340 27902007-02-05 Bob Wilson <[email protected]>
74e880a7 2791
f1ab2340
BW
2792 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
2793 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
2794 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
2795 (elf_xtensa_allocate_got_size): Replace these with...
2796 (elf_xtensa_allocate_dynrelocs): ...this new function.
2797 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 2798
e5f131d1 27992007-02-05 Bob Wilson <[email protected]>
74e880a7 2800
e5f131d1
BW
2801 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
2802 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
2803 Set src_mask to zero.
2804 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
2805 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 2806
4608f3d9
BW
28072007-02-02 Bob Wilson <[email protected]>
2808
2809 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
2810 (elf_xtensa_dynamic_symbol_p): ...this.
2811
f0e6fdb2
BW
28122007-02-02 Bob Wilson <[email protected]>
2813
2814 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
2815 (struct elf_xtensa_link_hash_table): New.
2816 (elf_xtensa_hash_table): New.
2817 (elf_xtensa_link_hash_table_create): New.
2818 (elf_xtensa_check_relocs): Update plt_reloc_count references.
2819 Update arguments to add_extra_plt_sections.
2820 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
2821 table. Update for plt_reloc_count and add_extra_plt_sections.
2822 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
2823 argument with link info. Update calls to elf_xtensa_get_plt_section
2824 and elf_xtensa_get_gotplt_section.
2825 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
2826 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
2827 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
2828 (relax_property_section): Get sections from the hash table and update
2829 function calls.
2830 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
2831 dynobj argument with link info. Get sections for first plt chunk from
2832 the hash table.
2833 (bfd_elf32_bfd_link_hash_table_create): Define.
2834
c15f73f9
JJ
28352007-02-02 Jakub Jelinek <[email protected]>
2836
2837 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
2838 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
2839 (struct elf_symbol): Change first member into union.
2840 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
2841 internal syms. Only compare st_shndx fields.
2842 (elf_create_symbuf): New function.
2843 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
2844 for bfds, use a binary search, otherwise don't qsort symbols
2845 unnecessarily only to select which symbols are for the particular
2846 shndx.
2847
effdf42a
NC
28482007-02-01 Nick Clifton <[email protected]>
2849
2850 PR ld/3852
2851 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
2852 in the elf_link_hash_table structure.
2853
183e98be
AM
28542007-02-01 Alan Modra <[email protected]>
2855
2856 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
2857 * elfxx-target.h (elf_backend_write_core_note): Define and use.
2858 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
2859 32-bit core note on 64-bit target.
2860 (elfcore_write_prstatus): Likewise.
2861 (elfcore_write_lwpstatus): Make note_name const.
2862 (elfcore_write_prfpreg): Likewise.
2863 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
2864 target.
2865 * elf32-ppc.c (ppc_elf_write_core_note): New function.
2866 (elf_backend_write_core_note): Define.
2867 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
2868 (elf_backend_write_core_note): Define.
2869
fc523535 28702007-01-31 H.J. Lu <[email protected]>
16cecee5
L
2871
2872 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
2873 (elf32_bed): Defined for elf32-us-cris.
2874
2875 * elf64-sh64.c (elf64_bed): Defined for Linux.
2876 (INCLUDED_TARGET_FILE): Removed.
2877
2878 * elfxx-target.h (elfNN_bed): Always define. Don't check
2879 INCLUDED_TARGET_FILE.
2880
c9b57b7e
DD
28812007-01-31 DJ Delorie <[email protected]>
2882
2883 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
2884 message for dangerous relocs, special case the common user error.
2885
53020534
L
28862007-01-30 H.J. Lu <[email protected]>
2887
2888 * elf.c (copy_elf_program_header): Start from the first section
2889 in a segment and stop when all sections in a segment are
2890 accounted for.
2891
c7b8f16e
JB
28922007-01-29 Julian Brown <[email protected]>
2893
2894 * bfd-in2.h: Regenerate.
2895 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
2896 instruction scanning should be done.
2897 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
2898 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
2899 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
2900 prototype.
2901 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
2902 argument.
2903 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
2904 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
2905 (elf32_vfp11_erratum_type): New enum.
2906 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
2907 veneers.
2908 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
2909 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
2910 vfp11_fix and num_vfp11_fixes fields.
2911 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
2912 vfp11_erratum_glue_size, num_vfp11_fixes fields.
2913 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
2914 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
2915 glue section.
2916 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
2917 to a section's map.
2918 (record_vfp11_erratum_veneer): Create a single veneer, and its
2919 associated symbols.
2920 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
2921 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
2922 BFDs.
2923 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
2924 required.
2925 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
2926 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
2927 (bfd_arm_vfp11_write_mask): Update write mask according to coded
2928 register number.
2929 (bfd_arm_vfp11_antidependency): New function.
2930 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
2931 (elf32_arm_compare_mapping): Declare.
2932 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
2933 BFD for potential erratum-triggering insns. Record results.
2934 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
2935 and branches to veneers have been placed in virtual memory after
2936 layout.
2937 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
2938 hash table.
2939 (elf32_arm_output_symbol_hook): Remove.
2940 (elf32_arm_write_section): Output veneers, and branches to veneers.
2941 Use maps from input sections, not output sections, for code
2942 byte-swapping.
2943 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
2944 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
2945 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
2946 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
2947
29482007-01-27 H.J. Lu <[email protected]>
83d1651b
L
2949
2950 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 2951 (INCLUDED_TARGET_FILE): Removed.
83d1651b 2952
914dfb0f
DA
29532007-01-27 Mike Frysinger <[email protected]>
2954
2955 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
2956 (INCLUDED_TARGET_FILE): Remove.
2957
78eba9b6
DD
29582007-01-25 DJ Delorie <[email protected]>
2959
2960 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
2961 R_M32C_16 or R_M32C_24 relocs.
2962
64ee10b6
NC
29632007-01-25 Nick Clifton <[email protected]>
2964
2965 PR binutils/3874
2966 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
2967 hash table was created by elf32_avr_link_hash_table_create before
2968 using it.
2969 (elf32_avr_link_hash_newfunc): New function. Just pass the call
2970 through to _bfd_elf_link_hash_newfunc.
2971 (elf32_avr_link_hash_table_create): Use
2972 elf32_avr_link_hash_newfunc instead of
2973 _bfd_elf_link_hash_newfunc.
2974 (elf32_avr_relocate_section): Check for the hash table pointer
2975 being NULL.
2976 (elf32_avr_relax_section, avr_build_one_stub,
2977 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
2978 elf32_avr_build_stubs): Likewise.
2979
40b36307
L
29802007-01-16 H.J. Lu <[email protected]>
2981
2982 PR ld/3831
2983 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
2984 argument, Elf_Internal_Sym *.
2985
2986 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
2987 symbol dynamic if info->dynamic_data is TRUE.
2988 (bfd_elf_record_link_assignment): Updated call to
2989 bfd_elf_record_link_assignment.
2990 (_bfd_elf_merge_symbol): Likewise. Always call
2991 bfd_elf_link_mark_dynamic_symbol.
2992
fc523535 29932007-01-12 H.J. Lu <[email protected]>
a454209d
L
2994
2995 * Makefile.am (BFD_LIBS): Removed.
2996 * Makefile.in: Regenerated.
2997
fc523535 29982007-01-11 H.J. Lu <[email protected]>
21e40a48
L
2999
3000 PR binutils/3631
3001 * Makefile.am (OFILES): Add @bfd64_libs@.
3002 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
3003 * Makefile.in: Regenerated.
3004
3005 * configure.in (bfd_libs): Replaced by ...
3006 (bfd64_libs): This.
3007 * configure: Regenerated.
3008
59e0647f
NS
30092007-01-11 Nathan Sidwell <[email protected]>
3010
3011 * elf.c (assign_file_positions_for_load_sections): We can
3012 require fewer phdrs than expected.
3013
3bdcfdf4
KH
30142007-01-08 Kazu Hirata <[email protected]>
3015
3016 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
3017 * bfd-in2.h: Regenerate.
3018 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
3019 bfd_mach_cpu32_fido.
3020 (m68k_arch_features): Use fido_a instead of cpu32.
3021 (bfd_m68k_compatible): Reject the combination of Fido and
3022 ColdFire. Accept the combination of CPU32 and Fido with a
3023 warning.
3024 * elf32-m68k.c (elf32_m68k_object_p,
3025 elf32_m68k_merge_private_bfd_data,
3026 elf32_m68k_print_private_bfd_data): Treat Fido as an
3027 architecture by itself.
3028
42037fe5
NC
30292007-01-08 Kai Tietz <[email protected]>
3030
3031 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
3032
ebe8b991
JJ
30332007-01-05 Jakub Jelinek <[email protected]>
3034
3035 * texhex.c (first_phase): Don't fall through into the default
3036 case.
3037 (pass_over): Replace abort () calls with return FALSE. Fix
3038 buffer overflow.
3039
b327f31f
AM
30402007-01-04 Jie Zhang <[email protected]>
3041
3042 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
3043 SEC_EXCLUDE on zero size .eh_frame.
3044
10a2343e 3045For older changes see ChangeLog-2006
56882138
AM
3046\f
3047Local Variables:
3048mode: change-log
3049left-margin: 8
3050fill-column: 74
3051version-control: never
3052End:
This page took 1.202127 seconds and 4 git commands to generate.