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