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