]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
* elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
5582a088
AM
12007-09-28 Alan Modra <amodra@bigpond.net.au>
2
3 * elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
4 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
5 * elf32-avr.c (elf32_avr_check_relocs): Likewise.
6 * elf32-bfin.c (bfinfdpic_check_relocs): Likewise.
7 * elf32-cris.c (cris_elf_check_relocs): Likewise.
8 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
9 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
10 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
11 * elf32-frv.c (_frvfdpic_check_discarded_relocs): Likewise.
12 (elf32_frv_check_relocs): Likewise.
13 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
14 * elf32-m32c.c (m32c_elf_check_relocs): Likewise.
15 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
16 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
17 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
18 * elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
19 * elf32-mt.c (mt_elf_check_relocs): Likewise.
20 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
21 * elf32-sh.c (sh_elf_check_relocs): Likewise.
22 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
23 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
24 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
25 (score_elf_local_relocation_p): Likewise.
26 (_bfd_score_elf_relocate_section): Likewise.
27 (score_elf_final_link_relocate): Likewise.
28
d17e0c6e
JB
292007-09-26 Jan Beulich <jbeulich@novell.com>
30
31 * elf32-i386.c (elf_i386_check_relocs): Revert NULL pointer
32 check for R_386_GNU_VTINHERIT.
33 * elf-m10300.c (mn10300_elf_check_relocs): Check for NULL
34 pointer for R_xxx_GNU_VTENTRY.
35 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
36 * elf32-bfin.c (bfin_check_relocs): Likewise.
37 (bfinfdpic_check_relocs): Likewise.
38 * elf32-cris.c (cris_elf_check_relocs): Likewise.
39 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
40 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
41 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
42 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
43 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
44 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
45 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
46 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
47 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
48 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
49 * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
50 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
51 * elf32-s390.c (elf_s390_check_relocs): Likewise.
52 * elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
53 * elf32-sh.c (sh_elf_check_relocs): Likewise.
54 * elf32-v850.c (v850_elf_check_relocs): Likewise.
55 * elf32-vax.c (elf_vax_check_relocs): Likewise.
56 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
57 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
58 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
59 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
60 * elf64-s390.c (elf_s390_check_relocs): Likewise.
61 * elf64-sh64.c (sh_elf64_check_relocs): Likewise.
62 * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
63 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
64 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
65
8977835c
AM
662007-09-26 Alan Modra <amodra@bigpond.net.au>
67
68 * elflink.c (set_symbol_value): Add isymbuf and locsymcount
69 params. Change symidx to a size_t. Don't access past end
70 of symbol buffer.
71 (resolve_symbol): Add isymbuf param and use instead of
72 finfo->internal_syms.
73 (eval_symbol, evaluate_complex_relocation_symbols): Likewise.
74 (elf_link_input_bfd): Don't read symbols specially for
75 evaluate_complex_relocation_symbols.
76
06dcabb0
NC
772007-09-26 Tristan Gingold <gingold@adacore.com>
78
79 * som.c (som_get_reloc_upper_bound): If there are no relocs return
80 enough space to hold a NULL pointer.
81
2e5b2d74
AM
822007-09-26 Alan Modra <amodra@bigpond.net.au>
83
84 * elf64-ppc.c (ppc_build_one_stub): Correct rel_hdr.sh_size.
85
98e89a7d
AM
862007-09-25 Alan Modra <amodra@bigpond.net.au>
87
2cb5950e
AM
88 * elf32-spu.c (struct spu_link_hash_table): Add ovly_load_r_symndx.
89 (spu_elf_size_stubs): Count stub relocs.
90 (write_one_stub): Emit relocs on overlay call stubs.
91
98e89a7d
AM
92 * elf32-spu.c (struct spu_link_hash_table): Add "stubs".
93 (spu_elf_link_hash_table_create): Init new field.
94 (spu_elf_size_stubs): Store sorted stub syms in new htab field
95 rather than local var.
96 (spu_elf_build_stubs): Iterate over htab stubs rather than
97 hash traversal.
98 (struct stubarr): Delete.
99 (allocate_spuear_stubs, populate_stubs, write_one_stub): Adjust.
100
e970b90a
DJ
1012007-09-24 Daniel Jacobowitz <dan@codesourcery.com>
102
103 * elf.c (assign_file_positions_for_load_sections): Trust
104 p_align_valid.
105 (copy_elf_program_header): Copy PT_NULL segments.
106
fad9eaf0
AM
1072007-09-24 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
108
109 * elf32-spu.c (is_indirect_branch): New function.
110 (find_function_stack_adjust): End scan on hitting indirect branch.
111 (sum_stack): Cast %v arg to correct type.
112
10569aeb
L
1132007-09-21 H.J. Lu <hongjiu.lu@intel.com>
114
115 * Makefile.am: Run "make dep-am".
116 * Makefile.in: Regenerated.
117
4ab20029
NC
1182007-09-21 Doug Kwan <dougkwan@google.com>
119
120 * Makefile.am (BFD32_LIBS): Add arange-set.lo.
121 (BFD32_LIBS_CFILES): Add arange-set.c.
122 (SOURCE_HFILES): Add arange-set.h
123 (dwarf2.lo): Add dependency upon arange-set.h.
124 (arange-set.lo): New target.
125 * Makefile.in: Regenerate.
126 * arange-set.c: New file.
127 * arange-set.h: New file.
128 * dwarf2.c: Include arange-set.h.
129 (struct dwarf2_debug) Add new fields comp_unit_count and
130 comp_unit_arange_set.
131 (struct comp_unit) Replace field arange with a new field arange_set.
132 (dwarf2_arange_set_allocate, dwarf2_arange_set_deallocate,
133 dwarf2_combine_arange_value, dwarf2_arange_set_new,
134 dwarf2_arange_set_with_value_new, dwarf2_comp_unit_arange_add): New
135 functions to utilize arange set in dwarf2.c.
136 (arange_add): Formatting change for a line longer than 80 characters.
137 (decode_line_info): Replace call target arange_add with
138 dwarf2_comp_unit_arange_add.
139 (read_rangelist_insert_arange_list,
140 read_rangelist_comp_unit_arange_add): New functions used as callbacks
141 for read_rangelist.
142 (read_rangelist): Change interface to accept a callback and data to
143 allow caller to select the action peformed on a new range list read.
144 (scan_unit_for_symbols): Use new interface of read_rangelist.
145 (parse_comp_unit): Create an arange set for each new comp unit. Use new
146 interface of read_rangelist. Replace call to arange_add with that to
147 dwarf2_comp_unit_arange_add.
148 (comp_unit_contains_address): Replace sequential search with a call to
149 arange_set_lookup_address, which can handles large set efficiently.
150 (stash_copy_local_aranges, stash_maybe_enable_arange_set,
151 stash_find_nearest_line_fast): New functions maintaining and using a
152 valued global arange set for all compilation units to speed up
153 bfd_dwarf2_find_nearest_line.
154 (find_line): Use global arange set. Replace sequential search over all
155 compilation units with a call to stash_find_nearest_line_fast. Add
156 book keeping to count number of compilation units. Replace empty
157 arange list test with a call to arange_set_empty_p.
158
6119d252
NC
1592007-09-21 Olivier Hainque <hainque@adacore.com>
160 Tristan Gingold <gingold@adacore.com>
161
162 * syms.c (_bfd_stab_section_find_nearest_line): Look at the
163 specific SOM sections for stabs if the regular ones are not found.
164 * som.h (struct somdata): Add a line_info field, to be used by
165 som_find_nearest_line.
166 * som.c (som_find_nearest_line): Implement using the bfd stabs
167 function above.
168
b55fd4d4
DJ
1692007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
170
171 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Make sure .got
172 will be output.
173
a69898aa
AM
1742007-09-19 Alan Modra <amodra@bigpond.net.au>
175 Doug Kwan <dougkwan@google.com>
176
177 * bfd-in.h (bfd_hash_insert): Declare.
178 * bfd-in2.h: Regenerate.
179 * hash.c (bfd_hash_insert): New function. Split out from..
180 (bfd_hash_lookup): ..here.
181 * merge.c (sec_merge_hash_lookup): Use bfd_hash_insert.
182
14b1c01e
AM
1832007-09-18 Alan Modra <amodra@bigpond.net.au>
184
185 * elf.c (bfd_section_from_shdr): Check bfd_alloc return.
186 (elfcore_write_note): Check realloc return.
187 * elflink.c (_bfd_elf_link_find_version_dependencies): Check
188 bfd_zalloc return.
189 (_bfd_elf_link_assign_sym_version): Check bfd_malloc return.
190 (elf_link_add_object_symbols): Likewise.
191 (struct hash_codes_info): New.
192 (elf_collect_hash_codes): Return bfd_malloc error.
193 (struct collect_gnu_hash_codes): Add "error".
194 (elf_collect_gnu_hash_codes): Return bfd_malloc error.
195 (bfd_elf_size_dynamic_sections): Check return status of
196 _bfd_elf_link_find_version_dependencies.
197 (bfd_elf_size_dynsym_hash_dynstr): Adjust for elf_collect_hash_codes
198 and elf_collect_gnu_hash_codes changes.
199 (elf_sym_name_compare): Formatting.
200 (elf_fixup_link_order): Use bfd_malloc, not xmalloc.
201
b10a8ae0
L
2022007-09-17 H.J. Lu <hongjiu.lu@intel.com>
203
204 PR binutils/3281
205 PR binutils/5037
206 * elf-bfd.h (elf_obj_tdata): Remove relro.
207
208 * elf.c (get_program_header_size): Check info->relro instead
209 of elf_tdata (abfd)->relro.
210 (_bfd_elf_map_sections_to_segments): Likewise.
211 (assign_file_positions_for_load_sections): Don't set
212 PT_GNU_RELRO segment alignment here.
213 (assign_file_positions_for_non_load_sections): Properly set up
214 PT_GNU_RELRO segment for copying executable/shared library.
215 (rewrite_elf_program_header): Remove PT_GNU_RELRO segment.
216 (copy_elf_program_header): Set p_size and p_size_valid fields for
217 PT_GNU_RELRO segment.
218
041a1845
NC
2192007-09-17 Nick Clifton <nickc@redhat.com>
220
221 * po/fi.po: New Finnish translation.
222 * po/es.po: Updated Spanish translation.
223 * configure.in (ALL_LINGUAS): Add fi.
224 * configure: Regenerate.
225 * po/bfd.pot: Regenerate.
226
0bc43230
AM
2272007-09-15 Nick Clifton <nickc@redhat.com>
228
229 * bfd.c (_bfd_default_error_handler): fflush stdout.
230
3ea6b9a5
AM
2312007-09-14 Alan Modra <amodra@bigpond.net.au>
232
233 * opncls.c (find_separate_debug_file): Ensure bfd_set_error has
234 been called on all error return paths.
235 (bfd_fill_in_gnu_debuglink_section): Use bfd_malloc, not malloc.
236 Clear padding after filename
237
5a1dcb7e
AM
2382007-09-14 Alan Modra <amodra@bigpond.net.au>
239
240 * format.c (bfd_check_format_matches): Record matching targets even
241 when "matching" is NULL to allow bfd_associated_vector matches.
242 Consolidate error return code. Consolidate ok return code. Always
243 restore original target and format on error.
244
bce5e5c9
AM
2452007-09-14 Alan Modra <amodra@bigpond.net.au>
246
247 * configure.in: Delete BFD_HOST_LONG_LONG and bfd checks for
248 long long. Partly revert 2007-07-12 change, so that
249 BFD_HOST_64BIT_LONG and BFD_HOST_64BIT_LONG_LONG are set
250 independent of "void *" size.
251 * configure: Regenerate.
252 * config.in: Regenerate.
253 * Makefile.in: Regenerate.
254
01a3c213
AM
2552007-09-12 Alan Modra <amodra@bigpond.net.au>
256
257 * elf-bfd.h (struct elf_backend_data): Delete elf_backend_sprintf_vma
258 and elf_backend_fprintf_vma.
259 (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
260 * elf.c (_bfd_elf_sprintf_vma, _bfd_elf_fprintf_vma): Delete.
261 * elfxx-target.h (elf_backend_sprintf_vma): Don't define.
262 (elf_backend_fprintf_vma): Likewise.
263 (elfNN_bed): Don't init removed fields.
264 * bfd.c (is32bit): New function.
265 (bfd_sprintf_vma, bfd_fprintf_vma): Use the above.
266
8d100c32
KH
2672007-09-11 Nathan Sidwell <nathan@codesourcery.com>
268
269 * archures.c: Add bfd_mach_mcf_isa_c_nodiv,
270 bfd_mach_mcf_isa_c_nodiv_mac & bfd_mach_mcf_isa_c_nodiv_emac.
271 * ieee.c (ieee_write_processor): Update coldfire architecture
272 list.
273 * bfd-in2.h: Rebuilt.
274 * cpu-m68k.c (arch_info_struct): Add isa_c nodiv architectures.
275 (m68k_arch_features): Likewise.
276 * elf32-m68k.c (elf32_m68k_object_p): Add EF_M68K_CF_ISA_C_NODIV.
277 (elf32_m68k_print_private_bfd_data): Likewise.
278
2f629d23
JB
2792007-09-11 Jan Beulich <jbeulich@novell.com>
280
281 * elf64-i386.c (elf64_i386_tls_transition): Remove redundant 'const'.
282 * elf64-x86_64.c (elf64_x86_64_tls_transition): Likewise.
283
2b953679
AM
2842007-09-08 Alan Modra <amodra@bigpond.net.au>
285
286 * elf64-ppc.c (func_desc_adjust): When resolving undefined
287 references to dot-symbols, transfer def_regular and
288 def_dynamic from the descriptor symbol.
289
78b8434d
AM
2902007-09-08 Alan Modra <amodra@bigpond.net.au>
291
292 * config.bfd: Set want64 for spu-*-elf.
293
98ece1b3
AM
2942007-09-08 Alan Modra <amodra@bigpond.net.au>
295
296 PR ld/2864, ld/5006
297 * elf.c (special_sections): Comment typo.
298 (elf_fake_sections): Force SHT_PROGBITS for sections that are
299 SHT_NOBITS if BFD section flags say they have contents.
300
5dff4664
MS
3012007-09-04 Michael Snyder <msnyder@access-company.com>
302
303 * elf32-bfin.c (howto_table): Cut and paste error?
304 Name field of reloc is wrong.
305
b427ea91
AM
3062007-09-04 Alan Modra <amodra@bigpond.net.au>
307
308 * elf32-spu.c (elf_howto_table): Formatting.
309
aff90a5f
L
3102007-09-02 H.J. Lu <hongjiu.lu@intel.com>
311
312 PR ld/4986
313 * dwarf2.c (new_line_sorts_after): Undo the last change.
314 (add_line_info): Only keep the last entry with the same address
315 and end sequence.
316
39934745
L
3172007-08-31 H.J. Lu <hongjiu.lu@intel.com>
318
319 PR ld/4986
320 * dwarf2.c (new_line_sorts_after): Also compare line number.
321
3a4743fe
NC
3222007-08-31 Jesse Michael <jmichael@suse.de>
323
324 * mach-o.c (bfd_mach_o_make_bfd_section): Fix test for non
325 zerofill sections.
326
5c5d6806
BW
3272007-08-28 David Heine <dlheine@tensilica.com>
328
329 * elf32-xtensa.c (compute_ebb_actions): Update removed_bytes when
330 narrowing instructions.
331
7f6a71ff 3322007-08-28 Mark Shinwell <shinwell@codesourcery.com>
39934745 333 Joseph Myers <joseph@codesourcery.com>
7f6a71ff
JM
334
335 * elf32-arm.c (elf32_arm_compare_mapping): Compare first on vma,
336 then on type.
337
0b3e17e9
NC
3382007-08-28 Robert Sebastian Gerus <arachnist@gmail.com>
339
340 * config.bfd: Add support for i[3-7]86-*-dragonfly*.
341 * configure.in: Likewise.
342 * configure: Regenerate.
343
b15fa79e
AM
3442007-08-25 Ulrich Weigand <uweigand@de.ibm.com>
345 Alan Modra <amodra@bigpond.net.au>
346
347 * elf.c (elfcore_grok_spu_note): New function.
348 (elf_parse_notes): Call it.
349
534a31f6
L
3502007-08-24 H.J. Lu <hongjiu.lu@intel.com>
351
352 * elf64-x86-64.c (elf64_x86_64_relocate_section): Adjust
353 indentation.
354
4a6636fb
PA
3552007-08-24 Pedro Alves <pedro_alves@portugalmail.pt>
356
357 * elf.c (elfcore_grok_win32pstatus): Remove HAVE_WIN32_PSTATUS_T
358 guard. Make it host independent.
359 (elfcore_grok_note): Remove HAVE_WIN32_PSTATUS_T guard around
360 NT_WIN32PSTATUS.
361
718175fa
JK
3622007-08-24 Jan Kratochvil <jan.kratochvil@redhat.com>
363
82fc7765
JK
364 * elf-bfd.h (struct elf_obj_tdata): New BUILD_ID_SIZE, BUILD_ID.
365 * elf.c (elfcore_read_notes): Split to ...
718175fa
JK
366 (elf_read_notes) ... here ...
367 (elf_parse_notes): ... and here. Check `bfd_get_format (abfd)' with
368 the former subfunctions called only for BFD_CORE.
369 Call ELFOBJ_GROK_GNU_NOTE for BFD_OBJECT files with the owner "GNU".
370 (_bfd_elf_make_section_from_shdr): Call ELF_PARSE_NOTES for SHT_NOTEs.
371 (bfd_section_from_phdr): Update the call for renamed ELFCORE_READ_NOTES.
372 (elfobj_grok_gnu_build_id, elfobj_grok_gnu_note): New functions.
373 Code advisory: Roland McGrath
374
f1187097
DJ
3752007-08-24 Daniel Jacobowitz <dan@codesourcery.com>
376
377 * elf64-mips.c (elf_backend_sign_extend_vma): Define.
378
a30e5f5f
AM
3792007-08-24 Alan Modra <amodra@bigpond.net.au>
380
381 * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Warning fix.
382
a351bca6
L
3832007-08-23 H.J. Lu <hongjiu.lu@intel.com>
384
385 * Makefile.am: Run "make dep-am".
386 * Makefile.in: Regenerated.
387
142411ca
L
3882007-08-23 H.J. Lu <hongjiu.lu@intel.com>
389
390 * elf32-i386.c: Include "bfd_stdint.h".
391 (elf_i386_rtype_to_howto): New function.
392 (elf_i386_info_to_howto_rel): Use it.
393 (x86_64_opcode16): New union type.
394 (elf_i386_check_tls_transition): New function.
395 (elf_i386_tls_transition): Updated to check transition and
396 issue an error if a transition isn't supported.
397 (elf_i386_check_relocs): Return FALSE if
398 elf_i386_tls_transition returns FALSE.
399 (elf_i386_gc_sweep_hook): Likewise.
400 (elf_i386_relocate_section): Likewise. Remove BFD_ASSERT
401 on TLS transitions.
402
403 * elf64-x86-64.c: Include "bfd_stdint.h".
404 (x86_64_opcode16): New union type.
405 (x86_64_opcode32): Likewise.
406 (elf64_x86_64_check_tls_transition): New function.
407 (elf64_x86_64_tls_transition): Updated to check transition and
408 issue an error if a transition isn't supported.
409 (elf64_x86_64_check_relocs): Return FALSE if
410 elf64_x86_64_tls_transition returns FALSE.
411 (elf64_x86_64_gc_sweep_hook): Likewise.
412 (elf64_x86_64_relocate_section): Likewise. Remove BFD_ASSERT
413 on TLS transitions.
414
eae50df2
L
4152007-08-22 H.J. Lu <hongjiu.lu@intel.com>
416
417 * elfxx-ia64.c: Convert to ISO C90 prototypes.
418 (elfNN_hpux_backend_section_from_bfd_section): Make it static.
419
9a2e389a
L
4202007-08-22 H.J. Lu <hongjiu.lu@intel.com>
421
422 * elf64-x86-64.c: Remove trailing whitespace.
423 * elfxx-ia64.c: Likewise.
424
2f3bf80a
L
4252007-08-21 H.J. Lu <hongjiu.lu@intel.com>
426
427 * elf32-i386.c (elf_i386_tls_transition): Accept a pointer
428 to ELF hash entry instead of an integer for local test.
429 (elf_i386_check_relocs): Updated.
430 (elf_i386_gc_sweep_hook): Likewise.
431 (elf_i386_relocate_section): Likewise.
432
433 * elf64-x86-64.c (elf64_x86_64_tls_transition): Accept a
434 pointer to ELF hash entry instead of an integer for local
435 test.
436 (elf64_x86_64_check_relocs): Updated.
437 (elf64_x86_64_gc_sweep_hook): Likewise.
438 (elf64_x86_64_relocate_section): Likewise.
439
3bfa9139
L
4402007-08-20 H.J. Lu <hongjiu.lu@intel.com>
441
442 * elf32-i386.c (elf_i386_tls_transition): Break long line.
443 * elf64-x86-64.c (elf64_x86_64_tls_transition): Likewise.
444
19ec0de7
JK
4452007-08-20 Jan Kratochvil <jan.kratochvil@redhat.com>
446
447 * elfxx-target.h [ELF_COMMONPAGESIZE && ELF_MAXPAGESIZE]
448 (ELF_MINPAGESIZE): Fixed its size guess. Sanity checked its size.
449 (ELF_COMMONPAGESIZE, ELF_MAXPAGESIZE): Sanity checked their size.
450
75ea2736
NC
4512007-08-20 Nick Clifton <nickc@redhat.com>
452
453 * elflink.c (elf_fixup_link_order): Rewrite conversion of
454 s->alignment_power into an offset mask in order to avoid a gcc
455 error message.
456
7e976ae4
JJ
4572007-08-17 Jakub Jelinek <jakub@redhat.com>
458
459 * config.bfd: Handle sparcv*-*-linux-* the same as sparc-*-linux-*.
460 Change sparc64-*-linux-* to sparc64*-*-linux-*.
461
e9f27433
AM
4622007-08-17 Alan Modra <amodra@bigpond.net.au>
463
464 * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
465
2b05f1b7
L
4662007-08-16 H.J. Lu <hongjiu.lu@intel.com>
467
468 * elf.c: Revert last change.
469
94b11780
L
4702007-08-16 H.J. Lu <hongjiu.lu@intel.com>
471
472 * elf.c (get_segment_type): Change PT_GNU_STACK to PT_GNU_ATTR.
473 (bfd_section_from_phdr): Likewise.
474 (get_program_header_size): Likewise. Add a PT_GNU_ATTR segment
475 if there is an attribute section.
476 (_bfd_elf_map_sections_to_segments): Likewise.
477 (IS_SECTION_IN_INPUT_SEGMENT): Likewise.
478
a3fadc9a
L
4792007-08-14 H.J. Lu <hongjiu.lu@intel.com>
480
481 PR ld/4918
482 * elf32-i386.c (elf_i386_relocate_section): Allow R_386_PC32
483 on ___tls_get_addr for GD->LE/LD->LE transitions when not
484 building shared library.
485
486 * elf64-x86-64.c (elf64_x86_64_relocate_section): Allow
487 R_X86_64_PC32 on __tls_get_addr for GD->LE/LD->LE transitions
488 when not building shared library.
489
3fec76aa
JK
4902007-08-14 Jan Kratochvil <jan.kratochvil@redhat.com>
491
492 * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): LOADBASE is now
493 initialized only on the first PT_LOAD. New variable LOADBASE_SET.
494 Removed PF_R checking for IA-64 vDSOs as redundant now.
495 Code advisory: Roland McGrath
496
8275b357
RS
4972007-08-13 Richard Sandiford <richard@codesourcery.com>
498
499 * elfxx-mips.c (mips_elf_link_hash_table): Add computed_got_sizes.
500 (mips_elf_record_global_got_symbol): Increment local_gotno for
501 each forced-local symbol.
502 (_bfd_mips_elf_check_relocs): Pass forced-local call symbols to
503 mips_elf_record_global_got_symbol for VxWorks too.
504 (_bfd_mips_elf_always_size_sections): Set computed_got_sizes
505 to true after computing the GOT size.
506 (_bfd_mips_elf_hide_symbol): Increase local_gotno whenever
507 got.offset == 1. Only adjust global_gotno if computed_got_sizes.
508 For VxWorks, add a local entry when hiding a symbol that needs a
509 plt but has not been marked as needing a global got entry.
510 (_bfd_mips_elf_link_hash_table_create): Set computed_got_sizes to
511 false.
512
649aeae3
DJ
5132007-08-12 Daniel Jacobowitz <dan@codesourcery.com>
514
515 * coffgen.c (coff_get_normalized_symtab): Correct cast.
516
3dea8fca
AM
5172007-08-13 Alan Modra <amodra@bigpond.net.au>
518
519 * elf.c (elf_modify_segment_map): Add remove_empty_load param.
520 Don't remove empty PT_LOAD header if false.
521 (_bfd_elf_map_sections_to_segments): If user phdrs, pass false
522 to elf_modify_segment_map.
523 (assign_file_positions_for_load_sections): Pass false to
524 elf_modify_segment_map.
525
ac2df442
AM
5262007-08-13 Alan Modra <amodra@bigpond.net.au>
527
528 * elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define.
529 Update stub comments.
530 (build_plt_stub): Build two variants, one without "addis".
531 (ppc_build_one_stub): Build stubs without "addis" if possible.
532 (ppc_size_one_stub): Size new stubs.
533
2f964f43
RS
5342007-08-11 Richard Sandiford <richard@codesourcery.com>
535
536 * config.bfd (sh-*-vxworks): Define targ_underscore to "yes".
537
6b8f0fd5
MS
5382007-08-09 Michael Snyder <msnyder@access-company.com>
539
540 * aoutx.h (aout_get_external_symbols): Return if count is zero.
541
6d33f217
L
5422007-08-09 H.J. Lu <hongjiu.lu@intel.com>
543
544 PR ld/4909
545 * elf.c (print_segment_map): New function.
546 (assign_file_positions_for_load_sections): Call print_segment_map
547 when a section can't be allocated in segment.
548
c309eac2
JK
5492007-08-09 Jan Kratochvil <jan.kratochvil@redhat.com>
550
551 * opncls.c (bfd_openr_iovec): Fix the OPEN parameter macro expansion.
552
e6902efc
NC
5532007-08-07 Nick Clifton <nickc@redhat.com>
554
555 * po/bfd.pot: Updated template.
556 * po/BLD-POTFILES.in: Regenerate.
557
d5191d0c
AM
5582007-08-07 Alan Modra <amodra@bigpond.net.au>
559
560 * elf.c: (_bfd_elf_make_section_from_phdr): Properly handle
561 bss segments.
562
5eda1c47
DJ
5632007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
564
565 * Makefile.am (BUILD_HFILES): Clean bfd_stdint.h.
566 * Makefile.in: Regenerated.
567
be118e79
DJ
5682007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
569
570 * configure.in: Update version to 2.18.50.
571 * configure: Regenerated.
572
bd97cb95
DJ
5732007-08-06 Paul Brook <paul@codesourcery.com>
574
575 * elf32-arm.c (elf32_arm_link_hash_entry): Add
576 plt_maybe_thumb_refcount.
577 (elf32_arm_link_hash_newfunc): Set plt_maybe_thumb_refcount.
578 (elf32_arm_copy_indirect_symbol): Ditto.
579 (elf32_arm_adjust_dynamic_symbol): Ditto.
580 (bfd_elf32_arm_process_before_allocation): Handle R_ARM_THM_JUMP24.
581 (arm_add_to_rel): Ditto.
582 (elf32_arm_final_link_relocate): Merge R_ARM_THM_JUMP24 with
583 R_ARM_THM_CALL. Handle R_ARM_THM_JUMP19 against a PLT stub.
584 (elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
585 for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
586 (elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
587 and R_ARM_THM_JUMP19.
588 (allocate_dynrelocs): Use plt_maybe_thumb_refcount.
589 (elf32_arm_finish_dynamic_symbol): Ditto.
590 (elf32_arm_output_plt_map): Ditto.
591
c981028a
DJ
5922007-08-06 Daniel Jacobowitz <dan@codesourcery.com>
593
594 * elf.c (rewrite_elf_program_header): Handle sections not sorted
595 by address.
596 (copy_elf_program_header): Likewise.
597
f7231afc
L
5982007-08-04 H.J. Lu <hongjiu.lu@intel.com>
599
600 * elf-bfd.h (xvec_get_elf_backend_data): Add const.
601
602 * elfcode.h (elf_object_p): Use xvec_get_elf_backend_data.
603 * elfcore.h (elf_core_file_p): Likewise.
604
bd33be6e
L
6052007-08-02 H.J. Lu <hongjiu.lu@intel.com>
606
607 * coffcode.h (ALIGN_SET): Removed.
608 (ELIFALIGN_SET): Likewise.
609 (coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES,
610 IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES,
611 IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES,
612 IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES.
613
dcf6c779
MS
6142007-08-01 Michael Snyder <msnyder@access-company.com>
615
9b0ec667
MS
616 * vms-tir.c (new_section): Fix cut and paste error.
617
20c6e70e
MS
618 * aoutx.h (aout_link_add_symbols): Return if count is zero.
619
dcf6c779
MS
620 * elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
621 pointer must be non-null.
622
e708816d
NC
6232007-08-01 Tristan Gingold <gingold@adacore.com>
624
625 * coffcode.h (coff_sort_func_alent): New function.
626 (coff_slurp_line_table): Sort line table if not already sorted.
627
55b581a6
JJ
6282007-08-01 Jakub Jelinek <jakub@redhat.com>
629
630 * elf.c (_bfd_elf_map_sections_to_segments): Work around buggy
631 GCC 3.4.x warning.
632
ad756e3f
AM
6332007-08-01 Alan Modra <amodra@bigpond.net.au>
634
635 * aoutx.h (swap_ext_reloc_in): Set howto to NULL for unknown
636 r_type.
637 (swap_std_reloc_in): Likewise.
638 (aout_link_input_section_std): Likewise. Return with an error
639 on unexpected relocation type.
640 (aout_link_input_section_ext): Likewise.
641
f6e688f7
AM
6422007-08-01 Alan Modra <amodra@bigpond.net.au>
643
644 PR4694
645 * aoutx.h (final_link): Write a zero in first word of
646 stringtab if no symbols rather than corrupting last byte
647 of text/data.
648
1c5265b5
JJ
6492007-07-31 Jakub Jelinek <jakub@redhat.com>
650
651 * elf.c (get_program_header_size): Adjacent loadable .note*
652 sections need just one PT_NOTE segment.
653 (_bfd_elf_map_sections_to_segments): Likewise.
654
9ee2139f
MS
6552007-07-30 Michael Snyder <msnyder@access-company.com>
656
657 * coffgen.c (_bfd_coff_read_internal_relocs): Revert change of
658 2007-07-26. Buffer still in use, can't be freed.
659
c6aa130f
MS
6602007-07-27 Michael Snyder <msnyder@access-company.com>
661
d63388ff
MS
662 * cofflink.c (coff_link_add_symbols): Return if count is zero.
663
50a39e97
MS
664 * coff-i386.c (coff_i386_rtype_to_howto): Off by one error.
665
87b32780
MS
666 * aoutx.h (slurp_symbol_table): Return if count == 0.
667
9d7038d3
MS
668 * coffgen.c (_bfd_coff_read_internal_relocs): Return if count is zero.
669
c6aa130f
MS
670 * elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
671
170bfeb9
L
6722007-07-27 H.J. Lu <hongjiu.lu@intel.com>
673
674 * config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
675
507f5898
MS
6762007-07-26 Michael Snyder <msnyder@access-company.com>
677
678 * coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
a6626e8c
MS
679
680 * linker.c (bfd_section_already_linked_table_insert): Change
681 return type from void to boolean. Return FALSE on failure.
682 (_bfd_generic_section_already_linked): Test return value of
683 bfd_section_already_linked_table_insert, call fatal on error.
684
685 * elflink.c (_bfd_elf_section_already_linked): Test return value
686 of bfd_section_already_linked_table_insert, call fatal on error.
687
688 * libbfd-in.h (bfd_section_already_linked_table_insert): Update
689 return type to bfd_boolean.
690
691 * libbfd.h: Regenerate.
692
36e44abd
AN
6932007-07-26 Adam Nemet <anemet@caviumnetworks.com>
694
695 * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
696 bfd_slurp_armap): Improve function comment.
697
b7fd5ce1
MS
6982007-07-26 Michael Snyder <msnyder@access-company.com>
699
2d4f3e92
MS
700 * linker.c (already_linked_newfunc): Check for NULL return from
701 bfd_hash_allocate.
702
ac38308c
MS
703 * coffgen.c (fixup_symbol_value): Guard against null;
704 bfd_is_com_section will dereference the section pointer.
705
c82a7c57
MS
706 * syms.c (bfd_decode_symclass): Guard against NULL, since
707 bfd_is_com_section dereferences the pointer.
708
3d7b34d8
MS
709 * srec.c (srec_scan): Check for EOF (critical because return value
710 will be used as array index).
711
44c62d9e
MS
712 * coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
713 are not to be cached, free the temporary buffer.
714
078c4bfc
MS
715 * aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
716 or count == zero.
717
814b5378
MS
718 * tekhex.c (first_phase): Check return value for null.
719
b7fd5ce1
MS
720 * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
721 pointer increment.
722
b9da616a
AM
7232007-07-26 Alan Modra <amodra@bigpond.net.au>
724
33774f08
AM
725 * elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
726 check on dynobj. Remove bed shadow.
727
e62071b6
AM
728 * srec.c (srec_get_section_contents): Return immediately on
729 count zero. Check that offset and count are within section.
730 * libbfd.c (_bfd_generic_get_section_contents): Check that
731 offset + count does not overflow.
732
b9da616a
AM
733 * srec.c (srec_canonicalize_symtab): Don't alloc when symcount
734 is zero. Correct return value on error.
735 * mmo.c (mmo_canonicalize_symtab): Likewise.
736 * binary.c (binary_canonicalize_symtab) Correct return on error.
737
c2c96631
TS
7382007-07-26 Thiemo Seufer <ths@mips.com>
739
740 * bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
741
d4947150
AM
7422007-07-26 Alan Modra <amodra@bigpond.net.au>
743
744 * reloc.c (bfd_generic_get_relocated_section_contents): Avoid
745 bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
746 says there are no relocs.
747
bd210d54 7482007-07-26 Doug Kwan <dougkwan@google.com>
d4947150 749
bd210d54
NC
750 Speed up bfd_dwarf2_find_line.
751 * dwarf2.c (struct dwarf2_debug): Add new fields to support function
752 and variable info hash tables. Add last_comp_unit, info_hash_count,
753 funcinfo_hash_table, varinfo_hash_table, hash_units_head.
754 (struct comp_unit): Add prev_unit, cached.
755 (struct info_list_node, struct info_hash_entry,
756 struct info_hash_table): New.
757 (info_hash_table_newfunc, create_info_hash_table,
758 insert_info_hash_table, lookup_info_hash_table): New functions
759 implementing function and variable info hash tables.
760 (scan_unit_for_symbols): Add checks to make sure hash tables are
761 consistent with compilation units.
762 (comp_unit_maybe_decode_line_info): New function.
763 (comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
764 (reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info,
765 info_hash_lookup_funcinfo, info_hash_lookup_varinfo,
766 stash_maybe_update_info_hash_table, stash_verify_info_hash_table,
767 stash_maybe_enable_info_hash_tables, stash_find_line_fast): New
768 functions. Make use of info hash tables to speed up
769 bfd_dwarf2_find_line.
770 (find_line): Use hash table for faster lookup if it is turned on.
771 Also add code to maintain bi-directional link in comp units.
772
353c5574
MS
7732007-07-25 Michael Snyder <msnyder@access-company.com>
774
775 * coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
776 if size == 0; return and avoid possible null pointer issues.
777
f08c429c
AM
7782007-07-25 Alan Modra <amodra@bigpond.net.au>
779
780 * linker.c (generic_link_add_symbol_list): Warning fix.
781
d0f16d5e
MS
7822007-07-24 Michael Snyder <msnyder@access-company.com>
783
f6eea5ae
MS
784 * opncls.c (bfd_make_writable): Check return from bfd_malloc.
785
d0f16d5e
MS
786 * elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
787 on bfd_malloc error rather than goto error_return.
788
4d269e42
AM
7892007-07-24 Alan Modra <amodra@bigpond.net.au>
790
791 * elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
792 _bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
793 _bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
794 _bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
795 bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
796 bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
797 bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
798 bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
799 struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
800 elf_sym_name_compare, elf_create_symbuf,
801 bfd_elf_match_symbols_in_sections,
802 _bfd_elf_match_sections_by_type): Move to here..
803 * elf.c: ..from here.
804
a26587ba
RS
8052007-07-23 Richard Sandiford <richard@codesourcery.com>
806
807 * elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
808 of weakdef->root.type if weakdef has no regular definition.
809
0e53d9da
AN
8102007-07-22 Adam Nemet <anemet@caviumnetworks.com>
811
812 * elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
813 small_data_overflow_reported.
814 (_bfd_mips_elf_link_hash_table_create): Initialize it.
815 (_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
816 small-data section overflow.
817
6b33789f
NC
8182007-07-19 Doug Kwan <dougkwan@google.com>
819
4d269e42
AM
820 PR binutils/4797
821 * dwarf2.c: (find_line) Do not dereference functionname_ptr if
822 do_line is true.
6b33789f 823
13161072 8242007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 825
13161072
BW
826 * elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
827 non-ELF sections.
4d269e42 828
e29297b7 8292007-07-18 Bob Wilson <bob.wilson@acm.org>
4d269e42 830
e29297b7
BW
831 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
832 vma and size for dynamic tags from the output sections.
4d269e42 833
a5d1b3b5
AM
8342007-07-18 Alan Modra <amodra@bigpond.net.au>
835
836 * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
837 * elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
838 symbol. Instead cache ELF section index. Remove redundant
839 checks of st_shndx.
840
d955dada
MF
8412007-07-15 Mike Frysinger <vapier@gentoo.org>
842
843 * trad-core.c (NBPG): If not defined, set to getpagesize().
844
979dc3bc
RM
8452007-07-13 Roland McGrath <roland@redhat.com>
846
847 * elf-bfd.h (struct elf_obj_tdata): Revert last change.
848 Add after_write_object_contents, after_write_object_contents_info.
849 * elf.c (_bfd_elf_write_object_contents): Revert last change.
850 Instead, call after_write_object_contents if set.
851
d2df793a
NC
8522007-07-12 Kai Tietz <kai.tietz@onevision.com>
853
854 * bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New.
855 (BFD_HOSTPTR_T): Host pointer type for casting a
856 pointer to an integer type.
857 (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
858 (sprintf_vma, fprintf_vma): Add support for long long prints.
859 * bfd-in2.h: Regenerate.
860 * configure.in: (BFD_HOST_64BIT_LONG_LONG): New.
861 (BFD_HOSTPTR_T): Host pointer type for casting a
862 pointer to an integer type. Default is "unsigned long".
863 (AC_CHECK_SIZEOF(void *)): New.
864 (host64): Set it if the pointer size is 8.
865 * configure: Regenerate.
866 * config.in: Add macro SIZEOF_VOID_P.
867 * coffcode.h: Replace host ptr type assuming "long" with
868 bfd_hostptr_t type.
869 * coffgen.c: Likewise.
870 * elf-eh-frame.c: Likewise.
871 * peicode.h: Likewise.
872
a3a4ddad
L
8732007-07-10 H.J. Lu <hongjiu.lu@intel.com>
874
875 * Makefile.in: Regenerated.
876
329b43c4
L
8772007-07-10 H.J. Lu <hongjiu.lu@intel.com>
878
879 PR binutils/4756
880 * simple.c (bfd_simple_get_relocated_section_content): Don't
881 apply relocation on executable and shared library.
882
cfd2c773
NS
8832007-07-10 Nathan Sidwell <nathan@codesourcery.com>
884
885 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
886 copy relocs on vxworks.
887
1489a3a0
AM
8882007-07-10 Alan Modra <amodra@bigpond.net.au>
889
890 * elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
891 * elf64-alpha.c (alpha_elf_size_info): Likewise.
892 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
893 * elf64-mips.c (mips_elf64_size_info): Likewise.
894 * elf64-s390.c (s390_elf64_size_info): Likewise.
895 * elf64-sparc.c (elf64_sparc_size_info): Likewise.
896
00cbee0a
L
8972007-07-09 H.J. Lu <hongjiu.lu@intel.com>
898
899 * elflink.c (bfd_elf_record_link_assignment): Handle indirect
900 symbol.
901 (_bfd_elf_merge_symbol): Properly update normal symbol when
902 overriding the versioned symbol from a dynamic library.
903
fd2f25da
RM
9042007-07-09 Roland McGrath <roland@redhat.com>
905
906 * elf-bfd.h (struct elf_obj_tdata): Add members
907 emit_note_gnu_build_id and note_gnu_build_id_sec.
908 * elf.c (_bfd_id_note_section_size): New global function.
909 (read_hex, _bfd_elf_write_build_id_section): New static functions.
910 (_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
911 if emit_note_gnu_build_id is set.
912 * Makefile.am (elf.lo): Update dependencies.
913
914 * elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
915 (bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
916 * elfcode.h (elf_checksum_contents): New macro and function.
917 (NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
918
9af2a943
AM
9192007-07-06 Michael Snyder <msnyder@access-company.com>
920
921 * elflink.c (elf_link_add_object_symbols): Return via
922 error_free_vers on "notice" failure.
923
a93221e5
L
9242007-07-04 H.J. Lu <hongjiu.lu@intel.com>
925
926 * peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
927 if arch is unknown.
928
b4928193
NC
9292007-07-04 Nick Clifton <nickc@redhat.com>
930
931 Import this patch from an internal tree:
9af2a943 932
b4928193
NC
933 2001-07-17 Richard Henderson <rth@redhat.com>
934
935 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
936 compensate for high bit set in R_MEP_LOW16.
937
3cfad14c
JM
9382007-07-03 Joseph Myers <joseph@codesourcery.com>
939
940 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
941 input attributes if value has been copied.
942
cd123cb7
NC
9432007-07-03 Nick Clifton <nickc@redhat.com>
944
945 * COPYING: Replace with GPLv3 text.
946 * aix386-core.c: Update copyright notice to refer to GPLv3.
947 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
948 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
949 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
950 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
951 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
952 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
953 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
954 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
955 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
956 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
957 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
958 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
959 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
960 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
961 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
962 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
963 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
964 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
965 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
966 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
967 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
968 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
969 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
970 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
971 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
972 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
973 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
974 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
975 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
976 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
977 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
978 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
979 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
980 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
981 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
982 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
983 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
984 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
985 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
986 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
987 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
988 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
989 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
990 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
991 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
992 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
993 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
994 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
995 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
996 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
997 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
998 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
999 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
1000 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
1001 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
1002 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
1003 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
1004 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
1005 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
1006 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
1007 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
1008 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
1009 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
1010 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
1011 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
1012 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
1013 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
1014 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
1015 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
1016 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
1017 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
1018 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
1019 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
1020 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
1021 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
1022 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
1023 xtensa-modules.c: Likewise.
1024 * elf32-sh-relocs.h: Add copyright notice.
1025 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
1026 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
1027 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
1028 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
1029 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
1030 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
1031 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
1032 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
1033 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
1034
741d6ea8
JM
10352007-07-02 Joseph Myers <joseph@codesourcery.com>
1036
1037 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
1038 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
1039 * elf64-mips.c (mips_elf64_howto_table_rela): Support
1040 R_MIPS_TLS_DTPREL64.
1041
ae351704
AM
10422007-07-02 Alan Modra <amodra@bigpond.net.au>
1043
1044 * Makefile.am: Run "make dep-am".
1045 * Makefile.in: Regenerate.
1046 * aclocal.m4: Regenerate.
1047 * config.in: Regenerate.
1048 * po/SRC-POTFILES.in: Regenerate.
1049 * po/bfd.pot: Regenerate.
1050
3e5484db
AM
10512007-07-02 Alan Modra <amodra@bigpond.net.au>
1052
1053 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
1054 symsec != NULL tests.
1055
08a40648
AM
10562007-07-02 Alan Modra <amodra@bigpond.net.au>
1057
1058 PR 4712
1059 * elf.c (assign_file_positions_for_load_sections): Adjust lma
1060 by p_vaddr_offset.
1061
86b57e31
L
10622007-06-30 H.J. Lu <hongjiu.lu@intel.com>
1063
1064 * aclocal.m4: Regenerated.
1065 * Makefile.in: Likewise.
1066
34c8bcba
JM
10672007-06-29 Joseph Myers <joseph@codesourcery.com>
1068
1069 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
1070 (ppc_elf_merge_private_bfd_data): Call it.
1071
2cf19d5c
JM
10722007-06-29 Joseph Myers <joseph@codesourcery.com>
1073
1074 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
1075 (_bfd_mips_elf_merge_private_bfd_data): Call it.
1076
104d59d1
JM
10772007-06-29 Joseph Myers <joseph@codesourcery.com>
1078
1079 * elf-attrs.c: New.
1080 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
1081 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
1082 (elf-attrs.lo): Generate dependencies.
1083 * Makefile.in: Regenerate.
1084 * configure.in (elf): Add elf-attrs.lo.
1085 * configure: Regenerate.
1086 * elf-bfd.h (struct elf_backend_data): Add entries for object
1087 attributes.
1088 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
1089 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
1090 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
1091 New.
1092 (struct elf_obj_tdata): Add entries for object attributes.
1093 (elf_known_obj_attributes, elf_other_obj_attributes,
1094 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
1095 New.
1096 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
1097 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
1098 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
1099 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
1100 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
1101 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
1102 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
1103 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
1104 (bfd_section_from_shdr): Handle attributes sections.
1105 * elflink.c (bfd_elf_final_link): Handle attributes sections.
1106 * elfxx-target.h (elf_backend_obj_attrs_vendor,
1107 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
1108 elf_backend_obj_attrs_section_type): New.
1109 (elfNN_bed): Update.
1110 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
1111 aeabi_attribute_list): Remove.
1112 (struct elf32_arm_obj_tdata): Remove object attributes fields.
1113 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
1114 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
1115 Update for new object attributes interfaces.
1116 (uleb128_size, is_default_attr, eabi_attr_size,
1117 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
1118 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
1119 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
1120 elf32_arm_add_eabi_attr_int, attr_strdup,
1121 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
1122 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
1123 to generic code in elf-attrs.c.
1124 (elf32_arm_obj_attrs_arg_type): New.
1125 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
1126 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
1127 (bfd_elf32_bfd_final_link): Remove.
1128 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
1129 elf_backend_obj_attrs_arg_type,
1130 elf_backend_obj_attrs_section_type): New.
1131 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
1132 attributes.
1133 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
1134 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
1135 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
1136 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
1137 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
1138 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
1139
5ab79981
PB
11402007-06-29 Paul Brook <paul@codesourcery.com>
1141
1142 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
1143 call veneers for call relocations against undefined symbols.
1144 (elf32_arm_final_link_relocate): Turn call to undefined symbol
1145 into a jump to the next instruction.
1146
c6aa130f 11472007-06-29 Michael Snyder <msnyder@access-company.com>
32e8a950
NC
1148
1149 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
1150
3d3d428f
NC
11512007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
1152
1153 * Makefile.am: Add cr16 related entry
1154 * Makefile.in: Regenerate
1155 * archures.c: Add bfd_cr16_arch
1156 * bfd-in2.h: Regenerate
1157 * config.bfd: Add cr16-elf
1158 * configure.in: Add bfd_elf32_cr16_vec
1159 * configure: Regenerate.
1160 * targets.c: Added cr16 related information
1161 * cpu-cr16.c: New file.
1162 * elf32-cr16.c: New file.
1163 * reloc.c: Added cr16 relocs.
1164
c55fe096
AM
11652007-06-29 Alan Modra <amodra@bigpond.net.au>
1166
1167 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
1168 message for undefined version nodes.
1169 (elf_gc_sweep): Don't warn when zero size sections are
1170 removed.
1171
375de94a
AM
11722007-06-29 Nathan Froyd <froydnj@codesourcery.com>
1173
1174 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
1175 types.
1176
7d3287cb
AM
11772007-06-29 Alan Modra <amodra@bigpond.net.au>
1178
1179 * elf32-spu.c (spu_elf_fake_sections): New function.
1180 (elf_backend_fake_sections): Define.
1181
6a3cd2b4
AM
11822007-06-29 Alan Modra <amodra@bigpond.net.au>
1183
1184 * elf.c (assign_file_positions_for_load_sections): Use elf
1185 section header sh_size rather than bfd section size, simplifying
1186 .tbss handling.
1187
bf988460
AM
11882007-06-29 Alan Modra <amodra@bigpond.net.au>
1189
36fc76ae 1190 PR ld/4701
bf988460
AM
1191 * elf.c (assign_file_positions_for_load_sections): Ensure bss
1192 segments meet gABI alignment requirements. Don't allocate
1193 file space for bss sections in a segment also containing file
1194 or program headers.
1195
60b31e8d
AM
11962007-06-27 Alan Modra <amodra@bigpond.net.au>
1197
cc481421
AM
1198 * bfd.c (struct bfd): Rename "next" to "archive_next".
1199 * archive.c: Rename uses throughout file.
1200 * archive64.c: Likewise.
1201 * coff-rs6000.c: Likewise.
1202 * ecoff.c: Likewise.
1203 * som.c: Likewise.
1204 * bfd-in2.h: Regenerate.
1205
60b31e8d
AM
1206 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
1207 input bfds.
58eb693e 1208 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 1209
bec42b15
NC
12102007-06-26 H.J. Lu <hongjiu.lu@intel.com>
1211
1212 * dwarf2.c (find_line): New. Contains the duplicated code from:
1213 (_bfd_dwarf2_find_nearest_line): Use it.
1214 (_bfd_dwarf2_find_line): Use it.
1215
3d3e6f9a
JM
12162007-06-26 Joseph Myers <joseph@codesourcery.com>
1217
1218 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
1219
b314ec0e
RS
12202007-06-25 Richard Sandiford <richard@codesourcery.com>
1221
1222 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
1223 to be used for calls from MIPS16 code.
1224
0d4a1476
AS
12252007-06-23 Andreas Schwab <schwab@suse.de>
1226
1227 * configure.in (--with-separate-debug-dir): New option.
1228 * configure: Regenerate.
1229 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
1230 * Makefile.in: Regenerate.
1231 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
1232 bfd_follow_gnu_debuglink.
1233 (_bfd_dwarf2_find_line): Likewise.
1234
0d161102
NC
12352007-06-22 Nick Clifton <nickc@redhat.com>
1236
1237 * dwarf2.c: Add support for reading in debug information via a
1238 .gnu_debuglink section:
1239 (struct dwarf2_debug): Add bfd field to record the bfd containing
1240 the debug info.
1241 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
1242 field in the dwarf2_debug structure.
1243 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
1244 be found in the current bfd call bfd_follow_gnu_debuglink to see
1245 if another file contains the debug information. If it does, open
1246 it and continue.
1247 (_bfd_dwarf2_find_line): Likewise.
1248
293a0124
L
12492007-06-19 H.J. Lu <hongjiu.lu@intel.com>
1250
1251 PR ld/4590
1252 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
1253 when removing duplicated entries.
1254 (get_dyn_sym_info): Initialize the got_offset field to -1.
1255 Update call to sort_dyn_sym_info.
1256 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
1257 array of addend and remove duplicates.
1258
dc1f3d8a
L
12592007-06-18 H.J. Lu <hongjiu.lu@intel.com>
1260
1261 * libpei.h (_bfd_XXi_final_link_postscript): Remove
1262 duplication.
1263 (bfd_target_pei_p): New.
1264 (bfd_target_pei_arch): New
1265 (bfd_target_efi_p): Likewise.
1266 (bfd_target_efi_arch): New
1267 (bfd_pe_executable_p): Use bfd_target_pei_p and
1268 bfd_target_efi_p.
1269
1270 * peicode.h (arch_type): New enum.
1271 (pe_arch): New function.
1272 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
1273 if there is an EFI/PE target.
1274
79887925
L
12752007-06-14 H.J. Lu <hongjiu.lu@intel.com>
1276
1277 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
1278
1279 * acinclude.m4: Don't include m4 files. Remove libtool
1280 kludge.
1281
1282 * Makefile.in: Regenerated.
79887925
L
1283 * aclocal.m4: Likewise.
1284 * configure: Likewise.
1285
99ded152
BW
12862007-06-11 Sterling Augustine <sterling@tensilica.com>
1287 Bob Wilson <bob.wilson@acm.org>
bf988460 1288
99ded152
BW
1289 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
1290 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
1291 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
1292 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
1293 (xtensa_get_property_predef_flags): Likewise.
1294 (compute_removed_literals): Pass new arguments to is_removable_literal.
1295 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
1296 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 1297
cbf2cba4
RS
12982007-05-31 Richard Sandiford <rsandifo@nildram.co.uk>
1299
1300 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
1301 type (3) single-GOT entry, read tls_type from the hash table entry
1302 rather than the GOT entry.
1303
a9a4c53e
AM
13042007-06-01 Alan Modra <amodra@bigpond.net.au>
1305
1306 * simple.c (bfd_simple_get_relocated_section_contents): Init
1307 input_bfds_tail.
1308
02bf8d82
AM
13092007-05-30 Alan Modra <amodra@bigpond.net.au>
1310
42bb2e33
AM
1311 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
1312 created by objcopy --only-keep-debug.
1313 (_bfd_elf_init_private_section_data): Only change elf_section_type
1314 if it is SHT_NULL.
1315
02bf8d82
AM
1316 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
1317 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
1318 and sh_flags instead of bfd section flags. Delete voff and code
1319 keeping nobits segments aligned.
1320
4e591bc1
EC
13212007-05-25 Eric Christopher <echristo@apple.com>
1322
1323 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
1324 Check that sym_sec isn't NULL before accessing.
1325
37ad9514
SE
13262007-05-24 Steve Ellcey <sje@cup.hp.com>
1327
1328 * Makefile.in: Regnerate.
1329 * configure: Regenerate.
1330 * aclocal.m4: Regenerate.
1331 * doc/Makefile.in: Regenerate.
1332
91a5743d
PB
13332007-05-22 Paul Brook <paul@codesourcery.com>
1334
1335 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
1336 with sec and sec_shndx.
1337 (elf32_arm_ouput_plt_map_sym): Use them.
1338 (elf32_arm_output_arch_local_syms): Output mapping symbols for
1339 interworking glue.
1340
26079076
PB
13412007-05-18 Paul Brook <paul@codesourcery.com>
1342
1343 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
1344 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
1345 (record_arm_to_thumb_glue): Add v5t non-pic glue.
1346 (elf32_arm_create_thumb_stub): Ditto.
1347
91ac5911
L
13482007-05-16 H.J. Lu <hongjiu.lu@intel.com>
1349 Alan Modra <amodra@bigpond.net.au>
1350
1351 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
1352 section to the minimum alignment.
1353
027297b7
L
13542007-05-15 H.J. Lu <hongjiu.lu@intel.com>
1355 Alan Modra <amodra@bigpond.net.au>
1356
1357 PR ld/4504
1358 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
1359 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
1360
1361 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
1362 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
1363 bss section.
1364 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
1365 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
1366 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
1367 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
1368 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
1369 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
1370 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1371 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1372 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1373 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
1374 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
1375 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
1376 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
1377 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
1378 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
1379 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
1380 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1381
5c18022e
RS
13822007-05-15 Richard Sandiford <richard@codesourcery.com>
1383
1384 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
1385 input_section argument. Create .rela.dyn relocations against
1386 symbol 0 rather than the section symbol.
1387 (mips_elf_local_got_index): Remove input_section argument.
1388 Update call to mips_elf_create_local_got_entry.
1389 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
1390 (mips_elf_calculate_relocation): Update calls to
1391 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
1392
a00a1f35
MS
13932007-05-15 Mark Shinwell <shinwell@codesourcery.com>
1394
1395 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
1396 handle the Thumb-2 JUMP19 relocation.
1397
0414f35b
AM
13982007-05-15 Alan Modra <amodra@bigpond.net.au>
1399
1400 PR 4479
1401 * elf.c (elf_fake_sections): Don't allow backend to change
1402 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
1403 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
1404 fix from here.
1405
74f2e02b
AM
14062007-05-14 Alan Modra <amodra@bigpond.net.au>
1407
1408 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
1409 invalid shstrndx.
1410 (bfd_elf_get_str_section): Likewise.
1411
f137a54e
AM
14122007-05-12 Alan Modra <amodra@bigpond.net.au>
1413
1414 PR 4497
1415 * elf-eh-frame.c (struct cie): Add "local_personality". Make
1416 "personality" a union.
1417 (cie_eq): Compare local_personality too. Adjust personality
1418 comparison.
1419 (_bfd_elf_discard_section_eh_frame): Check binding on personality
1420 reloc sym to allow for bad symtab. Use stashed local syms rather
1421 than reading personality local sym. Handle discarded sections.
1422
4f4416b5
AM
14232007-05-12 Alan Modra <amodra@bigpond.net.au>
1424
1425 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
1426
016687f8
AM
14272007-05-11 Alan Modra <amodra@bigpond.net.au>
1428
1429 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
1430 (enum ppc_elf_plt_type): Move from..
1431 * elf32-ppc.c: ..here.
1432 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
1433 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
1434 can_use_new_plt. Make is_vxworks a bitfield.
1435 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
1436 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
1437 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
1438 flags to better detect object files needing old bss-style plt.
1439 Allow secure plt to be used without rel16 relocs being detected.
1440 Warn if secure plt request cannot be allowed.
1441
ece5ef60
AM
14422007-05-11 Alan Modra <amodra@bigpond.net.au>
1443
1444 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
1445 * elf-bfd.h (struct elf_backend_data): Change return type of
1446 elf_backend_relocate_section to int.
1447 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
1448 R_SPU_PPU64.
1449 (spu_elf_bfd_to_reloc_type): Convert new relocs.
1450 (spu_elf_count_relocs): New function.
1451 (elf_backend_count_relocs): Define.
1452 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
1453 R_SPU_PPU64 relocs.
1454 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
1455 returns 2.
1456 * bfd-in2.h: Regenerate.
1457 * libbfd.h: Regenerate.
1458
d3753b85
RS
14592007-05-10 Richard Sandiford <richard@codesourcery.com>
1460
1461 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
1462 for R_ARM_ABS12 relocs.
1463 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
1464 non-shared VxWorks PLT entries.
1465
ef8c95ad
AM
14662007-05-11 Alan Modra <amodra@bigpond.net.au>
1467
1468 PR 4454
1469 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
1470 (_bfd_elf_discard_section_eh_frame): Handle local syms on
1471 personality relocation.
1472
8c252fd9
RS
14732007-05-10 Richard Sandiford <richard@codesourcery.com>
1474
1475 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
1476 rather than p_filesz to calculate the LMA of the end of a segment.
1477
b186458a
JJ
14782007-05-10 Jakub Jelinek <jakub@redhat.com>
1479
1480 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
1481 processing if symbol is defined in the executable.
1482
88571279
AO
14832007-05-10 Alexandre Oliva <aoliva@redhat.com>
1484
1485 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
1486 (frvfdpic_elf_discard_info): New.
1487 (elf_backend_discard_info): Define for FDPIC.
1488
2e6030b9
MS
14892007-05-09 Mark Shinwell <shinwell@codesourcery.com>
1490
1491 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
1492 attempt to scan if the bfd doesn't correspond to an ELF image.
1493 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
1494
0d4cc892
AO
14952007-05-08 Alexandre Oliva <aoliva@redhat.com>
1496
1497 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
1498 for which _bfd_elf_section_offset returns -1.
1499
d0249648
AM
15002007-05-08 Alan Modra <amodra@bigpond.net.au>
1501
1502 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
1503 (mark_functions_via_relocs): Likewise.
1504
1182cb93
AM
15052007-05-07 Alan Modra <amodra@bigpond.net.au>
1506
1507 * elflink.c (bfd_elf_final_link): Correct reloc handling for
1508 elf_backend_count_relocs.
1509 (bfd_elf_discard_info): Print an error if we can't read syms.
1510
b16f296e
AM
15112007-05-07 Alan Modra <amodra@bigpond.net.au>
1512
1513 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
1514 invalid reloc code.
1515 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
1516 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
1517 define.
1518
7c928300
AM
15192007-05-07 Alan Modra <amodra@bigpond.net.au>
1520
1521 * elf.c (assign_file_positions_for_load_sections): Don't check
1522 core segment.
1523
fc66a176
L
15242007-05-04 H.J. Lu <hongjiu.lu@intel.com>
1525
1526 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
1527 and .rel.dyn aren't present.
1528
3410fea8
NC
15292007-05-04 Nick Clifton <nickc@redhat.com>
1530
1531 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
1532 sections are present examine the indirect sections in an attempt
1533 to compute the correct relocation size. If there is any
1534 ambiguity, produce an error and refuse to sort.
1535
7bdca076
SL
15362007-05-03 Sandra Loosemore <sandra@codesourcery.com>
1537
1538 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
1539
22184a77
NC
15402007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
1541 Nick Clifton <nickc@redhat.com>
1542
1543 PR gas/3041
1544 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
1545 in the same way as relocs against external symbols.
1546
627b32bc
AM
15472007-05-02 Alan Modra <amodra@bigpond.net.au>
1548
1549 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
1550 here. Set sh_type to SHT_NOBITS if we won't be allocating
1551 file space. Don't bump p_memsz for non-alloc sections. Adjust
1552 section-in-segment check.
1553 (assign_file_positions_for_non_load_sections): Don't set sh_offset
1554 here for sections that have already been handled above.
1555
49fa1e15
AM
15562007-04-30 Alan Modra <amodra@bigpond.net.au>
1557
1558 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
1559 and emit_stack_syms bitfields.
1560 (get_sym_h): Read all symbols if stack analysis will be done.
1561 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
1562 params, and stash in hash table.
1563 (is_hint): Split off from..
1564 (is_branch): ..here. Adjust callers.
1565 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
1566 and keep all syms.
1567 (write_one_stub): Fix mem leak.
1568 (find_function_stack_adjust): New function.
1569 (sort_syms_syms, sort_syms_psecs): New vars.
1570 (sort_syms): New function.
1571 (struct call_info, struct function_info): New.
1572 (struct spu_elf_stack_info): New.
1573 (alloc_stack_info, maybe_insert_function, func_name): New functions.
1574 (is_nop, insns_at_end, check_function_ranges): Likewise.
1575 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
1576 (pasted_function, interesting_section, discover_functions): Likewise.
1577 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
1578 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
1579 (bfd_elf32_bfd_final_link): Define.
1580 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
1581 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
1582
9ddf8309
TS
15832007-04-28 Sergey Rogozhkin <rogozhkin@niisi.msk.ru>
1584
1585 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
1586 memory which we might not own.
1587
95147441
BW
15882007-04-27 Bob Wilson <bob.wilson@acm.org>
1589
1590 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
1591 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
1592 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
1593
bcc2cc8e
BW
15942007-04-27 Bob Wilson <bob.wilson@acm.org>
1595
1596 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
1597 contents and relocs in parallel.
4e591bc1 1598
f29f96b6
BW
15992007-04-27 Bob Wilson <bob.wilson@acm.org>
1600
1601 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
1602
2ce18a16
AM
16032007-04-27 Alan Modra <amodra@bigpond.net.au>
1604
1605 * cpu-rs6000.c: Write Mimi's name in ASCII.
1606 * coff-rs6000.c: Likewise.
1607 * rs6000-core.c: Likewise.
1608
eddc20ad
AM
16092007-04-27 Alan Modra <amodra@bigpond.net.au>
1610
1611 * sysdep.h: Include config.h first.
1612 Many files: Include sysdep.h before bfd.h.
1613 * Makefile.am: Run "make dep-am".
1614 * Makefile.in: Regenerate.
1615
495443d4
AM
16162007-04-25 Alan Modra <amodra@bigpond.net.au>
1617
1618 * sysdep.h: Revert last change.
1619
40b1c6c5
NC
16202007-04-24 Nick Clifton <nickc@redhat.com>
1621
1622 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
1623 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
1624
64be1553
AM
16252007-04-24 Alan Modra <amodra@bigpond.net.au>
1626
1627 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
1628 eh_frame_hdr table won't be created.
1629
d5efd9fc
AM
16302007-04-24 Alan Modra <amodra@bigpond.net.au>
1631
1632 * acinclude.m4: Include config/stdint.m4.
1633 * configure.in: Invoke GCC_HEADER_STDINT.
1634 * sysdep.h: Don't include ansidecl.h here.
1635 * configure: Regenerate.
1636 * config.in: Regenerate.
1637 * Makefile.in: Regenerate.
1638
9a2e615a
NS
16392007-04-23 Nathan Sidwell <nathan@codesourcery.com>
1640
1641 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
1642 bfd_mach_mcf_isa_c_emac): New.
1643 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
1644 elf_isac_plt_entry, elf_isac_plt_info): New.
1645 (elf32_m68k_object_p): Add ISA_C.
1646 (elf32_m68k_print_private_bfd_data): Print ISA_C.
1647 (elf32_m68k_get_plt_info): Detect ISA_C.
1648 * cpu-m68k.c (arch_info): Add ISAC.
1649 (m68k_arch_features): Likewise,
1650 (bfd_m68k_compatible): ISAs B & C are not compatible.
1651
1b0b5b1b
NC
16522007-04-21 Nick Clifton <nickc@redhat.com>
1653
1654 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
1655 (ecoff_link_add_archive_symbols): Likewise.
1656 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
1657 relent.howto.
1658 * ieee.c (parse_int): Initialise x.
1659 (must_parse_int): Initialise result.
1660 (ieee_slurp_external_symbols): Initialise value.
1661
bd7803a9
AM
16622007-04-21 Alan Modra <amodra@bigpond.net.au>
1663
1664 * config.bfd (spu-*-elf): Delete targ_selvecs.
1665
964597d0
NC
16662007-04-19 Nick Clifton <nickc@redhat.com>
1667
1668 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
1669
01e76792
AM
16702007-04-19 Alan Modra <amodra@bigpond.net.au>
1671
1672 * bfd.c (bfd_demangle): New function.
1673 * Makefile.am: Run "make dep-am".
1674 * Makefile.in: Regenerate.
1675 * bfd-in2.h: Regenerate.
1676
ee5c21a0
DJ
16772007-04-18 Matthias Klose <doko@ubuntu.com>
1678
1679 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
1680 (bfdver.h): Use the date in non-release builds for the soversion.
1681 * Makefile.in: Regenerate.
1682
fcb93ecf
PB
16832007-04-17 Paul Brook <paul@codesourcery.com>
1684
1685 * elf.c (_bfd_elf_is_function_type): New function.
1686 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
1687 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
1688 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
1689 * elf-bfd.h (elf_backend_data): Add is_function_type.
1690 (_bfd_elf_is_function_type): Add prototype.
1691 * elfxx-target.h (elf_backend_is_function_type): Add default
1692 definition.
1693 (elfNN_bed): Add elf_backend_is_function_type.
1694 * elf32-arm.c (elf32_arm_is_function_type): New function.
1695 (elf_backend_is_function_type): Define.
1696
5750dcec
DJ
16972007-04-17 Daniel Jacobowitz <dan@codesourcery.com>
1698
1699 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
1700 DT_MIPS_RLD_MAP before DT_DEBUG again.
1701
cfbc9945
SE
17022007-04-14 Steve Ellcey <sje@cup.hp.com>
1703
1704 * Makefile.am: Add ACLOCAL_AMFLAGS.
1705 * configure.in: Change macro call order.
1706 * Makefile.in: Regnerate.
1707 * doc/Makefile.in: Regenerate.
1708 * configure: Regenerate.
1709
3fcd97f1
JJ
17102007-04-14 Jakub Jelinek <jakub@redhat.com>
1711
1712 * elflink.c (bfd_elf_final_link): Don't free symbuf for
1713 non-elf input bfds.
1714 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
1715 for non-elf input bfds.
1716
af5978fb
RS
17172007-04-12 Richard Sandiford <richard@codesourcery.com>
1718
1719 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
1720 DT_MIPS_RTLD_MAP for PIEs.
1721
9e3313ae
RS
17222007-04-12 Richard Sandiford <richard@codesourcery.com>
1723
1724 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
1725 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
1726 in a read-only section.
1727 (_bfd_mips_elf_check_relocs): Likewise.
1728
1d25768e
BW
17292007-04-12 Bob Wilson <bob.wilson@acm.org>
1730
1731 * elf32-xtensa.c (xtensa_is_insntable_section): New.
1732 (xtensa_is_proptable_section): New.
1733 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
1734 tables with 12-byte entries, as well as tables with 8-byte entries.
1735 Sort the relocations before examining them.
1736 (relax_property_section): Use xtensa_is_proptable_section and
1737 xtensa_is_littable_section. Rewrite code for combining table entries
1738 to be more robust in case of unexpected relocations. Do not set offset
1739 of unused relocations to less than zero.
1740 (xtensa_is_property_section): Use other functions instead of
1741 duplicating section name comparisons.
1742 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
1743 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 1744
e1e5c0b5 17452007-04-12 Bob Wilson <bob.wilson@acm.org>
4e591bc1 1746
e1e5c0b5
BW
1747 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
1748 from Xtensa property sections.
4e591bc1 1749
2c67c5f3
AM
17502007-04-12 Alan Modra <amodra@bigpond.net.au>
1751
1752 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
1753 is non-NULL before dereferencing.
1754
8776bb8a
NS
17552007-04-11 Nathan Sidwell <nathan@codesourcery.com>
1756
1757 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
1758 relocs too.
1759
4a828aab
RH
17602007-04-10 Richard Henderson <rth@redhat.com>
1761
1762 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
1763 (elf64_alpha_size_got_sections): Remove unused something_changed local.
1764 (elf64_alpha_size_plt_section): Return void.
1765 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 1766 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
1767 relax_trip counter has changed.
1768
91506736
DJ
17692007-04-09 Daniel Jacobowitz <dan@codesourcery.com>
1770
1771 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
1772 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
1773 (bfdver.texi): New rule.
1774 * Makefile.in, doc/Makefile.in: Regenerated.
1775
da6bcfca
MT
17762007-04-03 Matt Thomas <matt@netbsd.org>
1777
4e591bc1 1778 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
1779 in a shared object if it is not in a CODE section or if it is against
1780 a section symbol. This allows DWARF2 to use pcrel format.
1781
9267588c
L
17822007-04-05 H.J. Lu <hongjiu.lu@intel.com>
1783
1784 PR ld/4304
1785 * elflink.c (bfd_elf_final_link): Call einfo callback in
1786 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
1787 warning.
1788
c1b2796f
AM
17892007-04-05 Alan Modra <amodra@bigpond.net.au>
1790
1791 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
1792 (elf_backend_link_output_symbol_hook): Define.
1793
970ccc77
NC
17942007-04-02 Nick Clifton <nickc@redhat.com>
1795
1796 PR binutils/4292
1797 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
1798 targets as 64-bit values, even if running on a 64-bit host.
1799 * coffgen.c (coff_print_symbol): Likewise.
1800
1783205a
NC
18012007-03-29 Nick Clifton <nickc@redhat.com>
1802
1803 PR binutils/4110
1804 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
1805 (setup_group): Use it. Report corrupt group section headers.
1806 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
1807 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
1808 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
1809
2ce859a1
AM
18102007-03-29 Alan Modra <amodra@bigpond.net.au>
1811
1812 PR ld/4267
947844a3
AM
1813 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
1814 for rel->r_info values.
1815 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
1816 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
1817 unused entries. Don't clear plt.plist in loop.
1818
39817122
RS
18192007-03-28 Richard Sandiford <richard@codesourcery.com>
1820
1821 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
1822 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
1823 Merge into...
1824 (sparc_elf_append_rela): ...this new function.
1825 (SPARC_ELF_APPEND_RELA): Delete.
1826 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
1827 the deleted append_rela field.
1828 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
1829 instead of SPARC_ELF_APPEND_RELA.
1830 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
1831 elf_size_info structure to find the size of a RELA entry and
1832 the associated swap-out function.
1833 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
1834 (sparc_finish_dyn): ...this new function.
1835 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
1836
4ecceb71
RS
18372007-03-28 Richard Sandiford <richard@codesourcery.com>
1838 Phil Edwards <phil@codesourcery.com>
1839
1840 * doc/bfd.texinfo: Put the contents after the title page rather
1841 than at the end of the document.
1842
d4d2b80b
AS
18432007-03-27 Andreas Schwab <schwab@suse.de>
1844
1845 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
1846
831480e9 18472007-03-26 H.J. Lu <hongjiu.lu@intel.com>
5bd8253d
L
1848
1849 * configure: Regenerated.
1850
f4b39977
AM
18512007-03-26 Alan Modra <amodra@bigpond.net.au>
1852
1853 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
1854 (allocate_spuear_stubs): New function.
1855 (spu_elf_size_stubs): Call allocate_spuear_stubs.
1856
157090f7
AM
18572007-03-26 Alan Modra <amodra@bigpond.net.au>
1858
1859 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
1860 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
1861 (MY (bfd_reloc_name_lookup)): New function.
1862 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
1863 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
1864 (MY_bfd_reloc_name_lookup): Define.
1865 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
1866 (MY_bfd_reloc_name_lookup): Define.
1867 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
1868 (NAME (aout, reloc_name_lookup)): New function.
1869 * bout.c (b_out_bfd_reloc_name_lookup): New function.
1870 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
1871 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
1872 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
1873 (coff_bfd_reloc_name_lookup): Define.
1874 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
1875 (coff_i386_reloc_name_lookup): New function.
1876 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
1877 (coff_bfd_reloc_name_lookup): Define.
1878 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
1879 (coff_bfd_reloc_name_lookup): Define.
1880 * coff-m68k.c (m68k_reloc_name_lookup): New function.
1881 (coff_bfd_reloc_name_lookup): Define.
1882 * coff-maxq.c (maxq_reloc_name_lookup): New function.
1883 (coff_bfd_reloc_name_lookup): Define.
1884 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
1885 (coff_bfd_reloc_name_lookup): Define.
1886 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
1887 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
1888 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
1889 (coff_bfd_reloc_name_lookup): Define.
1890 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
1891 (_bfd_xcoff_reloc_name_lookup): New function.
1892 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
1893 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
1894 (sh_coff_reloc_name_lookup): New function.
1895 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
1896 (coff_bfd_reloc_name_lookup): Define.
1897 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
1898 (tic30_coff_reloc_name_lookup): New function.
1899 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
1900 (tic4x_coff_reloc_name_lookup): New function.
1901 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
1902 (tic54x_coff_reloc_name_lookup): New function.
1903 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
1904 (coff_amd64_reloc_name_lookup): New function.
1905 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
1906 (coff_bfd_reloc_name_lookup): Define.
1907 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
1908 (coff_bfd_reloc_name_lookup): Define.
1909 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
1910 (xcoff64_reloc_name_lookup): New function.
1911 (rs6000coff64_vec, aix5coff64_vec): Init new field.
1912 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
1913 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
1914 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1915 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1916 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1917 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
1918 (bfd_elf32_bfd_reloc_name_lookup): Define.
1919 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1920 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
1921 (bfd_elf32_bfd_reloc_name_lookup): Define.
1922 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
1923 (bfd_elf32_bfd_reloc_name_lookup): Define.
1924 * elf32-cris.c (cris_reloc_name_lookup): New function.
1925 (bfd_elf32_bfd_reloc_name_lookup): Define.
1926 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
1927 (bfd_elf32_bfd_reloc_name_lookup): Define.
1928 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1929 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1930 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
1931 (bfd_elf32_bfd_reloc_name_lookup): Define.
1932 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
1933 (bfd_elf32_bfd_reloc_name_lookup): Define.
1934 * elf32-frv.c (frv_reloc_name_lookup): New function.
1935 (bfd_elf32_bfd_reloc_name_lookup): Define.
1936 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1937 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
1938 (bfd_elf32_bfd_reloc_name_lookup): Define.
1939 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1940 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
1941 (bfd_elf32_bfd_reloc_name_lookup): Define.
1942 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
1943 (bfd_elf32_bfd_reloc_name_lookup): Define.
1944 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
1945 (bfd_elf32_bfd_reloc_name_lookup): Define.
1946 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
1947 (bfd_elf32_bfd_reloc_name_lookup): Define.
1948 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
1949 (bfd_elf32_bfd_reloc_name_lookup): Define.
1950 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
1951 (bfd_elf32_bfd_reloc_name_lookup): Define.
1952 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
1953 (bfd_elf32_bfd_reloc_name_lookup): Define.
1954 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1955 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1956 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1957 * elf32-m68k.c (reloc_name_lookup): New function.
1958 (bfd_elf32_bfd_reloc_name_lookup): Define.
1959 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1960 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
1961 (bfd_elf32_bfd_reloc_name_lookup): Define.
1962 * elf32-mep.c (mep_reloc_name_lookup): New function.
1963 (bfd_elf32_bfd_reloc_name_lookup): Define.
1964 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1965 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
1966 (bfd_elf32_bfd_reloc_name_lookup): Define.
1967 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1968 * elf32-mt.c (mt_reloc_name_lookup): New function.
1969 (bfd_elf32_bfd_reloc_name_lookup): Define.
1970 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
1971 (bfd_elf32_bfd_reloc_name_lookup): Define.
1972 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1973 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
1974 (bfd_elf32_bfd_reloc_name_lookup): Define.
1975 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
1976 (bfd_elf32_bfd_reloc_name_lookup): Define.
1977 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
1978 (bfd_elf32_bfd_reloc_name_lookup): Define.
1979 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
1980 (bfd_elf32_bfd_reloc_name_lookup): Define.
1981 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
1982 (bfd_elf32_bfd_reloc_name_lookup): Define.
1983 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1984 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
1985 (bfd_elf32_bfd_reloc_name_lookup): Define.
1986 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
1987 (bfd_elf32_bfd_reloc_name_lookup): Define.
1988 * elf32-vax.c (reloc_name_lookup): New function.
1989 (bfd_elf32_bfd_reloc_name_lookup): Define.
1990 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
1991 (bfd_elf32_bfd_reloc_name_lookup): Define.
1992 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
1993 (bfd_elf32_bfd_reloc_name_lookup): Define.
1994 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
1995 (bfd_elf32_bfd_reloc_name_lookup): Define.
1996 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
1997 (bfd_elf64_bfd_reloc_name_lookup): Define.
1998 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1999 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2000 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2001 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
2002 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
2003 (bfd_elf64_bfd_reloc_name_lookup): Define.
2004 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
2005 (bfd_elf64_bfd_reloc_name_lookup): Define.
2006 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
2007 (bfd_elf64_bfd_reloc_name_lookup): Define.
2008 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
2009 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
2010 (bfd_elf64_bfd_reloc_name_lookup): Define.
2011 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
2012 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
2013 (bfd_elfNN_bfd_reloc_name_lookup): Define.
2014 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
2015 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
2016 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
2017 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
2018 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
2019 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
2020 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
2021 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
2022 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
2023 (MY(reloc_name_lookup)): New function.
2024 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
2025 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
2026 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
2027 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
2028 (coff_bfd_reloc_name_lookup): Define.
2029 * reloc.c (bfd_reloc_name_lookup): New function.
2030 * riscix.c (riscix_reloc_name_lookup): New function.
2031 (MY_bfd_reloc_name_lookup): Define.
2032 * som.c (som_bfd_reloc_name_lookup): New function.
2033 * targets.c (struct bfd_target): Add reloc_name_lookup.
2034 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
2035 * versados.c (versados_bfd_reloc_name_lookup): Define.
2036 * vms.c (vms_bfd_reloc_name_lookup): New function.
2037 * bfd-in2.h: Regenerate.
2038 * libbfd.h: Regenerate.
2039
2d82d84d
TS
20402007-03-26 Thiemo Seufer <ths@mips.com>
2041
a5cb1fd7 2042 PR ld/4208
2d82d84d
TS
2043 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
2044 matching relocation is found.
2045 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
2046
831480e9 20472007-03-23 H.J. Lu <hongjiu.lu@intel.com>
1a27db7d
L
2048
2049 * configure: Regenerated.
2050
a1ac8190
JM
20512007-03-23 Joseph Myers <joseph@codesourcery.com>
2052
2053 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
2054 * configure: Regenerate.
2055
aa7a0635
AM
20562007-03-23 Alan Modra <amodra@bigpond.net.au>
2057
2058 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
2059 Remove input_sec param. Adjust all calls.
2060 (write_one_stub): Adjust stub symbol.
2061 (needs_ovl_stub): New function, extracted from..
2062 (spu_elf_size_stubs): ..here.
2063 (spu_elf_relocate_section): Use needs_ovl_stub.
2064
e49e529d
JM
20652007-03-22 Joseph Myers <joseph@codesourcery.com>
2066
2067 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
2068 if nonempty.
2069 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
2070 * Makefile.in, configure, doc/Makefile.in: Regenerate.
2071
831480e9 20722007-03-22 H.J. Lu <hongjiu.lu@intel.com>
50572669
L
2073
2074 PR ld/4210
2075 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
2076 address and virtual size of the last section for the image
2077 size.
2078
0920dee7
L
20792007-03-22 H.J. Lu <hongjiu.lu@intel.com>
2080
2081 PR ld/4007
2082 * elf.c (assign_file_positions_for_load_sections): Check if
2083 all sections are in the segment.
2084
831480e9 20852007-03-20 H.J. Lu <hongjiu.lu@intel.com>
749b8d9d
L
2086
2087 PR ld/4208
2088 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
2089 matching LO16 relocation for HI16 relocation.
2090
27e55c4d
PB
20912007-03-20 Paul Brook <paul@codesourcery.com>
2092
2093 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
2094 * bfd-in2.h: Regenerate.
2095 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
2096 (record_arm_to_thumb_glue): Use globals->pic_veneer.
2097 (elf32_arm_create_thumb_stub): Ditto.
2098 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
2099
bf21ed78
MS
21002007-03-18 Mark Shinwell <shinwell@codesourcery.com>
2101
2102 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
2103 argument and extra last argument.
2104 * bfd-in2.h: Regenerate.
2105 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
2106 member.
2107 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
2108 extra last argument. Set no_enum_size_warning appropriately.
2109 (elf32_arm_merge_eabi_attributes): Improve enum sizes
2110 diagnostic, suppressing it when no_enum_size_warning dictates.
2111
5f6999aa
NC
21122007-03-20 Nick Clifton <nickc@redhat.com>
2113
2114 PR binutils/3535
2115 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
2116 specific conditions that need the program headers to be
2117 rewritten.
2118
831480e9 21192007-03-19 H.J. Lu <hongjiu.lu@intel.com>
d13c9dc6
L
2120
2121 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
2122 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2123 SizeOfInitializedData, SizeOfUninitializedData,
2124 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
2125 extra PE a.out header.
2126 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
2127 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
2128 defined.
2129 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
2130 defined.
2131 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
2132 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
2133 SizeOfInitializedData, SizeOfUninitializedData,
2134 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
2135 extra PE a.out header.
2136
831480e9 21372007-03-18 H.J. Lu <hongjiu.lu@intel.com>
739bb57e
L
2138
2139 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
2140 only if BFD64 is defined.
2141
5384511f
AM
21422007-03-17 Alan Modra <amodra@bigpond.net.au>
2143
2144 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
2145 on setjmp calls.
2146
187b3d5d
L
21472007-03-15 H.J. Lu <hongjiu.lu@intel.com>
2148
2149 * doc/Makefile.in: Regenerated.
2150
c428fa83
L
21512007-03-15 H.J. Lu <hongjiu.lu@intel.com>
2152
2153 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
2154 create doc/bfdver.texi.
2155 * Makefile.in: Regenerated.
2156
2157 * configure.in (--with-bugurl): New option.
2158 * configure: Regenerated.
2159
2160 * version.h (REPORT_BUGS_TO): New.
2161
d1036acb
L
21622007-03-13 H.J. Lu <hongjiu.lu@intel.com>
2163
2164 PR binutils/3826
2165 * elf-bfd.h (elf_backend_data): Add elf_osabi.
2166 (_bfd_elf_set_osabi): New.
2167
2168 * elf.c (_bfd_elf_set_osabi): New.
2169
2170 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
2171 (elf_backend_post_process_headers): Defined with
2172 _bfd_elf_set_osabi.
2173 (ELF_OSABI): Properly defined for each target.
2174
2175 * elf32-i370.c (i370_elf_post_process_headers): Removed.
2176 (ELF_OSABI): Defined.
2177 (elf_backend_post_process_headers): Defined with
2178 _bfd_elf_set_osabi.
2179
2180 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2181 freebsd.
2182 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
2183
2184 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
2185 (ELF_OSABI): Defined.
2186 (elf_backend_post_process_headers): Defined with
2187 _bfd_elf_set_osabi.
2188
2189 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
2190 freebsd.
2191 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
2192 elf_osabi.
2193
2194 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
2195 with elf_osabi.
2196 (ELF_OSABI): Properly defined for each target.
2197 (elf_backend_post_process_headers): Defined with
2198 _bfd_elf_set_osabi for Linux.
2199
2200 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
2201 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2202 (elf_backend_post_process_headers): Defined with
2203 _bfd_elf_set_osabi.
2204
2205 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
2206 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
2207 (elf_backend_post_process_headers): Defined with
2208 _bfd_elf_set_osabi.
2209
2210 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
2211 with any ELF target of the compatible machine for which we do not
2212 have a specific backend.
2213
2214 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
2215 with elf_osabi.
2216
2217 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
2218 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
2219
d4c87fc1
AM
22202007-03-08 Alan Modra <amodra@bigpond.net.au>
2221
2222 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
2223 V850_OTHER_* bits.
2224
9c6fc49d
AM
22252007-03-08 Alan Modra <amodra@bigpond.net.au>
2226
2227 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
2228 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
2229 Run "make dep-am".
2230 * Makefile.in: Regenerate.
2231 * po/SRC-POTFILES.in: Regenerate.
2232
faed74d6
L
22332007-03-07 H.J. Lu <hongjiu.lu@intel.com>
2234
2235 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
2236 (x86_64-*-kfreebsd*-gnu): Likewise.
2237 (x86_64-*-netbsd*): Likewise.
2238 (x86_64-*-openbsd*): Likewise.
2239 (x86_64-*-linux-*): Likewise.
2240
2241 * configure.in: Support bfd_efi_app_x86_64_vec.
2242 * configure: Regenerated.
2243
2244 * efi-app-x86_64.c: New file.
2245
2246 * targets.c (bfd_efi_app_x86_64_vec): New.
2247 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
2248
15344ad7
L
22492007-03-07 Kai Tietz <kai.tietz@onevision.com>
2250
2251 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
2252 const for type reloc_howto_type.
2253
ab96bf03
AM
22542007-03-07 Alan Modra <amodra@bigpond.net.au>
2255
2256 PR 3958
2257 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
2258 (elf_discarded_section): Move..
2259 * bfd-in.h: ..to here.
2260 * bfd-in2.h: Regenerate.
2261 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
2262 from discarded sections before relocate_section has done its job.
2263 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
2264 relocs against symbols from discarded sections.
2265 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
2266 SECREL32.
2267 (elf_hppa_relocate_section): Handle relocatable link after setting
2268 sec, sym, h etc. for final link. Squash error messages for
2269 relocatable link. Clear section contents for relocs against
2270 symbols in discarded sections, and zero reloc. Remove existing
2271 zero r_symndx code.
2272 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
2273 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
2274 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
2275 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
2276 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
2277 (bfin_relocate_section): Likewise.
2278 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
2279 * elf32-cris.c (cris_elf_relocate_section): Likewise.
2280 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
2281 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
2282 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
2283 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2284 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
2285 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
2286 * elf32-i370.c (i370_elf_relocate_section): Likewise.
2287 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2288 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
2289 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
2290 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
2291 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
2292 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
2293 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
2294 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2295 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
2296 * elf32-mep.c (mep_elf_relocate_section): Likewise.
2297 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
2298 * elf32-mt.c (mt_elf_relocate_section): Likewise.
2299 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
2300 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2301 * elf32-s390.c (elf_s390_relocate_section): Likewise.
2302 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
2303 * elf32-sh.c (sh_elf_relocate_section): Likewise.
2304 * elf32-spu.c (spu_elf_relocate_section): Likewise.
2305 * elf32-v850.c (v850_elf_relocate_section): Likewise.
2306 * elf32-vax.c (elf_vax_relocate_section): Likewise.
2307 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
2308 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
2309 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
2310 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
2311 (elf64_alpha_relocate_section): Likewise.
2312 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
2313 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2314 * elf64-s390.c (elf_s390_relocate_section): Likewise.
2315 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
2316 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2317 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
2318 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
2319 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
2320
2321 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
2322 symbols for relocatable link. Don't use always-zero st_value.
2323 (elf_backend_rela_normal): Don't define.
2324 * elf32-bfin.c (bfinfdpic_relocate_section): Use
2325 RELOC_FOR_GLOBAL_SYMBOL.
2326 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
2327 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
2328 section symbol adjustments with same for relocatable link.
2329 * elf32-i386.c (elf_i386_relocate_section): Likewise.
2330 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
2331 (elf32_m68hc11_check_relocs): ..to here.
2332 * elf32-score.c (score_elf_final_link_relocate): Remove zero
2333 r_symndx code.
2334 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
2335
0e922b77
AM
23362007-03-07 Alan Modra <amodra@bigpond.net.au>
2337
2338 PR 4144
2339 * elf.c (assign_file_positions_for_load_sections): Don't
2340 adjust p_memsz for !SEC_LOAD section vma modulo page size.
2341 Instead, use the same lma based adjustment for SEC_LOAD
2342 sections.
2343
25c6282a
BW
23442007-03-01 Bob Wilson <bob.wilson@acm.org>
2345
2346 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
2347 (find_relaxable_sections): Do not increment src_count for unknown
2348 opcodes. Decode only once instead of calling is_l32r_relocation.
2349 (compute_text_actions): Remove unused no_insn_move flag. Assert that
2350 src_next matches src_count in relax_info.
2351
066c2a57
JM
23522007-03-01 Joseph Myers <joseph@codesourcery.com>
2353
2354 * Makefile.am (bfdver.h): Use "." not " " between version number
2355 and date.
2356 * Makefile.in: Regenerate.
2357 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
2358 * configure: Regenerate.
2359
ed6ba298
NS
23602007-02-28 Nathan Sidwell <nathan@codesourcery.com>
2361
2362 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
2363
7a8757b3
AM
23642007-02-27 Alan Modra <amodra@bigpond.net.au>
2365
2366 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
2367 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
2368
024b2372
CD
23692007-02-23 Carlos O'Donell <carlos@codesourcery.com>
2370
2371 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
2372 DWARF even with 64-bit addresses.
2373 (_bfd_dwarf2_find_nearest_line): Likewise.
2374
cb3ff1e5
NC
23752007-02-23 Nick Clifton <nickc@redhat.com>
2376
2377 PR binutils/3535
2378 * elf.c (copy_private_bfd_data): Always rewrite the program
2379 headers when a Solaris interpreter segment is involved.
2380
6a5bb875
PB
23812007-02-22 Paul Brook <paul@codesourcery.com>
2382
2383 * elflink.c (gc_mark_hook_fn): Remove.
2384 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
2385 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
2386 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
2387 (elf_backend_data): Add gc_mark_extra_sections.
2388 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
2389 definition.
2390 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
2391 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
2392 (elf_backend_gc_mark_extra_sections): Define.
2393
2889e75b
NC
23942007-02-21 Nick Clifton <nickc@redhat.com>
2395
2396 * elf.c (_bfd_elf_map_sections_to_segments): If the
2397 override_segment_assignment callback is defined then call it.
2398
78859468
AM
23992007-02-21 Alan Modra <amodra@bigpond.net.au>
2400
2401 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
2402
ae0d2616
TS
24032007-02-19 Thiemo Seufer <ths@mips.com>
2404
2405 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
2406 translation marker from untranslatable strings.
2407
6bfdb61b
AM
24082007-02-19 Alan Modra <amodra@bigpond.net.au>
2409
2410 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
2411 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
2412 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
2413 (elfNN_bed): Init new field.
2414 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
2415
92f01d61
JM
24162007-02-17 Mark Mitchell <mark@codesourcery.com>
2417 Nathan Sidwell <nathan@codesourcery.com>
2418 Vladimir Prus <vladimir@codesourcery.com
2419 Joseph Myers <joseph@codesourcery.com>
2420
2421 * configure.in (--with-pkgversion): New option.
2422 * configure: Regenerate.
2423 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
2424 * Makefile.in: Regenerate.
2425 * version.h (BFD_VERSION_STRING): Define using
2426 @bfd_version_package@.
2427
c0e3f241
CD
24282007-02-16 Carlos O'Donell <carlos@codesourcery.com>
2429
2430 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
2431 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
2432 and EF_MIPS_UCODE.
2433
72f6ea61
AM
24342007-02-15 Alan Modra <amodra@bigpond.net.au>
2435
2436 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
2437 declare.
2438 (_bfd_norelocs_canonicalize_reloc): Likewise.
2439 * libbfd.h: Regenerate.
2440 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
2441 (_bfd_norelocs_canonicalize_reloc): Likewise.
2442 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
2443 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
2444 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
2445 * ihex.c: Similarly.
2446 * mach-o-target.c: Similarly.
2447 * mach-o.c: Similarly.
2448 * mmo.c: Similarly.
2449 * pef.c: Similarly.
2450 * ppcboot.c: Similarly.
2451 * srec.c: Similarly.
2452 * xsym.c: Similarly.
2453
fab4a87f
L
24542007-02-14 H.J. Lu <hongjiu.lu@intel.com>
2455
2456 PR ld/3953
2457 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
2458 when adding default symbol.
2459
e4e0193e
AM
24602007-02-13 Alan Modra <amodra@bigpond.net.au>
2461
2462 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
2463 for branch lookup table.
2464
84f5d08e
AM
24652007-02-12 Alan Modra <amodra@bigpond.net.au>
2466
2467 * elf64-ppc.c (create_linkage_sections): Don't create
2468 .rela.rodata.brlt for --emit-relocs.
2469 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
2470 (ppc_size_one_stub): Count them. Simplify test of stub type
2471 when counting stub relocs. Set SEC_RELOC too.
2472 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
2473 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
2474
4aac632e
AM
24752007-02-12 Alan Modra <amodra@bigpond.net.au>
2476
2477 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
2478 with a zero symbol index.
2479
8da3dbc5
AM
24802007-02-12 Alan Modra <amodra@bigpond.net.au>
2481
2482 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
2483
b31847af
DB
24842007-02-05 Dave Brolley <brolley@redhat.com>
2485 Stan Cox <scox@redhat.com>
2486
2487 PR ld/3972
2488 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
2489
722b0ff7 24902007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
2491 Richard Sandiford <rsandifo@redhat.com>
2492 Stan Cox <scox@redhat.com>
2493 Nick Clifton <nickc@redhat.com>
2494 DJ Delorie <dj@redhat.com>
2495 Frank Ch. Eigler <fche@redhat.com>
2496 Ben Elliston <bje@redhat.com>
2497 Richard Henderson <rth@redhat.com>
2498
2499 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
2500 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
2501 (BFD32_BACKENDS): Add elf32-mep.lo.
2502 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
2503 (cpu-mep.lo,elf32-mep.lo): New targets.
2504 * archures.c (bfd_arch_mep): New enumerator.
2505 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
2506 (bfd_mep_arch): New external variable.
2507 (bfd_archures_list): Add bfd_mep_arch.
2508 * config.bfd: Support mep-*-elf.
2509 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
2510 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
2511 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
2512 declarations.
2513 (_bfd_target_vector): Add bfd_elf32_mep_vec and
2514 bfd_elf32_mep_little_vec.
722b0ff7
DB
2515 * mep-relocs.pl: New file.
2516 * cpu-mep.c: New file.
2517 * elf32-mep.c: New file.
2518 * bfd-in2.h: Regenerate.
e382d174 2519 * po/POTFILES.in: Regenerate.
722b0ff7
DB
2520 * libbfd.h: Regenerate.
2521 * Makefile.in: Regenerate.
2522 * configure: Regenerate.
2523
d9352518
DB
25242007-02-05 Dave Brolley <brolley@redhat.com>
2525
2526 * elflink.c (evaluate_complex_relocation_symbols): Check for
2527 STT_SRELC for global symbols.
2528 (perform_complex_relocations): Renamed to
2529 perform_complex_relocation and now examines only one relocation.
2530 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 2531 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
2532 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
2533 (OD,OS,OU): #undefs corrected to N, S and U repectively.
2534 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
2535 (complex_reloc_installation_howto): Removed.
2536 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
2537 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
2538
d9352518 25392007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
2540 Richard Sandiford <rsandifo@redhat.com>
2541 DJ Delorie <dj@redhat.com>
2542 Graydon Hoare <graydon@redhat.com>
2543 Nick Clifton <nickc@cambridge.redhat.com>
2544 Jeff Holcomb <jeffh@redhat.com>
2545 Frank Ch. Eigler <fche@redhat.com>
2546
2547 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
2548 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
2549 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
2550 * elflink.c (set_symbolValue): New static function.
d9352518
DB
2551 (resolve_symbol): Likewise.
2552 (resolve_section): Likewise.
2553 (undefined_reference): Likewise.
2554 (eval_symbol): Likewise.
2555 (evaluate_complex_relocation_symbols): Likewise.
2556 (put_value): Likewise.
2557 (get_value): Likewise.
e382d174
DB
2558 (decode_complex_addend):
2559 (bfd_elf_perform_complex_relocation): New function.
2560 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
2561 * reloc.c (BFD_RELOC_RELC): New relocation number.
2562 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 2563
f1ab2340 25642007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 2565
f1ab2340
BW
2566 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
2567 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
2568 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
2569 (elf_xtensa_allocate_got_size): Replace these with...
2570 (elf_xtensa_allocate_dynrelocs): ...this new function.
2571 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 2572
e5f131d1 25732007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 2574
e5f131d1
BW
2575 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
2576 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
2577 Set src_mask to zero.
2578 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
2579 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 2580
4608f3d9
BW
25812007-02-02 Bob Wilson <bob.wilson@acm.org>
2582
2583 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
2584 (elf_xtensa_dynamic_symbol_p): ...this.
2585
f0e6fdb2
BW
25862007-02-02 Bob Wilson <bob.wilson@acm.org>
2587
2588 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
2589 (struct elf_xtensa_link_hash_table): New.
2590 (elf_xtensa_hash_table): New.
2591 (elf_xtensa_link_hash_table_create): New.
2592 (elf_xtensa_check_relocs): Update plt_reloc_count references.
2593 Update arguments to add_extra_plt_sections.
2594 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
2595 table. Update for plt_reloc_count and add_extra_plt_sections.
2596 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
2597 argument with link info. Update calls to elf_xtensa_get_plt_section
2598 and elf_xtensa_get_gotplt_section.
2599 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
2600 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
2601 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
2602 (relax_property_section): Get sections from the hash table and update
2603 function calls.
2604 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
2605 dynobj argument with link info. Get sections for first plt chunk from
2606 the hash table.
2607 (bfd_elf32_bfd_link_hash_table_create): Define.
2608
c15f73f9
JJ
26092007-02-02 Jakub Jelinek <jakub@redhat.com>
2610
2611 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
2612 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
2613 (struct elf_symbol): Change first member into union.
2614 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
2615 internal syms. Only compare st_shndx fields.
2616 (elf_create_symbuf): New function.
2617 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
2618 for bfds, use a binary search, otherwise don't qsort symbols
2619 unnecessarily only to select which symbols are for the particular
2620 shndx.
2621
effdf42a
NC
26222007-02-01 Nick Clifton <nickc@redhat.com>
2623
2624 PR ld/3852
2625 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
2626 in the elf_link_hash_table structure.
2627
183e98be
AM
26282007-02-01 Alan Modra <amodra@bigpond.net.au>
2629
2630 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
2631 * elfxx-target.h (elf_backend_write_core_note): Define and use.
2632 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
2633 32-bit core note on 64-bit target.
2634 (elfcore_write_prstatus): Likewise.
2635 (elfcore_write_lwpstatus): Make note_name const.
2636 (elfcore_write_prfpreg): Likewise.
2637 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
2638 target.
2639 * elf32-ppc.c (ppc_elf_write_core_note): New function.
2640 (elf_backend_write_core_note): Define.
2641 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
2642 (elf_backend_write_core_note): Define.
2643
fc523535 26442007-01-31 H.J. Lu <hongjiu.lu@intel.com>
16cecee5
L
2645
2646 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
2647 (elf32_bed): Defined for elf32-us-cris.
2648
2649 * elf64-sh64.c (elf64_bed): Defined for Linux.
2650 (INCLUDED_TARGET_FILE): Removed.
2651
2652 * elfxx-target.h (elfNN_bed): Always define. Don't check
2653 INCLUDED_TARGET_FILE.
2654
c9b57b7e
DD
26552007-01-31 DJ Delorie <dj@redhat.com>
2656
2657 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
2658 message for dangerous relocs, special case the common user error.
2659
53020534
L
26602007-01-30 H.J. Lu <hongjiu.lu@intel.com>
2661
2662 * elf.c (copy_elf_program_header): Start from the first section
2663 in a segment and stop when all sections in a segment are
2664 accounted for.
2665
c7b8f16e
JB
26662007-01-29 Julian Brown <julian@codesourcery.com>
2667
2668 * bfd-in2.h: Regenerate.
2669 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
2670 instruction scanning should be done.
2671 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
2672 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
2673 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
2674 prototype.
2675 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
2676 argument.
2677 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
2678 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
2679 (elf32_vfp11_erratum_type): New enum.
2680 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
2681 veneers.
2682 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
2683 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
2684 vfp11_fix and num_vfp11_fixes fields.
2685 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
2686 vfp11_erratum_glue_size, num_vfp11_fixes fields.
2687 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
2688 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
2689 glue section.
2690 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
2691 to a section's map.
2692 (record_vfp11_erratum_veneer): Create a single veneer, and its
2693 associated symbols.
2694 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
2695 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
2696 BFDs.
2697 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
2698 required.
2699 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
2700 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
2701 (bfd_arm_vfp11_write_mask): Update write mask according to coded
2702 register number.
2703 (bfd_arm_vfp11_antidependency): New function.
2704 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
2705 (elf32_arm_compare_mapping): Declare.
2706 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
2707 BFD for potential erratum-triggering insns. Record results.
2708 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
2709 and branches to veneers have been placed in virtual memory after
2710 layout.
2711 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
2712 hash table.
2713 (elf32_arm_output_symbol_hook): Remove.
2714 (elf32_arm_write_section): Output veneers, and branches to veneers.
2715 Use maps from input sections, not output sections, for code
2716 byte-swapping.
2717 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
2718 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
2719 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
2720 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
2721
27222007-01-27 H.J. Lu <hongjiu.lu@intel.com>
83d1651b
L
2723
2724 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 2725 (INCLUDED_TARGET_FILE): Removed.
83d1651b 2726
914dfb0f
DA
27272007-01-27 Mike Frysinger <vapier@gentoo.org>
2728
2729 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
2730 (INCLUDED_TARGET_FILE): Remove.
2731
78eba9b6
DD
27322007-01-25 DJ Delorie <dj@redhat.com>
2733
2734 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
2735 R_M32C_16 or R_M32C_24 relocs.
2736
64ee10b6
NC
27372007-01-25 Nick Clifton <nickc@redhat.com>
2738
2739 PR binutils/3874
2740 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
2741 hash table was created by elf32_avr_link_hash_table_create before
2742 using it.
2743 (elf32_avr_link_hash_newfunc): New function. Just pass the call
2744 through to _bfd_elf_link_hash_newfunc.
2745 (elf32_avr_link_hash_table_create): Use
2746 elf32_avr_link_hash_newfunc instead of
2747 _bfd_elf_link_hash_newfunc.
2748 (elf32_avr_relocate_section): Check for the hash table pointer
2749 being NULL.
2750 (elf32_avr_relax_section, avr_build_one_stub,
2751 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
2752 elf32_avr_build_stubs): Likewise.
2753
40b36307
L
27542007-01-16 H.J. Lu <hongjiu.lu@intel.com>
2755
2756 PR ld/3831
2757 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
2758 argument, Elf_Internal_Sym *.
2759
2760 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
2761 symbol dynamic if info->dynamic_data is TRUE.
2762 (bfd_elf_record_link_assignment): Updated call to
2763 bfd_elf_record_link_assignment.
2764 (_bfd_elf_merge_symbol): Likewise. Always call
2765 bfd_elf_link_mark_dynamic_symbol.
2766
fc523535 27672007-01-12 H.J. Lu <hongjiu.lu@intel.com>
a454209d
L
2768
2769 * Makefile.am (BFD_LIBS): Removed.
2770 * Makefile.in: Regenerated.
2771
fc523535 27722007-01-11 H.J. Lu <hongjiu.lu@intel.com>
21e40a48
L
2773
2774 PR binutils/3631
2775 * Makefile.am (OFILES): Add @bfd64_libs@.
2776 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
2777 * Makefile.in: Regenerated.
2778
2779 * configure.in (bfd_libs): Replaced by ...
2780 (bfd64_libs): This.
2781 * configure: Regenerated.
2782
59e0647f
NS
27832007-01-11 Nathan Sidwell <nathan@codesourcery.com>
2784
2785 * elf.c (assign_file_positions_for_load_sections): We can
2786 require fewer phdrs than expected.
2787
3bdcfdf4
KH
27882007-01-08 Kazu Hirata <kazu@codesourcery.com>
2789
2790 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
2791 * bfd-in2.h: Regenerate.
2792 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
2793 bfd_mach_cpu32_fido.
2794 (m68k_arch_features): Use fido_a instead of cpu32.
2795 (bfd_m68k_compatible): Reject the combination of Fido and
2796 ColdFire. Accept the combination of CPU32 and Fido with a
2797 warning.
2798 * elf32-m68k.c (elf32_m68k_object_p,
2799 elf32_m68k_merge_private_bfd_data,
2800 elf32_m68k_print_private_bfd_data): Treat Fido as an
2801 architecture by itself.
2802
42037fe5
NC
28032007-01-08 Kai Tietz <kai.tietz@onevision.com>
2804
2805 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
2806
ebe8b991
JJ
28072007-01-05 Jakub Jelinek <jakub@redhat.com>
2808
2809 * texhex.c (first_phase): Don't fall through into the default
2810 case.
2811 (pass_over): Replace abort () calls with return FALSE. Fix
2812 buffer overflow.
2813
b327f31f
AM
28142007-01-04 Jie Zhang <jie.zhang@analog.com>
2815
2816 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
2817 SEC_EXCLUDE on zero size .eh_frame.
2818
10a2343e 2819For older changes see ChangeLog-2006
56882138
AM
2820\f
2821Local Variables:
2822mode: change-log
2823left-margin: 8
2824fill-column: 74
2825version-control: never
2826End: