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