* elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly compensate
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
b4928193
NC
12007-07-04 Nick Clifton <nickc@redhat.com>
2
3 Import this patch from an internal tree:
4
5 2001-07-17 Richard Henderson <rth@redhat.com>
6
7 * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly
8 compensate for high bit set in R_MEP_LOW16.
9
3cfad14c
JM
102007-07-03 Joseph Myers <joseph@codesourcery.com>
11
12 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
13 input attributes if value has been copied.
14
cd123cb7
NC
152007-07-03 Nick Clifton <nickc@redhat.com>
16
17 * COPYING: Replace with GPLv3 text.
18 * aix386-core.c: Update copyright notice to refer to GPLv3.
19 * aix5ppc-core.c, aout0.c, aout32.c, aout64.c, aout-adobe.c,
20 aout-arm.c, aout-cris.c, aoutf1.h, aout-ns32k.c, aout-sparcle.c,
21 aout-target.h, aout-tic30.c, aoutx.h, archive64.c, archive.c,
22 archures.c, armnetbsd.c, bfd.c, bfd-in.h, bfdio.c, bfdwin.c,
23 binary.c, bout.c, cache.c, cf-i386lynx.c, cf-sparclynx.c,
24 cisco-core.c, coff64-rs6000.c, coff-alpha.c, coff-apollo.c,
25 coff-arm.c, coff-aux.c, coffcode.h, coffgen.c, coff-go32.c,
26 coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, coff-i960.c,
27 coff-ia64.c, cofflink.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
28 coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
29 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
30 coff-svm68k.c, coffswap.h, coff-tic30.c, coff-tic4x.c,
31 coff-tic54x.c, coff-tic80.c, coff-u68k.c, coff-w65.c,
32 coff-we32k.c, coff-x86_64.c, coff-z80.c, coff-z8k.c, corefile.c,
33 cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, cpu-bfin.c,
34 cpu-cr16.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
35 cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
36 cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
37 cpu-i960.c, cpu-ia64.c, cpu-ia64-opc.c, cpu-ip2k.c, cpu-iq2000.c,
38 cpu-m10200.c, cpu-m10300.c, cpu-m32c.c, cpu-m32r.c, cpu-m68hc11.c,
39 cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
40 cpu-mep.c, cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-mt.c,
41 cpu-ns32k.c, cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c,
42 cpu-powerpc.c, cpu-rs6000.c, cpu-s390.c, cpu-score.c, cpu-sh.c,
43 cpu-sparc.c, cpu-spu.c, cpu-tic30.c, cpu-tic4x.c, cpu-tic54x.c,
44 cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, cpu-we32k.c,
45 cpu-xc16x.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z80.c, cpu-z8k.c,
46 demo64.c, doc/chew.c, dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c,
47 ecoffswap.h, efi-app-ia32.c, efi-app-ia64.c, efi-app-x86_64.c,
48 elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
49 elf32-avr.h, elf32-bfin.c, elf32.c, elf32-cr16.c, elf32-cr16c.c,
50 elf32-cris.c, elf32-crx.c, elf32-d10v.c, elf32-d30v.c,
51 elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
52 elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
53 elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
54 elf32-iq2000.c, elf32-m32c.c, elf32-m32r.c, elf32-m68hc11.c,
55 elf32-m68hc12.c, elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c,
56 elf32-m88k.c, elf32-mcore.c, elf32-mep.c, elf32-mips.c,
57 elf32-msp430.c, elf32-mt.c, elf32-openrisc.c, elf32-or32.c,
58 elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, elf32-score.c,
59 elf32-sh64.c, elf32-sh64-com.c, elf32-sh64.h, elf32-sh.c,
60 elf32-sh-symbian.c, elf32-sparc.c, elf32-spu.c, elf32-spu.h,
61 elf32-v850.c, elf32-vax.c, elf32-xc16x.c, elf32-xstormy16.c,
62 elf32-xtensa.c, elf64-alpha.c, elf64.c, elf64-gen.c, elf64-hppa.c,
63 elf64-hppa.h, elf64-mips.c, elf64-mmix.c, elf64-ppc.c,
64 elf64-ppc.h, elf64-s390.c, elf64-sh64.c, elf64-sparc.c,
65 elf64-x86-64.c, elf-attrs.c, elf-bfd.h, elf.c, elfcode.h,
66 elfcore.h, elf-eh-frame.c, elf-hppa.h, elflink.c, elf-m10200.c,
67 elf-m10300.c, elfn32-mips.c, elf-strtab.c, elf-vxworks.c,
68 elf-vxworks.h, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
69 elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, epoc-pe-arm.c,
70 epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, genlink.h,
71 hash.c, host-aout.c, hosts/alphavms.h, hp300bsd.c, hp300hpux.c,
72 hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
73 i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
74 i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
75 libaout.h, libbfd.c, libbfd-in.h, libcoff-in.h, libecoff.h,
76 libhppa.h, libieee.h, libnlm.h, liboasys.h, libpei.h, libxcoff.h,
77 linker.c, lynx-core.c, m68k4knetbsd.c, m68klinux.c, m68knetbsd.c,
78 m88kmach3.c, m88kopenbsd.c, mach-o.c, mach-o.h, mach-o-target.c,
79 mep-relocs.pl, merge.c, mipsbsd.c, mmo.c, netbsd-core.c, netbsd.h,
80 newsos3.c, nlm32-alpha.c, nlm32.c, nlm32-i386.c, nlm32-ppc.c,
81 nlm32-sparc.c, nlm64.c, nlm.c, nlmcode.h, nlmswap.h, nlm-target.h,
82 ns32k.h, ns32knetbsd.c, oasys.c, opncls.c, osf-core.c,
83 pc532-mach.c, pdp11.c, pe-arm.c, pe-arm-wince.c, pef.c, pef.h,
84 pef-traceback.h, pe-i386.c, pei-arm.c, pei-arm-wince.c, peicode.h,
85 pei-i386.c, pei-mcore.c, pei-mips.c, pei-ppc.c, pei-sh.c,
86 pei-x86_64.c, pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c,
87 pe-x86_64.c, peXXigen.c, ppcboot.c, ptrace-core.c, reloc16.c,
88 reloc.c, riscix.c, rs6000-core.c, sco5-core.c, section.c,
89 simple.c, som.c, som.h, sparclinux.c, sparclynx.c, sparcnetbsd.c,
90 srec.c, stabs.c, stab-syms.c, stamp-h.in, sunos.c, syms.c,
91 sysdep.h, targets.c, targmatch.sed, tekhex.c, ticoff.h,
92 trad-core.c, vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c,
93 vms.c, vms-gsd.c, vms.h, vms-hdr.c, vms-misc.c, vms-tir.c,
94 xcofflink.c, xcoff-target.h, xsym.c, xsym.h, xtensa-isa.c,
95 xtensa-modules.c: Likewise.
96 * elf32-sh-relocs.h: Add copyright notice.
97 * hosts/alphalinux.h, hosts/decstation.h, hosts/delta68.h,
98 hosts/dpx2.h, hosts/hp300bsd.h, hosts/i386bsd.h,
99 hosts/i386linux.h, hosts/i386mach3.h, hosts/i386sco.h,
100 hosts/i860mach3.h, hosts/m68kaux.h, hosts/m68klinux.h,
101 hosts/m88kmach3.h, hosts/mipsbsd.h, hosts/mipsmach3.h,
102 hosts/news.h, hosts/news-mips.h, hosts/pc532mach.h,
103 hosts/riscos.h, hosts/symmetry.h, hosts/tahoe.h, hosts/vaxbsd.h,
104 hosts/vaxlinux.h, hosts/vaxult2.h, hosts/vaxult.h: Likewise.
105 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
106
741d6ea8
JM
1072007-07-02 Joseph Myers <joseph@codesourcery.com>
108
109 * elfxx-mips.c (mips_elf_calculate_relocation): Handle
110 R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
111 * elf64-mips.c (mips_elf64_howto_table_rela): Support
112 R_MIPS_TLS_DTPREL64.
113
ae351704
AM
1142007-07-02 Alan Modra <amodra@bigpond.net.au>
115
116 * Makefile.am: Run "make dep-am".
117 * Makefile.in: Regenerate.
118 * aclocal.m4: Regenerate.
119 * config.in: Regenerate.
120 * po/SRC-POTFILES.in: Regenerate.
121 * po/bfd.pot: Regenerate.
122
3e5484db
AM
1232007-07-02 Alan Modra <amodra@bigpond.net.au>
124
125 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
126 symsec != NULL tests.
127
08a40648
AM
1282007-07-02 Alan Modra <amodra@bigpond.net.au>
129
130 PR 4712
131 * elf.c (assign_file_positions_for_load_sections): Adjust lma
132 by p_vaddr_offset.
133
86b57e31
L
1342007-06-30 H.J. Lu <hongjiu.lu@intel.com>
135
136 * aclocal.m4: Regenerated.
137 * Makefile.in: Likewise.
138
34c8bcba
JM
1392007-06-29 Joseph Myers <joseph@codesourcery.com>
140
141 * elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
142 (ppc_elf_merge_private_bfd_data): Call it.
143
2cf19d5c
JM
1442007-06-29 Joseph Myers <joseph@codesourcery.com>
145
146 * elfxx-mips.c (mips_elf_merge_obj_attributes): New.
147 (_bfd_mips_elf_merge_private_bfd_data): Call it.
148
104d59d1
JM
1492007-06-29 Joseph Myers <joseph@codesourcery.com>
150
151 * elf-attrs.c: New.
152 * Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
153 (BFD32_BACKENDS_CFILES): Add elf-attrs.c.
154 (elf-attrs.lo): Generate dependencies.
155 * Makefile.in: Regenerate.
156 * configure.in (elf): Add elf-attrs.lo.
157 * configure: Regenerate.
158 * elf-bfd.h (struct elf_backend_data): Add entries for object
159 attributes.
160 (NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
161 OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
162 Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
163 New.
164 (struct elf_obj_tdata): Add entries for object attributes.
165 (elf_known_obj_attributes, elf_other_obj_attributes,
166 elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
167 New.
168 (bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
169 bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
170 bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
171 bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
172 bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
173 _bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
174 _bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
175 * elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
176 (bfd_section_from_shdr): Handle attributes sections.
177 * elflink.c (bfd_elf_final_link): Handle attributes sections.
178 * elfxx-target.h (elf_backend_obj_attrs_vendor,
179 elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
180 elf_backend_obj_attrs_section_type): New.
181 (elfNN_bed): Update.
182 * elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
183 aeabi_attribute_list): Remove.
184 (struct elf32_arm_obj_tdata): Remove object attributes fields.
185 (check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
186 elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
187 Update for new object attributes interfaces.
188 (uleb128_size, is_default_attr, eabi_attr_size,
189 elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
190 elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
191 elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
192 elf32_arm_add_eabi_attr_int, attr_strdup,
193 elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
194 copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
195 to generic code in elf-attrs.c.
196 (elf32_arm_obj_attrs_arg_type): New.
197 (elf32_arm_fake_sections): Do not handle .ARM.attributes.
198 (elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
199 (bfd_elf32_bfd_final_link): Remove.
200 (elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
201 elf_backend_obj_attrs_arg_type,
202 elf_backend_obj_attrs_section_type): New.
203 * elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
204 attributes.
205 * elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
206 * elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
207 * elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
208 * elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
209 * elf32-sh.c (sh_elf_copy_private_data): Likewise.
210 * elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
211
5ab79981
PB
2122007-06-29 Paul Brook <paul@codesourcery.com>
213
214 * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
215 call veneers for call relocations against undefined symbols.
216 (elf32_arm_final_link_relocate): Turn call to undefined symbol
217 into a jump to the next instruction.
218
32e8a950
NC
2192007-06-29 Michael Snyder <msnyder@svkmacdonelllnx>
220
221 * bfd.c (bfd_demangle): Plug memory leak (Coverity).
222
3d3d428f
NC
2232007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
224
225 * Makefile.am: Add cr16 related entry
226 * Makefile.in: Regenerate
227 * archures.c: Add bfd_cr16_arch
228 * bfd-in2.h: Regenerate
229 * config.bfd: Add cr16-elf
230 * configure.in: Add bfd_elf32_cr16_vec
231 * configure: Regenerate.
232 * targets.c: Added cr16 related information
233 * cpu-cr16.c: New file.
234 * elf32-cr16.c: New file.
235 * reloc.c: Added cr16 relocs.
236
c55fe096
AM
2372007-06-29 Alan Modra <amodra@bigpond.net.au>
238
239 * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
240 message for undefined version nodes.
241 (elf_gc_sweep): Don't warn when zero size sections are
242 removed.
243
375de94a
AM
2442007-06-29 Nathan Froyd <froydnj@codesourcery.com>
245
246 * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
247 types.
248
7d3287cb
AM
2492007-06-29 Alan Modra <amodra@bigpond.net.au>
250
251 * elf32-spu.c (spu_elf_fake_sections): New function.
252 (elf_backend_fake_sections): Define.
253
6a3cd2b4
AM
2542007-06-29 Alan Modra <amodra@bigpond.net.au>
255
256 * elf.c (assign_file_positions_for_load_sections): Use elf
257 section header sh_size rather than bfd section size, simplifying
258 .tbss handling.
259
bf988460
AM
2602007-06-29 Alan Modra <amodra@bigpond.net.au>
261
36fc76ae 262 PR ld/4701
bf988460
AM
263 * elf.c (assign_file_positions_for_load_sections): Ensure bss
264 segments meet gABI alignment requirements. Don't allocate
265 file space for bss sections in a segment also containing file
266 or program headers.
267
60b31e8d
AM
2682007-06-27 Alan Modra <amodra@bigpond.net.au>
269
cc481421
AM
270 * bfd.c (struct bfd): Rename "next" to "archive_next".
271 * archive.c: Rename uses throughout file.
272 * archive64.c: Likewise.
273 * coff-rs6000.c: Likewise.
274 * ecoff.c: Likewise.
275 * som.c: Likewise.
276 * bfd-in2.h: Regenerate.
277
60b31e8d
AM
278 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
279 input bfds.
58eb693e 280 * elf32-spu.c (spu_elf_create_sections): Likewise.
60b31e8d 281
bec42b15
NC
2822007-06-26 H.J. Lu <hongjiu.lu@intel.com>
283
284 * dwarf2.c (find_line): New. Contains the duplicated code from:
285 (_bfd_dwarf2_find_nearest_line): Use it.
286 (_bfd_dwarf2_find_line): Use it.
287
3d3e6f9a
JM
2882007-06-26 Joseph Myers <joseph@codesourcery.com>
289
290 * elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
291
b314ec0e
RS
2922007-06-25 Richard Sandiford <richard@codesourcery.com>
293
294 * elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
295 to be used for calls from MIPS16 code.
296
0d4a1476
AS
2972007-06-23 Andreas Schwab <schwab@suse.de>
298
299 * configure.in (--with-separate-debug-dir): New option.
300 * configure: Regenerate.
301 * Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
302 * Makefile.in: Regenerate.
303 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
304 bfd_follow_gnu_debuglink.
305 (_bfd_dwarf2_find_line): Likewise.
306
0d161102
NC
3072007-06-22 Nick Clifton <nickc@redhat.com>
308
309 * dwarf2.c: Add support for reading in debug information via a
310 .gnu_debuglink section:
311 (struct dwarf2_debug): Add bfd field to record the bfd containing
312 the debug info.
313 (parse_comp_unit): Remove ABFD parameter. Instead use the bfd
314 field in the dwarf2_debug structure.
315 (_bfd_dwarf2_find_nearest_line): If a debug info section could not
316 be found in the current bfd call bfd_follow_gnu_debuglink to see
317 if another file contains the debug information. If it does, open
318 it and continue.
319 (_bfd_dwarf2_find_line): Likewise.
320
293a0124
L
3212007-06-19 H.J. Lu <hongjiu.lu@intel.com>
322
323 PR ld/4590
324 * elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
325 when removing duplicated entries.
326 (get_dyn_sym_info): Initialize the got_offset field to -1.
327 Update call to sort_dyn_sym_info.
328 (elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
329 array of addend and remove duplicates.
330
dc1f3d8a
L
3312007-06-18 H.J. Lu <hongjiu.lu@intel.com>
332
333 * libpei.h (_bfd_XXi_final_link_postscript): Remove
334 duplication.
335 (bfd_target_pei_p): New.
336 (bfd_target_pei_arch): New
337 (bfd_target_efi_p): Likewise.
338 (bfd_target_efi_arch): New
339 (bfd_pe_executable_p): Use bfd_target_pei_p and
340 bfd_target_efi_p.
341
342 * peicode.h (arch_type): New enum.
343 (pe_arch): New function.
344 (pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
345 if there is an EFI/PE target.
346
79887925
L
3472007-06-14 H.J. Lu <hongjiu.lu@intel.com>
348
349 * Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
350
351 * acinclude.m4: Don't include m4 files. Remove libtool
352 kludge.
353
354 * Makefile.in: Regenerated.
79887925
L
355 * aclocal.m4: Likewise.
356 * configure: Likewise.
357
99ded152
BW
3582007-06-11 Sterling Augustine <sterling@tensilica.com>
359 Bob Wilson <bob.wilson@acm.org>
bf988460 360
99ded152
BW
361 * elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
362 XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
363 (extend_ebb_bounds_backward, compute_text_actions): Likewise.
364 (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
365 (xtensa_get_property_predef_flags): Likewise.
366 (compute_removed_literals): Pass new arguments to is_removable_literal.
367 (is_removable_literal): Add sec, prop_table and ptblsize arguments.
368 Do not remove literal if the NO_TRANSFORM property flag is set.
bf988460 369
cbf2cba4
RS
3702007-05-31 Richard Sandiford <rsandifo@nildram.co.uk>
371
372 * elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
373 type (3) single-GOT entry, read tls_type from the hash table entry
374 rather than the GOT entry.
375
a9a4c53e
AM
3762007-06-01 Alan Modra <amodra@bigpond.net.au>
377
378 * simple.c (bfd_simple_get_relocated_section_contents): Init
379 input_bfds_tail.
380
02bf8d82
AM
3812007-05-30 Alan Modra <amodra@bigpond.net.au>
382
42bb2e33
AM
383 * elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
384 created by objcopy --only-keep-debug.
385 (_bfd_elf_init_private_section_data): Only change elf_section_type
386 if it is SHT_NULL.
387
02bf8d82
AM
388 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
389 to SHT_NOBITS earlier. Base actions in rest of function on sh_type
390 and sh_flags instead of bfd section flags. Delete voff and code
391 keeping nobits segments aligned.
392
4e591bc1
EC
3932007-05-25 Eric Christopher <echristo@apple.com>
394
395 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
396 Check that sym_sec isn't NULL before accessing.
397
37ad9514
SE
3982007-05-24 Steve Ellcey <sje@cup.hp.com>
399
400 * Makefile.in: Regnerate.
401 * configure: Regenerate.
402 * aclocal.m4: Regenerate.
403 * doc/Makefile.in: Regenerate.
404
91a5743d
PB
4052007-05-22 Paul Brook <paul@codesourcery.com>
406
407 * elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
408 with sec and sec_shndx.
409 (elf32_arm_ouput_plt_map_sym): Use them.
410 (elf32_arm_output_arch_local_syms): Output mapping symbols for
411 interworking glue.
412
26079076
PB
4132007-05-18 Paul Brook <paul@codesourcery.com>
414
415 * elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
416 (a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
417 (record_arm_to_thumb_glue): Add v5t non-pic glue.
418 (elf32_arm_create_thumb_stub): Ditto.
419
91ac5911
L
4202007-05-16 H.J. Lu <hongjiu.lu@intel.com>
421 Alan Modra <amodra@bigpond.net.au>
422
423 * elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
424 section to the minimum alignment.
425
027297b7
L
4262007-05-15 H.J. Lu <hongjiu.lu@intel.com>
427 Alan Modra <amodra@bigpond.net.au>
428
429 PR ld/4504
430 * elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
431 * elflink.c (_bfd_elf_adjust_dynamic_copy): New.
432
433 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
434 _bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
435 bss section.
436 * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
437 * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
438 * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
439 * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
440 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
441 * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
442 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
443 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
444 * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
445 * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
446 * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
447 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
448 * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
449 * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
450 * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
451 * elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
452 * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
453
5c18022e
RS
4542007-05-15 Richard Sandiford <richard@codesourcery.com>
455
456 * elfxx-mips.c (mips_elf_create_local_got_entry): Remove
457 input_section argument. Create .rela.dyn relocations against
458 symbol 0 rather than the section symbol.
459 (mips_elf_local_got_index): Remove input_section argument.
460 Update call to mips_elf_create_local_got_entry.
461 (mips_elf_got_page, mips_elf_got16_entry): Likewise.
462 (mips_elf_calculate_relocation): Update calls to
463 mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
464
a00a1f35
MS
4652007-05-15 Mark Shinwell <shinwell@codesourcery.com>
466
467 * elf32-arm.c (elf32_arm_final_link_relocate): Correctly
468 handle the Thumb-2 JUMP19 relocation.
469
0414f35b
AM
4702007-05-15 Alan Modra <amodra@bigpond.net.au>
471
472 PR 4479
473 * elf.c (elf_fake_sections): Don't allow backend to change
474 SHT_NOBITS if called for strip/objcopy --only-keep-debug.
475 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
476 fix from here.
477
74f2e02b
AM
4782007-05-14 Alan Modra <amodra@bigpond.net.au>
479
480 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
481 invalid shstrndx.
482 (bfd_elf_get_str_section): Likewise.
483
f137a54e
AM
4842007-05-12 Alan Modra <amodra@bigpond.net.au>
485
486 PR 4497
487 * elf-eh-frame.c (struct cie): Add "local_personality". Make
488 "personality" a union.
489 (cie_eq): Compare local_personality too. Adjust personality
490 comparison.
491 (_bfd_elf_discard_section_eh_frame): Check binding on personality
492 reloc sym to allow for bad symtab. Use stashed local syms rather
493 than reading personality local sym. Handle discarded sections.
494
4f4416b5
AM
4952007-05-12 Alan Modra <amodra@bigpond.net.au>
496
497 * elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
498
016687f8
AM
4992007-05-11 Alan Modra <amodra@bigpond.net.au>
500
501 * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
502 (enum ppc_elf_plt_type): Move from..
503 * elf32-ppc.c: ..here.
504 (struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
505 (struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
506 can_use_new_plt. Make is_vxworks a bitfield.
507 (ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
508 (ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
509 (ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
510 flags to better detect object files needing old bss-style plt.
511 Allow secure plt to be used without rel16 relocs being detected.
512 Warn if secure plt request cannot be allowed.
513
ece5ef60
AM
5142007-05-11 Alan Modra <amodra@bigpond.net.au>
515
516 * reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
517 * elf-bfd.h (struct elf_backend_data): Change return type of
518 elf_backend_relocate_section to int.
519 * elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
520 R_SPU_PPU64.
521 (spu_elf_bfd_to_reloc_type): Convert new relocs.
522 (spu_elf_count_relocs): New function.
523 (elf_backend_count_relocs): Define.
524 (spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
525 R_SPU_PPU64 relocs.
526 * elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
527 returns 2.
528 * bfd-in2.h: Regenerate.
529 * libbfd.h: Regenerate.
530
d3753b85
RS
5312007-05-10 Richard Sandiford <richard@codesourcery.com>
532
533 * elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
534 for R_ARM_ABS12 relocs.
535 (elf32_arm_finish_dynamic_symbol): Fix the loop that creates
536 non-shared VxWorks PLT entries.
537
ef8c95ad
AM
5382007-05-11 Alan Modra <amodra@bigpond.net.au>
539
540 PR 4454
541 * elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
542 (_bfd_elf_discard_section_eh_frame): Handle local syms on
543 personality relocation.
544
8c252fd9
RS
5452007-05-10 Richard Sandiford <richard@codesourcery.com>
546
547 * elf.c (assign_file_positions_for_load_sections): Use p_memsz
548 rather than p_filesz to calculate the LMA of the end of a segment.
549
b186458a
JJ
5502007-05-10 Jakub Jelinek <jakub@redhat.com>
551
552 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
553 processing if symbol is defined in the executable.
554
88571279
AO
5552007-05-10 Alexandre Oliva <aoliva@redhat.com>
556
557 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
558 (frvfdpic_elf_discard_info): New.
559 (elf_backend_discard_info): Define for FDPIC.
560
2e6030b9
MS
5612007-05-09 Mark Shinwell <shinwell@codesourcery.com>
562
563 * elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
564 attempt to scan if the bfd doesn't correspond to an ELF image.
565 (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
566
0d4cc892
AO
5672007-05-08 Alexandre Oliva <aoliva@redhat.com>
568
569 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
570 for which _bfd_elf_section_offset returns -1.
571
d0249648
AM
5722007-05-08 Alan Modra <amodra@bigpond.net.au>
573
574 * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
575 (mark_functions_via_relocs): Likewise.
576
1182cb93
AM
5772007-05-07 Alan Modra <amodra@bigpond.net.au>
578
579 * elflink.c (bfd_elf_final_link): Correct reloc handling for
580 elf_backend_count_relocs.
581 (bfd_elf_discard_info): Print an error if we can't read syms.
582
b16f296e
AM
5832007-05-07 Alan Modra <amodra@bigpond.net.au>
584
585 * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
586 invalid reloc code.
587 (spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
588 (elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
589 define.
590
7c928300
AM
5912007-05-07 Alan Modra <amodra@bigpond.net.au>
592
593 * elf.c (assign_file_positions_for_load_sections): Don't check
594 core segment.
595
fc66a176
L
5962007-05-04 H.J. Lu <hongjiu.lu@intel.com>
597
598 * elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
599 and .rel.dyn aren't present.
600
3410fea8
NC
6012007-05-04 Nick Clifton <nickc@redhat.com>
602
603 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn
604 sections are present examine the indirect sections in an attempt
605 to compute the correct relocation size. If there is any
606 ambiguity, produce an error and refuse to sort.
607
7bdca076
SL
6082007-05-03 Sandra Loosemore <sandra@codesourcery.com>
609
610 * elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
611
22184a77
NC
6122007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
613 Nick Clifton <nickc@redhat.com>
614
615 PR gas/3041
616 * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
617 in the same way as relocs against external symbols.
618
627b32bc
AM
6192007-05-02 Alan Modra <amodra@bigpond.net.au>
620
621 * elf.c (assign_file_positions_for_load_sections): Set sh_offset
622 here. Set sh_type to SHT_NOBITS if we won't be allocating
623 file space. Don't bump p_memsz for non-alloc sections. Adjust
624 section-in-segment check.
625 (assign_file_positions_for_non_load_sections): Don't set sh_offset
626 here for sections that have already been handled above.
627
49fa1e15
AM
6282007-04-30 Alan Modra <amodra@bigpond.net.au>
629
630 * elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
631 and emit_stack_syms bitfields.
632 (get_sym_h): Read all symbols if stack analysis will be done.
633 (spu_elf_create_sections): Add stack_analysis and emit_stack_syms
634 params, and stash in hash table.
635 (is_hint): Split off from..
636 (is_branch): ..here. Adjust callers.
637 (spu_elf_size_stubs): Add stack_analysis param. Arrange to read
638 and keep all syms.
639 (write_one_stub): Fix mem leak.
640 (find_function_stack_adjust): New function.
641 (sort_syms_syms, sort_syms_psecs): New vars.
642 (sort_syms): New function.
643 (struct call_info, struct function_info): New.
644 (struct spu_elf_stack_info): New.
645 (alloc_stack_info, maybe_insert_function, func_name): New functions.
646 (is_nop, insns_at_end, check_function_ranges): Likewise.
647 (find_function, insert_callee, mark_functions_via_relocs): Likewise.
648 (pasted_function, interesting_section, discover_functions): Likewise.
649 (mark_non_root, call_graph_traverse, build_call_tree): Likewise.
650 (sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
651 (bfd_elf32_bfd_final_link): Define.
652 * elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
653 (spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
654
9ddf8309
TS
6552007-04-28 Sergey Rogozhkin <rogozhkin@niisi.msk.ru>
656
657 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
658 memory which we might not own.
659
95147441
BW
6602007-04-27 Bob Wilson <bob.wilson@acm.org>
661
662 * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
663 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
664 (elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
665
bcc2cc8e
BW
6662007-04-27 Bob Wilson <bob.wilson@acm.org>
667
668 * elf32-xtensa.c (xtensa_read_table_entries): Step through table
669 contents and relocs in parallel.
4e591bc1 670
f29f96b6
BW
6712007-04-27 Bob Wilson <bob.wilson@acm.org>
672
673 * elf32-xtensa.c (relax_property_section): Remove extra irel increment.
674
2ce18a16
AM
6752007-04-27 Alan Modra <amodra@bigpond.net.au>
676
677 * cpu-rs6000.c: Write Mimi's name in ASCII.
678 * coff-rs6000.c: Likewise.
679 * rs6000-core.c: Likewise.
680
eddc20ad
AM
6812007-04-27 Alan Modra <amodra@bigpond.net.au>
682
683 * sysdep.h: Include config.h first.
684 Many files: Include sysdep.h before bfd.h.
685 * Makefile.am: Run "make dep-am".
686 * Makefile.in: Regenerate.
687
495443d4
AM
6882007-04-25 Alan Modra <amodra@bigpond.net.au>
689
690 * sysdep.h: Revert last change.
691
40b1c6c5
NC
6922007-04-24 Nick Clifton <nickc@redhat.com>
693
694 * coffcode.h (coff_slurp_reloc_table): Initialise dst.r_offset.
695 * coff-m68k.c (m68kcoff_rtype_to_howto): Initialize relent.howto.
696
64be1553
AM
6972007-04-24 Alan Modra <amodra@bigpond.net.au>
698
699 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
700 eh_frame_hdr table won't be created.
701
d5efd9fc
AM
7022007-04-24 Alan Modra <amodra@bigpond.net.au>
703
704 * acinclude.m4: Include config/stdint.m4.
705 * configure.in: Invoke GCC_HEADER_STDINT.
706 * sysdep.h: Don't include ansidecl.h here.
707 * configure: Regenerate.
708 * config.in: Regenerate.
709 * Makefile.in: Regenerate.
710
9a2e615a
NS
7112007-04-23 Nathan Sidwell <nathan@codesourcery.com>
712
713 * archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
714 bfd_mach_mcf_isa_c_emac): New.
715 * elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
716 elf_isac_plt_entry, elf_isac_plt_info): New.
717 (elf32_m68k_object_p): Add ISA_C.
718 (elf32_m68k_print_private_bfd_data): Print ISA_C.
719 (elf32_m68k_get_plt_info): Detect ISA_C.
720 * cpu-m68k.c (arch_info): Add ISAC.
721 (m68k_arch_features): Likewise,
722 (bfd_m68k_compatible): ISAs B & C are not compatible.
723
1b0b5b1b
NC
7242007-04-21 Nick Clifton <nickc@redhat.com>
725
726 * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
727 (ecoff_link_add_archive_symbols): Likewise.
728 * coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise
729 relent.howto.
730 * ieee.c (parse_int): Initialise x.
731 (must_parse_int): Initialise result.
732 (ieee_slurp_external_symbols): Initialise value.
733
bd7803a9
AM
7342007-04-21 Alan Modra <amodra@bigpond.net.au>
735
736 * config.bfd (spu-*-elf): Delete targ_selvecs.
737
964597d0
NC
7382007-04-19 Nick Clifton <nickc@redhat.com>
739
740 * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto.
741
01e76792
AM
7422007-04-19 Alan Modra <amodra@bigpond.net.au>
743
744 * bfd.c (bfd_demangle): New function.
745 * Makefile.am: Run "make dep-am".
746 * Makefile.in: Regenerate.
747 * bfd-in2.h: Regenerate.
748
ee5c21a0
DJ
7492007-04-18 Matthias Klose <doko@ubuntu.com>
750
751 * Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
752 (bfdver.h): Use the date in non-release builds for the soversion.
753 * Makefile.in: Regenerate.
754
fcb93ecf
PB
7552007-04-17 Paul Brook <paul@codesourcery.com>
756
757 * elf.c (_bfd_elf_is_function_type): New function.
758 * elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
759 (_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
760 is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
761 * elf-bfd.h (elf_backend_data): Add is_function_type.
762 (_bfd_elf_is_function_type): Add prototype.
763 * elfxx-target.h (elf_backend_is_function_type): Add default
764 definition.
765 (elfNN_bed): Add elf_backend_is_function_type.
766 * elf32-arm.c (elf32_arm_is_function_type): New function.
767 (elf_backend_is_function_type): Define.
768
5750dcec
DJ
7692007-04-17 Daniel Jacobowitz <dan@codesourcery.com>
770
771 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
772 DT_MIPS_RLD_MAP before DT_DEBUG again.
773
cfbc9945
SE
7742007-04-14 Steve Ellcey <sje@cup.hp.com>
775
776 * Makefile.am: Add ACLOCAL_AMFLAGS.
777 * configure.in: Change macro call order.
778 * Makefile.in: Regnerate.
779 * doc/Makefile.in: Regenerate.
780 * configure: Regenerate.
781
3fcd97f1
JJ
7822007-04-14 Jakub Jelinek <jakub@redhat.com>
783
784 * elflink.c (bfd_elf_final_link): Don't free symbuf for
785 non-elf input bfds.
786 (bfd_elf_size_dynamic_sections): Don't access elf_section_data
787 for non-elf input bfds.
788
af5978fb
RS
7892007-04-12 Richard Sandiford <richard@codesourcery.com>
790
791 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
792 DT_MIPS_RTLD_MAP for PIEs.
793
9e3313ae
RS
7942007-04-12 Richard Sandiford <richard@codesourcery.com>
795
796 * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
797 when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
798 in a read-only section.
799 (_bfd_mips_elf_check_relocs): Likewise.
800
1d25768e
BW
8012007-04-12 Bob Wilson <bob.wilson@acm.org>
802
803 * elf32-xtensa.c (xtensa_is_insntable_section): New.
804 (xtensa_is_proptable_section): New.
805 (elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
806 tables with 12-byte entries, as well as tables with 8-byte entries.
807 Sort the relocations before examining them.
808 (relax_property_section): Use xtensa_is_proptable_section and
809 xtensa_is_littable_section. Rewrite code for combining table entries
810 to be more robust in case of unexpected relocations. Do not set offset
811 of unused relocations to less than zero.
812 (xtensa_is_property_section): Use other functions instead of
813 duplicating section name comparisons.
814 (xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
815 (xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
4e591bc1 816
e1e5c0b5 8172007-04-12 Bob Wilson <bob.wilson@acm.org>
4e591bc1 818
e1e5c0b5
BW
819 * elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
820 from Xtensa property sections.
4e591bc1 821
2c67c5f3
AM
8222007-04-12 Alan Modra <amodra@bigpond.net.au>
823
824 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
825 is non-NULL before dereferencing.
826
8776bb8a
NS
8272007-04-11 Nathan Sidwell <nathan@codesourcery.com>
828
829 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
830 relocs too.
831
4a828aab
RH
8322007-04-10 Richard Henderson <rth@redhat.com>
833
834 * elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
835 (elf64_alpha_size_got_sections): Remove unused something_changed local.
836 (elf64_alpha_size_plt_section): Return void.
837 (elf64_alpha_size_rela_got_section): Likewise.
4e591bc1 838 (elf64_alpha_relax_section): Only regenerate got+plt if the
4a828aab
RH
839 relax_trip counter has changed.
840
91506736
DJ
8412007-04-09 Daniel Jacobowitz <dan@codesourcery.com>
842
843 * Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
844 * doc/Makefile.am (DOCFILES): Add bfdver.texi.
845 (bfdver.texi): New rule.
846 * Makefile.in, doc/Makefile.in: Regenerated.
847
da6bcfca
MT
8482007-04-03 Matt Thomas <matt@netbsd.org>
849
4e591bc1 850 * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
da6bcfca
MT
851 in a shared object if it is not in a CODE section or if it is against
852 a section symbol. This allows DWARF2 to use pcrel format.
853
9267588c
L
8542007-04-05 H.J. Lu <hongjiu.lu@intel.com>
855
856 PR ld/4304
857 * elflink.c (bfd_elf_final_link): Call einfo callback in
858 bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
859 warning.
860
c1b2796f
AM
8612007-04-05 Alan Modra <amodra@bigpond.net.au>
862
863 * elf32-spu.c (spu_elf_output_symbol_hook): New function.
864 (elf_backend_link_output_symbol_hook): Define.
865
970ccc77
NC
8662007-04-02 Nick Clifton <nickc@redhat.com>
867
868 PR binutils/4292
869 * bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
870 targets as 64-bit values, even if running on a 64-bit host.
871 * coffgen.c (coff_print_symbol): Likewise.
872
1783205a
NC
8732007-03-29 Nick Clifton <nickc@redhat.com>
874
875 PR binutils/4110
876 * elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
877 (setup_group): Use it. Report corrupt group section headers.
878 (bfd_section_from_shdr): Use new macro. Replace constant 4 with
879 GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
880 (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
881
2ce859a1
AM
8822007-03-29 Alan Modra <amodra@bigpond.net.au>
883
884 PR ld/4267
947844a3
AM
885 * elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
886 for rel->r_info values.
887 (bfd_elf_perform_complex_relocation): Likewise.
2ce859a1
AM
888 * elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
889 unused entries. Don't clear plt.plist in loop.
890
39817122
RS
8912007-03-28 Richard Sandiford <richard@codesourcery.com>
892
893 * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
894 * elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
895 Merge into...
896 (sparc_elf_append_rela): ...this new function.
897 (SPARC_ELF_APPEND_RELA): Delete.
898 (_bfd_sparc_elf_link_hash_table_create): Don't initialize
899 the deleted append_rela field.
900 (_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
901 instead of SPARC_ELF_APPEND_RELA.
902 (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. Use the
903 elf_size_info structure to find the size of a RELA entry and
904 the associated swap-out function.
905 (sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
906 (sparc_finish_dyn): ...this new function.
907 (_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
908
4ecceb71
RS
9092007-03-28 Richard Sandiford <richard@codesourcery.com>
910 Phil Edwards <phil@codesourcery.com>
911
912 * doc/bfd.texinfo: Put the contents after the title page rather
913 than at the end of the document.
914
d4d2b80b
AS
9152007-03-27 Andreas Schwab <schwab@suse.de>
916
917 * elfxx-ia64.c (elf_backend_default_execstack): Define to 0.
918
831480e9 9192007-03-26 H.J. Lu <hongjiu.lu@intel.com>
5bd8253d
L
920
921 * configure: Regenerated.
922
f4b39977
AM
9232007-03-26 Alan Modra <amodra@bigpond.net.au>
924
925 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
926 (allocate_spuear_stubs): New function.
927 (spu_elf_size_stubs): Call allocate_spuear_stubs.
928
157090f7
AM
9292007-03-26 Alan Modra <amodra@bigpond.net.au>
930
931 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
932 * aout-arm.c (MY_bfd_reloc_name_lookup): Define.
933 (MY (bfd_reloc_name_lookup)): New function.
934 * aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
935 * aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
936 (MY_bfd_reloc_name_lookup): Define.
937 * aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
938 (MY_bfd_reloc_name_lookup): Define.
939 * aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
940 (NAME (aout, reloc_name_lookup)): New function.
941 * bout.c (b_out_bfd_reloc_name_lookup): New function.
942 * coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
943 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
944 * coff-arm.c (coff_arm_reloc_name_lookup): New function.
945 (coff_bfd_reloc_name_lookup): Define.
946 * coff-i386.c (coff_bfd_reloc_name_lookup): Define.
947 (coff_i386_reloc_name_lookup): New function.
948 * coff-i860.c (coff_i860_reloc_name_lookup): New function.
949 (coff_bfd_reloc_name_lookup): Define.
950 * coff-i960.c (coff_i960_reloc_name_lookup): New function.
951 (coff_bfd_reloc_name_lookup): Define.
952 * coff-m68k.c (m68k_reloc_name_lookup): New function.
953 (coff_bfd_reloc_name_lookup): Define.
954 * coff-maxq.c (maxq_reloc_name_lookup): New function.
955 (coff_bfd_reloc_name_lookup): Define.
956 * coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
957 (coff_bfd_reloc_name_lookup): Define.
958 * coff-mips.c (mips_bfd_reloc_name_lookup): New function.
959 (_bfd_ecoff_bfd_reloc_name_lookup): Define.
960 * coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
961 (coff_bfd_reloc_name_lookup): Define.
962 * coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
963 (_bfd_xcoff_reloc_name_lookup): New function.
964 (rs6000coff_vec, pmac_xcoff_vec): Init new field.
965 * coff-sh.c (coff_bfd_reloc_name_lookup): Define.
966 (sh_coff_reloc_name_lookup): New function.
967 * coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
968 (coff_bfd_reloc_name_lookup): Define.
969 * coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
970 (tic30_coff_reloc_name_lookup): New function.
971 * coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
972 (tic4x_coff_reloc_name_lookup): New function.
973 * coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
974 (tic54x_coff_reloc_name_lookup): New function.
975 * coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
976 (coff_amd64_reloc_name_lookup): New function.
977 * coff-z80.c (coff_z80_reloc_name_lookup): New function.
978 (coff_bfd_reloc_name_lookup): Define.
979 * coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
980 (coff_bfd_reloc_name_lookup): Define.
981 * coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
982 (xcoff64_reloc_name_lookup): New function.
983 (rs6000coff64_vec, aix5coff64_vec): Init new field.
984 * coffcode.h (coff_bfd_reloc_name_lookup): Define.
985 * elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
986 * elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
987 * elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
988 * elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
989 * elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
990 (bfd_elf32_bfd_reloc_name_lookup): Define.
991 * elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
992 * elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
993 (bfd_elf32_bfd_reloc_name_lookup): Define.
994 * elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
995 (bfd_elf32_bfd_reloc_name_lookup): Define.
996 * elf32-cris.c (cris_reloc_name_lookup): New function.
997 (bfd_elf32_bfd_reloc_name_lookup): Define.
998 * elf32-crx.c (elf_crx_reloc_name_lookup): New function.
999 (bfd_elf32_bfd_reloc_name_lookup): Define.
1000 * elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1001 * elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1002 * elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
1003 (bfd_elf32_bfd_reloc_name_lookup): Define.
1004 * elf32-fr30.c (fr30_reloc_name_lookup): New function.
1005 (bfd_elf32_bfd_reloc_name_lookup): Define.
1006 * elf32-frv.c (frv_reloc_name_lookup): New function.
1007 (bfd_elf32_bfd_reloc_name_lookup): Define.
1008 * elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1009 * elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
1010 (bfd_elf32_bfd_reloc_name_lookup): Define.
1011 * elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1012 * elf32-i370.c (i370_elf_reloc_name_lookup): New function.
1013 (bfd_elf32_bfd_reloc_name_lookup): Define.
1014 * elf32-i386.c (elf_i386_reloc_name_lookup): New function.
1015 (bfd_elf32_bfd_reloc_name_lookup): Define.
1016 * elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
1017 (bfd_elf32_bfd_reloc_name_lookup): Define.
1018 * elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
1019 (bfd_elf32_bfd_reloc_name_lookup): Define.
1020 * elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
1021 (bfd_elf32_bfd_reloc_name_lookup): Define.
1022 * elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
1023 (bfd_elf32_bfd_reloc_name_lookup): Define.
1024 * elf32-m32c.c (m32c_reloc_name_lookup): New function.
1025 (bfd_elf32_bfd_reloc_name_lookup): Define.
1026 * elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1027 * elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1028 * elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1029 * elf32-m68k.c (reloc_name_lookup): New function.
1030 (bfd_elf32_bfd_reloc_name_lookup): Define.
1031 * elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1032 * elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
1033 (bfd_elf32_bfd_reloc_name_lookup): Define.
1034 * elf32-mep.c (mep_reloc_name_lookup): New function.
1035 (bfd_elf32_bfd_reloc_name_lookup): Define.
1036 * elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1037 (mips_vxworks_bfd_reloc_name_lookup): Likewise.
1038 (bfd_elf32_bfd_reloc_name_lookup): Define.
1039 * elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1040 * elf32-mt.c (mt_reloc_name_lookup): New function.
1041 (bfd_elf32_bfd_reloc_name_lookup): Define.
1042 * elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
1043 (bfd_elf32_bfd_reloc_name_lookup): Define.
1044 * elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1045 * elf32-pj.c (pj_elf_reloc_name_lookup): New function.
1046 (bfd_elf32_bfd_reloc_name_lookup): Define.
1047 * elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
1048 (bfd_elf32_bfd_reloc_name_lookup): Define.
1049 * elf32-s390.c (elf_s390_reloc_name_lookup): New function.
1050 (bfd_elf32_bfd_reloc_name_lookup): Define.
1051 * elf32-score.c (elf32_score_reloc_name_lookup): New function.
1052 (bfd_elf32_bfd_reloc_name_lookup): Define.
1053 * elf32-sh.c (sh_elf_reloc_name_lookup): New function.
1054 (bfd_elf32_bfd_reloc_name_lookup): Define.
1055 * elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
1056 * elf32-spu.c (spu_elf_reloc_name_lookup): New function.
1057 (bfd_elf32_bfd_reloc_name_lookup): Define.
1058 * elf32-v850.c (v850_elf_reloc_name_lookup): New function.
1059 (bfd_elf32_bfd_reloc_name_lookup): Define.
1060 * elf32-vax.c (reloc_name_lookup): New function.
1061 (bfd_elf32_bfd_reloc_name_lookup): Define.
1062 * elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
1063 (bfd_elf32_bfd_reloc_name_lookup): Define.
1064 * elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
1065 (bfd_elf32_bfd_reloc_name_lookup): Define.
1066 * elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
1067 (bfd_elf32_bfd_reloc_name_lookup): Define.
1068 * elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
1069 (bfd_elf64_bfd_reloc_name_lookup): Define.
1070 * elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1071 * elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1072 * elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
1073 * elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
1074 * elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
1075 (bfd_elf64_bfd_reloc_name_lookup): Define.
1076 * elf64-s390.c (elf_s390_reloc_name_lookup): New function.
1077 (bfd_elf64_bfd_reloc_name_lookup): Define.
1078 * elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
1079 (bfd_elf64_bfd_reloc_name_lookup): Define.
1080 * elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
1081 * elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
1082 (bfd_elf64_bfd_reloc_name_lookup): Define.
1083 * elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
1084 * elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
1085 (bfd_elfNN_bfd_reloc_name_lookup): Define.
1086 * elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
1087 * elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
1088 * i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
1089 * i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
1090 * ieee.c (ieee_bfd_reloc_name_lookup): Define.
1091 * libaout.h (NAME (aout, reloc_name_lookup)): Declare.
1092 * libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
1093 * mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
1094 (MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
1095 (MY(reloc_name_lookup)): New function.
1096 * nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
1097 * oasys.c (oasys_bfd_reloc_name_lookup): Define.
1098 * pdp11.c (NAME (aout, reloc_name_lookup)): New function.
1099 * pe-mips.c (coff_mips_reloc_name_lookup): New function.
1100 (coff_bfd_reloc_name_lookup): Define.
1101 * reloc.c (bfd_reloc_name_lookup): New function.
1102 * riscix.c (riscix_reloc_name_lookup): New function.
1103 (MY_bfd_reloc_name_lookup): Define.
1104 * som.c (som_bfd_reloc_name_lookup): New function.
1105 * targets.c (struct bfd_target): Add reloc_name_lookup.
1106 (BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
1107 * versados.c (versados_bfd_reloc_name_lookup): Define.
1108 * vms.c (vms_bfd_reloc_name_lookup): New function.
1109 * bfd-in2.h: Regenerate.
1110 * libbfd.h: Regenerate.
1111
2d82d84d
TS
11122007-03-26 Thiemo Seufer <ths@mips.com>
1113
a5cb1fd7 1114 PR ld/4208
2d82d84d
TS
1115 * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
1116 matching relocation is found.
1117 (_bfd_mips_elf_relocate_section): Only warn about missing relocations.
1118
831480e9 11192007-03-23 H.J. Lu <hongjiu.lu@intel.com>
1a27db7d
L
1120
1121 * configure: Regenerated.
1122
a1ac8190
JM
11232007-03-23 Joseph Myers <joseph@codesourcery.com>
1124
1125 * configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
1126 * configure: Regenerate.
1127
aa7a0635
AM
11282007-03-23 Alan Modra <amodra@bigpond.net.au>
1129
1130 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
1131 Remove input_sec param. Adjust all calls.
1132 (write_one_stub): Adjust stub symbol.
1133 (needs_ovl_stub): New function, extracted from..
1134 (spu_elf_size_stubs): ..here.
1135 (spu_elf_relocate_section): Use needs_ovl_stub.
1136
e49e529d
JM
11372007-03-22 Joseph Myers <joseph@codesourcery.com>
1138
1139 * Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
1140 if nonempty.
1141 * configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
1142 * Makefile.in, configure, doc/Makefile.in: Regenerate.
1143
831480e9 11442007-03-22 H.J. Lu <hongjiu.lu@intel.com>
50572669
L
1145
1146 PR ld/4210
1147 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
1148 address and virtual size of the last section for the image
1149 size.
1150
0920dee7
L
11512007-03-22 H.J. Lu <hongjiu.lu@intel.com>
1152
1153 PR ld/4007
1154 * elf.c (assign_file_positions_for_load_sections): Check if
1155 all sections are in the segment.
1156
831480e9 11572007-03-20 H.J. Lu <hongjiu.lu@intel.com>
749b8d9d
L
1158
1159 PR ld/4208
1160 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
1161 matching LO16 relocation for HI16 relocation.
1162
27e55c4d
PB
11632007-03-20 Paul Brook <paul@codesourcery.com>
1164
1165 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
1166 * bfd-in2.h: Regenerate.
1167 * elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
1168 (record_arm_to_thumb_glue): Use globals->pic_veneer.
1169 (elf32_arm_create_thumb_stub): Ditto.
1170 (bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
1171
bf21ed78
MS
11722007-03-18 Mark Shinwell <shinwell@codesourcery.com>
1173
1174 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
1175 argument and extra last argument.
1176 * bfd-in2.h: Regenerate.
1177 * elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
1178 member.
1179 (bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
1180 extra last argument. Set no_enum_size_warning appropriately.
1181 (elf32_arm_merge_eabi_attributes): Improve enum sizes
1182 diagnostic, suppressing it when no_enum_size_warning dictates.
1183
5f6999aa
NC
11842007-03-20 Nick Clifton <nickc@redhat.com>
1185
1186 PR binutils/3535
1187 * elf.c (copy_private_bfd_data): Widen the scope of Solaris
1188 specific conditions that need the program headers to be
1189 rewritten.
1190
831480e9 11912007-03-19 H.J. Lu <hongjiu.lu@intel.com>
d13c9dc6
L
1192
1193 * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Store Magic,
1194 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1195 SizeOfInitializedData, SizeOfUninitializedData,
1196 AddressOfEntryPoint, BaseOfCode and BaseOfData in internal
1197 extra PE a.out header.
1198 (IMAGE_NT_OPTIONAL_HDR_MAGIC): Defined as 0x10b if not defined.
1199 (IMAGE_NT_OPTIONAL_HDR64_MAGIC): Defined as 0x20b if not
1200 defined.
1201 (IMAGE_NT_OPTIONAL_HDRROM_MAGIC): Defined as 0x107 if not
1202 defined.
1203 (_bfd_XX_print_private_bfd_data_common): Also print Magic,
1204 MajorLinkerVersion, MinorLinkerVersion, SizeOfCode,
1205 SizeOfInitializedData, SizeOfUninitializedData,
1206 AddressOfEntryPoint, BaseOfCode and BaseOfData from internal
1207 extra PE a.out header.
1208
831480e9 12092007-03-18 H.J. Lu <hongjiu.lu@intel.com>
739bb57e
L
1210
1211 * targets.c (_bfd_target_vector): Add bfd_efi_app_x86_64_vec
1212 only if BFD64 is defined.
1213
5384511f
AM
12142007-03-17 Alan Modra <amodra@bigpond.net.au>
1215
1216 * elf32-spu.c (spu_elf_size_stubs): Always use an overlay stub
1217 on setjmp calls.
1218
187b3d5d
L
12192007-03-15 H.J. Lu <hongjiu.lu@intel.com>
1220
1221 * doc/Makefile.in: Regenerated.
1222
c428fa83
L
12232007-03-15 H.J. Lu <hongjiu.lu@intel.com>
1224
1225 * Makefile.am (bfdver.h): Substitute report_bugs_to. Also
1226 create doc/bfdver.texi.
1227 * Makefile.in: Regenerated.
1228
1229 * configure.in (--with-bugurl): New option.
1230 * configure: Regenerated.
1231
1232 * version.h (REPORT_BUGS_TO): New.
1233
d1036acb
L
12342007-03-13 H.J. Lu <hongjiu.lu@intel.com>
1235
1236 PR binutils/3826
1237 * elf-bfd.h (elf_backend_data): Add elf_osabi.
1238 (_bfd_elf_set_osabi): New.
1239
1240 * elf.c (_bfd_elf_set_osabi): New.
1241
1242 * elf32-hppa.c (elf32_hppa_post_process_headers): Removed.
1243 (elf_backend_post_process_headers): Defined with
1244 _bfd_elf_set_osabi.
1245 (ELF_OSABI): Properly defined for each target.
1246
1247 * elf32-i370.c (i370_elf_post_process_headers): Removed.
1248 (ELF_OSABI): Defined.
1249 (elf_backend_post_process_headers): Defined with
1250 _bfd_elf_set_osabi.
1251
1252 * elf32-i386.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1253 freebsd.
1254 (elf_i386_post_process_headers): Set EI_OSABI with elf_osabi.
1255
1256 * elf32-msp430.c (elf32_msp430_post_process_headers): Removed.
1257 (ELF_OSABI): Defined.
1258 (elf_backend_post_process_headers): Defined with
1259 _bfd_elf_set_osabi.
1260
1261 * elf64-alpha.c (ELF_OSABI): Defined to ELFOSABI_FREEBSD for
1262 freebsd.
1263 (elf64_alpha_fbsd_post_process_headers): Set EI_OSABI with
1264 elf_osabi.
1265
1266 * elf64-hppa.c (elf64_hppa_post_process_headers): Set EI_OSABI
1267 with elf_osabi.
1268 (ELF_OSABI): Properly defined for each target.
1269 (elf_backend_post_process_headers): Defined with
1270 _bfd_elf_set_osabi for Linux.
1271
1272 * elf64-sparc.c (elf64_sparc_fbsd_post_process_headers): Removed.
1273 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1274 (elf_backend_post_process_headers): Defined with
1275 _bfd_elf_set_osabi.
1276
1277 * elf64-x86-64.c (elf64_x86_64_fbsd_post_process_headers): Removed.
1278 (ELF_OSABI): Defined to ELFOSABI_FREEBSD for freebsd.
1279 (elf_backend_post_process_headers): Defined with
1280 _bfd_elf_set_osabi.
1281
1282 * elfcode.h (elf_object_p): Match the ELFOSABI_NONE ELF target
1283 with any ELF target of the compatible machine for which we do not
1284 have a specific backend.
1285
1286 * elfxx-ia64.c (elfNN_hpux_post_process_headers): Set EI_OSABI
1287 with elf_osabi.
1288
1289 * elfxx-target.h (ELF_OSABI): Default to ELFOSABI_NONE.
1290 (elfNN_bed): Initialize elf_osabi with ELF_OSABI.
1291
d4c87fc1
AM
12922007-03-08 Alan Modra <amodra@bigpond.net.au>
1293
1294 * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out
1295 V850_OTHER_* bits.
1296
9c6fc49d
AM
12972007-03-08 Alan Modra <amodra@bigpond.net.au>
1298
1299 * Makefile.am (BFD64_BACKENDS): Add efi-app-x86_64.lo.
1300 (BFD64_BACKENDS_CFILES): Add efi-app-x86_64.c.
1301 Run "make dep-am".
1302 * Makefile.in: Regenerate.
1303 * po/SRC-POTFILES.in: Regenerate.
1304
faed74d6
L
13052007-03-07 H.J. Lu <hongjiu.lu@intel.com>
1306
1307 * config.bfd (x86_64-*-freebsd*): Add bfd_efi_app_x86_64_vec.
1308 (x86_64-*-kfreebsd*-gnu): Likewise.
1309 (x86_64-*-netbsd*): Likewise.
1310 (x86_64-*-openbsd*): Likewise.
1311 (x86_64-*-linux-*): Likewise.
1312
1313 * configure.in: Support bfd_efi_app_x86_64_vec.
1314 * configure: Regenerated.
1315
1316 * efi-app-x86_64.c: New file.
1317
1318 * targets.c (bfd_efi_app_x86_64_vec): New.
1319 (_bfd_target_vector): Add bfd_efi_app_x86_64_vec.
1320
15344ad7
L
13212007-03-07 Kai Tietz <kai.tietz@onevision.com>
1322
1323 * reloc.c (bfd_generic_get_relocated_section_contents): Remove
1324 const for type reloc_howto_type.
1325
ab96bf03
AM
13262007-03-07 Alan Modra <amodra@bigpond.net.au>
1327
1328 PR 3958
1329 * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): No error on relocatable link.
1330 (elf_discarded_section): Move..
1331 * bfd-in.h: ..to here.
1332 * bfd-in2.h: Regenerate.
1333 * elflink.c (elf_link_input_bfd): Don't zap relocs against symbols
1334 from discarded sections before relocate_section has done its job.
1335 * reloc.c (bfd_generic_get_relocated_section_contents): Handle
1336 relocs against symbols from discarded sections.
1337 * elf-hppa.h (elf_hppa_howto_table): Set size. Set dst_mask on
1338 SECREL32.
1339 (elf_hppa_relocate_section): Handle relocatable link after setting
1340 sec, sym, h etc. for final link. Squash error messages for
1341 relocatable link. Clear section contents for relocs against
1342 symbols in discarded sections, and zero reloc. Remove existing
1343 zero r_symndx code.
1344 * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
1345 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
1346 * elf32-arm.c (elf32_arm_relocate_section): Likewise.
1347 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
1348 * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
1349 (bfin_relocate_section): Likewise.
1350 * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
1351 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1352 * elf32-crx.c (elf32_crx_relocate_section): Likewise.
1353 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
1354 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
1355 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1356 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
1357 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1358 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1359 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1360 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
1361 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
1362 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
1363 * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
1364 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
1365 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1366 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1367 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
1368 * elf32-mep.c (mep_elf_relocate_section): Likewise.
1369 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
1370 * elf32-mt.c (mt_elf_relocate_section): Likewise.
1371 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
1372 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1373 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1374 * elf32-score.c (_bfd_score_elf_relocate_section): Likewise.
1375 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1376 * elf32-spu.c (spu_elf_relocate_section): Likewise.
1377 * elf32-v850.c (v850_elf_relocate_section): Likewise.
1378 * elf32-vax.c (elf_vax_relocate_section): Likewise.
1379 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
1380 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
1381 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
1382 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
1383 (elf64_alpha_relocate_section): Likewise.
1384 * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
1385 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1386 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1387 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1388 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1389 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
1390 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
1391 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
1392
1393 * elf32-arm.c (elf32_arm_relocate_section): Always adjust section
1394 symbols for relocatable link. Don't use always-zero st_value.
1395 (elf_backend_rela_normal): Don't define.
1396 * elf32-bfin.c (bfinfdpic_relocate_section): Use
1397 RELOC_FOR_GLOBAL_SYMBOL.
1398 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
1399 * elf32-d10v.c (elf32_d10v_relocate_section): Combine SEC_MERGE
1400 section symbol adjustments with same for relocatable link.
1401 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1402 * elf32-m68hc1x.c (m68hc11_get_relocation_value): Move..
1403 (elf32_m68hc11_check_relocs): ..to here.
1404 * elf32-score.c (score_elf_final_link_relocate): Remove zero
1405 r_symndx code.
1406 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1407
0e922b77
AM
14082007-03-07 Alan Modra <amodra@bigpond.net.au>
1409
1410 PR 4144
1411 * elf.c (assign_file_positions_for_load_sections): Don't
1412 adjust p_memsz for !SEC_LOAD section vma modulo page size.
1413 Instead, use the same lma based adjustment for SEC_LOAD
1414 sections.
1415
25c6282a
BW
14162007-03-01 Bob Wilson <bob.wilson@acm.org>
1417
1418 * elf32-xtensa.c (analyze_relocations): Zero src_count if not relaxing.
1419 (find_relaxable_sections): Do not increment src_count for unknown
1420 opcodes. Decode only once instead of calling is_l32r_relocation.
1421 (compute_text_actions): Remove unused no_insn_move flag. Assert that
1422 src_next matches src_count in relax_info.
1423
066c2a57
JM
14242007-03-01 Joseph Myers <joseph@codesourcery.com>
1425
1426 * Makefile.am (bfdver.h): Use "." not " " between version number
1427 and date.
1428 * Makefile.in: Regenerate.
1429 * configure.in (PKGVERSION): Default to "(GNU Binutils) ".
1430 * configure: Regenerate.
1431
ed6ba298
NS
14322007-02-28 Nathan Sidwell <nathan@codesourcery.com>
1433
1434 * config.bfd (sh-*-uclinux, sh[12]-*-uclinux): New stanza.
1435
7a8757b3
AM
14362007-02-27 Alan Modra <amodra@bigpond.net.au>
1437
1438 * elf32-spu.h (struct _ovl_stream): Make "start" and "end" const.
1439 * elf32-spu.c (ovl_mgr_pread): Add const to casts.
1440
024b2372
CD
14412007-02-23 Carlos O'Donell <carlos@codesourcery.com>
1442
1443 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Assume 32-bit
1444 DWARF even with 64-bit addresses.
1445 (_bfd_dwarf2_find_nearest_line): Likewise.
1446
cb3ff1e5
NC
14472007-02-23 Nick Clifton <nickc@redhat.com>
1448
1449 PR binutils/3535
1450 * elf.c (copy_private_bfd_data): Always rewrite the program
1451 headers when a Solaris interpreter segment is involved.
1452
6a5bb875
PB
14532007-02-22 Paul Brook <paul@codesourcery.com>
1454
1455 * elflink.c (gc_mark_hook_fn): Remove.
1456 (_bfd_elf_gc_mark): Rename gc_mark_hook_fn to elf_gc_mark_hook_fn.
1457 (bfd_elf_gc_sections): Ditto. Call gc_mark_extra_sections.
1458 * elf-bfd.h (elf_gc_mark_hook_fn): Define.
1459 (elf_backend_data): Add gc_mark_extra_sections.
1460 * elfxx-target.h (elf_backend_gc_mark_extra_sections): Provide default
1461 definition.
1462 (elfNN_bed): Add elf_backend_gc_mark_extra_sections.
1463 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): New function.
1464 (elf_backend_gc_mark_extra_sections): Define.
1465
2889e75b
NC
14662007-02-21 Nick Clifton <nickc@redhat.com>
1467
1468 * elf.c (_bfd_elf_map_sections_to_segments): If the
1469 override_segment_assignment callback is defined then call it.
1470
78859468
AM
14712007-02-21 Alan Modra <amodra@bigpond.net.au>
1472
1473 * elf32-spu.c (spu_elf_size_stubs): Correct order of warning args.
1474
ae0d2616
TS
14752007-02-19 Thiemo Seufer <ths@mips.com>
1476
1477 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): Remove
1478 translation marker from untranslatable strings.
1479
6bfdb61b
AM
14802007-02-19 Alan Modra <amodra@bigpond.net.au>
1481
1482 * elf-bfd.h (struct elf_backend_data): Add default_execstack.
1483 * elflink.c (bfd_elf_size_dynamic_sections): Heed default_execstack.
1484 * elfxx-target.h (elf_backend_default_execstack): Define to 1.
1485 (elfNN_bed): Init new field.
1486 * elf64-ppc.c (elf_backend_default_execstack): Define to 0.
1487
92f01d61
JM
14882007-02-17 Mark Mitchell <mark@codesourcery.com>
1489 Nathan Sidwell <nathan@codesourcery.com>
1490 Vladimir Prus <vladimir@codesourcery.com
1491 Joseph Myers <joseph@codesourcery.com>
1492
1493 * configure.in (--with-pkgversion): New option.
1494 * configure: Regenerate.
1495 * Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
1496 * Makefile.in: Regenerate.
1497 * version.h (BFD_VERSION_STRING): Define using
1498 @bfd_version_package@.
1499
c0e3f241
CD
15002007-02-16 Carlos O'Donell <carlos@codesourcery.com>
1501
1502 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data):
1503 Print EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC, EF_MIPS_XGOT
1504 and EF_MIPS_UCODE.
1505
72f6ea61
AM
15062007-02-15 Alan Modra <amodra@bigpond.net.au>
1507
1508 * libbfd-in.h (_bfd_norelocs_get_reloc_upper_bound): Don't define,
1509 declare.
1510 (_bfd_norelocs_canonicalize_reloc): Likewise.
1511 * libbfd.h: Regenerate.
1512 * libbfd.c (_bfd_norelocs_get_reloc_upper_bound): New function.
1513 (_bfd_norelocs_canonicalize_reloc): Likewise.
1514 * binary.c (binary_bfd_reloc_type_lookup): Don't define.
1515 (binary_get_reloc_upper_bound, binary_canonicalize_reloc): Likewise.
1516 (binary_vec): Use _bfd_norelocs in BFD_JUMP_TABLE_RELOCS.
1517 * ihex.c: Similarly.
1518 * mach-o-target.c: Similarly.
1519 * mach-o.c: Similarly.
1520 * mmo.c: Similarly.
1521 * pef.c: Similarly.
1522 * ppcboot.c: Similarly.
1523 * srec.c: Similarly.
1524 * xsym.c: Similarly.
1525
fab4a87f
L
15262007-02-14 H.J. Lu <hongjiu.lu@intel.com>
1527
1528 PR ld/3953
1529 * elflink.c (_bfd_elf_add_default_symbol): Check warning symbol
1530 when adding default symbol.
1531
e4e0193e
AM
15322007-02-13 Alan Modra <amodra@bigpond.net.au>
1533
1534 * elf64-ppc.c (create_linkage_sections): Use section ".branch_lt"
1535 for branch lookup table.
1536
84f5d08e
AM
15372007-02-12 Alan Modra <amodra@bigpond.net.au>
1538
1539 * elf64-ppc.c (create_linkage_sections): Don't create
1540 .rela.rodata.brlt for --emit-relocs.
1541 (ppc_build_one_stub): Create relocs for brlt --emit-relocs here.
1542 (ppc_size_one_stub): Count them. Simplify test of stub type
1543 when counting stub relocs. Set SEC_RELOC too.
1544 (ppc64_elf_size_stubs): Clear reloc_count and SEC_RELOC.
1545 (ppc64_elf_finish_dynamic_sections): Output brlt relocs.
1546
4aac632e
AM
15472007-02-12 Alan Modra <amodra@bigpond.net.au>
1548
1549 * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs
1550 with a zero symbol index.
1551
8da3dbc5
AM
15522007-02-12 Alan Modra <amodra@bigpond.net.au>
1553
1554 * elflink.c (bfd_elf_discard_info): Tidy setting of "eh".
1555
b31847af
DB
15562007-02-05 Dave Brolley <brolley@redhat.com>
1557 Stan Cox <scox@redhat.com>
1558
1559 PR ld/3972
1560 * elflink.c (elf_link_input_bfd): Always setup finfo->internal_syms.
1561
722b0ff7 15622007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
1563 Richard Sandiford <rsandifo@redhat.com>
1564 Stan Cox <scox@redhat.com>
1565 Nick Clifton <nickc@redhat.com>
1566 DJ Delorie <dj@redhat.com>
1567 Frank Ch. Eigler <fche@redhat.com>
1568 Ben Elliston <bje@redhat.com>
1569 Richard Henderson <rth@redhat.com>
1570
1571 * Makefile.am (ALL_MACHINES): Add cpu-mep.lo.
1572 (ALL_MACHINES_CFILES): Add CPU_MEP.c.
1573 (BFD32_BACKENDS): Add elf32-mep.lo.
1574 (BFD32_BACKENDS_CFILES): Add elf32-mep.c.
1575 (cpu-mep.lo,elf32-mep.lo): New targets.
1576 * archures.c (bfd_arch_mep): New enumerator.
1577 (bfd_mach_mep, bfd_mach_mep_h1): New macros.
1578 (bfd_mep_arch): New external variable.
1579 (bfd_archures_list): Add bfd_mep_arch.
1580 * config.bfd: Support mep-*-elf.
1581 * configure.in: Support bfd_elf32_mep_vec and bfd_elf32_mep_little_vec.
1582 * reloc.c (BFD_RELOC_MEP_*): New relocation numbers.
1583 * targets.c (bfd_elf32_mep_vec,bfd_elf32_mep_little_vec): New extern
1584 declarations.
1585 (_bfd_target_vector): Add bfd_elf32_mep_vec and
1586 bfd_elf32_mep_little_vec.
722b0ff7
DB
1587 * mep-relocs.pl: New file.
1588 * cpu-mep.c: New file.
1589 * elf32-mep.c: New file.
1590 * bfd-in2.h: Regenerate.
e382d174 1591 * po/POTFILES.in: Regenerate.
722b0ff7
DB
1592 * libbfd.h: Regenerate.
1593 * Makefile.in: Regenerate.
1594 * configure: Regenerate.
1595
d9352518
DB
15962007-02-05 Dave Brolley <brolley@redhat.com>
1597
1598 * elflink.c (evaluate_complex_relocation_symbols): Check for
1599 STT_SRELC for global symbols.
1600 (perform_complex_relocations): Renamed to
1601 perform_complex_relocation and now examines only one relocation.
1602 (elf_link_input_bfd): Don't call perform_complex_relocations.
74e880a7 1603 * elf-bfd.h (bfd_elf_perform_complex_relocation_: New prototype.
d9352518
DB
1604 * elf32-mep.c (mep_elf_howto_table): Add R_RELC.
1605 (OD,OS,OU): #undefs corrected to N, S and U repectively.
1606 (mep_reloc_type_lookup): Handle BFD_RELOC_RELC.
1607 (complex_reloc_installation_howto): Removed.
1608 (mep_info_to_howto_rela): Remove special case for r_type==0xff.
1609 (mep_elf_relocate_section): Call bfd_elf_perform_complex_relocation.
1610
d9352518 16112007-02-05 Dave Brolley <brolley@redhat.com>
e382d174
DB
1612 Richard Sandiford <rsandifo@redhat.com>
1613 DJ Delorie <dj@redhat.com>
1614 Graydon Hoare <graydon@redhat.com>
1615 Nick Clifton <nickc@cambridge.redhat.com>
1616 Jeff Holcomb <jeffh@redhat.com>
1617 Frank Ch. Eigler <fche@redhat.com>
1618
1619 * elf-bfd.h (bfd_elf_perform_complex_relocations): New prototype.
1620 * elf.c (swap_out_syms): Handle BSF_RELC and BSF_SRELC.
1621 * elfcode.h (elf_slurp_symbol_table): Handle STT_RELC and STT_SRELC.
1622 * elflink.c (set_symbolValue): New static function.
d9352518
DB
1623 (resolve_symbol): Likewise.
1624 (resolve_section): Likewise.
1625 (undefined_reference): Likewise.
1626 (eval_symbol): Likewise.
1627 (evaluate_complex_relocation_symbols): Likewise.
1628 (put_value): Likewise.
1629 (get_value): Likewise.
e382d174
DB
1630 (decode_complex_addend):
1631 (bfd_elf_perform_complex_relocation): New function.
1632 (elf_link_input_bfd): Call evaluate_complex_relocation_symbols.
1633 * reloc.c (BFD_RELOC_RELC): New relocation number.
1634 * syms.c (BSF_RELC,BSF_SRELC): New macros.
d9352518 1635
f1ab2340 16362007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 1637
f1ab2340
BW
1638 * elf32-xtensa.c (elf_xtensa_make_sym_local): Delete.
1639 (elf_xtensa_hide_symbol, elf_backend_hide_symbol): Delete.
1640 (elf_xtensa_fix_refcounts, elf_xtensa_allocate_plt_size)
1641 (elf_xtensa_allocate_got_size): Replace these with...
1642 (elf_xtensa_allocate_dynrelocs): ...this new function.
1643 (elf_xtensa_size_dynamic_sections): Use it.
74e880a7 1644
e5f131d1 16452007-02-05 Bob Wilson <bob.wilson@acm.org>
74e880a7 1646
e5f131d1
BW
1647 * elf32-xtensa.c (elf_howto_table) <R_XTENSA_GLOB_DAT>
1648 <R_XTENSA_JMP_SLOT, R_XTENSA_RELATIVE, R_XTENSA_PLT, R_XTENSA_DIFF32>:
1649 Set src_mask to zero.
1650 <R_XTENSA_DIFF8, R_XTENSA_DIFF16>: Likewise. Also fix dst_mask.
1651 <R_XTENSA_ASM_EXPAND>: Set pcrel_offset to TRUE.
74e880a7 1652
4608f3d9
BW
16532007-02-02 Bob Wilson <bob.wilson@acm.org>
1654
1655 * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Renamed to...
1656 (elf_xtensa_dynamic_symbol_p): ...this.
1657
f0e6fdb2
BW
16582007-02-02 Bob Wilson <bob.wilson@acm.org>
1659
1660 * elf32-xtensa.c (plt_reloc_count): Move into link hash table.
1661 (struct elf_xtensa_link_hash_table): New.
1662 (elf_xtensa_hash_table): New.
1663 (elf_xtensa_link_hash_table_create): New.
1664 (elf_xtensa_check_relocs): Update plt_reloc_count references.
1665 Update arguments to add_extra_plt_sections.
1666 (elf_xtensa_create_dynamic_sections): Record new sections in the hash
1667 table. Update for plt_reloc_count and add_extra_plt_sections.
1668 (add_extra_plt_sections, elf_xtensa_create_plt_entry): Replace dynobj
1669 argument with link info. Update calls to elf_xtensa_get_plt_section
1670 and elf_xtensa_get_gotplt_section.
1671 (elf_xtensa_allocate_local_got_size, elf_xtensa_size_dynamic_sections)
1672 (elf_xtensa_relocate_section, elf_xtensa_finish_dynamic_sections)
1673 (elf_xtensa_discard_info_for_section, shrink_dynamic_reloc_sections)
1674 (relax_property_section): Get sections from the hash table and update
1675 function calls.
1676 (elf_xtensa_get_plt_section, elf_xtensa_get_gotplt_section): Replace
1677 dynobj argument with link info. Get sections for first plt chunk from
1678 the hash table.
1679 (bfd_elf32_bfd_link_hash_table_create): Define.
1680
c15f73f9
JJ
16812007-02-02 Jakub Jelinek <jakub@redhat.com>
1682
1683 * elf-bfd.h (struct elf_obj_tdata): Change symbuf type to void *.
1684 * elf.c (struct elf_symbuf_symbol, struct elf_symbuf_head): New types.
1685 (struct elf_symbol): Change first member into union.
1686 (elf_sort_elf_symbol): Compare pointers to internal syms rather than
1687 internal syms. Only compare st_shndx fields.
1688 (elf_create_symbuf): New function.
1689 (bfd_elf_match_symbols_in_sections): Use it. If symbufs are available
1690 for bfds, use a binary search, otherwise don't qsort symbols
1691 unnecessarily only to select which symbols are for the particular
1692 shndx.
1693
effdf42a
NC
16942007-02-01 Nick Clifton <nickc@redhat.com>
1695
1696 PR ld/3852
1697 * elf.c (_bfd_elf_link_hash_table_init): Initialize all the fields
1698 in the elf_link_hash_table structure.
1699
183e98be
AM
17002007-02-01 Alan Modra <amodra@bigpond.net.au>
1701
1702 * elf-bfd.h (struct elf_backend_data): Add elf_backend_write_core_note.
1703 * elfxx-target.h (elf_backend_write_core_note): Define and use.
1704 * elf.c (elfcore_write_prpsinfo): Call the above. Add support for
1705 32-bit core note on 64-bit target.
1706 (elfcore_write_prstatus): Likewise.
1707 (elfcore_write_lwpstatus): Make note_name const.
1708 (elfcore_write_prfpreg): Likewise.
1709 (elfcore_write_pstatus): Add support for 32-bit core note on 64-bit
1710 target.
1711 * elf32-ppc.c (ppc_elf_write_core_note): New function.
1712 (elf_backend_write_core_note): Define.
1713 * elf64-ppc.c (ppc64_elf_write_core_note): New function.
1714 (elf_backend_write_core_note): Define.
1715
fc523535 17162007-01-31 H.J. Lu <hongjiu.lu@intel.com>
16cecee5
L
1717
1718 * elf32-cris.c (INCLUDED_TARGET_FILE): Removed.
1719 (elf32_bed): Defined for elf32-us-cris.
1720
1721 * elf64-sh64.c (elf64_bed): Defined for Linux.
1722 (INCLUDED_TARGET_FILE): Removed.
1723
1724 * elfxx-target.h (elfNN_bed): Always define. Don't check
1725 INCLUDED_TARGET_FILE.
1726
c9b57b7e
DD
17272007-01-31 DJ Delorie <dj@redhat.com>
1728
1729 * elf-m10300.c (mn10300_elf_relocate_section): Clarify the warning
1730 message for dangerous relocs, special case the common user error.
1731
53020534
L
17322007-01-30 H.J. Lu <hongjiu.lu@intel.com>
1733
1734 * elf.c (copy_elf_program_header): Start from the first section
1735 in a segment and stop when all sections in a segment are
1736 accounted for.
1737
c7b8f16e
JB
17382007-01-29 Julian Brown <julian@codesourcery.com>
1739
1740 * bfd-in2.h: Regenerate.
1741 * bfd-in.h (bfd_arm_vfp11_fix): New enum. Specify how VFP11
1742 instruction scanning should be done.
1743 (bfd_elf32_arm_init_maps, bfd_elf32_arm_vfp11_erratum_scan)
1744 (bfd_elf32_arm_vfp11_fix_veneer_locations): Add prototypes.
1745 (bfd_elf32_arm_set_target_relocs): Add vfp11 fix type argument to
1746 prototype.
1747 * elf-bfd.h (elf_backend_write_section): Add struct bfd_link_info
1748 argument.
1749 * elf32-arm.c (VFP11_ERRATUM_VENEER_SECTION_NAME)
1750 (VFP11_ERRATUM_VENEER_ENTRY_NAME): Define macros.
1751 (elf32_vfp11_erratum_type): New enum.
1752 (elf32_vfp11_erratum_list): New struct. List of veneers or jumps to
1753 veneers.
1754 (_arm_elf_section_data): Add mapsize, erratumcount, erratumlist.
1755 (elf32_arm_link_hash_table): Add vfp11_erratum_glue_size,
1756 vfp11_fix and num_vfp11_fixes fields.
1757 (elf32_arm_link_hash_table_create): Initialise vfp11_fix,
1758 vfp11_erratum_glue_size, num_vfp11_fixes fields.
1759 (VFP11_ERRATUM_VENEER_SIZE): Define. Size of an (ARM) veneer.
1760 (bfd_elf32_arm_allocate_interworking_sections): Initialise erratum
1761 glue section.
1762 (elf32_arm_section_map_add): Add an code/data mapping symbol entry
1763 to a section's map.
1764 (record_vfp11_erratum_veneer): Create a single veneer, and its
1765 associated symbols.
1766 (bfd_elf32_arm_add_glue_sections_to_bfd): Add vfp11 erratum glue.
1767 (bfd_elf32_arm_init_maps): Initialise mapping symbol table for input
1768 BFDs.
1769 (bfd_elf32_arm_set_vfp11_fix): Set the type of erratum workaround
1770 required.
1771 (bfd_arm_vfp11_pipe): Define VFP11 instruction pipes.
1772 (bfd_arm_vfp11_regno): Recode a register number from a VFP11 insn.
1773 (bfd_arm_vfp11_write_mask): Update write mask according to coded
1774 register number.
1775 (bfd_arm_vfp11_antidependency): New function.
1776 (bfd_arm_vfp11_insn_decode): Decode a VFP11 insn.
1777 (elf32_arm_compare_mapping): Declare.
1778 (bfd_elf32_arm_vfp11_erratum_scan): Scan the sections of an input
1779 BFD for potential erratum-triggering insns. Record results.
1780 (bfd_elf32_arm_vfp11_fix_veneer_locations): Find out where veneers
1781 and branches to veneers have been placed in virtual memory after
1782 layout.
1783 (bfd_elf32_arm_set_target_relocs): Set vfp11_fix field in global
1784 hash table.
1785 (elf32_arm_output_symbol_hook): Remove.
1786 (elf32_arm_write_section): Output veneers, and branches to veneers.
1787 Use maps from input sections, not output sections, for code
1788 byte-swapping.
1789 * elf32-ppc.c (ppc_elf_write_section): Add dummy link_info argument.
1790 * elf32-score.c (_bfd_score_elf_write_section): Likewise.
1791 * elfxx-mips.c (_bfd_mips_elf_write_section): Likewise.
1792 * elfxx-mips.h (_bfd_mips_elf_write_section): Likewise.
1793
17942007-01-27 H.J. Lu <hongjiu.lu@intel.com>
83d1651b
L
1795
1796 * elf64-hppa.c (elf64_bed): Defined for HPUX and Linux.
b8210914 1797 (INCLUDED_TARGET_FILE): Removed.
83d1651b 1798
914dfb0f
DA
17992007-01-27 Mike Frysinger <vapier@gentoo.org>
1800
1801 * elf32-hppa.c (elf32_bed): Define for hpux, linux and netbsd.
1802 (INCLUDED_TARGET_FILE): Remove.
1803
78eba9b6
DD
18042007-01-25 DJ Delorie <dj@redhat.com>
1805
1806 * elf32-m32c.c (m32c_elf_howto_table): Don't complain about
1807 R_M32C_16 or R_M32C_24 relocs.
1808
64ee10b6
NC
18092007-01-25 Nick Clifton <nickc@redhat.com>
1810
1811 PR binutils/3874
1812 * elf32-avr.c (avr_link_hash_table): Check to make sure that the
1813 hash table was created by elf32_avr_link_hash_table_create before
1814 using it.
1815 (elf32_avr_link_hash_newfunc): New function. Just pass the call
1816 through to _bfd_elf_link_hash_newfunc.
1817 (elf32_avr_link_hash_table_create): Use
1818 elf32_avr_link_hash_newfunc instead of
1819 _bfd_elf_link_hash_newfunc.
1820 (elf32_avr_relocate_section): Check for the hash table pointer
1821 being NULL.
1822 (elf32_avr_relax_section, avr_build_one_stub,
1823 elf32_avr_setup_params, get_local_syms, elf32_avr_size_stubs,
1824 elf32_avr_build_stubs): Likewise.
1825
40b36307
L
18262007-01-16 H.J. Lu <hongjiu.lu@intel.com>
1827
1828 PR ld/3831
1829 * elf-bfd.h (bfd_elf_link_mark_dynamic_symbol): Add an
1830 argument, Elf_Internal_Sym *.
1831
1832 * elflink.c (bfd_elf_link_mark_dynamic_symbol): Mark a data
1833 symbol dynamic if info->dynamic_data is TRUE.
1834 (bfd_elf_record_link_assignment): Updated call to
1835 bfd_elf_record_link_assignment.
1836 (_bfd_elf_merge_symbol): Likewise. Always call
1837 bfd_elf_link_mark_dynamic_symbol.
1838
fc523535 18392007-01-12 H.J. Lu <hongjiu.lu@intel.com>
a454209d
L
1840
1841 * Makefile.am (BFD_LIBS): Removed.
1842 * Makefile.in: Regenerated.
1843
fc523535 18442007-01-11 H.J. Lu <hongjiu.lu@intel.com>
21e40a48
L
1845
1846 PR binutils/3631
1847 * Makefile.am (OFILES): Add @bfd64_libs@.
1848 (libbfd_la_SOURCES): Remove $(BFD64_LIBS_CFILES).
1849 * Makefile.in: Regenerated.
1850
1851 * configure.in (bfd_libs): Replaced by ...
1852 (bfd64_libs): This.
1853 * configure: Regenerated.
1854
59e0647f
NS
18552007-01-11 Nathan Sidwell <nathan@codesourcery.com>
1856
1857 * elf.c (assign_file_positions_for_load_sections): We can
1858 require fewer phdrs than expected.
1859
3bdcfdf4
KH
18602007-01-08 Kazu Hirata <kazu@codesourcery.com>
1861
1862 * archures.c (bfd_mach_cpu32_fido): Rename to bfd_mach_fido.
1863 * bfd-in2.h: Regenerate.
1864 * cpu-m68k.c (arch_info_struct): Use bfd_mach_fido instead of
1865 bfd_mach_cpu32_fido.
1866 (m68k_arch_features): Use fido_a instead of cpu32.
1867 (bfd_m68k_compatible): Reject the combination of Fido and
1868 ColdFire. Accept the combination of CPU32 and Fido with a
1869 warning.
1870 * elf32-m68k.c (elf32_m68k_object_p,
1871 elf32_m68k_merge_private_bfd_data,
1872 elf32_m68k_print_private_bfd_data): Treat Fido as an
1873 architecture by itself.
1874
42037fe5
NC
18752007-01-08 Kai Tietz <kai.tietz@onevision.com>
1876
1877 * config.bfd: Renamed target x86_64-*-mingw64 to x86_64-*-mingw*.
1878
ebe8b991
JJ
18792007-01-05 Jakub Jelinek <jakub@redhat.com>
1880
1881 * texhex.c (first_phase): Don't fall through into the default
1882 case.
1883 (pass_over): Replace abort () calls with return FALSE. Fix
1884 buffer overflow.
1885
b327f31f
AM
18862007-01-04 Jie Zhang <jie.zhang@analog.com>
1887
1888 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't set
1889 SEC_EXCLUDE on zero size .eh_frame.
1890
10a2343e 1891For older changes see ChangeLog-2006
56882138
AM
1892\f
1893Local Variables:
1894mode: change-log
1895left-margin: 8
1896fill-column: 74
1897version-control: never
1898End:
This page took 0.475181 seconds and 4 git commands to generate.