]> Git Repo - binutils.git/blame - bfd/ChangeLog
2007-07-27 Michael Snyder <[email protected]>
[binutils.git] / bfd / ChangeLog
CommitLineData
170bfeb9
L
12007-07-27 H.J. Lu <[email protected]>
2
3 * config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
4
507f5898
MS
52007-07-26 Michael Snyder <[email protected]>
6
7 * coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
a6626e8c
MS
8
9 * linker.c (bfd_section_already_linked_table_insert): Change
10 return type from void to boolean. Return FALSE on failure.
11 (_bfd_generic_section_already_linked): Test return value of
12 bfd_section_already_linked_table_insert, call fatal on error.
13
14 * elflink.c (_bfd_elf_section_already_linked): Test return value
15 of bfd_section_already_linked_table_insert, call fatal on error.
16
17 * libbfd-in.h (bfd_section_already_linked_table_insert): Update
18 return type to bfd_boolean.
19
20 * libbfd.h: Regenerate.
21
36e44abd
AN
222007-07-26 Adam Nemet <[email protected]>
23
24 * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
25 bfd_slurp_armap): Improve function comment.
26
b7fd5ce1
MS
272007-07-26 Michael Snyder <[email protected]>
28
2d4f3e92
MS
29 * linker.c (already_linked_newfunc): Check for NULL return from
30 bfd_hash_allocate.
31
ac38308c
MS
32 * coffgen.c (fixup_symbol_value): Guard against null;
33 bfd_is_com_section will dereference the section pointer.
34
c82a7c57
MS
35 * syms.c (bfd_decode_symclass): Guard against NULL, since
36 bfd_is_com_section dereferences the pointer.
37
3d7b34d8
MS
38 * srec.c (srec_scan): Check for EOF (critical because return value
39 will be used as array index).
40
44c62d9e
MS
41 * coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
42 are not to be cached, free the temporary buffer.
43
078c4bfc
MS
44 * aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
45 or count == zero.
46
814b5378
MS
47 * tekhex.c (first_phase): Check return value for null.
48
b7fd5ce1
MS
49 * elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
50 pointer increment.
51
b9da616a
AM
522007-07-26 Alan Modra <[email protected]>
53
33774f08
AM
54 * elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
55 check on dynobj. Remove bed shadow.
56
e62071b6
AM
57 * srec.c (srec_get_section_contents): Return immediately on
58 count zero. Check that offset and count are within section.
59 * libbfd.c (_bfd_generic_get_section_contents): Check that
60 offset + count does not overflow.
61
b9da616a
AM
62 * srec.c (srec_canonicalize_symtab): Don't alloc when symcount
63 is zero. Correct return value on error.
64 * mmo.c (mmo_canonicalize_symtab): Likewise.
65 * binary.c (binary_canonicalize_symtab) Correct return on error.
66
c2c96631
TS
672007-07-26 Thiemo Seufer <[email protected]>
68
69 * bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
70
d4947150
AM
712007-07-26 Alan Modra <[email protected]>
72
73 * reloc.c (bfd_generic_get_relocated_section_contents): Avoid
74 bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
75 says there are no relocs.
76
bd210d54 772007-07-26 Doug Kwan <[email protected]>
d4947150 78
bd210d54
NC
79 Speed up bfd_dwarf2_find_line.
80 * dwarf2.c (struct dwarf2_debug): Add new fields to support function
81 and variable info hash tables. Add last_comp_unit, info_hash_count,
82 funcinfo_hash_table, varinfo_hash_table, hash_units_head.
83 (struct comp_unit): Add prev_unit, cached.
84 (struct info_list_node, struct info_hash_entry,
85 struct info_hash_table): New.
86 (info_hash_table_newfunc, create_info_hash_table,
87 insert_info_hash_table, lookup_info_hash_table): New functions
88 implementing function and variable info hash tables.
89 (scan_unit_for_symbols): Add checks to make sure hash tables are
90 consistent with compilation units.
91 (comp_unit_maybe_decode_line_info): New function.
92 (comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
93 (reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info,
94 info_hash_lookup_funcinfo, info_hash_lookup_varinfo,
95 stash_maybe_update_info_hash_table, stash_verify_info_hash_table,
96 stash_maybe_enable_info_hash_tables, stash_find_line_fast): New
97 functions. Make use of info hash tables to speed up
98 bfd_dwarf2_find_line.
99 (find_line): Use hash table for faster lookup if it is turned on.
100 Also add code to maintain bi-directional link in comp units.
101
353c5574
MS
1022007-07-25 Michael Snyder <[email protected]>
103
104 * coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
105 if size == 0; return and avoid possible null pointer issues.
106
f08c429c
AM
1072007-07-25 Alan Modra <[email protected]>
108
109 * linker.c (generic_link_add_symbol_list): Warning fix.
110
d0f16d5e
MS
1112007-07-24 Michael Snyder <[email protected]>
112
f6eea5ae
MS
113 * opncls.c (bfd_make_writable): Check return from bfd_malloc.
114
d0f16d5e
MS
115 * elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
116 on bfd_malloc error rather than goto error_return.
117
4d269e42
AM
1182007-07-24 Alan Modra <[email protected]>
119
120 * elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
121 _bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
122 _bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
123 _bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
124 bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
125 bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
126 bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
127 bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
128 struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
129 elf_sym_name_compare, elf_create_symbuf,
130 bfd_elf_match_symbols_in_sections,
131 _bfd_elf_match_sections_by_type): Move to here..
132 * elf.c: ..from here.
133
a26587ba
RS
1342007-07-23 Richard Sandiford <[email protected]>
135
136 * elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
137 of weakdef->root.type if weakdef has no regular definition.
138
0e53d9da
AN
1392007-07-22 Adam Nemet <[email protected]>
140
141 * elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
142 small_data_overflow_reported.
143 (_bfd_mips_elf_link_hash_table_create): Initialize it.
144 (_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
145 small-data section overflow.
146
6b33789f
NC
1472007-07-19 Doug Kwan <[email protected]>
148
4d269e42
AM
149 PR binutils/4797
150 * dwarf2.c: (find_line) Do not dereference functionname_ptr if
151 do_line is true.
6b33789f 152
13161072 1532007-07-18 Bob Wilson <[email protected]>
4d269e42 154
13161072
BW
155 * elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
156 non-ELF sections.
4d269e42 157
e29297b7 1582007-07-18 Bob Wilson <[email protected]>
4d269e42 159
e29297b7
BW
160 * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
161 vma and size for dynamic tags from the output sections.
4d269e42 162
a5d1b3b5
AM
1632007-07-18 Alan Modra <[email protected]>
164
165 * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
166 * elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
167 symbol. Instead cache ELF section index. Remove redundant
168 checks of st_shndx.
169
d955dada
MF
1702007-07-15 Mike Frysinger <[email protected]>
171
172 * trad-core.c (NBPG): If not defined, set to getpagesize().
173
979dc3bc
RM
1742007-07-13 Roland McGrath <[email protected]>
175
176 * elf-bfd.h (struct elf_obj_tdata): Revert last change.
177 Add after_write_object_contents, after_write_object_contents_info.
178 * elf.c (_bfd_elf_write_object_contents): Revert last change.
179 Instead, call after_write_object_contents if set.
180
d2df793a
NC
1812007-07-12 Kai Tietz <[email protected]>
182
183 * bfd-in.h: (BFD_HOST_64BIT_LONG_LONG): New.
184 (BFD_HOSTPTR_T): Host pointer type for casting a
185 pointer to an integer type.
186 (bfd_hostptr_t): The typedef of BFD_HOSTPTR_T.
187 (sprintf_vma, fprintf_vma): Add support for long long prints.
188 * bfd-in2.h: Regenerate.
189 * configure.in: (BFD_HOST_64BIT_LONG_LONG): New.
190 (BFD_HOSTPTR_T): Host pointer type for casting a
191 pointer to an integer type. Default is "unsigned long".
192 (AC_CHECK_SIZEOF(void *)): New.
193 (host64): Set it if the pointer size is 8.
194 * configure: Regenerate.
195 * config.in: Add macro SIZEOF_VOID_P.
196 * coffcode.h: Replace host ptr type assuming "long" with
197 bfd_hostptr_t type.
198 * coffgen.c: Likewise.
199 * elf-eh-frame.c: Likewise.
200 * peicode.h: Likewise.
201
a3a4ddad
L
2022007-07-10 H.J. Lu <[email protected]>
203
204 * Makefile.in: Regenerated.
205
329b43c4
L
2062007-07-10 H.J. Lu <[email protected]>
207
208 PR binutils/4756
209 * simple.c (bfd_simple_get_relocated_section_content): Don't
210 apply relocation on executable and shared library.
211
cfd2c773
NS
2122007-07-10 Nathan Sidwell <[email protected]>
213
214 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
215 copy relocs on vxworks.
216
1489a3a0
AM
2172007-07-10 Alan Modra <[email protected]>
218
219 * elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
220 * elf64-alpha.c (alpha_elf_size_info): Likewise.
221 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
222 * elf64-mips.c (mips_elf64_size_info): Likewise.
223 * elf64-s390.c (s390_elf64_size_info): Likewise.
224 * elf64-sparc.c (elf64_sparc_size_info): Likewise.
225
00cbee0a
L
2262007-07-09 H.J. Lu <[email protected]>
227
228 * elflink.c (bfd_elf_record_link_assignment): Handle indirect
229 symbol.
230 (_bfd_elf_merge_symbol): Properly update normal symbol when
231 overriding the versioned symbol from a dynamic library.
232
fd2f25da
RM
2332007-07-09 Roland McGrath <[email protected]>
234
235 * elf-bfd.h (struct elf_obj_tdata): Add members
236 emit_note_gnu_build_id and note_gnu_build_id_sec.
237 * elf.c (_bfd_id_note_section_size): New global function.
238 (read_hex, _bfd_elf_write_build_id_section): New static functions.
239 (_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
240 if emit_note_gnu_build_id is set.
241 * Makefile.am (elf.lo): Update dependencies.
242
243 * elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
244 (bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
245 * elfcode.h (elf_checksum_contents): New macro and function.
246 (NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
247
9af2a943
AM
2482007-07-06 Michael Snyder <[email protected]>
249
250 * elflink.c (elf_link_add_object_symbols): Return via
251 error_free_vers on "notice" failure.
252
a93221e5
L
2532007-07-04 H.J. Lu <[email protected]>
254
255 * peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
256 if arch is unknown.
257
b4928193
NC
2582007-07-04 Nick Clifton <[email protected]>
259
260 Import this patch from an internal tree:
9af2a943 261
b4928193
NC
262 2001-07-17 Richard Henderson <[email protected]>
263
264 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
265 compensate for high bit set in R_MEP_LOW16.
266
3cfad14c
JM
2672007-07-03 Joseph Myers <[email protected]>
268
269 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
270 input attributes if value has been copied.
271
cd123cb7
NC
2722007-07-03 Nick Clifton <[email protected]>
273
274 * COPYING: Replace with GPLv3 text.
275 * aix386-core.c: Update copyright notice to refer to GPLv3.
276 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
277 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
278 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
279 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
280 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
281 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
282 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
283 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
284 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
285 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
286 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
287 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
288 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
289 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
290 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
291 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
292 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
293 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
294 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
295 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
296 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
297 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
298 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
299 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
300 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
301 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
302 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
303 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
304 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
305 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
306 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
307 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
308 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
309 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
310 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
311 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
312 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
313 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
314 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
315 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
316 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
317 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
318 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
319 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
320 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
321 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
322 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
323 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
324 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
325 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
326 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
327 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
328 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
329 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
330 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
331 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
332 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
333 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
334 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
335 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
336 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
337 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
338 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
339 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
340 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
341 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
342 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
343 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
344 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
345 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
346 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
347 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
348 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
349 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
350 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
351 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
352 xtensa-modules.c: Likewise.
353 * elf32-sh-relocs.h: Add copyright notice.
354 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
355 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
356 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
357 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
358 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
359 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
360 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
361 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
362 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
363
741d6ea8
JM
3642007-07-02 Joseph Myers <[email protected]>
365
366 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
367 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
368 * elf64-mips.c (mips_elf64_howto_table_rela): Support
369 R_MIPS_TLS_DTPREL64.
370
ae351704
AM
3712007-07-02 Alan Modra <[email protected]>
372
373 * Makefile.am: Run "make dep-am".
374 * Makefile.in: Regenerate.
375 * aclocal.m4: Regenerate.
376 * config.in: Regenerate.
377 * po/SRC-POTFILES.in: Regenerate.
378 * po/bfd.pot: Regenerate.
379
3e5484db
AM
3802007-07-02 Alan Modra <[email protected]>
381
382 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
383 symsec != NULL tests.
384
08a40648
AM
3852007-07-02 Alan Modra <[email protected]>
386
387 PR 4712
388 * elf.c (assign_file_positions_for_load_sections): Adjust lma
389 by p_vaddr_offset.
390
86b57e31
L
3912007-06-30 H.J. Lu <[email protected]>
392
393 * aclocal.m4: Regenerated.
394 * Makefile.in: Likewise.
395
34c8bcba
JM
3962007-06-29 Joseph Myers <[email protected]>
397
398 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
399 (ppc_elf_merge_private_bfd_data): Call it.
400
2cf19d5c
JM
4012007-06-29 Joseph Myers <[email protected]>
402
403 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
404 (_bfd_mips_elf_merge_private_bfd_data): Call it.
405
104d59d1
JM
4062007-06-29 Joseph Myers <[email protected]>
407
408 * elf-attrs.c: New.
409 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
410 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
411 (elf-attrs.lo): Generate dependencies.
412 * Makefile.in: Regenerate.
413 * configure.in (elf): Add elf-attrs.lo.
414 * configure: Regenerate.
415 * elf-bfd.h (struct elf_backend_data): Add entries for object
416 attributes.
417 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
418 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
419 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
420 New.
421 (struct elf_obj_tdata): Add entries for object attributes.
422 (elf_known_obj_attributes, elf_other_obj_attributes,
423 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
424 New.
425 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
426 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
427 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
428 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
429 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
430 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
431 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
432 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
433 (bfd_section_from_shdr): Handle attributes sections.
434 * elflink.c (bfd_elf_final_link): Handle attributes sections.
435 * elfxx-target.h (elf_backend_obj_attrs_vendor,
436 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
437 elf_backend_obj_attrs_section_type): New.
438 (elfNN_bed): Update.
439 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
440 aeabi_attribute_list): Remove.
441 (struct elf32_arm_obj_tdata): Remove object attributes fields.
442 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
443 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
444 Update for new object attributes interfaces.
445 (uleb128_size, is_default_attr, eabi_attr_size,
446 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
447 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
448 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
449 elf32_arm_add_eabi_attr_int, attr_strdup,
450 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
451 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
452 to generic code in elf-attrs.c.
453 (elf32_arm_obj_attrs_arg_type): New.
454 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
455 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
456 (bfd_elf32_bfd_final_link): Remove.
457 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
458 elf_backend_obj_attrs_arg_type,
459 elf_backend_obj_attrs_section_type): New.
460 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
461 attributes.
462 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
463 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
464 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
465 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
466 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
467 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
468
5ab79981
PB
4692007-06-29 Paul Brook <[email protected]>
470
471 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
472 call veneers for call relocations against undefined symbols.
473 (elf32_arm_final_link_relocate): Turn call to undefined symbol
474 into a jump to the next instruction.
475
32e8a950
NC
4762007-06-29 Michael Snyder <msnyder@svkmacdonelllnx>
477
478 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
479
3d3d428f
NC
4802007-06-29 M R Swami Reddy <[email protected]>
481
482 * Makefile.am: Add cr16 related entry
483 * Makefile.in: Regenerate
484 * archures.c: Add bfd_cr16_arch
485 * bfd-in2.h: Regenerate
486 * config.bfd: Add cr16-elf
487 * configure.in: Add bfd_elf32_cr16_vec
488 * configure: Regenerate.
489 * targets.c: Added cr16 related information
490 * cpu-cr16.c: New file.
491 * elf32-cr16.c: New file.
492 * reloc.c: Added cr16 relocs.
493
c55fe096
AM
4942007-06-29 Alan Modra <[email protected]>
495
496 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
497 message for undefined version nodes.
498 (elf_gc_sweep): Don't warn when zero size sections are
499 removed.
500
375de94a
AM
5012007-06-29 Nathan Froyd <[email protected]>
502
503 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
504 types.
505
7d3287cb
AM
5062007-06-29 Alan Modra <[email protected]>
507
508 * elf32-spu.c (spu_elf_fake_sections): New function.
509 (elf_backend_fake_sections): Define.
510
6a3cd2b4
AM
5112007-06-29 Alan Modra <[email protected]>
512
513 * elf.c (assign_file_positions_for_load_sections): Use elf
514 section header sh_size rather than bfd section size, simplifying
515 .tbss handling.
516
bf988460
AM
5172007-06-29 Alan Modra <[email protected]>
518
36fc76ae 519 PR ld/4701
bf988460
AM
520 * elf.c (assign_file_positions_for_load_sections): Ensure bss
521 segments meet gABI alignment requirements. Don't allocate
522 file space for bss sections in a segment also containing file
523 or program headers.
524
60b31e8d
AM
5252007-06-27 Alan Modra <[email protected]>
526
cc481421
AM
527 * bfd.c (struct bfd): Rename "next" to "archive_next".
528 * archive.c: Rename uses throughout file.
529 * archive64.c: Likewise.
530 * coff-rs6000.c: Likewise.
531 * ecoff.c: Likewise.
532 * som.c: Likewise.
533 * bfd-in2.h: Regenerate.
534
60b31e8d
AM
535 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
536 input bfds.
58eb693e 537 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 538
bec42b15
NC
5392007-06-26 H.J. Lu <[email protected]>
540
541 * dwarf2.c (find_line): New. Contains the duplicated code from:
542 (_bfd_dwarf2_find_nearest_line): Use it.
543 (_bfd_dwarf2_find_line): Use it.
544
3d3e6f9a
JM
5452007-06-26 Joseph Myers <[email protected]>
546
547 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
548
b314ec0e
RS
5492007-06-25 Richard Sandiford <[email protected]>
550
551 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
552 to be used for calls from MIPS16 code.
553
0d4a1476
AS
5542007-06-23 Andreas Schwab <[email protected]>
555
556 * configure.in (--with-separate-debug-dir): New option.
557 * configure: Regenerate.
558 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
559 * Makefile.in: Regenerate.
560 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
561 bfd_follow_gnu_debuglink.
562 (_bfd_dwarf2_find_line): Likewise.
563
0d161102
NC
5642007-06-22 Nick Clifton <[email protected]>
565
566 * dwarf2.c: Add support for reading in debug information via a
567 .gnu_debuglink section:
568 (struct dwarf2_debug): Add bfd field to record the bfd containing
569 the debug info.
570 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
571 field in the dwarf2_debug structure.
572 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
573 be found in the current bfd call bfd_follow_gnu_debuglink to see
574 if another file contains the debug information. If it does, open
575 it and continue.
576 (_bfd_dwarf2_find_line): Likewise.
577
293a0124
L
5782007-06-19 H.J. Lu <[email protected]>
579
580 PR ld/4590
581 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
582 when removing duplicated entries.
583 (get_dyn_sym_info): Initialize the got_offset field to -1.
584 Update call to sort_dyn_sym_info.
585 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
586 array of addend and remove duplicates.
587
dc1f3d8a
L
5882007-06-18 H.J. Lu <[email protected]>
589
590 * libpei.h (_bfd_XXi_final_link_postscript): Remove
591 duplication.
592 (bfd_target_pei_p): New.
593 (bfd_target_pei_arch): New
594 (bfd_target_efi_p): Likewise.
595 (bfd_target_efi_arch): New
596 (bfd_pe_executable_p): Use bfd_target_pei_p and
597 bfd_target_efi_p.
598
599 * peicode.h (arch_type): New enum.
600 (pe_arch): New function.
601 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
602 if there is an EFI/PE target.
603
79887925
L
6042007-06-14 H.J. Lu <[email protected]>
605
606 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
607
608 * acinclude.m4: Don't include m4 files. Remove libtool
609 kludge.
610
611 * Makefile.in: Regenerated.
79887925
L
612 * aclocal.m4: Likewise.
613 * configure: Likewise.
614
99ded152
BW
6152007-06-11 Sterling Augustine <[email protected]>
616 Bob Wilson <[email protected]>
bf988460 617
99ded152
BW
618 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
619 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
620 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
621 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
622 (xtensa_get_property_predef_flags): Likewise.
623 (compute_removed_literals): Pass new arguments to is_removable_literal.
624 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
625 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 626
cbf2cba4
RS
6272007-05-31 Richard Sandiford <[email protected]>
628
629 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
630 type (3) single-GOT entry, read tls_type from the hash table entry
631 rather than the GOT entry.
632
a9a4c53e
AM
6332007-06-01 Alan Modra <[email protected]>
634
635 * simple.c (bfd_simple_get_relocated_section_contents): Init
636 input_bfds_tail.
637
02bf8d82
AM
6382007-05-30 Alan Modra <[email protected]>
639
42bb2e33
AM
640 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
641 created by objcopy --only-keep-debug.
642 (_bfd_elf_init_private_section_data): Only change elf_section_type
643 if it is SHT_NULL.
644
02bf8d82
AM
645 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
646 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
647 and sh_flags instead of bfd section flags. Delete voff and code
648 keeping nobits segments aligned.
649
4e591bc1
EC
6502007-05-25 Eric Christopher <[email protected]>
651
652 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
653 Check that sym_sec isn't NULL before accessing.
654
37ad9514
SE
6552007-05-24 Steve Ellcey <[email protected]>
656
657 * Makefile.in: Regnerate.
658 * configure: Regenerate.
659 * aclocal.m4: Regenerate.
660 * doc/Makefile.in: Regenerate.
661
91a5743d
PB
6622007-05-22 Paul Brook <[email protected]>
663
664 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
665 with sec and sec_shndx.
666 (elf32_arm_ouput_plt_map_sym): Use them.
667 (elf32_arm_output_arch_local_syms): Output mapping symbols for
668 interworking glue.
669
26079076
PB
6702007-05-18 Paul Brook <[email protected]>
671
672 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
673 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
674 (record_arm_to_thumb_glue): Add v5t non-pic glue.
675 (elf32_arm_create_thumb_stub): Ditto.
676
91ac5911
L
6772007-05-16 H.J. Lu <[email protected]>
678 Alan Modra <[email protected]>
679
680 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
681 section to the minimum alignment.
682
027297b7
L
6832007-05-15 H.J. Lu <[email protected]>
684 Alan Modra <[email protected]>
685
686 PR ld/4504
687 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
688 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
689
690 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
691 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
692 bss section.
693 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
694 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
695 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
696 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
697 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
698 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
699 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
700 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
701 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
702 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
703 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
704 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
705 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
706 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
707 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
708 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
709 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
710
5c18022e
RS
7112007-05-15 Richard Sandiford <[email protected]>
712
713 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
714 input_section argument. Create .rela.dyn relocations against
715 symbol 0 rather than the section symbol.
716 (mips_elf_local_got_index): Remove input_section argument.
717 Update call to mips_elf_create_local_got_entry.
718 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
719 (mips_elf_calculate_relocation): Update calls to
720 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
721
a00a1f35
MS
7222007-05-15 Mark Shinwell <[email protected]>
723
724 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
725 handle the Thumb-2 JUMP19 relocation.
726
0414f35b
AM
7272007-05-15 Alan Modra <[email protected]>
728
729 PR 4479
730 * elf.c (elf_fake_sections): Don't allow backend to change
731 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
732 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
733 fix from here.
734
74f2e02b
AM
7352007-05-14 Alan Modra <[email protected]>
736
737 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
738 invalid shstrndx.
739 (bfd_elf_get_str_section): Likewise.
740
f137a54e
AM
7412007-05-12 Alan Modra <[email protected]>
742
743 PR 4497
744 * elf-eh-frame.c (struct cie): Add "local_personality". Make
745 "personality" a union.
746 (cie_eq): Compare local_personality too. Adjust personality
747 comparison.
748 (_bfd_elf_discard_section_eh_frame): Check binding on personality
749 reloc sym to allow for bad symtab. Use stashed local syms rather
750 than reading personality local sym. Handle discarded sections.
751
4f4416b5
AM
7522007-05-12 Alan Modra <[email protected]>
753
754 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
755
016687f8
AM
7562007-05-11 Alan Modra <[email protected]>
757
758 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
759 (enum ppc_elf_plt_type): Move from..
760 * elf32-ppc.c: ..here.
761 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
762 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
763 can_use_new_plt. Make is_vxworks a bitfield.
764 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
765 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
766 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
767 flags to better detect object files needing old bss-style plt.
768 Allow secure plt to be used without rel16 relocs being detected.
769 Warn if secure plt request cannot be allowed.
770
ece5ef60
AM
7712007-05-11 Alan Modra <[email protected]>
772
773 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
774 * elf-bfd.h (struct elf_backend_data): Change return type of
775 elf_backend_relocate_section to int.
776 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
777 R_SPU_PPU64.
778 (spu_elf_bfd_to_reloc_type): Convert new relocs.
779 (spu_elf_count_relocs): New function.
780 (elf_backend_count_relocs): Define.
781 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
782 R_SPU_PPU64 relocs.
783 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
784 returns 2.
785 * bfd-in2.h: Regenerate.
786 * libbfd.h: Regenerate.
787
d3753b85
RS
7882007-05-10 Richard Sandiford <[email protected]>
789
790 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
791 for R_ARM_ABS12 relocs.
792 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
793 non-shared VxWorks PLT entries.
794
ef8c95ad
AM
7952007-05-11 Alan Modra <[email protected]>
796
797 PR 4454
798 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
799 (_bfd_elf_discard_section_eh_frame): Handle local syms on
800 personality relocation.
801
8c252fd9
RS
8022007-05-10 Richard Sandiford <[email protected]>
803
804 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
805 rather than p_filesz to calculate the LMA of the end of a segment.
806
b186458a
JJ
8072007-05-10 Jakub Jelinek <[email protected]>
808
809 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
810 processing if symbol is defined in the executable.
811
88571279
AO
8122007-05-10 Alexandre Oliva <[email protected]>
813
814 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
815 (frvfdpic_elf_discard_info): New.
816 (elf_backend_discard_info): Define for FDPIC.
817
2e6030b9
MS
8182007-05-09 Mark Shinwell <[email protected]>
819
820 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
821 attempt to scan if the bfd doesn't correspond to an ELF image.
822 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
823
0d4cc892
AO
8242007-05-08 Alexandre Oliva <[email protected]>
825
826 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
827 for which _bfd_elf_section_offset returns -1.
828
d0249648
AM
8292007-05-08 Alan Modra <[email protected]>
830
831 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
832 (mark_functions_via_relocs): Likewise.
833
1182cb93
AM
8342007-05-07 Alan Modra <[email protected]>
835
836 * elflink.c (bfd_elf_final_link): Correct reloc handling for
837 elf_backend_count_relocs.
838 (bfd_elf_discard_info): Print an error if we can't read syms.
839
b16f296e
AM
8402007-05-07 Alan Modra <[email protected]>
841
842 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
843 invalid reloc code.
844 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
845 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
846 define.
847
7c928300
AM
8482007-05-07 Alan Modra <[email protected]>
849
850 * elf.c (assign_file_positions_for_load_sections): Don't check
851 core segment.
852
fc66a176
L
8532007-05-04 H.J. Lu <[email protected]>
854
855 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
856 and .rel.dyn aren't present.
857
3410fea8
NC
8582007-05-04 Nick Clifton <[email protected]>
859
860 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
861 sections are present examine the indirect sections in an attempt
862 to compute the correct relocation size. If there is any
863 ambiguity, produce an error and refuse to sort.
864
7bdca076
SL
8652007-05-03 Sandra Loosemore <[email protected]>
866
867 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
868
22184a77
NC
8692007-05-03 Vincent Riviere <[email protected]>
870 Nick Clifton <[email protected]>
871
872 PR gas/3041
873 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
874 in the same way as relocs against external symbols.
875
627b32bc
AM
8762007-05-02 Alan Modra <[email protected]>
877
878 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
879 here. Set sh_type to SHT_NOBITS if we won't be allocating
880 file space. Don't bump p_memsz for non-alloc sections. Adjust
881 section-in-segment check.
882 (assign_file_positions_for_non_load_sections): Don't set sh_offset
883 here for sections that have already been handled above.
884
49fa1e15
AM
8852007-04-30 Alan Modra <[email protected]>
886
887 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
888 and emit_stack_syms bitfields.
889 (get_sym_h): Read all symbols if stack analysis will be done.
890 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
891 params, and stash in hash table.
892 (is_hint): Split off from..
893 (is_branch): ..here. Adjust callers.
894 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
895 and keep all syms.
896 (write_one_stub): Fix mem leak.
897 (find_function_stack_adjust): New function.
898 (sort_syms_syms, sort_syms_psecs): New vars.
899 (sort_syms): New function.
900 (struct call_info, struct function_info): New.
901 (struct spu_elf_stack_info): New.
902 (alloc_stack_info, maybe_insert_function, func_name): New functions.
903 (is_nop, insns_at_end, check_function_ranges): Likewise.
904 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
905 (pasted_function, interesting_section, discover_functions): Likewise.
906 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
907 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
908 (bfd_elf32_bfd_final_link): Define.
909 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
910 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
911
9ddf8309
TS
9122007-04-28 Sergey Rogozhkin <[email protected]>
913
914 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
915 memory which we might not own.
916
95147441
BW
9172007-04-27 Bob Wilson <[email protected]>
918
919 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
920 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
921 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
922
bcc2cc8e
BW
9232007-04-27 Bob Wilson <[email protected]>
924
925 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
926 contents and relocs in parallel.
4e591bc1 927
f29f96b6
BW
9282007-04-27 Bob Wilson <[email protected]>
929
930 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
931
2ce18a16
AM
9322007-04-27 Alan Modra <[email protected]>
933
934 * cpu-rs6000.c: Write Mimi's name in ASCII.
935 * coff-rs6000.c: Likewise.
936 * rs6000-core.c: Likewise.
937
eddc20ad
AM
9382007-04-27 Alan Modra <[email protected]>
939
940 * sysdep.h: Include config.h first.
941 Many files: Include sysdep.h before bfd.h.
942 * Makefile.am: Run "make dep-am".
943 * Makefile.in: Regenerate.
944
495443d4
AM
9452007-04-25 Alan Modra <[email protected]>
946
947 * sysdep.h: Revert last change.
948
40b1c6c5
NC
9492007-04-24 Nick Clifton <[email protected]>
950
951 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
952 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
953
64be1553
AM
9542007-04-24 Alan Modra <[email protected]>
955
956 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
957 eh_frame_hdr table won't be created.
958
d5efd9fc
AM
9592007-04-24 Alan Modra <[email protected]>
960
961 * acinclude.m4: Include config/stdint.m4.
962 * configure.in: Invoke GCC_HEADER_STDINT.
963 * sysdep.h: Don't include ansidecl.h here.
964 * configure: Regenerate.
965 * config.in: Regenerate.
966 * Makefile.in: Regenerate.
967
9a2e615a
NS
9682007-04-23 Nathan Sidwell <[email protected]>
969
970 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
971 bfd_mach_mcf_isa_c_emac): New.
972 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
973 elf_isac_plt_entry, elf_isac_plt_info): New.
974 (elf32_m68k_object_p): Add ISA_C.
975 (elf32_m68k_print_private_bfd_data): Print ISA_C.
976 (elf32_m68k_get_plt_info): Detect ISA_C.
977 * cpu-m68k.c (arch_info): Add ISAC.
978 (m68k_arch_features): Likewise,
979 (bfd_m68k_compatible): ISAs B & C are not compatible.
980
1b0b5b1b
NC
9812007-04-21 Nick Clifton <[email protected]>
982
983 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
984 (ecoff_link_add_archive_symbols): Likewise.
985 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
986 relent.howto.
987 * ieee.c (parse_int): Initialise x.
988 (must_parse_int): Initialise result.
989 (ieee_slurp_external_symbols): Initialise value.
990
bd7803a9
AM
9912007-04-21 Alan Modra <[email protected]>
992
993 * config.bfd (spu-*-elf): Delete targ_selvecs.
994
964597d0
NC
9952007-04-19 Nick Clifton <[email protected]>
996
997 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
998
01e76792
AM
9992007-04-19 Alan Modra <[email protected]>
1000
1001 * bfd.c (bfd_demangle): New function.
1002 * Makefile.am: Run "make dep-am".
1003 * Makefile.in: Regenerate.
1004 * bfd-in2.h: Regenerate.
1005
ee5c21a0
DJ
10062007-04-18 Matthias Klose <[email protected]>
1007
1008 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
1009 (bfdver.h): Use the date in non-release builds for the soversion.
1010 * Makefile.in: Regenerate.
1011
fcb93ecf
PB
10122007-04-17 Paul Brook <[email protected]>
1013
1014 * elf.c (_bfd_elf_is_function_type): New function.
1015 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
1016 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
1017 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
1018 * elf-bfd.h (elf_backend_data): Add is_function_type.
1019 (_bfd_elf_is_function_type): Add prototype.
1020 * elfxx-target.h (elf_backend_is_function_type): Add default
1021 definition.
1022 (elfNN_bed): Add elf_backend_is_function_type.
1023 * elf32-arm.c (elf32_arm_is_function_type): New function.
1024 (elf_backend_is_function_type): Define.
1025
5750dcec
DJ
10262007-04-17 Daniel Jacobowitz <[email protected]>
1027
1028 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
1029 DT_MIPS_RLD_MAP before DT_DEBUG again.
1030
cfbc9945
SE
10312007-04-14 Steve Ellcey <[email protected]>
1032
1033 * Makefile.am: Add ACLOCAL_AMFLAGS.
1034 * configure.in: Change macro call order.
1035 * Makefile.in: Regnerate.
1036 * doc/Makefile.in: Regenerate.
1037 * configure: Regenerate.
1038
3fcd97f1
JJ
10392007-04-14 Jakub Jelinek <[email protected]>
1040
1041 * elflink.c (bfd_elf_final_link): Don't free symbuf for
1042 non-elf input bfds.
1043 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
1044 for non-elf input bfds.
1045
af5978fb
RS
10462007-04-12 Richard Sandiford <[email protected]>
1047
1048 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
1049 DT_MIPS_RTLD_MAP for PIEs.
1050
9e3313ae
RS
10512007-04-12 Richard Sandiford <[email protected]>
1052
1053 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
1054 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
1055 in a read-only section.
1056 (_bfd_mips_elf_check_relocs): Likewise.
1057
1d25768e
BW
10582007-04-12 Bob Wilson <[email protected]>
1059
1060 * elf32-xtensa.c (xtensa_is_insntable_section): New.
1061 (xtensa_is_proptable_section): New.
1062 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
1063 tables with 12-byte entries, as well as tables with 8-byte entries.
1064 Sort the relocations before examining them.
1065 (relax_property_section): Use xtensa_is_proptable_section and
1066 xtensa_is_littable_section. Rewrite code for combining table entries
1067 to be more robust in case of unexpected relocations. Do not set offset
1068 of unused relocations to less than zero.
1069 (xtensa_is_property_section): Use other functions instead of
1070 duplicating section name comparisons.
1071 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
1072 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 1073
e1e5c0b5 10742007-04-12 Bob Wilson <[email protected]>
4e591bc1 1075
e1e5c0b5
BW
1076 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
1077 from Xtensa property sections.
4e591bc1 1078
2c67c5f3
AM
10792007-04-12 Alan Modra <[email protected]>
1080
1081 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
1082 is non-NULL before dereferencing.
1083
8776bb8a
NS
10842007-04-11 Nathan Sidwell <[email protected]>
1085
1086 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
1087 relocs too.
1088
4a828aab
RH
10892007-04-10 Richard Henderson <[email protected]>
1090
1091 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
1092 (elf64_alpha_size_got_sections): Remove unused something_changed local.
1093 (elf64_alpha_size_plt_section): Return void.
1094 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 1095 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
1096 relax_trip counter has changed.
1097
91506736
DJ
10982007-04-09 Daniel Jacobowitz <[email protected]>
1099
1100 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
1101 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
1102 (bfdver.texi): New rule.
1103 * Makefile.in, doc/Makefile.in: Regenerated.
1104
da6bcfca
MT
11052007-04-03 Matt Thomas <[email protected]>
1106
4e591bc1 1107 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
1108 in a shared object if it is not in a CODE section or if it is against
1109 a section symbol. This allows DWARF2 to use pcrel format.
1110
9267588c
L
11112007-04-05 H.J. Lu <[email protected]>
1112
1113 PR ld/4304
1114 * elflink.c (bfd_elf_final_link): Call einfo callback in
1115 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
1116 warning.
1117
c1b2796f
AM
11182007-04-05 Alan Modra <[email protected]>
1119
1120 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
1121 (elf_backend_link_output_symbol_hook): Define.
1122
970ccc77
NC
11232007-04-02 Nick Clifton <[email protected]>
1124
1125 PR binutils/4292
1126 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
1127 targets as 64-bit values, even if running on a 64-bit host.
1128 * coffgen.c (coff_print_symbol): Likewise.
1129
1783205a
NC
11302007-03-29 Nick Clifton <[email protected]>
1131
1132 PR binutils/4110
1133 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
1134 (setup_group): Use it. Report corrupt group section headers.
1135 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
1136 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
1137 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
1138
2ce859a1
AM
11392007-03-29 Alan Modra <[email protected]>
1140
1141 PR ld/4267
947844a3
AM
1142 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
1143 for rel->r_info values.
1144 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
1145 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
1146 unused entries. Don't clear plt.plist in loop.
1147
39817122
RS
11482007-03-28 Richard Sandiford <[email protected]>
1149
1150 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
1151 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
1152 Merge into...
1153 (sparc_elf_append_rela): ...this new function.
1154 (SPARC_ELF_APPEND_RELA): Delete.
1155 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
1156 the deleted append_rela field.
1157 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
1158 instead of SPARC_ELF_APPEND_RELA.
1159 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
1160 elf_size_info structure to find the size of a RELA entry and
1161 the associated swap-out function.
1162 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
1163 (sparc_finish_dyn): ...this new function.
1164 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
1165
4ecceb71
RS
11662007-03-28 Richard Sandiford <[email protected]>
1167 Phil Edwards <[email protected]>
1168
1169 * doc/bfd.texinfo: Put the contents after the title page rather
1170 than at the end of the document.
1171
d4d2b80b
AS
11722007-03-27 Andreas Schwab <[email protected]>
1173
1174 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
1175
831480e9 11762007-03-26 H.J. Lu <[email protected]>
5bd8253d
L
1177
1178 * configure: Regenerated.
1179
f4b39977
AM
11802007-03-26 Alan Modra <[email protected]>
1181
1182 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
1183 (allocate_spuear_stubs): New function.
1184 (spu_elf_size_stubs): Call allocate_spuear_stubs.
1185
157090f7
AM
11862007-03-26 Alan Modra <[email protected]>
1187
1188 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
1189 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
1190 (MY (bfd_reloc_name_lookup)): New function.
1191 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
1192 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
1193 (MY_bfd_reloc_name_lookup): Define.
1194 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
1195 (MY_bfd_reloc_name_lookup): Define.
1196 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
1197 (NAME (aout, reloc_name_lookup)): New function.
1198 * bout.c (b_out_bfd_reloc_name_lookup): New function.
1199 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
1200 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
1201 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
1202 (coff_bfd_reloc_name_lookup): Define.
1203 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
1204 (coff_i386_reloc_name_lookup): New function.
1205 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
1206 (coff_bfd_reloc_name_lookup): Define.
1207 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
1208 (coff_bfd_reloc_name_lookup): Define.
1209 * coff-m68k.c (m68k_reloc_name_lookup): New function.
1210 (coff_bfd_reloc_name_lookup): Define.
1211 * coff-maxq.c (maxq_reloc_name_lookup): New function.
1212 (coff_bfd_reloc_name_lookup): Define.
1213 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
1214 (coff_bfd_reloc_name_lookup): Define.
1215 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
1216 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
1217 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
1218 (coff_bfd_reloc_name_lookup): Define.
1219 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
1220 (_bfd_xcoff_reloc_name_lookup): New function.
1221 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
1222 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
1223 (sh_coff_reloc_name_lookup): New function.
1224 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
1225 (coff_bfd_reloc_name_lookup): Define.
1226 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
1227 (tic30_coff_reloc_name_lookup): New function.
1228 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
1229 (tic4x_coff_reloc_name_lookup): New function.
1230 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
1231 (tic54x_coff_reloc_name_lookup): New function.
1232 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
1233 (coff_amd64_reloc_name_lookup): New function.
1234 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
1235 (coff_bfd_reloc_name_lookup): Define.
1236 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
1237 (coff_bfd_reloc_name_lookup): Define.
1238 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
1239 (xcoff64_reloc_name_lookup): New function.
1240 (rs6000coff64_vec, aix5coff64_vec): Init new field.
1241 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
1242 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
1243 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1244 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1245 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1246 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
1247 (bfd_elf32_bfd_reloc_name_lookup): Define.
1248 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1249 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
1250 (bfd_elf32_bfd_reloc_name_lookup): Define.
1251 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
1252 (bfd_elf32_bfd_reloc_name_lookup): Define.
1253 * elf32-cris.c (cris_reloc_name_lookup): New function.
1254 (bfd_elf32_bfd_reloc_name_lookup): Define.
1255 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
1256 (bfd_elf32_bfd_reloc_name_lookup): Define.
1257 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1258 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1259 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
1260 (bfd_elf32_bfd_reloc_name_lookup): Define.
1261 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
1262 (bfd_elf32_bfd_reloc_name_lookup): Define.
1263 * elf32-frv.c (frv_reloc_name_lookup): New function.
1264 (bfd_elf32_bfd_reloc_name_lookup): Define.
1265 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1266 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
1267 (bfd_elf32_bfd_reloc_name_lookup): Define.
1268 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1269 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
1270 (bfd_elf32_bfd_reloc_name_lookup): Define.
1271 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
1272 (bfd_elf32_bfd_reloc_name_lookup): Define.
1273 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
1274 (bfd_elf32_bfd_reloc_name_lookup): Define.
1275 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
1276 (bfd_elf32_bfd_reloc_name_lookup): Define.
1277 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
1278 (bfd_elf32_bfd_reloc_name_lookup): Define.
1279 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
1280 (bfd_elf32_bfd_reloc_name_lookup): Define.
1281 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
1282 (bfd_elf32_bfd_reloc_name_lookup): Define.
1283 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1284 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1285 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1286 * elf32-m68k.c (reloc_name_lookup): New function.
1287 (bfd_elf32_bfd_reloc_name_lookup): Define.
1288 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1289 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
1290 (bfd_elf32_bfd_reloc_name_lookup): Define.
1291 * elf32-mep.c (mep_reloc_name_lookup): New function.
1292 (bfd_elf32_bfd_reloc_name_lookup): Define.
1293 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1294 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
1295 (bfd_elf32_bfd_reloc_name_lookup): Define.
1296 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1297 * elf32-mt.c (mt_reloc_name_lookup): New function.
1298 (bfd_elf32_bfd_reloc_name_lookup): Define.
1299 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
1300 (bfd_elf32_bfd_reloc_name_lookup): Define.
1301 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1302 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
1303 (bfd_elf32_bfd_reloc_name_lookup): Define.
1304 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
1305 (bfd_elf32_bfd_reloc_name_lookup): Define.
1306 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
1307 (bfd_elf32_bfd_reloc_name_lookup): Define.
1308 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
1309 (bfd_elf32_bfd_reloc_name_lookup): Define.
1310 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
1311 (bfd_elf32_bfd_reloc_name_lookup): Define.
1312 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1313 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
1314 (bfd_elf32_bfd_reloc_name_lookup): Define.
1315 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
1316 (bfd_elf32_bfd_reloc_name_lookup): Define.
1317 * elf32-vax.c (reloc_name_lookup): New function.
1318 (bfd_elf32_bfd_reloc_name_lookup): Define.
1319 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
1320 (bfd_elf32_bfd_reloc_name_lookup): Define.
1321 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
1322 (bfd_elf32_bfd_reloc_name_lookup): Define.
1323 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
1324 (bfd_elf32_bfd_reloc_name_lookup): Define.
1325 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
1326 (bfd_elf64_bfd_reloc_name_lookup): Define.
1327 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1328 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1329 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
1330 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
1331 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
1332 (bfd_elf64_bfd_reloc_name_lookup): Define.
1333 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
1334 (bfd_elf64_bfd_reloc_name_lookup): Define.
1335 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
1336 (bfd_elf64_bfd_reloc_name_lookup): Define.
1337 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1338 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
1339 (bfd_elf64_bfd_reloc_name_lookup): Define.
1340 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1341 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
1342 (bfd_elfNN_bfd_reloc_name_lookup): Define.
1343 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
1344 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
1345 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
1346 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
1347 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
1348 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
1349 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
1350 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
1351 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
1352 (MY(reloc_name_lookup)): New function.
1353 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
1354 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
1355 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
1356 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
1357 (coff_bfd_reloc_name_lookup): Define.
1358 * reloc.c (bfd_reloc_name_lookup): New function.
1359 * riscix.c (riscix_reloc_name_lookup): New function.
1360 (MY_bfd_reloc_name_lookup): Define.
1361 * som.c (som_bfd_reloc_name_lookup): New function.
1362 * targets.c (struct bfd_target): Add reloc_name_lookup.
1363 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
1364 * versados.c (versados_bfd_reloc_name_lookup): Define.
1365 * vms.c (vms_bfd_reloc_name_lookup): New function.
1366 * bfd-in2.h: Regenerate.
1367 * libbfd.h: Regenerate.
1368
2d82d84d
TS
13692007-03-26 Thiemo Seufer <[email protected]>
1370
a5cb1fd7 1371 PR ld/4208
2d82d84d
TS
1372 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
1373 matching relocation is found.
1374 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
1375
831480e9 13762007-03-23 H.J. Lu <[email protected]>
1a27db7d
L
1377
1378 * configure: Regenerated.
1379
a1ac8190
JM
13802007-03-23 Joseph Myers <[email protected]>
1381
1382 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
1383 * configure: Regenerate.
1384
aa7a0635
AM
13852007-03-23 Alan Modra <[email protected]>
1386
1387 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
1388 Remove input_sec param. Adjust all calls.
1389 (write_one_stub): Adjust stub symbol.
1390 (needs_ovl_stub): New function, extracted from..
1391 (spu_elf_size_stubs): ..here.
1392 (spu_elf_relocate_section): Use needs_ovl_stub.
1393
e49e529d
JM
13942007-03-22 Joseph Myers <[email protected]>
1395
1396 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
1397 if nonempty.
1398 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
1399 * Makefile.in, configure, doc/Makefile.in: Regenerate.
1400
831480e9 14012007-03-22 H.J. Lu <[email protected]>
50572669
L
1402
1403 PR ld/4210
1404 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
1405 address and virtual size of the last section for the image
1406 size.
1407
0920dee7
L
14082007-03-22 H.J. Lu <[email protected]>
1409
1410 PR ld/4007
1411 * elf.c (assign_file_positions_for_load_sections): Check if
1412 all sections are in the segment.
1413
831480e9 14142007-03-20 H.J. Lu <[email protected]>
749b8d9d
L
1415
1416 PR ld/4208
1417 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
1418 matching LO16 relocation for HI16 relocation.
1419
27e55c4d
PB
14202007-03-20 Paul Brook <[email protected]>
1421
1422 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
1423 * bfd-in2.h: Regenerate.
1424 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
1425 (record_arm_to_thumb_glue): Use globals->pic_veneer.
1426 (elf32_arm_create_thumb_stub): Ditto.
1427 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
1428
bf21ed78
MS
14292007-03-18 Mark Shinwell <[email protected]>
1430
1431 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
1432 argument and extra last argument.
1433 * bfd-in2.h: Regenerate.
1434 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
1435 member.
1436 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
1437 extra last argument. Set no_enum_size_warning appropriately.
1438 (elf32_arm_merge_eabi_attributes): Improve enum sizes
1439 diagnostic, suppressing it when no_enum_size_warning dictates.
1440
5f6999aa
NC
14412007-03-20 Nick Clifton <[email protected]>
1442
1443 PR binutils/3535
1444 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
1445 specific conditions that need the program headers to be
1446 rewritten.
1447
831480e9 14482007-03-19 H.J. Lu <[email protected]>
d13c9dc6
L
1449
1450 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
1451 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1452 SizeOfInitializedData, SizeOfUninitializedData,
1453 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
1454 extra PE a.out header.
1455 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
1456 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
1457 defined.
1458 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
1459 defined.
1460 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
1461 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1462 SizeOfInitializedData, SizeOfUninitializedData,
1463 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
1464 extra PE a.out header.
1465
831480e9 14662007-03-18 H.J. Lu <[email protected]>
739bb57e
L
1467
1468 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
1469 only if BFD64 is defined.
1470
5384511f
AM
14712007-03-17 Alan Modra <[email protected]>
1472
1473 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
1474 on setjmp calls.
1475
187b3d5d
L
14762007-03-15 H.J. Lu <[email protected]>
1477
1478 * doc/Makefile.in: Regenerated.
1479
c428fa83
L
14802007-03-15 H.J. Lu <[email protected]>
1481
1482 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
1483 create doc/bfdver.texi.
1484 * Makefile.in: Regenerated.
1485
1486 * configure.in (--with-bugurl): New option.
1487 * configure: Regenerated.
1488
1489 * version.h (REPORT_BUGS_TO): New.
1490
d1036acb
L
14912007-03-13 H.J. Lu <[email protected]>
1492
1493 PR binutils/3826
1494 * elf-bfd.h (elf_backend_data): Add elf_osabi.
1495 (_bfd_elf_set_osabi): New.
1496
1497 * elf.c (_bfd_elf_set_osabi): New.
1498
1499 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
1500 (elf_backend_post_process_headers): Defined with
1501 _bfd_elf_set_osabi.
1502 (ELF_OSABI): Properly defined for each target.
1503
1504 * elf32-i370.c (i370_elf_post_process_headers): Removed.
1505 (ELF_OSABI): Defined.
1506 (elf_backend_post_process_headers): Defined with
1507 _bfd_elf_set_osabi.
1508
1509 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1510 freebsd.
1511 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
1512
1513 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
1514 (ELF_OSABI): Defined.
1515 (elf_backend_post_process_headers): Defined with
1516 _bfd_elf_set_osabi.
1517
1518 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1519 freebsd.
1520 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
1521 elf_osabi.
1522
1523 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
1524 with elf_osabi.
1525 (ELF_OSABI): Properly defined for each target.
1526 (elf_backend_post_process_headers): Defined with
1527 _bfd_elf_set_osabi for Linux.
1528
1529 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
1530 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1531 (elf_backend_post_process_headers): Defined with
1532 _bfd_elf_set_osabi.
1533
1534 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
1535 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1536 (elf_backend_post_process_headers): Defined with
1537 _bfd_elf_set_osabi.
1538
1539 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
1540 with any ELF target of the compatible machine for which we do not
1541 have a specific backend.
1542
1543 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
1544 with elf_osabi.
1545
1546 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
1547 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
1548
d4c87fc1
AM
15492007-03-08 Alan Modra <[email protected]>
1550
1551 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
1552 V850_OTHER_* bits.
1553
9c6fc49d
AM
15542007-03-08 Alan Modra <[email protected]>
1555
1556 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
1557 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
1558 Run "make dep-am".
1559 * Makefile.in: Regenerate.
1560 * po/SRC-POTFILES.in: Regenerate.
1561
faed74d6
L
15622007-03-07 H.J. Lu <[email protected]>
1563
1564 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
1565 (x86_64-*-kfreebsd*-gnu): Likewise.
1566 (x86_64-*-netbsd*): Likewise.
1567 (x86_64-*-openbsd*): Likewise.
1568 (x86_64-*-linux-*): Likewise.
1569
1570 * configure.in: Support bfd_efi_app_x86_64_vec.
1571 * configure: Regenerated.
1572
1573 * efi-app-x86_64.c: New file.
1574
1575 * targets.c (bfd_efi_app_x86_64_vec): New.
1576 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
1577
15344ad7
L
15782007-03-07 Kai Tietz <[email protected]>
1579
1580 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
1581 const for type reloc_howto_type.
1582
ab96bf03
AM
15832007-03-07 Alan Modra <[email protected]>
1584
1585 PR 3958
1586 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
1587 (elf_discarded_section): Move..
1588 * bfd-in.h: ..to here.
1589 * bfd-in2.h: Regenerate.
1590 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
1591 from discarded sections before relocate_section has done its job.
1592 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
1593 relocs against symbols from discarded sections.
1594 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
1595 SECREL32.
1596 (elf_hppa_relocate_section): Handle relocatable link after setting
1597 sec, sym, h etc. for final link. Squash error messages for
1598 relocatable link. Clear section contents for relocs against
1599 symbols in discarded sections, and zero reloc. Remove existing
1600 zero r_symndx code.
1601 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
1602 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1603 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1604 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1605 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
1606 (bfin_relocate_section): Likewise.
1607 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1608 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1609 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1610 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1611 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1612 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1613 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1614 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1615 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1616 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1617 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1618 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1619 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1620 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1621 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1622 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1623 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1624 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1625 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1626 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1627 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1628 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1629 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1630 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1631 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
1632 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1633 * elf32-spu.c (spu_elf_relocate_section): Likewise.
1634 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1635 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1636 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1637 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1638 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1639 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1640 (elf64_alpha_relocate_section): Likewise.
1641 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1642 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1643 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1644 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1645 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1646 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
1647 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1648 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1649
1650 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
1651 symbols for relocatable link. Don't use always-zero st_value.
1652 (elf_backend_rela_normal): Don't define.
1653 * elf32-bfin.c (bfinfdpic_relocate_section): Use
1654 RELOC_FOR_GLOBAL_SYMBOL.
1655 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1656 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
1657 section symbol adjustments with same for relocatable link.
1658 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1659 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
1660 (elf32_m68hc11_check_relocs): ..to here.
1661 * elf32-score.c (score_elf_final_link_relocate): Remove zero
1662 r_symndx code.
1663 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1664
0e922b77
AM
16652007-03-07 Alan Modra <[email protected]>
1666
1667 PR 4144
1668 * elf.c (assign_file_positions_for_load_sections): Don't
1669 adjust p_memsz for !SEC_LOAD section vma modulo page size.
1670 Instead, use the same lma based adjustment for SEC_LOAD
1671 sections.
1672
25c6282a
BW
16732007-03-01 Bob Wilson <[email protected]>
1674
1675 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
1676 (find_relaxable_sections): Do not increment src_count for unknown
1677 opcodes. Decode only once instead of calling is_l32r_relocation.
1678 (compute_text_actions): Remove unused no_insn_move flag. Assert that
1679 src_next matches src_count in relax_info.
1680
066c2a57
JM
16812007-03-01 Joseph Myers <[email protected]>
1682
1683 * Makefile.am (bfdver.h): Use "." not " " between version number
1684 and date.
1685 * Makefile.in: Regenerate.
1686 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
1687 * configure: Regenerate.
1688
ed6ba298
NS
16892007-02-28 Nathan Sidwell <[email protected]>
1690
1691 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
1692
7a8757b3
AM
16932007-02-27 Alan Modra <[email protected]>
1694
1695 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
1696 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
1697
024b2372
CD
16982007-02-23 Carlos O'Donell <[email protected]>
1699
1700 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
1701 DWARF even with 64-bit addresses.
1702 (_bfd_dwarf2_find_nearest_line): Likewise.
1703
cb3ff1e5
NC
17042007-02-23 Nick Clifton <[email protected]>
1705
1706 PR binutils/3535
1707 * elf.c (copy_private_bfd_data): Always rewrite the program
1708 headers when a Solaris interpreter segment is involved.
1709
6a5bb875
PB
17102007-02-22 Paul Brook <[email protected]>
1711
1712 * elflink.c (gc_mark_hook_fn): Remove.
1713 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
1714 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
1715 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
1716 (elf_backend_data): Add gc_mark_extra_sections.
1717 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
1718 definition.
1719 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
1720 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
1721 (elf_backend_gc_mark_extra_sections): Define.
1722
2889e75b
NC
17232007-02-21 Nick Clifton <[email protected]>
1724
1725 * elf.c (_bfd_elf_map_sections_to_segments): If the
1726 override_segment_assignment callback is defined then call it.
1727
78859468
AM
17282007-02-21 Alan Modra <[email protected]>
1729
1730 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
1731
ae0d2616
TS
17322007-02-19 Thiemo Seufer <[email protected]>
1733
1734 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
1735 translation marker from untranslatable strings.
1736
6bfdb61b
AM
17372007-02-19 Alan Modra <[email protected]>
1738
1739 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
1740 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
1741 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
1742 (elfNN_bed): Init new field.
1743 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
1744
92f01d61
JM
17452007-02-17 Mark Mitchell <[email protected]>
1746 Nathan Sidwell <[email protected]>
1747 Vladimir Prus <[email protected]
1748 Joseph Myers <[email protected]>
1749
1750 * configure.in (--with-pkgversion): New option.
1751 * configure: Regenerate.
1752 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
1753 * Makefile.in: Regenerate.
1754 * version.h (BFD_VERSION_STRING): Define using
1755 @bfd_version_package@.
1756
c0e3f241
CD
17572007-02-16 Carlos O'Donell <[email protected]>
1758
1759 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
1760 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
1761 and EF_MIPS_UCODE.
1762
72f6ea61
AM
17632007-02-15 Alan Modra <[email protected]>
1764
1765 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
1766 declare.
1767 (_bfd_norelocs_canonicalize_reloc): Likewise.
1768 * libbfd.h: Regenerate.
1769 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
1770 (_bfd_norelocs_canonicalize_reloc): Likewise.
1771 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
1772 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
1773 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
1774 * ihex.c: Similarly.
1775 * mach-o-target.c: Similarly.
1776 * mach-o.c: Similarly.
1777 * mmo.c: Similarly.
1778 * pef.c: Similarly.
1779 * ppcboot.c: Similarly.
1780 * srec.c: Similarly.
1781 * xsym.c: Similarly.
1782
fab4a87f
L
17832007-02-14 H.J. Lu <[email protected]>
1784
1785 PR ld/3953
1786 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
1787 when adding default symbol.
1788
e4e0193e
AM
17892007-02-13 Alan Modra <[email protected]>
1790
1791 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
1792 for branch lookup table.
1793
84f5d08e
AM
17942007-02-12 Alan Modra <[email protected]>
1795
1796 * elf64-ppc.c (create_linkage_sections): Don't create
1797 .rela.rodata.brlt for --emit-relocs.
1798 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
1799 (ppc_size_one_stub): Count them. Simplify test of stub type
1800 when counting stub relocs. Set SEC_RELOC too.
1801 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
1802 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
1803
4aac632e
AM
18042007-02-12 Alan Modra <[email protected]>
1805
1806 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
1807 with a zero symbol index.
1808
8da3dbc5
AM
18092007-02-12 Alan Modra <[email protected]>
1810
1811 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
1812
b31847af
DB
18132007-02-05 Dave Brolley <[email protected]>
1814 Stan Cox <[email protected]>
1815
1816 PR ld/3972
1817 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
1818
722b0ff7 18192007-02-05 Dave Brolley <[email protected]>
e382d174
DB
1820 Richard Sandiford <[email protected]>
1821 Stan Cox <[email protected]>
1822 Nick Clifton <[email protected]>
1823 DJ Delorie <[email protected]>
1824 Frank Ch. Eigler <[email protected]>
1825 Ben Elliston <[email protected]>
1826 Richard Henderson <[email protected]>
1827
1828 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
1829 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
1830 (BFD32_BACKENDS): Add elf32-mep.lo.
1831 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
1832 (cpu-mep.lo,elf32-mep.lo): New targets.
1833 * archures.c (bfd_arch_mep): New enumerator.
1834 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
1835 (bfd_mep_arch): New external variable.
1836 (bfd_archures_list): Add bfd_mep_arch.
1837 * config.bfd: Support mep-*-elf.
1838 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
1839 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
1840 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
1841 declarations.
1842 (_bfd_target_vector): Add bfd_elf32_mep_vec and
1843 bfd_elf32_mep_little_vec.
722b0ff7
DB
1844 * mep-relocs.pl: New file.
1845 * cpu-mep.c: New file.
1846 * elf32-mep.c: New file.
1847 * bfd-in2.h: Regenerate.
e382d174 1848 * po/POTFILES.in: Regenerate.
722b0ff7
DB
1849 * libbfd.h: Regenerate.
1850 * Makefile.in: Regenerate.
1851 * configure: Regenerate.
1852
d9352518
DB
18532007-02-05 Dave Brolley <[email protected]>
1854
1855 * elflink.c (evaluate_complex_relocation_symbols): Check for
1856 STT_SRELC for global symbols.
1857 (perform_complex_relocations): Renamed to
1858 perform_complex_relocation and now examines only one relocation.
1859 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 1860 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
1861 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
1862 (OD,OS,OU): #undefs corrected to N, S and U repectively.
1863 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
1864 (complex_reloc_installation_howto): Removed.
1865 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
1866 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
1867
d9352518 18682007-02-05 Dave Brolley <[email protected]>
e382d174
DB
1869 Richard Sandiford <[email protected]>
1870 DJ Delorie <[email protected]>
1871 Graydon Hoare <[email protected]>
1872 Nick Clifton <[email protected]>
1873 Jeff Holcomb <[email protected]>
1874 Frank Ch. Eigler <[email protected]>
1875
1876 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
1877 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
1878 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
1879 * elflink.c (set_symbolValue): New static function.
d9352518
DB
1880 (resolve_symbol): Likewise.
1881 (resolve_section): Likewise.
1882 (undefined_reference): Likewise.
1883 (eval_symbol): Likewise.
1884 (evaluate_complex_relocation_symbols): Likewise.
1885 (put_value): Likewise.
1886 (get_value): Likewise.
e382d174
DB
1887 (decode_complex_addend):
1888 (bfd_elf_perform_complex_relocation): New function.
1889 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
1890 * reloc.c (BFD_RELOC_RELC): New relocation number.
1891 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 1892
f1ab2340 18932007-02-05 Bob Wilson <[email protected]>
74e880a7 1894
f1ab2340
BW
1895 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
1896 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
1897 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
1898 (elf_xtensa_allocate_got_size): Replace these with...
1899 (elf_xtensa_allocate_dynrelocs): ...this new function.
1900 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 1901
e5f131d1 19022007-02-05 Bob Wilson <[email protected]>
74e880a7 1903
e5f131d1
BW
1904 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
1905 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
1906 Set src_mask to zero.
1907 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
1908 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 1909
4608f3d9
BW
19102007-02-02 Bob Wilson <[email protected]>
1911
1912 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
1913 (elf_xtensa_dynamic_symbol_p): ...this.
1914
f0e6fdb2
BW
19152007-02-02 Bob Wilson <[email protected]>
1916
1917 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
1918 (struct elf_xtensa_link_hash_table): New.
1919 (elf_xtensa_hash_table): New.
1920 (elf_xtensa_link_hash_table_create): New.
1921 (elf_xtensa_check_relocs): Update plt_reloc_count references.
1922 Update arguments to add_extra_plt_sections.
1923 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
1924 table. Update for plt_reloc_count and add_extra_plt_sections.
1925 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
1926 argument with link info. Update calls to elf_xtensa_get_plt_section
1927 and elf_xtensa_get_gotplt_section.
1928 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
1929 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
1930 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
1931 (relax_property_section): Get sections from the hash table and update
1932 function calls.
1933 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
1934 dynobj argument with link info. Get sections for first plt chunk from
1935 the hash table.
1936 (bfd_elf32_bfd_link_hash_table_create): Define.
1937
c15f73f9
JJ
19382007-02-02 Jakub Jelinek <[email protected]>
1939
1940 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
1941 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
1942 (struct elf_symbol): Change first member into union.
1943 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
1944 internal syms. Only compare st_shndx fields.
1945 (elf_create_symbuf): New function.
1946 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
1947 for bfds, use a binary search, otherwise don't qsort symbols
1948 unnecessarily only to select which symbols are for the particular
1949 shndx.
1950
effdf42a
NC
19512007-02-01 Nick Clifton <[email protected]>
1952
1953 PR ld/3852
1954 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
1955 in the elf_link_hash_table structure.
1956
183e98be
AM
19572007-02-01 Alan Modra <[email protected]>
1958
1959 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
1960 * elfxx-target.h (elf_backend_write_core_note): Define and use.
1961 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
1962 32-bit core note on 64-bit target.
1963 (elfcore_write_prstatus): Likewise.
1964 (elfcore_write_lwpstatus): Make note_name const.
1965 (elfcore_write_prfpreg): Likewise.
1966 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
1967 target.
1968 * elf32-ppc.c (ppc_elf_write_core_note): New function.
1969 (elf_backend_write_core_note): Define.
1970 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
1971 (elf_backend_write_core_note): Define.
1972
fc523535 19732007-01-31 H.J. Lu <[email protected]>
16cecee5
L
1974
1975 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
1976 (elf32_bed): Defined for elf32-us-cris.
1977
1978 * elf64-sh64.c (elf64_bed): Defined for Linux.
1979 (INCLUDED_TARGET_FILE): Removed.
1980
1981 * elfxx-target.h (elfNN_bed): Always define. Don't check
1982 INCLUDED_TARGET_FILE.
1983
c9b57b7e
DD
19842007-01-31 DJ Delorie <[email protected]>
1985
1986 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
1987 message for dangerous relocs, special case the common user error.
1988
53020534
L
19892007-01-30 H.J. Lu <[email protected]>
1990
1991 * elf.c (copy_elf_program_header): Start from the first section
1992 in a segment and stop when all sections in a segment are
1993 accounted for.
1994
c7b8f16e
JB
19952007-01-29 Julian Brown <[email protected]>
1996
1997 * bfd-in2.h: Regenerate.
1998 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
1999 instruction scanning should be done.
2000 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
2001 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
2002 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
2003 prototype.
2004 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
2005 argument.
2006 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
2007 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
2008 (elf32_vfp11_erratum_type): New enum.
2009 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
2010 veneers.
2011 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
2012 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
2013 vfp11_fix and num_vfp11_fixes fields.
2014 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
2015 vfp11_erratum_glue_size, num_vfp11_fixes fields.
2016 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
2017 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
2018 glue section.
2019 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
2020 to a section's map.
2021 (record_vfp11_erratum_veneer): Create a single veneer, and its
2022 associated symbols.
2023 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
2024 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
2025 BFDs.
2026 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
2027 required.
2028 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
2029 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
2030 (bfd_arm_vfp11_write_mask): Update write mask according to coded
2031 register number.
2032 (bfd_arm_vfp11_antidependency): New function.
2033 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
2034 (elf32_arm_compare_mapping): Declare.
2035 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
2036 BFD for potential erratum-triggering insns. Record results.
2037 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
2038 and branches to veneers have been placed in virtual memory after
2039 layout.
2040 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
2041 hash table.
2042 (elf32_arm_output_symbol_hook): Remove.
2043 (elf32_arm_write_section): Output veneers, and branches to veneers.
2044 Use maps from input sections, not output sections, for code
2045 byte-swapping.
2046 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
2047 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
2048 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
2049 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
2050
20512007-01-27 H.J. Lu <[email protected]>
83d1651b
L
2052
2053 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 2054 (INCLUDED_TARGET_FILE): Removed.
83d1651b 2055
914dfb0f
DA
20562007-01-27 Mike Frysinger <[email protected]>
2057
2058 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
2059 (INCLUDED_TARGET_FILE): Remove.
2060
78eba9b6
DD
20612007-01-25 DJ Delorie <[email protected]>
2062
2063 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
2064 R_M32C_16 or R_M32C_24 relocs.
2065
64ee10b6
NC
20662007-01-25 Nick Clifton <[email protected]>
2067
2068 PR binutils/3874
2069 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
2070 hash table was created by elf32_avr_link_hash_table_create before
2071 using it.
2072 (elf32_avr_link_hash_newfunc): New function. Just pass the call
2073 through to _bfd_elf_link_hash_newfunc.
2074 (elf32_avr_link_hash_table_create): Use
2075 elf32_avr_link_hash_newfunc instead of
2076 _bfd_elf_link_hash_newfunc.
2077 (elf32_avr_relocate_section): Check for the hash table pointer
2078 being NULL.
2079 (elf32_avr_relax_section, avr_build_one_stub,
2080 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
2081 elf32_avr_build_stubs): Likewise.
2082
40b36307
L
20832007-01-16 H.J. Lu <[email protected]>
2084
2085 PR ld/3831
2086 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
2087 argument, Elf_Internal_Sym *.
2088
2089 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
2090 symbol dynamic if info->dynamic_data is TRUE.
2091 (bfd_elf_record_link_assignment): Updated call to
2092 bfd_elf_record_link_assignment.
2093 (_bfd_elf_merge_symbol): Likewise. Always call
2094 bfd_elf_link_mark_dynamic_symbol.
2095
fc523535 20962007-01-12 H.J. Lu <[email protected]>
a454209d
L
2097
2098 * Makefile.am (BFD_LIBS): Removed.
2099 * Makefile.in: Regenerated.
2100
fc523535 21012007-01-11 H.J. Lu <[email protected]>
21e40a48
L
2102
2103 PR binutils/3631
2104 * Makefile.am (OFILES): Add @bfd64_libs@.
2105 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
2106 * Makefile.in: Regenerated.
2107
2108 * configure.in (bfd_libs): Replaced by ...
2109 (bfd64_libs): This.
2110 * configure: Regenerated.
2111
59e0647f
NS
21122007-01-11 Nathan Sidwell <[email protected]>
2113
2114 * elf.c (assign_file_positions_for_load_sections): We can
2115 require fewer phdrs than expected.
2116
3bdcfdf4
KH
21172007-01-08 Kazu Hirata <[email protected]>
2118
2119 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
2120 * bfd-in2.h: Regenerate.
2121 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
2122 bfd_mach_cpu32_fido.
2123 (m68k_arch_features): Use fido_a instead of cpu32.
2124 (bfd_m68k_compatible): Reject the combination of Fido and
2125 ColdFire. Accept the combination of CPU32 and Fido with a
2126 warning.
2127 * elf32-m68k.c (elf32_m68k_object_p,
2128 elf32_m68k_merge_private_bfd_data,
2129 elf32_m68k_print_private_bfd_data): Treat Fido as an
2130 architecture by itself.
2131
42037fe5
NC
21322007-01-08 Kai Tietz <[email protected]>
2133
2134 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
2135
ebe8b991
JJ
21362007-01-05 Jakub Jelinek <[email protected]>
2137
2138 * texhex.c (first_phase): Don't fall through into the default
2139 case.
2140 (pass_over): Replace abort () calls with return FALSE. Fix
2141 buffer overflow.
2142
b327f31f
AM
21432007-01-04 Jie Zhang <[email protected]>
2144
2145 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
2146 SEC_EXCLUDE on zero size .eh_frame.
2147
10a2343e 2148For older changes see ChangeLog-2006
56882138
AM
2149\f
2150Local Variables:
2151mode: change-log
2152left-margin: 8
2153fill-column: 74
2154version-control: never
2155End:
This page took 1.100004 seconds and 4 git commands to generate.