xref: /netbsd-src/external/gpl3/binutils.old/dist/bfd/ChangeLog-2005 (revision 75fd0b742a7e4a64301bc6c44e9bc5240c58bb92)
1*75fd0b74Schristos2005-12-31  Valeriy E. Ushakov  <uwe@NetBSD.org>
2*75fd0b74Schristos	    Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3*75fd0b74Schristos
4*75fd0b74Schristos	* elf32-sh.c (sh_elf_relocate_section): Don't reset relocation
5*75fd0b74Schristos	for R_SH_REL32 in shared objects if the symbol is locally called.
6*75fd0b74Schristos
7*75fd0b74Schristos2005-12-31  Alan Modra  <amodra@bigpond.net.au>
8*75fd0b74Schristos
9*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_relocate_section): Adjust relocs against
10*75fd0b74Schristos	opd section sym when opd has been edited.  Use correct addend
11*75fd0b74Schristos	when determining branch 'y' bit and branch overflow.  Adjust and
12*75fd0b74Schristos	save opd relocs for ld -r too.
13*75fd0b74Schristos
14*75fd0b74Schristos2005-12-30  Eric Christopher  <echristo@apple.com>
15*75fd0b74Schristos
16*75fd0b74Schristos	* elfxx-mips.c (mips_elf_record_global_got_symbol): Add assert
17*75fd0b74Schristos	to verify we have a got.
18*75fd0b74Schristos	(_bfd_mips_elf_check_relocs): Add R_MIPS_TLS_GOTTPREL to relocs
19*75fd0b74Schristos	needing a GOT.
20*75fd0b74Schristos
21*75fd0b74Schristos2005-12-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
22*75fd0b74Schristos
23*75fd0b74Schristos	* configure.host (hppa*64*-*-hpux*): Set host64 to true.
24*75fd0b74Schristos
25*75fd0b74Schristos2005-12-29  Nick Clifton  <nickc@redhat.com>
26*75fd0b74Schristos
27*75fd0b74Schristos	* hash.c (bfd_hash_set_default_size): Add more entries to the
28*75fd0b74Schristos	hash_size_primes table.
29*75fd0b74Schristos
30*75fd0b74Schristos	* stabs.c (_bfd_link_section_stabs): Use bfd_hash_table_init
31*75fd0b74Schristos	rather than bfd_hash_table_init_n(...,251) so that the size of the
32*75fd0b74Schristos	hash table can be controlled by the user.
33*75fd0b74Schristos
34*75fd0b74Schristos2005-12-27  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
35*75fd0b74Schristos
36*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Use info->executable
37*75fd0b74Schristos	instead of !info->shared.
38*75fd0b74Schristos
39*75fd0b74Schristos2005-12-27  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
40*75fd0b74Schristos
41*75fd0b74Schristos	* vaxlinux.h: New file. (TRAD_CORE_EXTRA_SIZE_ALLOWED): Define.
42*75fd0b74Schristos	(HOST_MACHINE_ARCH): Define. This allows cross-building vax-linux
43*75fd0b74Schristos	hosted binutils.
44*75fd0b74Schristos
45*75fd0b74Schristos2005-12-27  Nathan Sidwell  <nathan@codesourcery.com>
46*75fd0b74Schristos
47*75fd0b74Schristos	* elf32-mt.c (mt_elf_merge_private_bfd_data): Do not allow mixing
48*75fd0b74Schristos	object files from different mt variants.
49*75fd0b74Schristos
50*75fd0b74Schristos2005-12-27  Leif Ekblad  <leif@rdos.net>
51*75fd0b74Schristos
52*75fd0b74Schristos	* config.bfd: Add support for RDOS targets.
53*75fd0b74Schristos
54*75fd0b74Schristos2005-12-27  Marty Leisner  <leisner@rochester.rr.com>
55*75fd0b74Schristos
56*75fd0b74Schristos	* dwarf2.c (lookup_symbol_in_function_table): Check for a function
57*75fd0b74Schristos	name before passing it to strcmp.
58*75fd0b74Schristos
59*75fd0b74Schristos2005-12-27  Alan Modra  <amodra@bigpond.net.au>
60*75fd0b74Schristos
61*75fd0b74Schristos	* elf.c (elf_find_function): Don't ignore section syms.
62*75fd0b74Schristos	Simplify filename logic.
63*75fd0b74Schristos
64*75fd0b74Schristos2005-12-27  Alan Modra  <amodra@bigpond.net.au>
65*75fd0b74Schristos
66*75fd0b74Schristos	* elf32-ppc.c (add_stub_sym): Pass info rather than htab.
67*75fd0b74Schristos	Use different names for pic vs non-pic, '.' instead of '_'.
68*75fd0b74Schristos	(allocate_dynrelocs): Adjust add_stub_sym call.
69*75fd0b74Schristos
70*75fd0b74Schristos2005-12-27  Alan Modra  <amodra@bigpond.net.au>
71*75fd0b74Schristos
72*75fd0b74Schristos	* elf.c (bfd_section_from_shdr): Treat invalid reloc sections as
73*75fd0b74Schristos	normal sections rather than returning false.
74*75fd0b74Schristos
75*75fd0b74Schristos2005-12-27  Alan Modra  <amodra@bigpond.net.au>
76*75fd0b74Schristos
77*75fd0b74Schristos	* coff-h8300.c (h8300_reloc16_extra_cases): Use input section
78*75fd0b74Schristos	"output_offset" instead of link order "offset".
79*75fd0b74Schristos	* coff-h8500.c (extra_case): Likewise.
80*75fd0b74Schristos	* coff-w65.c (w65_reloc16_extra_cases): Likewise.
81*75fd0b74Schristos	* coff-z80.c (extra_case): Likewise.
82*75fd0b74Schristos	* coff-z8k.c (extra_case): Likewise.
83*75fd0b74Schristos	* linker.c (default_indirect_link_order): Likewise, "size" too.
84*75fd0b74Schristos	* ecoff.c (ecoff_indirect_link_order): Likewise.
85*75fd0b74Schristos
86*75fd0b74Schristos2005-12-27  Alan Modra  <amodra@bigpond.net.au>
87*75fd0b74Schristos
88*75fd0b74Schristos	* Makefile.am: Run "make dep-am".
89*75fd0b74Schristos	* Makefile.in: Regenerate.
90*75fd0b74Schristos	* po/SRC-POTFILES.in: Regenerate.
91*75fd0b74Schristos
92*75fd0b74Schristos2005-12-24  Alan Modra  <amodra@bigpond.net.au>
93*75fd0b74Schristos
94*75fd0b74Schristos	* aix5ppc-core.c: Remove duplicate prototypes.
95*75fd0b74Schristos	(xcoff64_core_file_matches_executable_p): Provide implementation
96*75fd0b74Schristos	for !AIX_5_CORE.
97*75fd0b74Schristos	* corefile.c (generic_core_file_matches_executable_p): Correct
98*75fd0b74Schristos	syntax error in prototype.
99*75fd0b74Schristos	* libbfd-in.h (generic_core_file_matches_executable_p): Delete.
100*75fd0b74Schristos	* libbfd.h: Regenerate.
101*75fd0b74Schristos	* bfd-in2.h: Regenerate.
102*75fd0b74Schristos
103*75fd0b74Schristos2005-12-23  Michael Weiser  <michael@weiser.dinsnail.net>
104*75fd0b74Schristos
105*75fd0b74Schristos	PR 1150
106*75fd0b74Schristos	* elf-bfd.h (struct elf_backend_data): New field
107*75fd0b74Schristos	'elf_backend_ignore_undef_symbol'.
108*75fd0b74Schristos	* elfxx-target.h (elf_backend_ignore_undef_symbol): Define to NULL
109*75fd0b74Schristos	if not already defined.
110*75fd0b74Schristos	(elfNN_bed): Initialise the elf_backend_ignore_undef_symbol field.
111*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): New function.
112*75fd0b74Schristos	* elfxx-mips.h (elf_backend_ignore_undef_symbol): Define and
113*75fd0b74Schristos	prototype.
114*75fd0b74Schristos	* elflink.c (elf_link_output_extsym): Check
115*75fd0b74Schristos	elf_backend_ignore_undef_symbol before reporting an undefined
116*75fd0b74Schristos	symbol in a shared library.
117*75fd0b74Schristos
118*75fd0b74Schristos2005-12-23  Joel Brobecker  <brobecker@adacore.com>
119*75fd0b74Schristos
120*75fd0b74Schristos	* corefile.c (generic_core_file_matches_executable_p): New function.
121*75fd0b74Schristos	* libbfd-in.h (generic_core_file_matches_executable_p): Add
122*75fd0b74Schristos	declaration.
123*75fd0b74Schristos	* libbfd.h: Regenerate.
124*75fd0b74Schristos	* hpux-core.c: ANSIfy function declarations and prototypes.
125*75fd0b74Schristos	(thread_section_p): Manually expand bfd_section_name macro
126*75fd0b74Schristos	to make it clear that parameter ABFD is not used.
127*75fd0b74Schristos	(hpux_core_core_file_matches_executable_p): Delete, replaced
128*75fd0b74Schristos	by macro pointing to generic_core_file_matches_executable_p.
129*75fd0b74Schristos
130*75fd0b74Schristos	* aix386-core.c: Replace core_file_matches_executable_p null
131*75fd0b74Schristos	implementation by generic_core_file_matches_executable_p by
132*75fd0b74Schristos	using a macro.
133*75fd0b74Schristos	* aix5ppc-core.c: Likewise.
134*75fd0b74Schristos	* cisco-core.c: Likewise.
135*75fd0b74Schristos	* hppabsd-core.c: Likewise.
136*75fd0b74Schristos	* irix-core.c: Likewise.
137*75fd0b74Schristos	* lynx-core.c: Likewise.
138*75fd0b74Schristos	* mach-o.c: Likewise.
139*75fd0b74Schristos	* netbsd-core.c: Likewise.
140*75fd0b74Schristos	* osf-core.c: Likewise.
141*75fd0b74Schristos	* ptrace-core.c: Likewise.
142*75fd0b74Schristos	* sco5-core.c: Likewise.
143*75fd0b74Schristos	* trad-core.c: Likewise.
144*75fd0b74Schristos
145*75fd0b74Schristos2005-12-19  David Heine  <dlheine@tensilica.com>
146*75fd0b74Schristos
147*75fd0b74Schristos	* elf32-xtensa.c (action_list_count, xlate_map_entry, xlate_map,
148*75fd0b74Schristos	xlate_offset_with_removed_text, build_xlate_map, free_xlate_map): New.
149*75fd0b74Schristos	(check_section_ebb_pcrels_fit): Build new xlate_map, use it and free it
150*75fd0b74Schristos	when finished.
151*75fd0b74Schristos
152*75fd0b74Schristos2005-12-16  Nathan Sidwell  <nathan@codesourcery.com>
153*75fd0b74Schristos
154*75fd0b74Schristos	Second part of ms1 to mt renaming.
155*75fd0b74Schristos	* archures.c (bfd_arch_mt): Renamed.
156*75fd0b74Schristos	(bfd_mt_arch): Renamed.
157*75fd0b74Schristos	(bfd_archures_list): Adjusted.
158*75fd0b74Schristos	* bfd-in2.h: Rebuilt.
159*75fd0b74Schristos	* config.bfd (mt): Remove special case targ_archs.
160*75fd0b74Schristos	(mt-*-elf): Rename bfd_elf32_mt_vec.
161*75fd0b74Schristos	* configure: Rebuilt.
162*75fd0b74Schristos	* configure.in (bfd_elf32_mt_vec): Renamed.
163*75fd0b74Schristos	(selarchs) Remove mt special case.
164*75fd0b74Schristos	* cpu-mt.c (arch_info_struct): Adjust.
165*75fd0b74Schristos	(bfd_mt_arch): Renamed, adjust.
166*75fd0b74Schristos	* elf32-mt.c (mt_reloc_type_lookup, mt_info_to_howto_rela,
167*75fd0b74Schristos	mt_elf_relocate_hi16, mt_final_link_relocate, mt_relocate_section,
168*75fd0b74Schristos	mt_elf_howto_table): Renamed, adjusted.
169*75fd0b74Schristos	(mt_elf_gc_mark_hook, mt_elf_gc_sweep_hook, mt_elf_check_relocs,
170*75fd0b74Schristos	elf32_mt_machine, mt_elf_object_p, mt_elf_set_private_flags,
171*75fd0b74Schristos	mt_elf_copy_private_bfd_data, mt_elf_merge_private_bfd_data,
172*75fd0b74Schristos	mt_elf_print_private_bfd_data): Renamed, adjusted.
173*75fd0b74Schristos	(TARGET_BIG_SYM, TARGET_BIG_NAME, ELF_ARCH, ELF_MACHINE_CODE,
174*75fd0b74Schristos	ELF_MAXPAGESIZE, elf_info_to_howto, elf_backend_relocate_section,
175*75fd0b74Schristos	bfd_elf32_bfd_reloc_type_lookup, elf_backend_gc_mark_hook,
176*75fd0b74Schristos	elf_backend_gc_sweep_hook, elf_backend_check_relocs,
177*75fd0b74Schristos	eld_backend_object_p, bfd_elf32_bfd_set_private_flags,
178*75fd0b74Schristos	bfd_elf32_bfd_copy_private_bfd_data,
179*75fd0b74Schristos	bfd_elf32_bfd_merge_private_bfd_data,
180*75fd0b74Schristos	bfd_elf32_bfd_print_private_bfd_data): Adjusted.
181*75fd0b74Schristos	* libbfd.h: Regenerated.
182*75fd0b74Schristos	* reloc.c (BFD_RELOC_MT_PC16, BFD_RELOC_MT_HI16,
183*75fd0b74Schristos	BFD_RELOC_MT_LO16, BFD_RELOC_MT_GNU_VTINHERIT,
184*75fd0b74Schristos	BFD_RELOC_MT_GNU_VTENTRY, BFD_RELOC_MT_PCINSN8): Renamed.
185*75fd0b74Schristos	* targets.c (bfd_elf32_mt_vec): Renamed.
186*75fd0b74Schristos	(_bfd_target_vector): Adjusted.
187*75fd0b74Schristos
188*75fd0b74Schristos2005-12-13  H.J. Lu  <hongjiu.lu@intel.com>
189*75fd0b74Schristos
190*75fd0b74Schristos	PR ld/2008
191*75fd0b74Schristos	* elf.c (_bfd_elf_setup_sections): Return FALSE if
192*75fd0b74Schristos	elf_linked_to_section will be set to NULL.
193*75fd0b74Schristos
194*75fd0b74Schristos	* format.c (bfd_check_format_matches): Don't check the default
195*75fd0b74Schristos	target twice.
196*75fd0b74Schristos
197*75fd0b74Schristos2005-12-13  Alan Modra  <amodra@bigpond.net.au>
198*75fd0b74Schristos
199*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_relocate_section): Force tail calls in
200*75fd0b74Schristos	shared libs to resolve locally.
201*75fd0b74Schristos
202*75fd0b74Schristos2005-12-12  Paul Brook  <paul@codesourcery.com>
203*75fd0b74Schristos
204*75fd0b74Schristos	* bfd-in2.h: Regenerate.
205*75fd0b74Schristos	* elf32-arm.c (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PCREL_CALL and
206*75fd0b74Schristos	BFD_RELOC_ARM_PCREL_JUMP.
207*75fd0b74Schristos	(check_use_blx): New function.
208*75fd0b74Schristos	(bfd_elf32_arm_process_before_allocation): Don't allocate glue if
209*75fd0b74Schristos	using BLX.
210*75fd0b74Schristos	(elf32_arm_final_link_relocate): Perform bl<->blx conversion for
211*75fd0b74Schristos	R_ARM_CALL and R_ARM_THM.
212*75fd0b74Schristos	(elf32_arm_get_eabi_attr_int): New function.
213*75fd0b74Schristos	(elf32_arm_size_dynamic_sections): Call check_use_blx.
214*75fd0b74Schristos	* libbfd.h: Regenerate.
215*75fd0b74Schristos	* reloc.c: Add BFD_RELOC_ARM_PCREL_CALL and BFD_RELOC_ARM_PCREL_JUMP.
216*75fd0b74Schristos
217*75fd0b74Schristos2005-12-12  Nathan Sidwell  <nathan@codesourcery.com>
218*75fd0b74Schristos
219*75fd0b74Schristos	* Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES,
220*75fd0b74Schristos	BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Replace ms1 with mt.
221*75fd0b74Schristos	(cpu_mt.lo, elf32-mt.lo): Update target and dependency names.
222*75fd0b74Schristos	* Makefile.in: Rebuilt.
223*75fd0b74Schristos	* config.bfd: Replace ms1 arch with mt.
224*75fd0b74Schristos	* configure.in: Replace ms1 files with mt files.
225*75fd0b74Schristos	* configure: Rebuilt.
226*75fd0b74Schristos	* elf32-mt.c: Renamed from elf32-ms1.c.  Update include files.
227*75fd0b74Schristos	* cpu-mt.c: Renamed from cpu-ms1.c.
228*75fd0b74Schristos
229*75fd0b74Schristos2005-12-12  Alan Modra  <amodra@bigpond.net.au>
230*75fd0b74Schristos
231*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_size_stubs): Don't consider non-ppc64 input.
232*75fd0b74Schristos
233*75fd0b74Schristos2005-12-10  Alan Modra  <amodra@bigpond.net.au>
234*75fd0b74Schristos
235*75fd0b74Schristos	* elflink.c (elf_gc_mark_dynamic_ref_symbol):  Use !info-executable
236*75fd0b74Schristos	to test for linking shared libs, not info->shared.
237*75fd0b74Schristos
238*75fd0b74Schristos2005-12-08  Alan Modra  <amodra@bigpond.net.au>
239*75fd0b74Schristos
240*75fd0b74Schristos	* elf32-ppc.c (struct ppc_elf_link_hash_table): Add emit_stub_syms.
241*75fd0b74Schristos	(ppc_elf_select_plt_layout): Add emit_stub_syms param, save to htab.
242*75fd0b74Schristos	(add_stub_sym): New function.
243*75fd0b74Schristos	(allocate_dynrelocs): Call add_stub_sym.
244*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Emit __glink and __glink_PLTresolve
245*75fd0b74Schristos	when emit_stub_syms.
246*75fd0b74Schristos	* elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
247*75fd0b74Schristos
248*75fd0b74Schristos2005-12-08  Alan Modra  <amodra@bigpond.net.au>
249*75fd0b74Schristos
250*75fd0b74Schristos	* reloc.c (enum complain_overflow): Correct comments.
251*75fd0b74Schristos	(bfd_check_overflow): Combine complain_overflow_bitfield and
252*75fd0b74Schristos	complain_overflow_signed code.
253*75fd0b74Schristos	(_bfd_relocate_contents): Likewise.
254*75fd0b74Schristos	(bfd_howto_32): Use complain_overflow_dont.
255*75fd0b74Schristos	* elf32-d10v.c (elf_d10v_howto_table): Revert 2002-06-17 change.
256*75fd0b74Schristos	* bfd-in2.h: Regenerate.
257*75fd0b74Schristos
258*75fd0b74Schristos2005-12-07  H.J. Lu  <hongjiu.lu@intel.com>
259*75fd0b74Schristos
260*75fd0b74Schristos	* elf.c (assign_section_numbers): Remove extra code in the last
261*75fd0b74Schristos	change.
262*75fd0b74Schristos
263*75fd0b74Schristos2005-12-07  H.J. Lu  <hongjiu.lu@intel.com>
264*75fd0b74Schristos	    Andreas Schwab  <schwab@suse.de>
265*75fd0b74Schristos
266*75fd0b74Schristos	PR binutils/1991
267*75fd0b74Schristos	* elf.c (assign_section_numbers): Always use the output section
268*75fd0b74Schristos	when setting up sh_link for SHF_LINK_ORDER.
269*75fd0b74Schristos
270*75fd0b74Schristos2005-12-07  Thiemo Seufer  <ths@networkno.de>
271*75fd0b74Schristos	    H.J. Lu  <hongjiu.lu@intel.com>
272*75fd0b74Schristos
273*75fd0b74Schristos	PR ld/1932
274*75fd0b74Schristos	* bfd-in.h (bfd_elf_record_link_assignment): Add output_bfd
275*75fd0b74Schristos	and hidden arguments.
276*75fd0b74Schristos
277*75fd0b74Schristos	* bfd.c (bfd_hide_symbol): Removed.
278*75fd0b74Schristos
279*75fd0b74Schristos	* bfd-in2.h: Regenerated.
280*75fd0b74Schristos
281*75fd0b74Schristos	* elflink.c (bfd_elf_record_link_assignment): Handle hidden
282*75fd0b74Schristos	symbols which were provided by a linker script.
283*75fd0b74Schristos
284*75fd0b74Schristos2005-12-06  Paul Gilliam  <pgilliam@us.ibm.com>
285*75fd0b74Schristos
286*75fd0b74Schristos	* cpu-powerpc.c (bfd_powerpc_archs): Add ppc 750.
287*75fd0b74Schristos
288*75fd0b74Schristos2005-11-18  Mark Kettenis  <kettenis@gnu.org>
289*75fd0b74Schristos
290*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_section_from_phdr): Create .kernel
291*75fd0b74Schristos	pseudo-section.  Make sure .reg section comes after the proc
292*75fd0b74Schristos	section it's generated from.
293*75fd0b74Schristos
294*75fd0b74Schristos2005-12-01  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
295*75fd0b74Schristos
296*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_sweep_hook): Fix an illegal duplicate check.
297*75fd0b74Schristos	(m32r_elf_relocate_section): Fix R_M32R_10_PCREL_RELA linkage bug.
298*75fd0b74Schristos	(m32r_elf_gc_sweep_hook): Likewise.
299*75fd0b74Schristos	(m32r_elf_check_relocs): Likewise.
300*75fd0b74Schristos
301*75fd0b74Schristos2005-11-24  Alan Modra  <amodra@bigpond.net.au>
302*75fd0b74Schristos
303*75fd0b74Schristos	* elf-bfd.h (_bfd_generic_match_sections_by_type): Don't define.
304*75fd0b74Schristos	* libbfd-in.h (_bfd_generic_match_sections_by_type): Delete.
305*75fd0b74Schristos	* libbfd.c (_bfd_generic_match_sections_by_type): Delete.
306*75fd0b74Schristos	* targets.c (bfd_match_sections_by_type): Don't define.
307*75fd0b74Schristos	(BFD_JUMP_TABLE_LINK): Remove _bfd_generic_match_sections_by_type.
308*75fd0b74Schristos	* coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
309*75fd0b74Schristos	* coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
310*75fd0b74Schristos	* bfd-in2.h: Regenerate.
311*75fd0b74Schristos	* libbfd.h: Regenerate.
312*75fd0b74Schristos
313*75fd0b74Schristos2005-11-23  Daniel Jacobowitz  <dan@codesourcery.com>
314*75fd0b74Schristos	    Thiemo Seufer <ths@networkno.de>
315*75fd0b74Schristos
316*75fd0b74Schristos	* elf32-mips.c (elf_mips_howto_table_rel): Use rightshift 2 for
317*75fd0b74Schristos	R_MIPS_PC16.
318*75fd0b74Schristos	(mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16.
319*75fd0b74Schristos	(bfd_elf32_bfd_reloc_type_lookup): Don't handle
320*75fd0b74Schristos	BFD_RELOC_16_PCREL_S2.
321*75fd0b74Schristos	* elf64-mips.c (mips_elf64_howto_table_rel): Use rightshift 2 for
322*75fd0b74Schristos	R_MIPS_PC16.
323*75fd0b74Schristos	(mips_elf64_howto_table_rela): Likewise.
324*75fd0b74Schristos	(mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16.
325*75fd0b74Schristos	(bfd_elf64_bfd_reloc_type_lookup): Don't handle
326*75fd0b74Schristos	BFD_RELOC_16_PCREL_S2.
327*75fd0b74Schristos	* elfn32-mips.c (elf_mips_howto_table_rel): Use rightshift 2 for
328*75fd0b74Schristos	R_MIPS_PC16.
329*75fd0b74Schristos	(elf_mips_howto_table_rela): Likewise.
330*75fd0b74Schristos	(mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16.
331*75fd0b74Schristos	(bfd_elf32_bfd_reloc_type_lookup): Don't handle
332*75fd0b74Schristos	BFD_RELOC_16_PCREL_S2.
333*75fd0b74Schristos	* elfxx-mips.c: Formatting fixes.
334*75fd0b74Schristos	(mips_elf_calculate_relocation): Handle R_MIPS_GNU_REL16_S2
335*75fd0b74Schristos	and R_MIPS_PC16 identically.
336*75fd0b74Schristos
337*75fd0b74Schristos2005-11-23  Frederic Riss  <frederic.riss@st.com>
338*75fd0b74Schristos
339*75fd0b74Schristos	* elfcode.h (elf_object_p): Delay the setting of start_address
340*75fd0b74Schristos	until we're sure the backend matches the binary.
341*75fd0b74Schristos
342*75fd0b74Schristos2005-11-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
343*75fd0b74Schristos
344*75fd0b74Schristos	* som.c (som_decode_symclass): Decode BSF_WEAK symbols in the same
345*75fd0b74Schristos	manner as bfd_decode_symclass.
346*75fd0b74Schristos
347*75fd0b74Schristos2005-11-18  Alan Modra  <amodra@bigpond.net.au>
348*75fd0b74Schristos
349*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_check_relocs): Don't set has_14bit_branch
350*75fd0b74Schristos	on branches to same section.
351*75fd0b74Schristos
352*75fd0b74Schristos2005-11-17  Randolph Chung  <tausq@debian.org>
353*75fd0b74Schristos
354*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_object_p): Recognize corefiles under
355*75fd0b74Schristos	hppa64-hp-hpux11.11.
356*75fd0b74Schristos	(elf64_hppa_section_from_phdr): New function.
357*75fd0b74Schristos	(elf_backend_section_from_phdr): Define.
358*75fd0b74Schristos
359*75fd0b74Schristos2005-11-11  Nick Clifton  <nickc@redhat.com>
360*75fd0b74Schristos
361*75fd0b74Schristos	PR 1150
362*75fd0b74Schristos	* elfxx-mips.c (mips_elf_calculate_relocation): Ignore an
363*75fd0b74Schristos	undefined symbol if it is optional.
364*75fd0b74Schristos	(_bfd_mips_elf_merge_symbol_attribute): Make sure that the
365*75fd0b74Schristos	optional flag is merged as well as the visibility.
366*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_merge_symbol_attribute): Prototype.
367*75fd0b74Schristos	(elf_backend_merge_symbol_attribute): Define.
368*75fd0b74Schristos
369*75fd0b74Schristos2005-11-08  Nathan Sidwell  <nathan@codesourcery.com>
370*75fd0b74Schristos
371*75fd0b74Schristos	Add ms2 support
372*75fd0b74Schristos	* archures.c (bfd_mach_ms2): Define.
373*75fd0b74Schristos	* cpu-ms1.c (arch_info_struct): Add ms2 stanza.
374*75fd0b74Schristos	* elf32-ms1.c (elf32_ms1_machine): Add ms2 case.
375*75fd0b74Schristos	(ms1_elf_merge_private_bfd_data): Remove unused variables.  Add
376*75fd0b74Schristos	correct merging logic, with workaround.
377*75fd0b74Schristos	(ms1_elf_print_private_bfd_data): Add ms2 case.
378*75fd0b74Schristos	* reloc.c (BFD_RELOC_MS1_PCINSN8): Add ms2 specific reloc.
379*75fd0b74Schristos	* libbfd.h: Regenerated.
380*75fd0b74Schristos	* bfd-in2.h: Regenerated.
381*75fd0b74Schristos
382*75fd0b74Schristos2005-11-07  Steve Ellcey  <sje@cup.hp.com>
383*75fd0b74Schristos
384*75fd0b74Schristos	* warning.m4 (AM_BINUTILS_WARNINGS): Default to empty string
385*75fd0b74Schristos	if compiler is not GCC.
386*75fd0b74Schristos	* configure: Regenerate
387*75fd0b74Schristos
388*75fd0b74Schristos2005-11-07  Steve Ellcey  <sje@cup.hp.com>
389*75fd0b74Schristos
390*75fd0b74Schristos	* configure: Regenerate after modifying bfd/warning.m4.
391*75fd0b74Schristos
392*75fd0b74Schristos2005-11-07  Steve Ellcey  <sje@cup.hp.com>
393*75fd0b74Schristos
394*75fd0b74Schristos	* configure.host (ia64-*-hpux*): Set _LARGEFILE64_SOURCE.
395*75fd0b74Schristos
396*75fd0b74Schristos2005-11-03  Daniel Jacobowitz  <dan@codesourcery.com>
397*75fd0b74Schristos
398*75fd0b74Schristos	* configure.in: Check for fopen64.
399*75fd0b74Schristos	* libbfd-in.h (real_fopen): New prototype.
400*75fd0b74Schristos	* configure, config.in, libbfd.h: Regenerated.
401*75fd0b74Schristos	* bfdio.c (real_fopen): New function.
402*75fd0b74Schristos	* opncls.c (bfd_fopen, bfd_fill_in_gnu_debuglink_section): Use it.
403*75fd0b74Schristos	* cache.c (bfd_open_file): Likewise.
404*75fd0b74Schristos
405*75fd0b74Schristos2005-11-03  Thiemo Seufer  <ths@networkno.de>
406*75fd0b74Schristos
407*75fd0b74Schristos	* elfxx-mips.c (mips_elf_calculate_relocation): Handle only
408*75fd0b74Schristos	forced local symbols here.
409*75fd0b74Schristos	(mips_elf_create_dynamic_relocation): Likewise.
410*75fd0b74Schristos	(_bfd_mips_elf_finish_dynamic_symbol): Fix typo in comment.
411*75fd0b74Schristos
412*75fd0b74Schristos2005-11-03  Alan Modra  <amodra@bigpond.net.au>
413*75fd0b74Schristos
414*75fd0b74Schristos	* elf.c (elf_fake_sections): When calculating tbss size, just use
415*75fd0b74Schristos	the last link_order.
416*75fd0b74Schristos	(assign_file_positions_for_segments): Likewise.
417*75fd0b74Schristos	* elflink.c (bfd_elf_final_link): Likewise.
418*75fd0b74Schristos	(elf_reloc_link_order): Correct comment.
419*75fd0b74Schristos
420*75fd0b74Schristos2005-11-02  Alan Modra  <amodra@bigpond.net.au>
421*75fd0b74Schristos
422*75fd0b74Schristos	PR ld/1775
423*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Add required
424*75fd0b74Schristos	parentheses.
425*75fd0b74Schristos
426*75fd0b74Schristos2005-10-29  H.J. Lu  <hongjiu.lu@intel.com>
427*75fd0b74Schristos
428*75fd0b74Schristos	* Makefile.am: Run "make dep-am".
429*75fd0b74Schristos	* Makefile.in: Regenerated.
430*75fd0b74Schristos
431*75fd0b74Schristos	* dep-in.sed: Replace " ./" with " ".
432*75fd0b74Schristos
433*75fd0b74Schristos2005-10-29  H.J. Lu  <hongjiu.lu@intel.com>
434*75fd0b74Schristos
435*75fd0b74Schristos	* hpux-core.c: Include <machine/reg.h> only if HPUX_CORE is
436*75fd0b74Schristos	define.
437*75fd0b74Schristos	* osf-core.c: Include <sys/core.h> only if OSF_CORE is defined.
438*75fd0b74Schristos	* sco5-core.c: Include <sys/paccess.h> and <sys/region.h> only
439*75fd0b74Schristos	if SCO5_CORE is defined.
440*75fd0b74Schristos
441*75fd0b74Schristos2005-10-29  Mark Kettenis  <kettenis@gnu.org>
442*75fd0b74Schristos
443*75fd0b74Schristos	* Makefile.am: Run "make dep-am".
444*75fd0b74Schristos	* Makefile.in: Regenerate.
445*75fd0b74Schristos
446*75fd0b74Schristos2005-10-28  Joel Brobecker  <brobecker@adacore.com>
447*75fd0b74Schristos
448*75fd0b74Schristos	From Eric Botcazou  <botcazou@adacore.com>
449*75fd0b74Schristos	* coffcode.h (coff_compute_section_file_positions): Fix small
450*75fd0b74Schristos	error in preprocessor directives.
451*75fd0b74Schristos
452*75fd0b74Schristos2005-10-28  Joel Brobecker  <brobecker@adacore.com>
453*75fd0b74Schristos
454*75fd0b74Schristos	Mostly from Eric Botcazou <botcazou@adacore.com>
455*75fd0b74Schristos	* rs6000-core.c: ANSIfy all function definitions.
456*75fd0b74Schristos	Add missing function prototypes.
457*75fd0b74Schristos	(ptr_to_uint): New type.
458*75fd0b74Schristos	(rs6000coff_core_p): Use it as intermediate step in casts.
459*75fd0b74Schristos	(rs6000coff_core_file_matches_executable_p): Likewise.
460*75fd0b74Schristos	* xcoff-target.h (rs6000coff_core_p): Fix prototype.
461*75fd0b74Schristos	(rs6000coff_core_file_matches_executable_p): Likewise.
462*75fd0b74Schristos
463*75fd0b74Schristos2005-10-28  H.J. Lu  <hongjiu.lu@intel.com>
464*75fd0b74Schristos
465*75fd0b74Schristos	PR binutils/1472
466*75fd0b74Schristos	* aoutx.h (NAME (aout, machine_type)): Handle
467*75fd0b74Schristos	bfd_mach_sparc_v8plus, bfd_mach_sparc_v8plusa,
468*75fd0b74Schristos	bfd_mach_sparc_v8plusb, bfd_mach_sparc_v9, bfd_mach_sparc_v9a
469*75fd0b74Schristos	and bfd_mach_sparc_v9b.
470*75fd0b74Schristos
471*75fd0b74Schristos2005-10-28  Hans-Peter Nilsson  <hp@axis.com>
472*75fd0b74Schristos
473*75fd0b74Schristos	PR ld/1567
474*75fd0b74Schristos	* elf32-cris.c (cris_elf_howto_table) <R_CRIS_32>: Set
475*75fd0b74Schristos	complain_on_overflow field to complain_overflow_dont.
476*75fd0b74Schristos
477*75fd0b74Schristos2005-10-27  Alan Modra  <amodra@bigpond.net.au>
478*75fd0b74Schristos
479*75fd0b74Schristos	PR 973
480*75fd0b74Schristos	* cache.c (enum cache_flag): New.
481*75fd0b74Schristos	(close_one): Save file mtime.
482*75fd0b74Schristos	(bfd_cache_lookup): Add flag arg, adjust all users.
483*75fd0b74Schristos	(bfd_cache_lookup_worker): Likewise.
484*75fd0b74Schristos	(cache_btell): Use CACHE_NO_OPEN and return abfd->where if file
485*75fd0b74Schristos	not open.
486*75fd0b74Schristos	(cache_bflush): Similarly, and return success of file not open.
487*75fd0b74Schristos	(cache_bseek): Use CACHE_NO_SEEK if SEEK_SET or SEEK_END.
488*75fd0b74Schristos	(cache_bstat): Use CACHE_NO_SEEK_ERROR.
489*75fd0b74Schristos
490*75fd0b74Schristos	* bfdwin.c (bfd_get_file_window): Seek into file in place of
491*75fd0b74Schristos	using bfd_cache_lookup.
492*75fd0b74Schristos
493*75fd0b74Schristos	* cache.c (BFD_CACHE_MAX_OPEN): Make private to this file.
494*75fd0b74Schristos	(bfd_last_cache, bfd_cache_lookup, bfd_cache_lookup_worker): Likewise.
495*75fd0b74Schristos	* libbfd-in.h (bfd_cache_lookup_worker, bfd_last_cache): Delete.
496*75fd0b74Schristos	* libbfd.h: Regenerate.
497*75fd0b74Schristos
498*75fd0b74Schristos	* hppabsd-core.c (hppabsd_core_core_file_p): Use bfd_stat, not fstat.
499*75fd0b74Schristos	* sco5-core.c (sco5_core_file_p): Likewise.
500*75fd0b74Schristos	* trad-core.c (trad_unix_core_file_p): Likewise.
501*75fd0b74Schristos
502*75fd0b74Schristos	* cache.c: Reorganize file to avoid forward reference.
503*75fd0b74Schristos
504*75fd0b74Schristos2005-10-26  Alan Modra  <amodra@bigpond.net.au>
505*75fd0b74Schristos
506*75fd0b74Schristos	* cache.c (bfd_cache_lookup_worker): Don't abort on failing to
507*75fd0b74Schristos	reopen file.
508*75fd0b74Schristos	(cache_btell, cache_bseek, cache_bflush, cache_bstat): Return -1 on
509*75fd0b74Schristos	bfd_cache_lookup failure.
510*75fd0b74Schristos	(cache_bread, cache_bwrite): Return 0 on the same.
511*75fd0b74Schristos	* bfdwin.c (bfd_get_file_window): Likewise.
512*75fd0b74Schristos	* hppabsd-core.c (hppabsd_core_core_file_p): Likewise.
513*75fd0b74Schristos	* sco5-core.c (sco5_core_file_p): Likewise.
514*75fd0b74Schristos	* trad-core.c (trad_unix_core_file_p): Likewise.
515*75fd0b74Schristos
516*75fd0b74Schristos2005-10-26  Alan Modra  <amodra@bigpond.net.au>
517*75fd0b74Schristos
518*75fd0b74Schristos	* cache.c (bfd_cache_lookup_worker): Use bfd_error_handler
519*75fd0b74Schristos	rather than bfd_perror.  Print file name.  Internationalise.
520*75fd0b74Schristos
521*75fd0b74Schristos2005-10-26  Alan Modra  <amodra@bigpond.net.au>
522*75fd0b74Schristos
523*75fd0b74Schristos	* cache.c (bfd_open_file): Set bfd_error_system_call on failure
524*75fd0b74Schristos	to open file.
525*75fd0b74Schristos	(bfd_cache_lookup_worker): Remove check that file pos is in
526*75fd0b74Schristos	unsigned long range.  Print system error before aborting.
527*75fd0b74Schristos
528*75fd0b74Schristos2005-10-25  Arnold Metselaar  <arnold.metselaar@planet.nl>
529*75fd0b74Schristos
530*75fd0b74Schristos	* Makefile.am: Add rules for coff-z80 and cpu-z80.
531*75fd0b74Schristos	* Makefile.in: Regenerated.
532*75fd0b74Schristos	* archures.c: Add bfd_arch_z80 and support for it.
533*75fd0b74Schristos	* coffcode.h(coff_set_arch_mach_hook): Add case Z80MAGIC.
534*75fd0b74Schristos	(coff_set_flags): Add case bfd_arch_z80.
535*75fd0b74Schristos	* config.bfd: Add z80coff_vec.
536*75fd0b74Schristos	* configure.in: Add z80coff_vec.
537*75fd0b74Schristos	* reloc.c: Add BFD_RELOC_Z80_DISP8
538*75fd0b74Schristos	* targets.c: Add z80coff_vec.
539*75fd0b74Schristos	* coff-z80.c: New file
540*75fd0b74Schristos	* cpu-z80.c: New file
541*75fd0b74Schristos	* configure: Regenerated.
542*75fd0b74Schristos	* libbfd.h: Regenerated.
543*75fd0b74Schristos	* bfd-in2.h: Regenerated.
544*75fd0b74Schristos
545*75fd0b74Schristos2005-10-26  Alan Modra  <amodra@bigpond.net.au>
546*75fd0b74Schristos
547*75fd0b74Schristos	PR ld/1540
548*75fd0b74Schristos	* elf-bfd.h (elf_backend_copy_indirect_symbol): Replace pointer to
549*75fd0b74Schristos	elf_backend_data with pointer to bfd_link_info.
550*75fd0b74Schristos	(_bfd_elf_link_hash_copy_indirect): Likewise.
551*75fd0b74Schristos	* elf.c (_bfd_elf_link_hash_copy_indirect): Likewise.  Handle
552*75fd0b74Schristos	direct and indirect symbols both having dynamic link info.
553*75fd0b74Schristos	* elf32-arm.c (elf32_arm_copy_indirect_symbol): Likewise.
554*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
555*75fd0b74Schristos	* elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
556*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_copy_indirect_symbol): Likewise.
557*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_copy_indirect_symbol): Likewise.
558*75fd0b74Schristos	* elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
559*75fd0b74Schristos	* elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise.
560*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
561*75fd0b74Schristos	* elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
562*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise.
563*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
564*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise.
565*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_copy_indirect_symbol): Likewise.
566*75fd0b74Schristos	* elflink.c: Adjust all calls to bed->elf_backend_copy_indirect_symbol.
567*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Update prototype.
568*75fd0b74Schristos	* elfxx-sparc.h (_bfd_sparc_elf_copy_indirect_symbol): Likewise.
569*75fd0b74Schristos
570*75fd0b74Schristos2005-10-25  Alan Modra  <amodra@bigpond.net.au>
571*75fd0b74Schristos
572*75fd0b74Schristos	* po/SRC-POTFILES.in: Regenerate.
573*75fd0b74Schristos	* po/bfd.pot: Regenerate.
574*75fd0b74Schristos
575*75fd0b74Schristos2005-10-24  Jie Zhang <jie.zhang@analog.com>
576*75fd0b74Schristos
577*75fd0b74Schristos	* elf32-bfin.c (bfd_bfin_elf32_create_embedded_relocs): Fix signedness
578*75fd0b74Schristos	warning.
579*75fd0b74Schristos
580*75fd0b74Schristos2005-10-24  Bernd Schmidt  <bernd.schmidt@analog.com>
581*75fd0b74Schristos
582*75fd0b74Schristos	* elf32-bfin.c (bfin_howto_table): Set src_mask to 0 for all relocs.
583*75fd0b74Schristos	(bfin_imm16_reloc): Always add in the addend.  Don't fetch existing
584*75fd0b74Schristos	contents from section.
585*75fd0b74Schristos	(bfin_relocate_section): Rework so as to not call special_functions.
586*75fd0b74Schristos	Handle the relocation stack here.  Treat pcrel24 relocs specially.
587*75fd0b74Schristos
588*75fd0b74Schristos2005-10-24  Alan Modra  <amodra@bigpond.net.au>
589*75fd0b74Schristos
590*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Don't use linker_mark and
591*75fd0b74Schristos	SEC_EXCLUDE to test for sections dropped from output.  Instead,
592*75fd0b74Schristos	use bfd_section_removed_from_list on normal sections.  Don't
593*75fd0b74Schristos	attempt to handle symbols with unknown reserved section indices.
594*75fd0b74Schristos	* linker.c (_bfd_generic_link_output_symbols): Don't use
595*75fd0b74Schristos	linker_mark to test for symbols belonging to dropped sections.
596*75fd0b74Schristos	Do allow absolute symbols.
597*75fd0b74Schristos
598*75fd0b74Schristos2005-10-24  Alan Modra  <amodra@bigpond.net.au>
599*75fd0b74Schristos
600*75fd0b74Schristos	* elf32-i370.c (i370_elf_fake_sections): Don't set SHF_EXCLUDE on
601*75fd0b74Schristos	group sections.
602*75fd0b74Schristos
603*75fd0b74Schristos2005-10-24  Jan Beulich  <jbeulich@novell.com>
604*75fd0b74Schristos
605*75fd0b74Schristos	* cpu-ia64-opc.c (elf64_ia64_operands): Move memory operand out of
606*75fd0b74Schristos	set of indirect operands.
607*75fd0b74Schristos
608*75fd0b74Schristos2005-10-24  Alan Modra  <amodra@bigpond.net.au>
609*75fd0b74Schristos
610*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_fake_sections): Don't set SHF_EXCLUDE on
611*75fd0b74Schristos	group sections.
612*75fd0b74Schristos
613*75fd0b74Schristos2005-10-23  H.J. Lu  <hongjiu.lu@intel.com>
614*75fd0b74Schristos
615*75fd0b74Schristos	* coff-rs6000.c (rs6000coff_vec): Initialize
616*75fd0b74Schristos	_bfd_init_private_section_data with
617*75fd0b74Schristos	_bfd_generic_init_private_section_data.
618*75fd0b74Schristos	(pmac_xcoff_vec): Likewise.
619*75fd0b74Schristos	* coff64-rs6000.c (rs6000coff64_vec): Likewise.
620*75fd0b74Schristos	(aix5coff64_vec): Likewise.
621*75fd0b74Schristos
622*75fd0b74Schristos2005-10-23  H.J. Lu  <hongjiu.lu@intel.com>
623*75fd0b74Schristos
624*75fd0b74Schristos	PR ld/1487
625*75fd0b74Schristos	* elf-bfd.h (_bfd_generic_init_private_section_data): New.
626*75fd0b74Schristos	(_bfd_elf_init_private_section_data): New.
627*75fd0b74Schristos
628*75fd0b74Schristos	* elf.c (elf_fake_sections): Don't set SHF_GROUP for
629*75fd0b74Schristos	relocatable link.
630*75fd0b74Schristos	(bfd_elf_set_group_contents): Don't handle relocatable link
631*75fd0b74Schristos	specially.
632*75fd0b74Schristos	(assign_section_numbers): If it isn't called by assembler,
633*75fd0b74Schristos	use the output section of elf_linked_to_section for
634*75fd0b74Schristos	SHF_LINK_ORDER.
635*75fd0b74Schristos	(_bfd_elf_init_private_section_data): New.
636*75fd0b74Schristos	(_bfd_elf_copy_private_section_data): Call it.
637*75fd0b74Schristos
638*75fd0b74Schristos	* libbfd-in.h (_bfd_generic_init_private_section_data): New.
639*75fd0b74Schristos
640*75fd0b74Schristos	* libbfd.c (_bfd_generic_init_private_section_data): New.
641*75fd0b74Schristos
642*75fd0b74Schristos	* targets.c (BFD_JUMP_TABLE_COPY): Add
643*75fd0b74Schristos	_bfd_generic_init_private_section_data.
644*75fd0b74Schristos	(bfd_init_private_section_data): Likewise.
645*75fd0b74Schristos
646*75fd0b74Schristos	* bfd-in2.h: Regenerated.
647*75fd0b74Schristos	* libbfd.h: Likewise.
648*75fd0b74Schristos
649*75fd0b74Schristos2005-10-23  Alan Modra  <amodra@bigpond.net.au>
650*75fd0b74Schristos
651*75fd0b74Schristos	* elf64-ppc.c (dec_dynrel_count): Don't report errors for local
652*75fd0b74Schristos	syms in gc'd sections.
653*75fd0b74Schristos	(ppc64_elf_edit_opd): Don't adjust reloc counts when NO_OPD_RELOCS.
654*75fd0b74Schristos	(elf_backend_action_discarded): Define.
655*75fd0b74Schristos	(ppc64_elf_action_discarded): New function.
656*75fd0b74Schristos
657*75fd0b74Schristos2005-10-19  Paul Brook  <paul@codesourcery.com>
658*75fd0b74Schristos
659*75fd0b74Schristos	* elf32-arm.c (find_arm_elf_section_entry): New function.
660*75fd0b74Schristos	(get_arm_elf_section_data): Use it.
661*75fd0b74Schristos	(unrecord_section_with_arm_elf_section_data): Use it.
662*75fd0b74Schristos
663*75fd0b74Schristos2005-10-15  H.J. Lu  <hongjiu.lu@intel.com>
664*75fd0b74Schristos
665*75fd0b74Schristos	* coff-rs6000.c (rs6000coff_vec): Initialize
666*75fd0b74Schristos	_bfd_match_sections_by_type with
667*75fd0b74Schristos	_bfd_generic_match_sections_by_type.
668*75fd0b74Schristos	(pmac_xcoff_vec): Likewise.
669*75fd0b74Schristos	* coff64-rs6000.c (rs6000coff64_vec): Likewise.
670*75fd0b74Schristos	(aix5coff64_vec): Likewise.
671*75fd0b74Schristos
672*75fd0b74Schristos2005-10-15  H.J. Lu  <hongjiu.lu@intel.com>
673*75fd0b74Schristos
674*75fd0b74Schristos	PR ld/1467
675*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_match_sections_by_type): New.
676*75fd0b74Schristos	(_bfd_generic_match_sections_by_type): New. Defined.
677*75fd0b74Schristos
678*75fd0b74Schristos	* elf.c (_bfd_elf_match_sections_by_type): New.
679*75fd0b74Schristos
680*75fd0b74Schristos	* libbfd-in.h (_bfd_generic_match_sections_by_type): New.
681*75fd0b74Schristos
682*75fd0b74Schristos	* bfd-in2.h: Regenerated.
683*75fd0b74Schristos	* libbfd.h: Likewise.
684*75fd0b74Schristos
685*75fd0b74Schristos	* libbfd.c (_bfd_generic_match_sections_by_type): New.
686*75fd0b74Schristos
687*75fd0b74Schristos	* targets.c (BFD_JUMP_TABLE_LINK): Initialize
688*75fd0b74Schristos	_bfd_match_sections_by_type with
689*75fd0b74Schristos	_bfd_generic_match_sections_by_type.
690*75fd0b74Schristos	(bfd_target): Add _bfd_match_sections_by_type.
691*75fd0b74Schristos
692*75fd0b74Schristos2005-10-08  Paul Brook  <paul@codesourcery.com>
693*75fd0b74Schristos
694*75fd0b74Schristos	* elf32-arm.c: Move #include "elf/arm.h" after libbfd.h.
695*75fd0b74Schristos	(NUM_KNOWN_ATTRIBUTES): Define.
696*75fd0b74Schristos	(aeabi_attribute, aeabi_attribute_list): Define.
697*75fd0b74Schristos	(elf32_arm_obj_tdata): Add known_eabi_attributes and
698*75fd0b74Schristos	other_eabi_attributes.
699*75fd0b74Schristos	(uleb128_size, is_default_attr, eabi_attr_size,
700*75fd0b74Schristos	elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
701*75fd0b74Schristos	elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
702*75fd0b74Schristos	elf32_arm_new_eabi_attr, attr_strdup, elf32_arm_add_eabi_attr_int,
703*75fd0b74Schristos	elf32_arm_add_eabi_attr_compat, copy_eabi_attributes,
704*75fd0b74Schristos	elf32_arm_merge_eabi_attributes): New functions.
705*75fd0b74Schristos	(elf32_arm_copy_private_bfd_data): Copy EABI object attributes.
706*75fd0b74Schristos	(elf32_arm_fake_sections): Handle .ARM.attributes.
707*75fd0b74Schristos	(elf32_arm_parse_attributes): New function.
708*75fd0b74Schristos	(elf32_arm_section_from_shdr): Use it.
709*75fd0b74Schristos	(bfd_elf32_bfd_final_link): Define.
710*75fd0b74Schristos
711*75fd0b74Schristos2005-10-06  Daniel Jacobowitz  <dan@codesourcery.com>
712*75fd0b74Schristos
713*75fd0b74Schristos	* elf32-arm.c (elf32_arm_check_relocs): Avoid aliasing warnings from
714*75fd0b74Schristos	GCC.
715*75fd0b74Schristos	(elf32_arm_size_dynamic_sections): Likewise.
716*75fd0b74Schristos	* ecofflink.c (bfd_ecoff_debug_one_external): Likewise.
717*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
718*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_check_relocs): Likewise.
719*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
720*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_check_relocs): Likewise.
721*75fd0b74Schristos	* elf32-s390.c (elf_s390_check_relocs): Likewise.
722*75fd0b74Schristos	(elf_s390_size_dynamic_sections): Likewise.
723*75fd0b74Schristos	* elf32-sh.c (sh_elf_check_relocs): Likewise.
724*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_check_relocs, dec_dynrel_count)
725*75fd0b74Schristos	(ppc64_elf_size_dynamic_sections): Likewise.
726*75fd0b74Schristos	* elf64-s390.c (elf_s390_check_relocs): Likewise.
727*75fd0b74Schristos	(elf_s390_size_dynamic_sections): Likewise.
728*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise.
729*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
730*75fd0b74Schristos	(_bfd_sparc_elf_size_dynamic_sections): Likewise.
731*75fd0b74Schristos	* ieee.c (ieee_slurp_section_data): Likewise.
732*75fd0b74Schristos	* oasys.c (oasys_slurp_section_data): Likewise.
733*75fd0b74Schristos
734*75fd0b74Schristos2005-10-04  Bob Wilson  <bob.wilson@acm.org>
735*75fd0b74Schristos
736*75fd0b74Schristos	* archive.c: Add missing SUBSECTION for documentation.
737*75fd0b74Schristos	* bfd.c: Likewise.
738*75fd0b74Schristos	* cache.c: Likewise.
739*75fd0b74Schristos	* corefile.c: Likewise.
740*75fd0b74Schristos	* format.c: Likewise.
741*75fd0b74Schristos	* init.c: Likewise.
742*75fd0b74Schristos	* libbfd.c: Likewise.
743*75fd0b74Schristos	* opncls.c: Likewise.
744*75fd0b74Schristos	* elf.c: Remove blank line after SECTION heading.
745*75fd0b74Schristos	* reloc.c: Change "howto manager" SECTION to a SUBSECTION.
746*75fd0b74Schristos
747*75fd0b74Schristos2005-10-04  Nick Clifton  <nickc@redhat.com>
748*75fd0b74Schristos
749*75fd0b74Schristos	* elf32-arm.c (get_arm_elf_section_data): Cache the last pointer
750*75fd0b74Schristos	matched so that the typical case of scanning for the previous
751*75fd0b74Schristos	section to last one can be handled quickly.
752*75fd0b74Schristos
753*75fd0b74Schristos2005-10-03  David Heine  <dlheine@tensilica.com>
754*75fd0b74Schristos
755*75fd0b74Schristos	* elf32-xtensa.c (relocations_reach): Skip range check for
756*75fd0b74Schristos	absolute literals.
757*75fd0b74Schristos
758*75fd0b74Schristos2005-10-03  Alan Modra  <amodra@bigpond.net.au>
759*75fd0b74Schristos
760*75fd0b74Schristos	* elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on
761*75fd0b74Schristos	synthetic syms.
762*75fd0b74Schristos
763*75fd0b74Schristos2005-09-30  H.J. Lu  <hongjiu.lu@intel.com>
764*75fd0b74Schristos
765*75fd0b74Schristos	* Makefile.am: Run "make dep-am".
766*75fd0b74Schristos	* Makefile.in: Regenerated.
767*75fd0b74Schristos	* aclocal.m4: Likewise.
768*75fd0b74Schristos
769*75fd0b74Schristos2005-09-30  Catherine Moore  <clm@cm00re.com>
770*75fd0b74Schristos
771*75fd0b74Schristos	* Makefile.am: Bfin support.
772*75fd0b74Schristos	* Makefile.in: Regenerated.
773*75fd0b74Schristos	* aclocal.m4: Regenerated.
774*75fd0b74Schristos	* archures.c (bfd_mach_bfin): New.
775*75fd0b74Schristos	(bfd_arch_bfin): New.
776*75fd0b74Schristos	bfd-in.h (bfd_bfin_elf32_create_embedded_relocs): New.
777*75fd0b74Schristos	* bfd-in2.h: Regenerated.
778*75fd0b74Schristos	* config.bfd: Bfin support.
779*75fd0b74Schristos	* configure: Regenerated.
780*75fd0b74Schristos	* configure.in: Bfin support.
781*75fd0b74Schristos	* libbfd.h: Regenerated.
782*75fd0b74Schristos	* reloc.c: Add BFD relocations for Bfin.
783*75fd0b74Schristos	* targets.c (bfd_elf32_bfin_vec): New.
784*75fd0b74Schristos	* cpu-bfin.c: New file.
785*75fd0b74Schristos	* elf32-bfin.c: New file.
786*75fd0b74Schristos
787*75fd0b74Schristos2005-09-30  Alan Modra  <amodra@bigpond.net.au>
788*75fd0b74Schristos
789*75fd0b74Schristos	* elf64-ppc.c (ppc_type_of_stub): Check both func desc and func
790*75fd0b74Schristos	entry sym before deciding no stub is needed.
791*75fd0b74Schristos	(ppc64_elf_size_stubs): When calculating branch destination,
792*75fd0b74Schristos	don't use func desc sym for old ABI objects unless func entry
793*75fd0b74Schristos	is undefined.
794*75fd0b74Schristos
795*75fd0b74Schristos2005-09-28  H.J. Lu  <hongjiu.lu@intel.com>
796*75fd0b74Schristos
797*75fd0b74Schristos	PR binutils/1321
798*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_setup_group_pointers): Renamed to ...
799*75fd0b74Schristos	(_bfd_elf_setup_sections): This.
800*75fd0b74Schristos	* elf.c: Likewise.
801*75fd0b74Schristos	* elfcode.h (elf_object_p): Likewise.
802*75fd0b74Schristos
803*75fd0b74Schristos	* elf.c (_bfd_elf_setup_sections): Process SHF_LINK_ORDER.
804*75fd0b74Schristos	(_bfd_elf_copy_private_section_data): Likewise.
805*75fd0b74Schristos
806*75fd0b74Schristos2005-09-28  H.J. Lu  <hongjiu.lu@intel.com>
807*75fd0b74Schristos
808*75fd0b74Schristos	* elflink.c (elf_fixup_link_order): Report locations for mixed
809*75fd0b74Schristos	ordered and unordered input sections.
810*75fd0b74Schristos
811*75fd0b74Schristos2005-09-22  James E. Wilson  <wilson@specifix.com>
812*75fd0b74Schristos
813*75fd0b74Schristos	* dwarf2.c (struct funcinfo): Delete nesting_level field.
814*75fd0b74Schristos	(lookup_address_in_function_table): Delete code to set funcinfo
815*75fd0b74Schristos	caller_func field.  Delete local curr_func.
816*75fd0b74Schristos	(scan_unit_for_symbols): New locals nested_funcs, nested_funcs_size.
817*75fd0b74Schristos	Delete code setting funcinfo nesting_level field.  Add code to set
818*75fd0b74Schristos	funcinfo caller_func field.
819*75fd0b74Schristos
820*75fd0b74Schristos2005-09-20  James E. Wilson  <wilson@specifix.com>
821*75fd0b74Schristos
822*75fd0b74Schristos	* dwarf2.c (find_abstract_instance_name): Don't early exit when name
823*75fd0b74Schristos	set.  For DW_AT_name case, only set name if not already set.  Handle
824*75fd0b74Schristos	DW_AT_MIPS_linkage_name.
825*75fd0b74Schristos
826*75fd0b74Schristos2005-09-20  Alan Modra  <amodra@bigpond.net.au>
827*75fd0b74Schristos
828*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Simplify.
829*75fd0b74Schristos
830*75fd0b74Schristos2005-09-19  Alan Modra  <amodra@bigpond.net.au>
831*75fd0b74Schristos
832*75fd0b74Schristos	* elf64-ppc.c (ppc_build_one_stub): Replace assertion that long
833*75fd0b74Schristos	branch offset is in range with an error.  Print full stub name on
834*75fd0b74Schristos	errors.
835*75fd0b74Schristos	(ppc_size_one_stub): Print full stub name on errors.
836*75fd0b74Schristos	(group_sections): Warn if section size exceeds group size.
837*75fd0b74Schristos	(ppc64_elf_size_stubs): Continue relaxing when stub types change.
838*75fd0b74Schristos
839*75fd0b74Schristos2005-09-09  Kevin Buettner  <kevinb@redhat.com>
840*75fd0b74Schristos
841*75fd0b74Schristos	* elf32-am33lin.c (bfd.h, sysdep.h, elf-bfd.h, elf/mn10300.h):
842*75fd0b74Schristos	Include.
843*75fd0b74Schristos	(elf32_am33lin_grok_prstatus, elf32_am33lin_grok_psinfo): New
844*75fd0b74Schristos	functions.
845*75fd0b74Schristos	(elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define.
846*75fd0b74Schristos
847*75fd0b74Schristos2005-09-09  Richard Earnshaw  <richard.earnshaw@arm.com>
848*75fd0b74Schristos
849*75fd0b74Schristos	* elf32-arm.c (elf32_arm_section_from_shdr): Accept SHT_ARM_PREEMPTMAP
850*75fd0b74Schristos	and SHT_ARM_ATTRIBUTES.
851*75fd0b74Schristos
852*75fd0b74Schristos2005-09-08  H.J. Lu  <hongjiu.lu@intel.com>
853*75fd0b74Schristos
854*75fd0b74Schristos	* elflink.c (elf_get_linked_section_vma): Fix a typo in comment.
855*75fd0b74Schristos	* elfxx-ia64.c (elf_backend_link_order_error_handler): Likewise.
856*75fd0b74Schristos
857*75fd0b74Schristos2005-09-08  H.J. Lu  <hongjiu.lu@intel.com>
858*75fd0b74Schristos
859*75fd0b74Schristos	PR ld/1263
860*75fd0b74Schristos	* elflink.c (elf_link_add_object_symbols): Abort for
861*75fd0b74Schristos	--just-symbols on DSO.
862*75fd0b74Schristos
863*75fd0b74Schristos2005-09-08  Paul Brook  <paul@codesourcery.com>
864*75fd0b74Schristos
865*75fd0b74Schristos	* reloc.c: Rename BFD_RELOC_ARM_SMI to BFD_RELOC_ARM_SMC.
866*75fd0b74Schristos	* bfd-in2.h: Regenerate.
867*75fd0b74Schristos	* libbfd.h: Regenerate.
868*75fd0b74Schristos
869*75fd0b74Schristos2005-09-06  H.J. Lu  <hongjiu.lu@intel.com>
870*75fd0b74Schristos
871*75fd0b74Schristos	PR ld/1301
872*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Don't check undefined
873*75fd0b74Schristos	symbol introduced by "ld -u" for TLS.
874*75fd0b74Schristos
875*75fd0b74Schristos2005-09-02  Paul Brook  <paul@codesourcery.com>
876*75fd0b74Schristos
877*75fd0b74Schristos	* libbdf.h: Regenerate.
878*75fd0b74Schristos	* bfd-in2.h: Regenerate.
879*75fd0b74Schristos	* reloc.c: Add BFD_RELOC_ARM_T32_CP_OFF_IMM and
880*75fd0b74Schristos	BFD_RELOC_ARM_T32_CP_OFF_IMM_S2.
881*75fd0b74Schristos
882*75fd0b74Schristos2005-09-01  Dmitry Diky <diwil@spec.ru>
883*75fd0b74Schristos
884*75fd0b74Schristos	* elf32-msp430.c (msp430_elf_relax_delete_bytes): Do not adjust
885*75fd0b74Schristos	local symbols and move it to
886*75fd0b74Schristos	(msp430_elf_relax_adjust_locals): New function - walk over the
887*75fd0b74Schristos	sections in the bfd and adjust relocations as necessary.
888*75fd0b74Schristos
889*75fd0b74Schristos2005-08-31  DJ Delorie  <dj@redhat.com>
890*75fd0b74Schristos
891*75fd0b74Schristos	* elf32-i386.c (elf_i386_check_relocs): Don't cast a unary &
892*75fd0b74Schristos	address operator, as that breaks GCC's strict aliasing rules.
893*75fd0b74Schristos	(elf_i386_size_dynamic_sections): Avoid the need for type
894*75fd0b74Schristos	punning.
895*75fd0b74Schristos	* elf64-x86-64.c (elf_x86_64_check_relocs): Don't cast a unary
896*75fd0b74Schristos	& address operator, as that breaks GCC's strict aliasing
897*75fd0b74Schristos	rules.
898*75fd0b74Schristos	(elf_x86_64_size_dynamic_sections): Avoid the need for type
899*75fd0b74Schristos	punning.
900*75fd0b74Schristos
901*75fd0b74Schristos2005-08-30  Phil Edwards  <phil@codesourcery.com>
902*75fd0b74Schristos
903*75fd0b74Schristos	* config.bfd (i[3-7]86-*-vxworks):  Match vxworks* instead.
904*75fd0b74Schristos
905*75fd0b74Schristos2005-08-29  H.J. Lu  <hongjiu.lu@intel.com>
906*75fd0b74Schristos
907*75fd0b74Schristos	PR ld/1247
908*75fd0b74Schristos	* elfxx-ia64.c (allocate_fptr): Check undefined symbol.
909*75fd0b74Schristos
910*75fd0b74Schristos2005-08-29  Steven J. Hill <sjhill@realitydiluted.com>
911*75fd0b74Schristos
912*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_relocate_section): Initialise
913*75fd0b74Schristos	'value' to avoid compile time warning message.
914*75fd0b74Schristos
915*75fd0b74Schristos2005-08-26  Christian Groessler  <chris@groessler.org>
916*75fd0b74Schristos
917*75fd0b74Schristos	* coff-z8k.c: (r_jr, r_disp7, r_callr): Fix src_mask and dst_mask
918*75fd0b74Schristos	of HOWTO.
919*75fd0b74Schristos	(coff_z8k_select_reloc): Remove.
920*75fd0b74Schristos	(SELECT_RELOC): Remove.
921*75fd0b74Schristos	(coff_z8k_reloc_type_lookup): New function.
922*75fd0b74Schristos	(coff_bfd_reloc_type_lookup): Define.
923*75fd0b74Schristos	* configure.in: Add cofflink.lo to z8kcoff_vec.
924*75fd0b74Schristos	* configure: Regenerate.
925*75fd0b74Schristos	* reloc.c: (bfd_reloc_code_type): Add z8k relocations.
926*75fd0b74Schristos	(bfd_install_relocation): Don't clear reloc_entry->addend for
927*75fd0b74Schristos	coff-z8k target.
928*75fd0b74Schristos	* bfd-in2.h: Regenerate.
929*75fd0b74Schristos	* libbfd.h: Regenerate.
930*75fd0b74Schristos
931*75fd0b74Schristos2005-08-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
932*75fd0b74Schristos
933*75fd0b74Schristos	* elf32-sh.c (sh_elf_get_flags_from_mach): Fix off-by-one error.
934*75fd0b74Schristos
935*75fd0b74Schristos2005-08-24  H.J. Lu  <hongjiu.lu@intel.com>
936*75fd0b74Schristos
937*75fd0b74Schristos	PR ld/1208
938*75fd0b74Schristos	* elf-hppa.h (elf_hppa_relocate_section): Print out the name
939*75fd0b74Schristos	of unresolvable relocation.
940*75fd0b74Schristos	* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
941*75fd0b74Schristos	* elf32-arm.c (elf32_arm_relocate_section): Likewise.
942*75fd0b74Schristos	* elf32-i386.c (elf_i386_relocate_section): Likewise.
943*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
944*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
945*75fd0b74Schristos	* elf32-s390.c (elf_s390_relocate_section): Likewise.
946*75fd0b74Schristos	* elf32-sh.c (sh_elf_relocate_section): Likewise.
947*75fd0b74Schristos	* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
948*75fd0b74Schristos	* elf64-s390.c (elf_s390_relocate_section): Likewise.
949*75fd0b74Schristos	* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
950*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
951*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
952*75fd0b74Schristos
953*75fd0b74Schristos2005-08-18  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
954*75fd0b74Schristos
955*75fd0b74Schristos	* config.bfd: Add bfd_elf32_shnbsd_vec and bfd_elf32_shlnbsd_vec
956*75fd0b74Schristos	to targ_selvecs for sh5*-*-netbsd* and sh64*-*-netbsd*.
957*75fd0b74Schristos
958*75fd0b74Schristos2005-08-18  Alan Modra  <amodra@bigpond.net.au>
959*75fd0b74Schristos
960*75fd0b74Schristos	* coff-a29k.c: Delete.
961*75fd0b74Schristos	* cpu-a29k.c: Delete.
962*75fd0b74Schristos	* Makefile.am: Remove mention of a29k files.
963*75fd0b74Schristos	* aoutf1.h: Remove a29k support.
964*75fd0b74Schristos	* aoutx.h: Likewise.
965*75fd0b74Schristos	* archures.c: Likewise.
966*75fd0b74Schristos	* coffcode.h: Likewise.
967*75fd0b74Schristos	* config.bfd: Likewise.
968*75fd0b74Schristos	* configure.in: Likewise.
969*75fd0b74Schristos	* ieee.c: Likewise.
970*75fd0b74Schristos	* mipsbsd.c: Likewise.
971*75fd0b74Schristos	* pdp11.c: Likewise.
972*75fd0b74Schristos	* sparclynx.c: Likewise.
973*75fd0b74Schristos	* targets.c: Likewise.
974*75fd0b74Schristos	* Makefile.in: Regenerate.
975*75fd0b74Schristos	* configure: Regenerate.
976*75fd0b74Schristos	* bfd-in2.h: Regenerate.
977*75fd0b74Schristos	* po/SRC-POTFILES.in: Regenerate.
978*75fd0b74Schristos
979*75fd0b74Schristos2005-08-18  Alan Modra  <amodra@bigpond.net.au>
980*75fd0b74Schristos
981*75fd0b74Schristos	* elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Warn on
982*75fd0b74Schristos	zero size dynamic variables.
983*75fd0b74Schristos	* elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
984*75fd0b74Schristos	* elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
985*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
986*75fd0b74Schristos	* elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
987*75fd0b74Schristos	* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
988*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
989*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
990*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
991*75fd0b74Schristos	* elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
992*75fd0b74Schristos	* elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
993*75fd0b74Schristos	* elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
994*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
995*75fd0b74Schristos	* elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
996*75fd0b74Schristos	* elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
997*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
998*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
999*75fd0b74Schristos
1000*75fd0b74Schristos2005-08-17  H.J. Lu  <hongjiu.lu@intel.com>
1001*75fd0b74Schristos
1002*75fd0b74Schristos	PR binutils/1179
1003*75fd0b74Schristos	* dwarf2.c (_bfd_dwarf2_find_nearest_line): Use section lma
1004*75fd0b74Schristos	instead of vma.
1005*75fd0b74Schristos	(_bfd_dwarf2_find_line): Likewise.
1006*75fd0b74Schristos
1007*75fd0b74Schristos2005-08-17  Alan Modra  <amodra@bigpond.net.au>
1008*75fd0b74Schristos
1009*75fd0b74Schristos	* elf64-mmix.c (mmix_elf_add_symbol_hook): Mark reg section
1010*75fd0b74Schristos	SEC_LINKER_CREATED.
1011*75fd0b74Schristos	(mmix_elf_final_link): Check that section hasn't already been
1012*75fd0b74Schristos	removed before removing.
1013*75fd0b74Schristos	* mmo.c (mmo_scan): Mark reg contents section SEC_LINKER_CREATED.
1014*75fd0b74Schristos	(mmo_canonicalize_symtab): Likewise for reg section.
1015*75fd0b74Schristos
1016*75fd0b74Schristos2005-08-17  Alan Modra  <amodra@bigpond.net.au>
1017*75fd0b74Schristos
1018*75fd0b74Schristos	* elf32-cris.c (elf_cris_adjust_gotplt_to_got): Move assert later.
1019*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_hide_symbol): Cope with being called
1020*75fd0b74Schristos	without any got section.
1021*75fd0b74Schristos
1022*75fd0b74Schristos2005-08-17  Danny Smith  <dannysmith@users.sourceforge.net>
1023*75fd0b74Schristos
1024*75fd0b74Schristos	* cofflink.c (_bfd_coff_generic_relocate_section): Correct
1025*75fd0b74Schristos	comment.
1026*75fd0b74Schristos
1027*75fd0b74Schristos2005-08-17  Alan Modra  <amodra@bigpond.net.au>
1028*75fd0b74Schristos
1029*75fd0b74Schristos	* elflink.c (_bfd_elf_define_linkage_sym): Don't call
1030*75fd0b74Schristos	bfd_elf_link_record_dynamic_symbol.  Call elf_backend_hide_symbol.
1031*75fd0b74Schristos	(_bfd_elf_link_renumber_dynsyms): Formatting.
1032*75fd0b74Schristos	(struct elf_gc_sweep_symbol_info): New.
1033*75fd0b74Schristos	(elf_gc_sweep_symbol): Rewrite.
1034*75fd0b74Schristos	(elf_gc_sweep): Adjust params and elf_gc_sweep_symbol call.
1035*75fd0b74Schristos	Call _bfd_elf_link_renumber_dynsyms.
1036*75fd0b74Schristos	(bfd_elf_gc_sections): Adjust elf_gc_sweep call.
1037*75fd0b74Schristos
1038*75fd0b74Schristos2005-08-16  Alan Modra  <amodra@bigpond.net.au>
1039*75fd0b74Schristos
1040*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_edit_opd): Don't call dec_dynrel_count
1041*75fd0b74Schristos	when relocatable.
1042*75fd0b74Schristos
1043*75fd0b74Schristos2005-08-15  Bob Wilson  <bob.wilson@acm.org>
1044*75fd0b74Schristos
1045*75fd0b74Schristos	* elf32-xtensa.c (ELF_MACHINE_CODE, ELF_MACHINE_ALT1): Swap values
1046*75fd0b74Schristos	of EM_XTENSA and EM_XTENSA_OLD.
1047*75fd0b74Schristos
1048*75fd0b74Schristos2005-08-16  Alan Modra  <amodra@bigpond.net.au>
1049*75fd0b74Schristos
1050*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_define_linkage_sym): Declare.
1051*75fd0b74Schristos	* elflink.c (_bfd_elf_define_linkage_sym): New function, extracted
1052*75fd0b74Schristos	from..
1053*75fd0b74Schristos	(_bfd_elf_create_got_section): ..here.
1054*75fd0b74Schristos	(_bfd_elf_link_create_dynamic_sections): Call it for _DYNAMIC.
1055*75fd0b74Schristos	(_bfd_elf_create_dynamic_sections): ..and _PROCEDURE_LINKAGE_TABLE_.
1056*75fd0b74Schristos	* elf-m10300.c (_bfd_mn10300_elf_create_got_section): Use
1057*75fd0b74Schristos	_bfd_elf_define_linkage_sym.
1058*75fd0b74Schristos	* elf32-frv.c (_frv_create_got_section): Likewise.
1059*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise.
1060*75fd0b74Schristos
1061*75fd0b74Schristos2005-08-15  Paul Brook  <paul@codesourcery.com>
1062*75fd0b74Schristos
1063*75fd0b74Schristos	* elf32-arm.c (elf32_arm_howto_table_1): Make R_ARM_PLT32 the same as
1064*75fd0b74Schristos	R_ARM_PC24.
1065*75fd0b74Schristos
1066*75fd0b74Schristos2005-08-13  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1067*75fd0b74Schristos
1068*75fd0b74Schristos	PR ld/1135
1069*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_special_sections): Add flag definitions for
1070*75fd0b74Schristos	.plt, .dlt, .sdata, .sbss and .tbss.
1071*75fd0b74Schristos
1072*75fd0b74Schristos2005-08-12  Dmitry Diky  <diwil@spec.ru>
1073*75fd0b74Schristos
1074*75fd0b74Schristos	* elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust relocations
1075*75fd0b74Schristos	referenced by .section + DISPLACEMENT.
1076*75fd0b74Schristos
1077*75fd0b74Schristos2005-08-10  James E. Wilson  <wilson@specifix.com>
1078*75fd0b74Schristos
1079*75fd0b74Schristos	* dwarf2.c (scan_unit_for_symbols, case DT_AT_location): Verify that
1080*75fd0b74Schristos	DW_OP_addr is only opcode in location before using it.
1081*75fd0b74Schristos
1082*75fd0b74Schristos2005-08-09  H.J. Lu  <hongjiu.lu@intel.com>
1083*75fd0b74Schristos
1084*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_final_link): Reset gp.
1085*75fd0b74Schristos
1086*75fd0b74Schristos2005-08-09  Rodney Brown  <rbrown@bravurasolutions.com.au>
1087*75fd0b74Schristos	    Nick Clifton  <nickc@redhat.com>
1088*75fd0b74Schristos
1089*75fd0b74Schristos	* aix5ppc-core.c (xcoff64_core_p): Constify return_value
1090*75fd0b74Schristos	variable.  Also, do not use core_hdr macro as it evaluates to a
1091*75fd0b74Schristos	cast of an lvalue which is no longer supported by GCC 4.0.
1092*75fd0b74Schristos
1093*75fd0b74Schristos2005-08-08  Eric Dönges <Eric.Doenges@betty-tv.com>
1094*75fd0b74Schristos
1095*75fd0b74Schristos	* archures.c (bfd_mach_msp21): New MSP430 machine number.
1096*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1097*75fd0b74Schristos	* cpu-msp430.c (arch_info_struct): Add support for msp430x21xx
1098*75fd0b74Schristos	variants.
1099*75fd0b74Schristos
1100*75fd0b74Schristos2005-08-07  Nick Clifton  <nickc@redhat.com>
1101*75fd0b74Schristos	    Paul Brook  <paul@codesourcery.com>
1102*75fd0b74Schristos
1103*75fd0b74Schristos	PR 1147
1104*75fd0b74Schristos	* elf32-arm.c (bfd_elf32_close_and_cleanup): Define.
1105*75fd0b74Schristos	(elf32_arm_close_and_cleanup): New function - walk over the
1106*75fd0b74Schristos	sections in the bfd that is being closed removing them from the
1107*75fd0b74Schristos	list of recorded sections.
1108*75fd0b74Schristos	(unrecord_section_via_map_over_sections): New helper function.
1109*75fd0b74Schristos	(record_section_with_arm_elf_section_data): Call bfd_malloc
1110*75fd0b74Schristos	instead of bfd_alloc.  Remove unneeded abfd parameter.
1111*75fd0b74Schristos	(elf32_arm_new_section_hook): Do not pass bfd to
1112*75fd0b74Schristos	record_section_with_arm_elf_section_data.
1113*75fd0b74Schristos
1114*75fd0b74Schristos	* elfxx-target.h (bfd_elfNN_close_and_cleanup): Only define if not
1115*75fd0b74Schristos	already defined by the target.
1116*75fd0b74Schristos
1117*75fd0b74Schristos2005-08-05  Fred Fish  <fnf@specifix.com>
1118*75fd0b74Schristos
1119*75fd0b74Schristos	* dwarf2.c (read_rangelist): Use addr_size instead of offset_size
1120*75fd0b74Schristos	to determine how many bytes to read from each rangelist entry.
1121*75fd0b74Schristos
1122*75fd0b74Schristos2005-08-05  H.J. Lu  <hongjiu.lu@intel.com>
1123*75fd0b74Schristos
1124*75fd0b74Schristos	* bfd.c (bfd_hide_symbol): New.
1125*75fd0b74Schristos	* bfd-in2.h: Regenerated.
1126*75fd0b74Schristos
1127*75fd0b74Schristos2005-08-04  H.J. Lu  <hongjiu.lu@intel.com>
1128*75fd0b74Schristos
1129*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_merge_symbol): When mixing a
1130*75fd0b74Schristos	large common symbol and a normal common symbol, always turn
1131*75fd0b74Schristos	the large common symbol into a normal one.
1132*75fd0b74Schristos
1133*75fd0b74Schristos2005-08-04  Alan Modra  <amodra@bigpond.net.au>
1134*75fd0b74Schristos
1135*75fd0b74Schristos	* elf32-ppc.c (struct elf_linker_section): Replace sym_val field
1136*75fd0b74Schristos	with sym.
1137*75fd0b74Schristos	(ppc_elf_relocate_section): Adjust for above.
1138*75fd0b74Schristos	(create_sdata_sym): New function.
1139*75fd0b74Schristos	(ppc_elf_create_linker_section): Call it.
1140*75fd0b74Schristos	(ppc_elf_check_relocs): Correct has_sda_refs and non_got_refs.
1141*75fd0b74Schristos	Create sdata syms for all SDA relocs.
1142*75fd0b74Schristos	(ppc_elf_adjust_dynamic_symbol): Don't special case _SDA_BASE_
1143*75fd0b74Schristos	and _SDA2_BASE_.
1144*75fd0b74Schristos	(ppc_elf_set_sdata_syms): Delete.
1145*75fd0b74Schristos	* elflink.c (bfd_elf_size_dynamic_sections): Don't create DT_INIT
1146*75fd0b74Schristos	and DT_FINI tags unless associated section has input.
1147*75fd0b74Schristos	(bfd_elf_set_symbol, _bfd_elf_provide_symbol): Delete.
1148*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): Delete.
1149*75fd0b74Schristos	* bfd-in.h (_bfd_elf_provide_symbol): Delete.
1150*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): Delete.
1151*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1152*75fd0b74Schristos
1153*75fd0b74Schristos2005-08-04  Alan Modra  <amodra@bigpond.net.au>
1154*75fd0b74Schristos
1155*75fd0b74Schristos	* elflink.c (fix_syms, _bfd_elf_fix_excluded_sec_syms): Move to..
1156*75fd0b74Schristos	* linker.c (fix_syms, _bfd_fix_excluded_sec_syms): ..here.
1157*75fd0b74Schristos	* bfd-in.h (_bfd_fix_excluded_sec_syms): Rename.
1158*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1159*75fd0b74Schristos
1160*75fd0b74Schristos2005-08-03  H.J. Lu  <hongjiu.lu@intel.com>
1161*75fd0b74Schristos
1162*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relax_section): Resize .rela.got
1163*75fd0b74Schristos	only if it isn't NULL.
1164*75fd0b74Schristos
1165*75fd0b74Schristos2005-08-03  H.J. Lu  <hongjiu.lu@intel.com>
1166*75fd0b74Schristos
1167*75fd0b74Schristos	* elf32-i386.c (elf_howto_table): Undo the overflow change for
1168*75fd0b74Schristos	R_386_PC16 made on 2005-07-18.
1169*75fd0b74Schristos
1170*75fd0b74Schristos	* elf64-x86-64.c (x86_64_elf_howto_table): Undo the overflow
1171*75fd0b74Schristos	change for R_X86_64_PC16 made on 2005-07-18.
1172*75fd0b74Schristos
1173*75fd0b74Schristos2005-08-03  Alan Modra  <amodra@bigpond.net.au>
1174*75fd0b74Schristos
1175*75fd0b74Schristos	* elf32-ppc.c (struct ppc_elf_link_hash_table): Remove hgot.  Use
1176*75fd0b74Schristos	elf.hgot throughout file.
1177*75fd0b74Schristos
1178*75fd0b74Schristos2005-08-03  Alan Modra  <amodra@bigpond.net.au>
1179*75fd0b74Schristos
1180*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Correct value of
1181*75fd0b74Schristos	_GLOBAL_OFFSET_TABLE_ for > 32k GOT.
1182*75fd0b74Schristos
1183*75fd0b74Schristos2005-08-02  Andreas Schwab  <schwab@suse.de>
1184*75fd0b74Schristos
1185*75fd0b74Schristos	* elfxx-ia64.c (struct elfNN_ia64_allocate_data): Add only_got.
1186*75fd0b74Schristos	(elfNN_ia64_relax_section): Reallocate .rela.got when .got has
1187*75fd0b74Schristos	changed.
1188*75fd0b74Schristos	(allocate_dynrel_entries): Look only at GOT relocations when
1189*75fd0b74Schristos	only_got is true.
1190*75fd0b74Schristos	(elfNN_ia64_size_dynamic_sections): Set only_got to false before
1191*75fd0b74Schristos	calling allocate_dynrel_entries.
1192*75fd0b74Schristos
1193*75fd0b74Schristos2005-08-02  Nick Clifton  <nickc@redhat.com>
1194*75fd0b74Schristos
1195*75fd0b74Schristos	PR 1147
1196*75fd0b74Schristos	* elf32-arm.c (struct _arm_elf_section_data): Turn into a typedef
1197*75fd0b74Schristos	and make the mapcount field unsigned.
1198*75fd0b74Schristos	(struct section_list): New: Used to keep track of which sections
1199*75fd0b74Schristos	have an _arm_elf_section_data structure.
1200*75fd0b74Schristos	(record_section_with_arm_elf_section_data): New function.
1201*75fd0b74Schristos	(get_arm_elf_section_data): New function.
1202*75fd0b74Schristos	(unrecord_section_with_arm_elf_section_data): New function.
1203*75fd0b74Schristos	(elf32_arm_output_symbol_hook): Use get_arm_elf_section_data.
1204*75fd0b74Schristos	(elf32_arm_new_section_hook): Call
1205*75fd0b74Schristos	record_section_with_arm_elf_section_data.
1206*75fd0b74Schristos	(elf32_arm_write_section): Use get_arm_elf_section_data and
1207*75fd0b74Schristos	unrecord_section_with_arm_elf_section_data.
1208*75fd0b74Schristos
1209*75fd0b74Schristos2005-08-01  Richard Sandiford  <richard@codesourcery.com>
1210*75fd0b74Schristos
1211*75fd0b74Schristos	* elfxx-mips.c (mips_mach_extends_p): Treat MIPS64 as an extension
1212*75fd0b74Schristos	of MIPS32 and MIPS64r2 as an extension of MIPS32r2.
1213*75fd0b74Schristos
1214*75fd0b74Schristos2005-07-30  David Daney  <ddaney@avtrex.com>
1215*75fd0b74Schristos
1216*75fd0b74Schristos	* elflink.c (elf_gc_sweep):  Set dynsymcount to correct value.
1217*75fd0b74Schristos
1218*75fd0b74Schristos2005-07-29  David Daney  <ddaney@avtrex.com>
1219*75fd0b74Schristos
1220*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_add_symbol_hook):  Ignore _gp_disp
1221*75fd0b74Schristos	if it is in the *ABS* section.
1222*75fd0b74Schristos
1223*75fd0b74Schristos2005-07-29  Paul Brook  <paul@codesourcery.com>
1224*75fd0b74Schristos
1225*75fd0b74Schristos	* reloc.c: Add BFD_RELOC_ARM_T32_ADD_PC12.
1226*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1227*75fd0b74Schristos	* libbfd.h: Regenerate.
1228*75fd0b74Schristos
1229*75fd0b74Schristos2005-07-29  Paul Brook  <paul@codesourcery.com>
1230*75fd0b74Schristos
1231*75fd0b74Schristos	* reloc.c (BFD_RELOC_ARM_T32_IMM12): Add.
1232*75fd0b74Schristos	* bfd-in2.h: Regeenrate.
1233*75fd0b74Schristos	* libbfd.h: Regenerate.
1234*75fd0b74Schristos
1235*75fd0b74Schristos2005-07-29  Pavel Kankovsky  <peak@argo.troja.mff.cuni.cz>
1236*75fd0b74Schristos
1237*75fd0b74Schristos	* peXXigen.c (pe_print_edata): Compute the size of the export
1238*75fd0b74Schristos	table from the size field in the DataDictionary and not the size
1239*75fd0b74Schristos	of the section.  Some linkers embed the export table inside a
1240*75fd0b74Schristos	larger section.
1241*75fd0b74Schristos
1242*75fd0b74Schristos2005-07-29  Alan Modra  <amodra@bigpond.net.au>
1243*75fd0b74Schristos
1244*75fd0b74Schristos	* elf-bfd.h (struct elf_backend_data): Add action_discarded.
1245*75fd0b74Schristos	(enum action_discarded): Move from..
1246*75fd0b74Schristos	* elflink.c (enum action_discarded): ..here.
1247*75fd0b74Schristos	(_bfd_elf_default_action_discarded): Rename from elf_action_discarded.
1248*75fd0b74Schristos	Remove target specific section checks.
1249*75fd0b74Schristos	(elf_link_input_bfd): Adjust.
1250*75fd0b74Schristos	* elfxx-target.h (elf_backend_action_discarded): Define.
1251*75fd0b74Schristos	(elfNN_bed): Init new field.
1252*75fd0b74Schristos	* bfd-in.h (_bfd_elf_default_action_discarded): Declare.
1253*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1254*75fd0b74Schristos	* elf-hppa.h (elf_hppa_action_discarded): New function.
1255*75fd0b74Schristos	* elf32-hppa.c (elf_backend_action_discarded): Define.
1256*75fd0b74Schristos	* elf64-hppa.c (elf_backend_action_discarded): Define.
1257*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_action_discarded): New function.
1258*75fd0b74Schristos	(elf_backend_action_discarded): Define.
1259*75fd0b74Schristos
1260*75fd0b74Schristos2005-07-27  Alan Modra  <amodra@bigpond.net.au>
1261*75fd0b74Schristos
1262*75fd0b74Schristos	* elflink.c (fix_syms): Handle symbols defined in input sections.
1263*75fd0b74Schristos
1264*75fd0b74Schristos2005-07-27  Jan Beulich  <jbeulich@novell.com>
1265*75fd0b74Schristos
1266*75fd0b74Schristos	* elf64-x86-64.c (R_X86_64_standard, R_X86_64_vt_offset): New.
1267*75fd0b74Schristos	(elf64_x86_64_info_to_howto): Use them.
1268*75fd0b74Schristos
1269*75fd0b74Schristos2005-07-27  Alan Modra  <amodra@bigpond.net.au>
1270*75fd0b74Schristos
1271*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Skip weak redefinition
1272*75fd0b74Schristos	regardless of strength of previous definition.
1273*75fd0b74Schristos
1274*75fd0b74Schristos2005-07-26  Alan Modra  <amodra@bigpond.net.au>
1275*75fd0b74Schristos
1276*75fd0b74Schristos	* elflink.c (elf_gc_mark_dynamic_ref_symbol): Handle -shared.
1277*75fd0b74Schristos	(bfd_elf_gc_sections): Allow -gc-sections when -shared.
1278*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_gc_sweep_hook): Correct for -shared.
1279*75fd0b74Schristos
1280*75fd0b74Schristos2005-07-26  Alan Modra  <amodra@bigpond.net.au>
1281*75fd0b74Schristos
1282*75fd0b74Schristos	* elflink.c (elf_gc_sweep): Move gcc_except_table code..
1283*75fd0b74Schristos	(bfd_elf_gc_sections): ..to here.
1284*75fd0b74Schristos
1285*75fd0b74Schristos2005-07-25  DJ Delorie  <dj@redhat.com>
1286*75fd0b74Schristos
1287*75fd0b74Schristos	* reloc.c: Remove unused M32C relocs, add BFD_RELOC_M32C_HI8.
1288*75fd0b74Schristos	* libbfd.h: Regenerate.
1289*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1290*75fd0b74Schristos
1291*75fd0b74Schristos	* elf32-m32c.c (m32c_elf_howto_table): Add R_M32C_8, R_M32C_LO16,
1292*75fd0b74Schristos	R_M32C_HI8, R_M32C_HI16.
1293*75fd0b74Schristos	(m32c_reloc_map): Likewise.
1294*75fd0b74Schristos	(m32c_elf_relocate_section): Add R_M32C_HI8 and R_M32C_HI16.
1295*75fd0b74Schristos
1296*75fd0b74Schristos2005-07-25  Jan Hubicka  <jh@suse.cz>
1297*75fd0b74Schristos	    H.J. Lu  <hongjiu.lu@intel.com>
1298*75fd0b74Schristos
1299*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_large_com_section): New.
1300*75fd0b74Schristos	* elf.c (_bfd_elf_large_com_section): New. Defined.
1301*75fd0b74Schristos
1302*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_add_symbol_hook): New.
1303*75fd0b74Schristos	(elf64_x86_64_elf_section_from_bfd_section): New.
1304*75fd0b74Schristos	(elf64_x86_64_symbol_processing): New.
1305*75fd0b74Schristos	(elf64_x86_64_common_definition): New.
1306*75fd0b74Schristos	(elf64_x86_64_common_section_index): New.
1307*75fd0b74Schristos	(elf64_x86_64_common_section): New.
1308*75fd0b74Schristos	(elf64_x86_64_merge_symbol): New.
1309*75fd0b74Schristos	(elf64_x86_64_additional_program_headers): New.
1310*75fd0b74Schristos	(elf64_x86_64_special_sections): New.
1311*75fd0b74Schristos	(elf_backend_section_from_bfd_section): New. Defined.
1312*75fd0b74Schristos	(elf_backend_add_symbol_hook): Likewise.
1313*75fd0b74Schristos	(elf_backend_common_section_index): Likewise.
1314*75fd0b74Schristos	(elf_backend_common_section): Likewise.
1315*75fd0b74Schristos	(elf_backend_common_definition): Likewise.
1316*75fd0b74Schristos	(elf_backend_merge_symbol): Likewise.
1317*75fd0b74Schristos	(elf_backend_special_sections): Likewise.
1318*75fd0b74Schristos	(elf_backend_additional_program_headers): Likewise.
1319*75fd0b74Schristos
1320*75fd0b74Schristos2005-07-25  H.J. Lu  <hongjiu.lu@intel.com>
1321*75fd0b74Schristos
1322*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Add common_definition,
1323*75fd0b74Schristos	common_section_index, common_section, and merge_symbol.
1324*75fd0b74Schristos	(_bfd_elf_common_definition): New.
1325*75fd0b74Schristos	(_bfd_elf_common_section_index): New.
1326*75fd0b74Schristos	(_bfd_elf_common_section): New.
1327*75fd0b74Schristos
1328*75fd0b74Schristos	* elf.c (elf_fake_sections): Don't clear sh_flags.
1329*75fd0b74Schristos
1330*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Call backend merge_symbol
1331*75fd0b74Schristos	if it is available.
1332*75fd0b74Schristos	(is_global_data_symbol_definition): Call backend
1333*75fd0b74Schristos	common_definition instead of checking SHN_COMMON.
1334*75fd0b74Schristos	(elf_link_add_object_symbols): Likewise.
1335*75fd0b74Schristos	(elf_link_output_extsym): Call backend common_section_index
1336*75fd0b74Schristos	for common section index.
1337*75fd0b74Schristos	(_bfd_elf_common_definition): New.
1338*75fd0b74Schristos	(_bfd_elf_common_section_index): New.
1339*75fd0b74Schristos	(_bfd_elf_common_section): New.
1340*75fd0b74Schristos
1341*75fd0b74Schristos	* elfxx-target.h (elf_backend_common_definition): New.
1342*75fd0b74Schristos	(elf_backend_common_section_index): New.
1343*75fd0b74Schristos	(elf_backend_common_section): New.
1344*75fd0b74Schristos	(elf_backend_merge_symbol): New.
1345*75fd0b74Schristos	(elfNN_bed): Initialize common_definition, common_section_index,
1346*75fd0b74Schristos	common_section, and merge_symbol.
1347*75fd0b74Schristos
1348*75fd0b74Schristos	* section.c (BFD_FAKE_SECTION): New.
1349*75fd0b74Schristos	(STD_SECTION): Use it.
1350*75fd0b74Schristos	* bfd-in2.h: Regenerated.
1351*75fd0b74Schristos
1352*75fd0b74Schristos2005-07-23  Olaf Hering <olh@suse.de>
1353*75fd0b74Schristos
1354*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Add '\n' for linker einfo
1355*75fd0b74Schristos	callback.
1356*75fd0b74Schristos
1357*75fd0b74Schristos2005-07-21  Ralf Corsepius  <ralf.corsepius@rtems.org>
1358*75fd0b74Schristos
1359*75fd0b74Schristos	* config.bfd: Remove i[3-7]86-*-rtemself*.
1360*75fd0b74Schristos	Remove sparc-*-rtemself*.
1361*75fd0b74Schristos
1362*75fd0b74Schristos2005-07-22  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1363*75fd0b74Schristos
1364*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_check_relocs): Fix pc count for
1365*75fd0b74Schristos	R_M32R_REL32.
1366*75fd0b74Schristos
1367*75fd0b74Schristos2005-07-21  Ben Elliston  <bje@gnu.org>
1368*75fd0b74Schristos
1369*75fd0b74Schristos	* Makefile.am (BFD32_BACKENDS): Remove cf-m68klynx.lo.
1370*75fd0b74Schristos	(BFD32_BACKENDS): Likewise, remove m68klynx.lo.
1371*75fd0b74Schristos	(BFD32_BACKENDS_CFILES): Remove cf-m68klynx.c, m68klynx.c.
1372*75fd0b74Schristos	(cf-m68klynx.lo, m68klynx.lo): Remove targets.
1373*75fd0b74Schristos	* Makefile.in: Regenerate.
1374*75fd0b74Schristos	* cf-m68klynx.c: Remove.
1375*75fd0b74Schristos	* m68klynx.c: Likewise.
1376*75fd0b74Schristos	* configure.in (m68klynx_aout_vec): Remove vector.
1377*75fd0b74Schristos	(m68klynx_coff_vec): Likewise.
1378*75fd0b74Schristos	* configure: Regenerate.
1379*75fd0b74Schristos	* targets.c (m68klynx_aout_vec): Remove extern.
1380*75fd0b74Schristos	(m68klynx_coff_vec): Likewise.
1381*75fd0b74Schristos	(_bfd_target_vector): Remove m68klynx_{aout,coff}_vec.
1382*75fd0b74Schristos	* po/SRC-POTFILES.in: Remove cf-m68klynx.c, m68klynx.c.
1383*75fd0b74Schristos
1384*75fd0b74Schristos2005-07-20  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1385*75fd0b74Schristos
1386*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_REL32.
1387*75fd0b74Schristos	(m32r_reloc_map): Likewise.
1388*75fd0b74Schristos	(m32r_elf_relocate_section): Likewise.
1389*75fd0b74Schristos	(m32r_elf_gc_sweep_hook): Likewise.
1390*75fd0b74Schristos	(m32r_elf_check_relocs): Likewise.
1391*75fd0b74Schristos
1392*75fd0b74Schristos2005-07-18  Nick Clifton  <nickc@redhat.com>
1393*75fd0b74Schristos
1394*75fd0b74Schristos	* reloc.c: Add M32C and MS1 relocs.
1395*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1396*75fd0b74Schristos	* libbfd.h: Regenerate.
1397*75fd0b74Schristos
1398*75fd0b74Schristos2005-07-18  Nick Clifton  <nickc@redhat.com>
1399*75fd0b74Schristos
1400*75fd0b74Schristos	* config.bfd: Move m32c entry to correct location.
1401*75fd0b74Schristos	* archures.c: Likewise.
1402*75fd0b74Schristos	* configure.in: Likewise.
1403*75fd0b74Schristos	* configure: Regenerate.
1404*75fd0b74Schristos	* targets.c: Move ms1 vector to correct location.
1405*75fd0b74Schristos
1406*75fd0b74Schristos2005-07-18  Jan Beulich  <jbeulich@novell.com>
1407*75fd0b74Schristos
1408*75fd0b74Schristos	* elf32-i386.c (elf_howto_table): Adjust overflow complaint handler
1409*75fd0b74Schristos	for R_386_PC16.
1410*75fd0b74Schristos	* elf64-x86-64.c (x86_64_elf_howto_table): Adjust overflow complaint
1411*75fd0b74Schristos	handler for R_X86_64_PC16, R_X86_64_8, and R_X86_64_DTPOFF.
1412*75fd0b74Schristos
1413*75fd0b74Schristos2005-07-16  Eric Botcazou  <ebotcazou@libertysurf.fr>
1414*75fd0b74Schristos
1415*75fd0b74Schristos	PR ld/1021
1416*75fd0b74Schristos	PR ld/1031
1417*75fd0b74Schristos	* elflink.c (elf_link_add_object_symbols): Also append the version
1418*75fd0b74Schristos	name to non-hidden absolute symbols that are functions.
1419*75fd0b74Schristos
1420*75fd0b74Schristos2005-07-16  Alan Modra  <amodra@bigpond.net.au>
1421*75fd0b74Schristos
1422*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_set_sdata_syms): Return void.  Remove hack
1423*75fd0b74Schristos	for zero size sections.  Don't set .sbss syms here.
1424*75fd0b74Schristos	* elf32-ppc.h (ppc_elf_set_sdata_syms): Adjust prototype.
1425*75fd0b74Schristos
1426*75fd0b74Schristos2005-07-16  Alan Modra  <amodra@bigpond.net.au>
1427*75fd0b74Schristos
1428*75fd0b74Schristos	* Makefile.am: Run "make dep-am".
1429*75fd0b74Schristos	* Makefile.in: Regenerate.
1430*75fd0b74Schristos
1431*75fd0b74Schristos2005-07-15  Bob Wilson  <bob.wilson@acm.org>
1432*75fd0b74Schristos
1433*75fd0b74Schristos	* elf32-xtensa.c (vsprint_msg): Add prototype.
1434*75fd0b74Schristos	(build_encoding_error_message): Delete.  Code moved into....
1435*75fd0b74Schristos	(elf_xtensa_do_reloc): ....here, and changed to give better
1436*75fd0b74Schristos	error messages for out of range literals.
1437*75fd0b74Schristos
1438*75fd0b74Schristos2005-07-15  Alan Modra  <amodra@bigpond.net.au>
1439*75fd0b74Schristos
1440*75fd0b74Schristos	* elflink.c (bfd_elf_record_link_assignment): Remove output_bfd param.
1441*75fd0b74Schristos	(_bfd_elf_provide_symbol): Allow redefinition of weak syms and those
1442*75fd0b74Schristos	defined in output sections.  Call bfd_elf_record_link_assignment.
1443*75fd0b74Schristos	* bfd-in.h (bfd_elf_record_link_assignment): Update prototype.
1444*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1445*75fd0b74Schristos
1446*75fd0b74Schristos2005-07-14  Jim Blandy  <jimb@redhat.com>
1447*75fd0b74Schristos
1448*75fd0b74Schristos	Add support for m32c-*-elf (Renesas m32c and m16c).
1449*75fd0b74Schristos	* Makefile.am (ALL_MACHINES): Add cpu-m32c.lo.
1450*75fd0b74Schristos	(ALL_MACHINES_CFILES): Add cpu-m32c.c.
1451*75fd0b74Schristos	(BFD32_BACKENDS): Add elf32-m32c.lo.
1452*75fd0b74Schristos	(BFD32_BACKENDS_CFILES): Add elf32-m32c.c.
1453*75fd0b74Schristos	(cpu-m32c.lo, elf32-m32c.lo): New rules, generated by 'make dep-am'.
1454*75fd0b74Schristos	* Makefile.in: Regenerated.
1455*75fd0b74Schristos	* archures.c (bfd_arch_m32c, bfd_mach_m16c, bfd_mach_m32c): New
1456*75fd0b74Schristos	arch and mach codes.
1457*75fd0b74Schristos	(bfd_m32c_arch): New arch info object.
1458*75fd0b74Schristos	(bfd_archures_list): List bfd_m32c_arch.
1459*75fd0b74Schristos	* bfd-in2.h: Regenerated.
1460*75fd0b74Schristos	* config.bfd: Add case for the m32c.
1461*75fd0b74Schristos	* configure.in: Add case for the m32c.
1462*75fd0b74Schristos	* configure: Regenerated.
1463*75fd0b74Schristos	* cpu-m32c.c, elf32-m32c.c: New files.
1464*75fd0b74Schristos	* libbfd.h: Regenerated.
1465*75fd0b74Schristos	* targets.c (bfd_elf32_m32c_vec): Declare.
1466*75fd0b74Schristos	(_bfd_target_vector): List bfd_elf32_m32c_vec.
1467*75fd0b74Schristos
1468*75fd0b74Schristos2005-07-14  Alan Modra  <amodra@bigpond.net.au>
1469*75fd0b74Schristos
1470*75fd0b74Schristos	* bfd-in.h (_bfd_elf_fix_excluded_sec_syms): Declare.
1471*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): Remove param name.
1472*75fd0b74Schristos	Formatting.
1473*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1474*75fd0b74Schristos	* elflink.c (bfd_elf_gc_sections): Don't call generic function.
1475*75fd0b74Schristos	(_bfd_elf_provide_symbol): Formatting.
1476*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): Remove all hacks, just
1477*75fd0b74Schristos	create section relative syms.
1478*75fd0b74Schristos	(fix_syms, _bfd_elf_fix_excluded_sec_syms): New functions.
1479*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_set_sdata_syms): Use
1480*75fd0b74Schristos	_bfd_elf_provide_section_bound_symbols.
1481*75fd0b74Schristos	* reloc.c (bfd_mark_used_section): Delete.
1482*75fd0b74Schristos	(bfd_generic_gc_sections): Don't call the above.
1483*75fd0b74Schristos
1484*75fd0b74Schristos2005-07-14  Paul Woegerer <paul.woegerer@nsc.com>
1485*75fd0b74Schristos
1486*75fd0b74Schristos	PR 1063
1487*75fd0b74Schristos	* cache.c (bfd_last_cache): Initialise to NULL.
1488*75fd0b74Schristos
1489*75fd0b74Schristos2005-07-14  Daniel Marques  <marques@cs.cornell.edu>
1490*75fd0b74Schristos	    Nick Clifton  <nickc@redhat.com>
1491*75fd0b74Schristos
1492*75fd0b74Schristos	* coff-alpha.c (alpha_ecoff_bad_format_hook): Detect compressed
1493*75fd0b74Schristos	Alpha binaries and issue a helpful error message.
1494*75fd0b74Schristos	(alpha_ecoff_swap_reloc_out): Increase maximum allowed internal
1495*75fd0b74Schristos	symbol index to 15 to allow for binaries produced by DEC
1496*75fd0b74Schristos	compilers.
1497*75fd0b74Schristos
1498*75fd0b74Schristos2005-07-13  Steve Ellcey  <sje@cup.hp.com>
1499*75fd0b74Schristos
1500*75fd0b74Schristos	* bfd.m4 (BFD_NEED_DECLARATION): Remove.
1501*75fd0b74Schristos
1502*75fd0b74Schristos2005-07-12  Alan Modra  <amodra@bigpond.net.au>
1503*75fd0b74Schristos
1504*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_relocate_section): Don't use a plt stub
1505*75fd0b74Schristos	when !can_plt_call.
1506*75fd0b74Schristos
1507*75fd0b74Schristos2005-07-12  Alan Modra  <amodra@bigpond.net.au>
1508*75fd0b74Schristos
1509*75fd0b74Schristos	* elf32-xtensa.c (bfd_elf_xtensa_reloc): Warning fix.
1510*75fd0b74Schristos
1511*75fd0b74Schristos2005-07-12  Alan Modra  <amodra@bigpond.net.au>
1512*75fd0b74Schristos
1513*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_set_sdata_syms): Correct __sbss_start value.
1514*75fd0b74Schristos
1515*75fd0b74Schristos2005-07-11  H.J. Lu  <hongjiu.lu@intel.com>
1516*75fd0b74Schristos
1517*75fd0b74Schristos	* elflink.c (_bfd_elf_symbol_refs_local_p): Revert the last
1518*75fd0b74Schristos	change.
1519*75fd0b74Schristos
1520*75fd0b74Schristos2005-07-08  Paul Koning  <pkoning@equallogic.com>
1521*75fd0b74Schristos
1522*75fd0b74Schristos	* dwarf2.c (read_address): Check sign_extend_vma to handle targets
1523*75fd0b74Schristos	where addresses are sign extended.
1524*75fd0b74Schristos
1525*75fd0b74Schristos2005-07-08  Ralf Corsepius <ralf.corsepius@rtems.org>
1526*75fd0b74Schristos
1527*75fd0b74Schristos	* config.bfd: Mark i960-*-rtems*, or32-*-rtems* as obsolete.
1528*75fd0b74Schristos	Mark a29k-*rtems*, hppa*-*-rtems*, *-go32-rtems*,
1529*75fd0b74Schristos	i[3-7]86*-*-rtemscoff*, mips*el-*-rtems*, powerpcle-*-rtems*,
1530*75fd0b74Schristos	sparc*-*-rtemsaout* as removed
1531*75fd0b74Schristos
1532*75fd0b74Schristos2005-07-08  Alan Modra  <amodra@bigpond.net.au>
1533*75fd0b74Schristos
1534*75fd0b74Schristos	* elf-hppa.h (elf_hppa_final_link): Use gp val of zero when none
1535*75fd0b74Schristos	of the usual sections are found.
1536*75fd0b74Schristos	* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Tidy.
1537*75fd0b74Schristos	Strip .dynbss if it is zero size.
1538*75fd0b74Schristos	* elf32-arm.c (elf32_arm_size_dynamic_sections): Likewise.
1539*75fd0b74Schristos	* elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
1540*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
1541*75fd0b74Schristos	* elf32-i370.c (i370_elf_size_dynamic_sections): Likewise, and
1542*75fd0b74Schristos	.dynsbss.
1543*75fd0b74Schristos	(i370_elf_finish_dynamic_sections): Don't attempt to write .got
1544*75fd0b74Schristos	when it is zero size.
1545*75fd0b74Schristos	* elf32-i386.c (elf_i386_size_dynamic_sections): Correct handling
1546*75fd0b74Schristos	of .dynbss and zero size sections.
1547*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_size_dynamic_sections): Strip .dynbss if
1548*75fd0b74Schristos	it is zero size.
1549*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_size_dynamic_sections): Tidy.  Strip
1550*75fd0b74Schristos	.dynbss if zero size.
1551*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise, .dynsbss
1552*75fd0b74Schristos	too.
1553*75fd0b74Schristos	* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
1554*75fd0b74Schristos	* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1555*75fd0b74Schristos	* elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
1556*75fd0b74Schristos	* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Tidy.  Strip
1557*75fd0b74Schristos	.plt.* and .got.plt.* if zero size.
1558*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Tidy.  Strip
1559*75fd0b74Schristos	.got* and .dynbss if zero size.
1560*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Tidy.  Strip
1561*75fd0b74Schristos	* elf64-ppc.c (create_linkage_sections): Create branch lookup table
1562*75fd0b74Schristos	in .data.rel.ro.brlt or .rodata.brlt, and similarly for associated
1563*75fd0b74Schristos	reloc section.
1564*75fd0b74Schristos	(create_got_section): Always create new .got and .rela.got sections.
1565*75fd0b74Schristos	(ppc64_elf_size_dynamic_sections): Tidy.  Strip .dynbss if zero size.
1566*75fd0b74Schristos	* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
1567*75fd0b74Schristos	* elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise.
1568*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Handle
1569*75fd0b74Schristos	dynamic bss sections correctly.
1570*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Tidy.
1571*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Tidy.  Strip
1572*75fd0b74Schristos	.dynbss if zero size.
1573*75fd0b74Schristos
1574*75fd0b74Schristos2005-07-08  Ben Elliston  <bje@au.ibm.com>
1575*75fd0b74Schristos
1576*75fd0b74Schristos	* elf32-xtensa.c: Include <stdarg.h> unconditionally, not only
1577*75fd0b74Schristos	when ANSI_PROTOTYPES is defined.  Remove #ifdef logic.
1578*75fd0b74Schristos
1579*75fd0b74Schristos2005-07-07  H.J. Lu  <hongjiu.lu@intel.com>
1580*75fd0b74Schristos
1581*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Add special_sections.
1582*75fd0b74Schristos
1583*75fd0b74Schristos	* elf.c (_bfd_elf_get_sec_type_attr): Check special_sections
1584*75fd0b74Schristos	first.
1585*75fd0b74Schristos
1586*75fd0b74Schristos	* elf32-arm.c (elf_backend_get_sec_type_attr): Removed.
1587*75fd0b74Schristos	(elf_backend_special_sections): New. Defined.
1588*75fd0b74Schristos	* elf32-m32r.c: Likewise.
1589*75fd0b74Schristos	* elf32-m68hc11.c: Likewise.
1590*75fd0b74Schristos	* elf32-m68hc12.c: Likewise.
1591*75fd0b74Schristos	* elf32-mcore.c: Likewise.
1592*75fd0b74Schristos	* elf32-sh64.c: Likewise.
1593*75fd0b74Schristos	* elf32-v850.c: Likewise.
1594*75fd0b74Schristos	* elf32-xtensa.c: Likewise.
1595*75fd0b74Schristos	* elf64-alpha.c: Likewise.
1596*75fd0b74Schristos	* elf64-hppa.c: Likewise.
1597*75fd0b74Schristos	* elf64-ppc.c: Likewise.
1598*75fd0b74Schristos	* elf64-sh64.c: Likewise.
1599*75fd0b74Schristos	* elfxx-ia64.c: Likewise.
1600*75fd0b74Schristos	* elfxx-mips.c: Likewise.
1601*75fd0b74Schristos	* elfxx-mips.h: Likewise.
1602*75fd0b74Schristos
1603*75fd0b74Schristos	* elfxx-target.h (elf_backend_special_sections): New.
1604*75fd0b74Schristos	(elfNN_bed): Initialize special_sections.
1605*75fd0b74Schristos
1606*75fd0b74Schristos2005-07-07  Bob Wilson  <bob.wilson@acm.org>
1607*75fd0b74Schristos
1608*75fd0b74Schristos	* xtensa-modules.c: Update tables with Xtensa MMU features.
1609*75fd0b74Schristos
1610*75fd0b74Schristos2005-07-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1611*75fd0b74Schristos
1612*75fd0b74Schristos	* elf32-xtensa.c (vsprint_msg): Add format attribute.  Fix
1613*75fd0b74Schristos	format bugs.
1614*75fd0b74Schristos	* vms.h (_bfd_vms_debug): Add format attribute.
1615*75fd0b74Schristos	(_bfd_vms_debug, _bfd_hexdump): Fix typos.
1616*75fd0b74Schristos
1617*75fd0b74Schristos2005-07-07  H.J. Lu  <hongjiu.lu@intel.com>
1618*75fd0b74Schristos
1619*75fd0b74Schristos	PR 975
1620*75fd0b74Schristos	* elflink.c (_bfd_elf_symbol_refs_local_p): Only undefined
1621*75fd0b74Schristos	symbol with default visibility is local.
1622*75fd0b74Schristos
1623*75fd0b74Schristos2005-07-07  Ben Elliston  <bje@gnu.org>
1624*75fd0b74Schristos
1625*75fd0b74Schristos	* config.bfd: Mark m68*-*-rtemscoff as obsolete.
1626*75fd0b74Schristos
1627*75fd0b74Schristos2005-07-06  H.J. Lu  <hongjiu.lu@intel.com>
1628*75fd0b74Schristos
1629*75fd0b74Schristos	* dwarf2.c (varinfo): Add addr.
1630*75fd0b74Schristos	(lookup_symbol_in_variable_table): Also check addr.
1631*75fd0b74Schristos	(scan_unit_for_symbols): Set addr for variable.
1632*75fd0b74Schristos	(comp_unit_find_line): Updated.
1633*75fd0b74Schristos
1634*75fd0b74Schristos2005-07-06  Nick Clifton  <nickc@redhat.com>
1635*75fd0b74Schristos
1636*75fd0b74Schristos	* coff-alpha.c (alpha_adjust_reloc_in): Issue an informative error
1637*75fd0b74Schristos	message if an unknown reloc is encountered.
1638*75fd0b74Schristos	(alpha_relocate_section): Likewise.
1639*75fd0b74Schristos
1640*75fd0b74Schristos	* ecoff.c (_bfd_ecoff_write_object_contents): Cope with a reloc
1641*75fd0b74Schristos	with a missing howto field.
1642*75fd0b74Schristos
1643*75fd0b74Schristos2005-07-06  Alan Modra  <amodra@bigpond.net.au>
1644*75fd0b74Schristos
1645*75fd0b74Schristos	* po/SRC-POTFILES.in: Add cpu-ms1.c, elf32-ms1.c, elf-vxworks.c,
1646*75fd0b74Schristos	elfxx-sparc.c.
1647*75fd0b74Schristos
1648*75fd0b74Schristos2005-07-05  Paul Brook  <paul@codesourcery.com>
1649*75fd0b74Schristos
1650*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_vxworks_special_sections): Remove.
1651*75fd0b74Schristos	(ppc_elf_vxworks_get_sec_type_attr): New function.
1652*75fd0b74Schristos	(elf_backend_special_sections): Remove vxwords definition.
1653*75fd0b74Schristos	(elf_backend_get_sec_type_attr): Define for vxworks.
1654*75fd0b74Schristos
1655*75fd0b74Schristos2005-07-05  Nick Clifton  <nickc@redhat.com>
1656*75fd0b74Schristos
1657*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_info_to_howto): Fix typo.
1658*75fd0b74Schristos
1659*75fd0b74Schristos2005-07-05  Paul Brook  <paul@codesourcery.com>
1660*75fd0b74Schristos
1661*75fd0b74Schristos	* config.bfd: Add separate case for ppc-vxworks.
1662*75fd0b74Schristos	* configure: Regenerate.
1663*75fd0b74Schristos	* configure.in: Include elf-vxworks.lo on ppc targets.
1664*75fd0b74Schristos	* elf-vxworks.c (elf_vxworks_final_write_processing): Handle
1665*75fd0b74Schristos	.rela.plt.unloaded.
1666*75fd0b74Schristos	* elf32-ppc.c: Add VxWorks target vec.	Include elf-vxworks.h.
1667*75fd0b74Schristos	(PLT_ENTRY_SIZE, PLT_INITIAL_ENTRY_SIZE, PLT_SLOT_SIZE): Remove.
1668*75fd0b74Schristos	(VXWORKS_PLT_ENTRY_SIZE, ppc_elf_vxworks_plt_entry,
1669*75fd0b74Schristos	ppc_elf_vxworks_pic_plt_entry, VXWORKS_PLT_INITIAL_ENTRY_SIZE,
1670*75fd0b74Schristos	ppc_elf_vxworks_plt0_entry, ppc_elf_vxworks_pic_plt0_entry,
1671*75fd0b74Schristos	VXWORKS_PLT_NON_JMP_SLOT_RELOCS, VXWORKS_PLTRESOLVE_RELOCS,
1672*75fd0b74Schristos	VXWORKS_PLTRESOLVE_RELOCS_SHLIB): New.
1673*75fd0b74Schristos	(ppc_elf_link_hash_table): Add srelplt2, sgotplt, hgot, hplt,
1674*75fd0b74Schristos	is_vxworks, plt_entry_size, plt_slot_size, plt_initial_entry_size.
1675*75fd0b74Schristos	(ppc_elf_link_hash_table_create): Initialize hadtab plt fields.
1676*75fd0b74Schristos	(ppc_elf_create_got): Create .got.plt for VxWorks.
1677*75fd0b74Schristos	(ppc_elf_create_dynamic_sections): Create unloaded plt relocation
1678*75fd0b74Schristos	section for VxWorks.
1679*75fd0b74Schristos	(ppc_elf_select_plt_layout): Handle VxWorks plt format.
1680*75fd0b74Schristos	(allocate_got): VxWorks does not need a got header.
1681*75fd0b74Schristos	(allocate_dynrelocs): Handle VxWorks plt format.
1682*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Save _G_O_T_ and _P_L_T_ symbols for
1683*75fd0b74Schristos	VxWorks.  Handle VxWorks plt/got.
1684*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): Fill in VxWorks plt.
1685*75fd0b74Schristos	(ppc_elf_vxworks_special_sections): New.
1686*75fd0b74Schristos	(ppc_elf_vxworks_link_hash_table_create,
1687*75fd0b74Schristos	ppc_elf_vxworks_add_symbol_hook,
1688*75fd0b74Schristos	elf_i386_vxworks_link_output_symbol_hook,
1689*75fd0b74Schristos	ppc_elf_vxworks_final_write_processing): New functions.
1690*75fd0b74Schristos	* targets.c (bfd_elf32_powerpc_vxworks_vec): Declare.
1691*75fd0b74Schristos	(_bfd_target_vector): Use it.
1692*75fd0b74Schristos
1693*75fd0b74Schristos2005-07-05  Jakub Jelinek  <jakub@redhat.com>
1694*75fd0b74Schristos
1695*75fd0b74Schristos	* libbfd-in.h (struct artdata): Add extended_names_size field.
1696*75fd0b74Schristos	* libbfd.h: Rebuilt.
1697*75fd0b74Schristos	* coff-rs600.c (_bfd_xcoff_archive_p): Don't clear fields in freshly
1698*75fd0b74Schristos	allocated object by bfd_zalloc.
1699*75fd0b74Schristos	* coff64-rs6000.c (xcoff64_archive_p): Likewise.
1700*75fd0b74Schristos	* ecoff.c (_bfd_ecoff_archive_p): Likewise.
1701*75fd0b74Schristos	* archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p): Likewise.
1702*75fd0b74Schristos	(get_extended_arelt_filename): Fail if index is bigger or equal to
1703*75fd0b74Schristos	extended_names_size.
1704*75fd0b74Schristos	(_bfd_generic_read_ar_hdr_mag): Don't set bfd_error_malformed_archive,
1705*75fd0b74Schristos	get_extended_arelt_filename already did that.
1706*75fd0b74Schristos	(_bfd_slurp_extended_name_table): Initialize extended_names_size field.
1707*75fd0b74Schristos	Allocate one extra byte and clear it, in case extended names table
1708*75fd0b74Schristos	is not terminated.
1709*75fd0b74Schristos
1710*75fd0b74Schristos	* libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2, bfd_alloc2,
1711*75fd0b74Schristos	bfd_zalloc2): New prototypes.
1712*75fd0b74Schristos	* bfd-in.h (HALF_BFD_SIZE_TYPE): Define.
1713*75fd0b74Schristos	* libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): New functions.
1714*75fd0b74Schristos	* opncls.c (bfd_alloc2, bfd_zalloc2): New functions.
1715*75fd0b74Schristos	* elf.c (bfd_elf_get_elf_syms, setup_group, assign_section_numbers,
1716*75fd0b74Schristos	elf_map_symbols, map_sections_to_segments,
1717*75fd0b74Schristos	assign_file_positions_for_segments, copy_private_bfd_data,
1718*75fd0b74Schristos	swap_out_syms, _bfd_elf_slurp_version_tables): Use bfd_*alloc2
1719*75fd0b74Schristos	where appropriate.
1720*75fd0b74Schristos	* bfd-in2.h: Rebuilt.
1721*75fd0b74Schristos	* libbfd.h: Rebuilt.
1722*75fd0b74Schristos
1723*75fd0b74Schristos	* elf.c (_bfd_elf_print_private_bfd_data): Don't crash on bogus
1724*75fd0b74Schristos	verdef or verneed section.
1725*75fd0b74Schristos	(_bfd_elf_slurp_version_tables): Handle corrupt verdef and/or
1726*75fd0b74Schristos	verneed sections gracefully.
1727*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_info_to_howto_ptr): Don't crash on
1728*75fd0b74Schristos	bogus relocation values.
1729*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
1730*75fd0b74Schristos	* elf64-s390.c (elf_s390_info_to_howto): Likewise.
1731*75fd0b74Schristos	* elf32-s390.c (elf_s390_info_to_howto): Likewise.
1732*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_info_to_howto): Likewise.
1733*75fd0b74Schristos	* elfxx-ia64.c (lookup_howto): Likewise.
1734*75fd0b74Schristos
1735*75fd0b74Schristos	* elf.c (bfd_elf_get_str_section): Allocate an extra byte after
1736*75fd0b74Schristos	the end of strtab and clear it.
1737*75fd0b74Schristos	(elf_read): Remove.
1738*75fd0b74Schristos
1739*75fd0b74Schristos2005-07-05  Nick Clifton  <nickc@redhat.com>
1740*75fd0b74Schristos
1741*75fd0b74Schristos	* po/vi.po: New Vietnamese translation.
1742*75fd0b74Schristos	* configure.in (ALL_LINGUAS): Add vi.
1743*75fd0b74Schristos	* configure: Regenerate.
1744*75fd0b74Schristos
1745*75fd0b74Schristos2005-07-05  Peter S. Mazinger <ps.m@gmx.net>
1746*75fd0b74Schristos
1747*75fd0b74Schristos	* elf32-arm.c (elf32_arm_size_dynamic_sections): Fix a typo and
1748*75fd0b74Schristos	touchup logic like i386/ppc.
1749*75fd0b74Schristos
1750*75fd0b74Schristos2005-07-05  Alan Modra  <amodra@bigpond.net.au>
1751*75fd0b74Schristos
1752*75fd0b74Schristos	* elf.c (special_sections): Move const qualifier.
1753*75fd0b74Schristos	(special_sections_b..special_sections_t): Likewise.
1754*75fd0b74Schristos	* elf32-arm.c (elf32_arm_symbian_get_sec_type_attr): Remove duplicate
1755*75fd0b74Schristos	const.
1756*75fd0b74Schristos	(elf32_arm_symbian_special_sections): Move const qualifier.
1757*75fd0b74Schristos	* elf32-m32r.c: Similarly.
1758*75fd0b74Schristos	* elf32-m68hc11.c: Similarly.
1759*75fd0b74Schristos	* elf32-m68hc12.c: Similarly.
1760*75fd0b74Schristos	* elf32-mcore.c: Similarly.
1761*75fd0b74Schristos	* elf32-ppc.c: Similarly.
1762*75fd0b74Schristos	* elf32-sh64.c: Similarly.
1763*75fd0b74Schristos	* elf32-v850.c: Similarly.
1764*75fd0b74Schristos	* elf32-xtensa.c: Similarly.
1765*75fd0b74Schristos	* elf64-alpha.c: Similarly.
1766*75fd0b74Schristos	* elf64-hppa.c: Similarly.
1767*75fd0b74Schristos	* elf64-ppc.c: Similarly.
1768*75fd0b74Schristos	* elf64-sh64.c: Similarly.
1769*75fd0b74Schristos	* elfxx-ia64.c: Similarly.
1770*75fd0b74Schristos	* elfxx-mips.c: Similarly.
1771*75fd0b74Schristos
1772*75fd0b74Schristos2005-07-04  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1773*75fd0b74Schristos
1774*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_size_dynamic_sections): Use
1775*75fd0b74Schristos	info->executable instead of !info->shared where appropriate.
1776*75fd0b74Schristos
1777*75fd0b74Schristos2005-07-04  Alan Modra  <amodra@bigpond.net.au>
1778*75fd0b74Schristos
1779*75fd0b74Schristos	PR 1042
1780*75fd0b74Schristos	* elf.c (assign_file_positions_for_segments): Remove excluded
1781*75fd0b74Schristos	sections from the segment map.
1782*75fd0b74Schristos
1783*75fd0b74Schristos2005-07-04  Alan Modra  <amodra@bigpond.net.au>
1784*75fd0b74Schristos
1785*75fd0b74Schristos	PR 1004
1786*75fd0b74Schristos	* elf-bfd.h (struct elf_backend_data): Add get_sec_type_attr.  Delete
1787*75fd0b74Schristos	special_sections.
1788*75fd0b74Schristos	(_bfd_elf_get_special_section): Declare.
1789*75fd0b74Schristos	(bfd_elf_special_section): Update prototype.
1790*75fd0b74Schristos	* elf.c (special_sections): Remove unused outer entries.
1791*75fd0b74Schristos	(get_special_section): Delete.
1792*75fd0b74Schristos	(_bfd_elf_get_special_section): New function.
1793*75fd0b74Schristos	(_bfd_elf_get_sec_type_attr): Replace "name" arg with "sec".  Update
1794*75fd0b74Schristos	special_sections indexing.
1795*75fd0b74Schristos	(_bfd_elf_new_section_hook): Call backend get_sec_type_attr.
1796*75fd0b74Schristos	* elf32-arm.c (symbian_special_sections_d): Delete.
1797*75fd0b74Schristos	(symbian_special_sections_g, symbian_special_sections_h): Delete.
1798*75fd0b74Schristos	(symbian_special_sections_i, symbian_special_sections_f): Delete.
1799*75fd0b74Schristos	(symbian_special_sections_p): Delete.
1800*75fd0b74Schristos	(elf32_arm_symbian_special_sections): Merge above to here.
1801*75fd0b74Schristos	(elf32_arm_symbian_get_sec_type_attr): New function.
1802*75fd0b74Schristos	(elf_backend_special_sections): Don't define.
1803*75fd0b74Schristos	(elf_backend_get_sec_type_attr): Define.
1804*75fd0b74Schristos	* elf32-m32r.c: Similarly to elf32-arm.c.
1805*75fd0b74Schristos	* elf32-m68hc11.c: Likewise.
1806*75fd0b74Schristos	* elf32-m68hc12.c: Likewise.
1807*75fd0b74Schristos	* elf32-mcore.c: Likewise.
1808*75fd0b74Schristos	* elf32-sh64.c: Likewise.
1809*75fd0b74Schristos	* elf32-v850.c: Likewise.
1810*75fd0b74Schristos	* elf32-xtensa.c: Likewise.
1811*75fd0b74Schristos	* elf64-alpha.c: Likewise.
1812*75fd0b74Schristos	* elf64-hppa.c: Likewise.
1813*75fd0b74Schristos	* elf64-ppc.c: Likewise.
1814*75fd0b74Schristos	* elf64-sh64.c: Likewise.
1815*75fd0b74Schristos	* elfxx-ia64.c: Likewise.
1816*75fd0b74Schristos	* elfxx-mips.c: Likewise.
1817*75fd0b74Schristos	* elf32-ppc.c: Likewise.
1818*75fd0b74Schristos	(bfd_elf_special_section ppc_alt_plt): New.  Use it if .plt loadable.
1819*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_get_sec_type_attr): Declare.
1820*75fd0b74Schristos	(_bfd_mips_elf_special_sections, elf_backend_special_sections): Delete.
1821*75fd0b74Schristos	(elf_backend_get_sec_type_attr): Define.
1822*75fd0b74Schristos	* elfxx-target.h (elf_backend_get_sec_type_attr): Define.
1823*75fd0b74Schristos	(elf_backend_special_sections): Don't define.
1824*75fd0b74Schristos	(elfNN_bed): Update.
1825*75fd0b74Schristos
1826*75fd0b74Schristos2005-07-01  Nick Clifton  <nickc@redhat.com>
1827*75fd0b74Schristos
1828*75fd0b74Schristos	* cpu-d10v.c: Update to ISO C90 style function declarations and
1829*75fd0b74Schristos	fix formatting.
1830*75fd0b74Schristos	* cpu-d30v.c: Likewsie.
1831*75fd0b74Schristos	* cpu-i370.c: Likewsie.
1832*75fd0b74Schristos	* cpu-xstormy16.c: Likewsie.
1833*75fd0b74Schristos	* elf32-arc.c: Likewsie.
1834*75fd0b74Schristos	* elf32-d10v.c: Likewsie.
1835*75fd0b74Schristos	* elf32-d30v.c: Likewsie.
1836*75fd0b74Schristos	* elf32-dlx.c: Likewsie.
1837*75fd0b74Schristos	* elf32-i370.c: Likewsie.
1838*75fd0b74Schristos	* elf32-i960.c: Likewsie.
1839*75fd0b74Schristos	* elf32-ip2k.c: Likewsie.
1840*75fd0b74Schristos	* elf32-m32r.c: Likewsie.
1841*75fd0b74Schristos	* elf32-mcore.c: Likewsie.
1842*75fd0b74Schristos	* elf32-openrisc.c: Likewsie.
1843*75fd0b74Schristos	* elf32-or32.c: Likewsie.
1844*75fd0b74Schristos	* elf32-pj.c: Likewsie.
1845*75fd0b74Schristos	* elf32-v850.c: Likewsie.
1846*75fd0b74Schristos	* elf32-xstormy16.c: Likewsie.
1847*75fd0b74Schristos
1848*75fd0b74Schristos2005-07-01  Alan Modra  <amodra@bigpond.net.au>
1849*75fd0b74Schristos
1850*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_create_got_section): Always create
1851*75fd0b74Schristos	a new .got section.
1852*75fd0b74Schristos	(elf64_alpha_create_dynamic_sections): Always make new sections
1853*75fd0b74Schristos	by using bfd_make_section_anyway_with_flags.  Check that .got not
1854*75fd0b74Schristos	already created.
1855*75fd0b74Schristos	(elf64_alpha_check_relocs): Delete "got_created".  Use tdata->gotobj
1856*75fd0b74Schristos	instead.
1857*75fd0b74Schristos
1858*75fd0b74Schristos2005-06-30  Alan Modra  <amodra@bigpond.net.au>
1859*75fd0b74Schristos
1860*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Ignore dynamic
1861*75fd0b74Schristos	_SDA_BASE_ and _SDA2_BASE_ symbols.
1862*75fd0b74Schristos	* elflink.c (_bfd_elf_provide_symbol): Correct comment.  Define
1863*75fd0b74Schristos	sym if not def_regular.
1864*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): Similarly.
1865*75fd0b74Schristos
1866*75fd0b74Schristos2005-06-30  Ben Elliston  <bje@gnu.org>
1867*75fd0b74Schristos
1868*75fd0b74Schristos	* config.bfd: Mark as obsolete:
1869*75fd0b74Schristos	    m68*-apollo-*
1870*75fd0b74Schristos	    m68*-apple-aux*
1871*75fd0b74Schristos	    m68*-bull-sysv*
1872*75fd0b74Schristos
1873*75fd0b74Schristos2005-06-29  Alan Modra  <amodra@bigpond.net.au>
1874*75fd0b74Schristos
1875*75fd0b74Schristos	* elflink.c (_bfd_elf_gc_mark): Mark sections referenced by
1876*75fd0b74Schristos	.eh_frame specially..
1877*75fd0b74Schristos	(bfd_elf_gc_sections): ..rather than totally ignoring .eh_frame.
1878*75fd0b74Schristos	Don't recheck sections we have already marked.
1879*75fd0b74Schristos	(elf_gc_sweep): Keep non-code sections referenced from .eh_frame.
1880*75fd0b74Schristos	* section.c (struct bfd_section): Add gc_mark_from_eh.
1881*75fd0b74Schristos	(STD_SECTION): Adjust.
1882*75fd0b74Schristos	* ecoff.c (bfd_debug_section): Adjust.
1883*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1884*75fd0b74Schristos
1885*75fd0b74Schristos2005-06-29  Alan Modra  <amodra@bigpond.net.au>
1886*75fd0b74Schristos
1887*75fd0b74Schristos	* elflink.c (elf_gc_sweep): Do not refcount on sections that have
1888*75fd0b74Schristos	not been processed by check_relocs.
1889*75fd0b74Schristos
1890*75fd0b74Schristos2005-06-29  Paul Brook  <paul@codesourcery.com>
1891*75fd0b74Schristos
1892*75fd0b74Schristos	* bfd-in.h (_bfd_elf_provide_symbol): Update prototype.
1893*75fd0b74Schristos	* bfd-in2.h: Regenerate.
1894*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_set_sdata_syms): Make sdata symbols section
1895*75fd0b74Schristos	relative.
1896*75fd0b74Schristos	* elflink.c (bfd_elf_set_symbol): Add section argument.
1897*75fd0b74Schristos	(_bfd_elf_provide_symbol): Ditto.
1898*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): Pass NULL section argument.
1899*75fd0b74Schristos
1900*75fd0b74Schristos2005-06-27  Carlos O'Donell <carlos@systemhalted.org>
1901*75fd0b74Schristos
1902*75fd0b74Schristos	* elf32-hppa.c (struct elf32_hppa_stub_hash_entry):
1903*75fd0b74Schristos	Use bh_root, and hh.
1904*75fd0b74Schristos	(struct elf32_hppa_link_hash_entry): Use eh, and hsh_cache.
1905*75fd0b74Schristos	(struct elf32_hppa_dyn_reloc_entry): Use hdh_next.
1906*75fd0b74Schristos	(struct elf32_hppa_link_hash_table): Use etab and bstab.
1907*75fd0b74Schristos	(stub_hash_newfunc): Use hh.
1908*75fd0b74Schristos	(hppa_link_hash_newfunc): Use hsh_cache.
1909*75fd0b74Schristos	(elf32_hppa_link_hash_table_create): Use etab, and bstab.
1910*75fd0b74Schristos	(elf32_hppa_link_hash_table_free): Use bstab.
1911*75fd0b74Schristos	(hppa_stub_name): Use eh.
1912*75fd0b74Schristos	(hppa_get_stub_entry): Use hh, hsh_entry, and hsh_cache.
1913*75fd0b74Schristos	(hppa_add_stub): Use bstab.
1914*75fd0b74Schristos	(hppa_type_of_stub): Use eh.
1915*75fd0b74Schristos	(hppa_build_one_stub): Use hh and bh_root.
1916*75fd0b74Schristos	(elf32_hppa_copy_indirect_symbol): Use hdh_next.
1917*75fd0b74Schristos	(elf32_hppa_check_relocs): Use eh, etab, and hdh_next.
1918*75fd0b74Schristos	(elf32_hppa_gc_sweep_hook): Use hdh_next.
1919*75fd0b74Schristos	(elf32_hppa_adjust_dynamic_symbol): Use hdh_next, and etab.
1920*75fd0b74Schristos	(allocate_plt_static): Use etab.
1921*75fd0b74Schristos	(allocate_dynrelocs): Use etab, and hdh_next.
1922*75fd0b74Schristos	(readonly_dynrelocs): Use hdh_next.
1923*75fd0b74Schristos	(elf32_hppa_size_dynamic_sections): Use etab, and hdh_next.
1924*75fd0b74Schristos	(get_local_syms): Use eh, bstab, and hh.
1925*75fd0b74Schristos	(elf32_hppa_size_stubs): Use eh, bstab, and hh.
1926*75fd0b74Schristos	(elf32_hppa_set_gp): Use etab.
1927*75fd0b74Schristos	(elf32_hppa_build_stubs): Use bstab.
1928*75fd0b74Schristos	(final_link_relocate): Use eh, bh_root.
1929*75fd0b74Schristos	(elf32_hppa_relocate_section): Use elf, etab.
1930*75fd0b74Schristos	(elf32_hppa_finish_dynamic_sections): Use etab.
1931*75fd0b74Schristos
1932*75fd0b74Schristos2005-06-27  H.J. Lu  <hongjiu.lu@intel.com>
1933*75fd0b74Schristos
1934*75fd0b74Schristos	* elfxx-ia64.c (elfNN_hpux_backend_symbol_processing): Remove
1935*75fd0b74Schristos	the extra `;'.
1936*75fd0b74Schristos
1937*75fd0b74Schristos2005-06-21  Carlos O'Donell <carlos@systemhalted.org>
1938*75fd0b74Schristos
1939*75fd0b74Schristos	* elf32-hppa.c (hppa_elf_hash_entry): Define.
1940*75fd0b74Schristos	(hppa_stub_hash_entry): Define.
1941*75fd0b74Schristos	(stub_hash_newfunc): Rename variables.
1942*75fd0b74Schristos	(hppa_link_hash_newfunc): Likewise.
1943*75fd0b74Schristos	(elf32_hppa_link_hash_table_free): Likewise.
1944*75fd0b74Schristos	(hppa_stub_name): Likewise.
1945*75fd0b74Schristos	(hppa_get_stub_entry): Likewise.
1946*75fd0b74Schristos	(hppa_add_stub): Likewise.
1947*75fd0b74Schristos	(hppa_type_of_stub): Likewise.
1948*75fd0b74Schristos	(hppa_build_one_stub): Likewise.
1949*75fd0b74Schristos	(hppa_size_one_stub): Likewise.
1950*75fd0b74Schristos	(elf32_hppa_create_dynamic_sections): Likewise.
1951*75fd0b74Schristos	(elf32_hppa_copy_indirect_symbol): Likewise.
1952*75fd0b74Schristos	(elf32_hppa_check_relocs): Likewise.
1953*75fd0b74Schristos	(elf32_hppa_gc_mark_hook): Likewise.
1954*75fd0b74Schristos	(elf32_hppa_gc_sweep_hook): Likewise.
1955*75fd0b74Schristos	(elf32_hppa_grok_psinfo): Likewise.
1956*75fd0b74Schristos	(elf32_hppa_hide_symbol): Likewise.
1957*75fd0b74Schristos	(elf32_hppa_adjust_dynamic_symbol): Likewise.
1958*75fd0b74Schristos	(allocate_dynrelocs): Likewise.
1959*75fd0b74Schristos	(clobber_millicode_symbols): Likewise.
1960*75fd0b74Schristos	(readonly_dynrelocs): Likewise.
1961*75fd0b74Schristos	(elf32_hppa_size_dynamic_sections): Likewise.
1962*75fd0b74Schristos	(get_local_syms): Likewise.
1963*75fd0b74Schristos	(elf32_hppa_size_stubs): Likewise.
1964*75fd0b74Schristos	(hppa_record_segment_addr): Likewise.
1965*75fd0b74Schristos	(final_link_relocate): Likewise.
1966*75fd0b74Schristos	(elf32_hppa_relocate_section): Likewise.
1967*75fd0b74Schristos	(elf32_hppa_finish_dynamic_symbol): Likewise.
1968*75fd0b74Schristos
1969*75fd0b74Schristos2005-06-20  H.J. Lu  <hongjiu.lu@intel.com>
1970*75fd0b74Schristos
1971*75fd0b74Schristos	PR 1025
1972*75fd0b74Schristos	* elf-m10300.c (mn10300_elf_check_relocs): Handle indirect
1973*75fd0b74Schristos	symbol.
1974*75fd0b74Schristos	* elf32-arm.c (elf32_arm_check_relocs): Likewise.
1975*75fd0b74Schristos	* elf32-avr.c (elf32_avr_check_relocs): Likewise.
1976*75fd0b74Schristos	* elf32-cris.c (cris_elf_check_relocs): Likewise.
1977*75fd0b74Schristos	* elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
1978*75fd0b74Schristos	* elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
1979*75fd0b74Schristos	* elf32-fr30.c (fr30_elf_check_relocs): Likewise.
1980*75fd0b74Schristos	* elf32-frv.c (elf32_frv_check_relocs): Likewise.
1981*75fd0b74Schristos	* elf32-i370.c (i370_elf_check_relocs): Likewise.
1982*75fd0b74Schristos	* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1983*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_check_relocs): Likewise.
1984*75fd0b74Schristos	* elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1985*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
1986*75fd0b74Schristos	* elf32-mcore.c (mcore_elf_check_relocs): Likewise.
1987*75fd0b74Schristos	* elf32-ms1.c (ms1_elf_check_relocs): Likewise.
1988*75fd0b74Schristos	* elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
1989*75fd0b74Schristos	* elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
1990*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_check_relocs): Likewise.
1991*75fd0b74Schristos	* elf32-s390.c (elf_s390_check_relocs): Likewise.
1992*75fd0b74Schristos	* elf32-sh.c (sh_elf_check_relocs): Likewise.
1993*75fd0b74Schristos	* elf32-v850.c (v850_elf_check_relocs): Likewise.
1994*75fd0b74Schristos	* elf32-vax.c (elf_vax_check_relocs): Likewise.
1995*75fd0b74Schristos	* elf64-mmix.c (mmix_elf_check_relocs): Likewise.
1996*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
1997*75fd0b74Schristos	* elf64-s390.c (elf_s390_check_relocs): Likewise.
1998*75fd0b74Schristos	* elf64-sh64.c (sh_elf64_check_relocs): Likewise.
1999*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
2000*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
2001*75fd0b74Schristos
2002*75fd0b74Schristos2005-06-20  H.J. Lu  <hongjiu.lu@intel.com>
2003*75fd0b74Schristos
2004*75fd0b74Schristos	PR 1022
2005*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_check_relocs): Handle indirect
2006*75fd0b74Schristos	symbol.
2007*75fd0b74Schristos
2008*75fd0b74Schristos2005-06-20  H.J. Lu  <hongjiu.lu@intel.com>
2009*75fd0b74Schristos
2010*75fd0b74Schristos	PR 1025
2011*75fd0b74Schristos	* elf32-i386.c (elf_i386_check_relocs): Handle indirect symbol.
2012*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
2013*75fd0b74Schristos
2014*75fd0b74Schristos2005-06-18  H.J. Lu  <hongjiu.lu@intel.com>
2015*75fd0b74Schristos
2016*75fd0b74Schristos	* reloc.c: Add BFD_RELOC_X86_64_GOTOFF64 and
2017*75fd0b74Schristos	BFD_RELOC_X86_64_GOTPC32.
2018*75fd0b74Schristos	* bfd-in2.h: Regenerated.
2019*75fd0b74Schristos
2020*75fd0b74Schristos2005-06-17  Jakub Jelinek  <jakub@redhat.com>
2021*75fd0b74Schristos
2022*75fd0b74Schristos	* elf.c (bfd_section_from_shdr): Kill bogus warning.
2023*75fd0b74Schristos
2024*75fd0b74Schristos	* elf.c (bfd_section_from_shdr): Fail if sh_entsize is bogus for
2025*75fd0b74Schristos	symbol, relocation, group or versym sections.
2026*75fd0b74Schristos
2027*75fd0b74Schristos	* coffcode.h (coff_slurp_reloc_table): Don't crash if native_relocs
2028*75fd0b74Schristos	is NULL.
2029*75fd0b74Schristos	* peXXigen.c (pe_print_idata): Don't crash if dll_name or start_address
2030*75fd0b74Schristos	doesn't point into the section.
2031*75fd0b74Schristos
2032*75fd0b74Schristos2005-06-17  Jan Beulich  <jbeulich@novell.com>
2033*75fd0b74Schristos
2034*75fd0b74Schristos	* bfd-in2.h (elf_x86_64_reloc_type): Add BFD_RELOC_X86_64_GOTOFF64
2035*75fd0b74Schristos	and BFD_RELOC_X86_64_GOTPC32.
2036*75fd0b74Schristos	* libbfd.h (bfd_reloc_code_real_names): Likewise.
2037*75fd0b74Schristos	* elf64-x86-64.c (x86_64_elf_howto_table): Add entries for
2038*75fd0b74Schristos	R_X86_64_PC64, R_X86_64_GOTOFF64, and R_X86_64_GOTPC32.
2039*75fd0b74Schristos	(x86_64_reloc_map): Add entries for R_X86_64_PC64, R_X86_64_GOTOFF64,
2040*75fd0b74Schristos	and R_X86_64_GOTPC32.
2041*75fd0b74Schristos	(elf64_x86_64_info_to_howto): Adjust bounding relocation type.
2042*75fd0b74Schristos	(elf64_x86_64_check_relocs): Also handle R_X86_64_PC64,
2043*75fd0b74Schristos	R_X86_64_GOTOFF64, and R_X86_64_GOTPC32.
2044*75fd0b74Schristos	(elf64_x86_64_relocate_section): Likewise.
2045*75fd0b74Schristos	(elf64_x86_64_gc_sweep_hook): Also handle R_X86_64_PC64.
2046*75fd0b74Schristos
2047*75fd0b74Schristos2005-06-15  Mark Kettenis  <kettenis@gnu.org>
2048*75fd0b74Schristos
2049*75fd0b74Schristos	* archive.c: Include "libiberty.h".
2050*75fd0b74Schristos
2051*75fd0b74Schristos2005-06-15  Nick Clifton  <nickc@redhat.com>
2052*75fd0b74Schristos
2053*75fd0b74Schristos	* elf32-v850.c (ELF_MACHINE_ALT2): Define so that binaries
2054*75fd0b74Schristos	produced by the GreenHills toolchain can be assimilated.
2055*75fd0b74Schristos
2056*75fd0b74Schristos2005-06-14  Steve Ellcey  <sje@cup.hp.com>
2057*75fd0b74Schristos
2058*75fd0b74Schristos	* som.c (som_find_inliner_info): New.
2059*75fd0b74Schristos
2060*75fd0b74Schristos2005-06-14  H.J. Lu  <hongjiu.lu@intel.com>
2061*75fd0b74Schristos
2062*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Fix a typo in comment.
2063*75fd0b74Schristos
2064*75fd0b74Schristos2005-06-14  Jakub Jelinek  <jakub@redhat.com>
2065*75fd0b74Schristos
2066*75fd0b74Schristos	* elf.c (bfd_section_from_shdr): Fail if name is NULL.
2067*75fd0b74Schristos	Prevent endless recursion on broken objects.
2068*75fd0b74Schristos
2069*75fd0b74Schristos	* archive.c (do_slurp_coff_armap): Check for overflows.
2070*75fd0b74Schristos
2071*75fd0b74Schristos2005-06-10  Daniel Jacobowitz  <dan@codesourcery.com>
2072*75fd0b74Schristos
2073*75fd0b74Schristos	* elfcode.h (elf_write_relocs): Do nothing if there are no
2074*75fd0b74Schristos	relocations.
2075*75fd0b74Schristos
2076*75fd0b74Schristos2005-06-10  Alan Modra  <amodra@bigpond.net.au>
2077*75fd0b74Schristos
2078*75fd0b74Schristos	* dwarf2.c (decode_line_info): Revert last change.  Instead set
2079*75fd0b74Schristos	initial low_pc to -1 to avoid need to test whether loc_pc has
2080*75fd0b74Schristos	been set.
2081*75fd0b74Schristos
2082*75fd0b74Schristos2005-06-09  Christopher Faylor  <cgf@timesys.com>
2083*75fd0b74Schristos
2084*75fd0b74Schristos	* coffcode.h (sec_to_styp_flags): Set appropriate section flags when
2085*75fd0b74Schristos	either SEC_ALLOC OR SEC_LOAD.
2086*75fd0b74Schristos
2087*75fd0b74Schristos2005-06-09  Christopher Faylor  <cgf@timesys.com>
2088*75fd0b74Schristos
2089*75fd0b74Schristos	* coffcode.h (sec_to_styp_flags): Remove read/write flags from noload
2090*75fd0b74Schristos	section header.  Do not add STYP_NOLOAD since it does not appear to be
2091*75fd0b74Schristos	a valid PE flag.
2092*75fd0b74Schristos
2093*75fd0b74Schristos2005-06-09  H.J. Lu  <hongjiu.lu@intel.com>
2094*75fd0b74Schristos
2095*75fd0b74Schristos	PR 1000
2096*75fd0b74Schristos	* dwarf2.c (lookup_address_in_line_info_table): Restore code
2097*75fd0b74Schristos	handling NULL function info, removed with 2005-04-03 change.
2098*75fd0b74Schristos
2099*75fd0b74Schristos2005-06-08  Mark Mitchell  <mark@codesourcery.com>
2100*75fd0b74Schristos
2101*75fd0b74Schristos	* opncls.c (bfd_fopen): Mark returned BFD as cacheable if FD == -1.
2102*75fd0b74Schristos
2103*75fd0b74Schristos2005-06-09  Alan Modra  <amodra@bigpond.net.au>
2104*75fd0b74Schristos
2105*75fd0b74Schristos	* elflink.c (elf_mark_used_section): Delete.
2106*75fd0b74Schristos	(bfd_elf_gc_sections): Call bfd_generic_gc_sections.
2107*75fd0b74Schristos	* reloc.c (bfd_mark_used_section): New function.
2108*75fd0b74Schristos	(bfd_generic_gc_sections): Call bfd_mark_used_section.
2109*75fd0b74Schristos
2110*75fd0b74Schristos2005-06-08  Alan Modra  <amodra@bigpond.net.au>
2111*75fd0b74Schristos
2112*75fd0b74Schristos	* opncls.c (bfd_fopen): Don't set bfd_error unconditionally.
2113*75fd0b74Schristos	(bfd_fdopenr): Same.
2114*75fd0b74Schristos
2115*75fd0b74Schristos2005-06-07  Mark Mitchell  <mark@codesourcery.com>
2116*75fd0b74Schristos
2117*75fd0b74Schristos	* opncls.c (bfd_fdopenr): Add missing break statements.
2118*75fd0b74Schristos
2119*75fd0b74Schristos2005-06-07  Mark Mitchell  <mark@codesourcery.com>
2120*75fd0b74Schristos
2121*75fd0b74Schristos	* opncls.c (bfd_fopen): New API.
2122*75fd0b74Schristos	(bfd_openr): Use it.
2123*75fd0b74Schristos	(bfd_fdopenr): Likewise.
2124*75fd0b74Schristos	* bfd-in2.h: Regenerated.
2125*75fd0b74Schristos
2126*75fd0b74Schristos2005-06-07  Aldy Hernandez  <aldyh@redhat.com>
2127*75fd0b74Schristos	    Michael Snyder  <msnyder@redhat.com>
2128*75fd0b74Schristos	    Stan Cox  <scox@redhat.com>
2129*75fd0b74Schristos
2130*75fd0b74Schristos	* Makefile.am (ALL_MACHINES): Add ms1 support.
2131*75fd0b74Schristos	(ALL_MACHINES_CFILES): Same.
2132*75fd0b74Schristos	(BFD32_BACKENDS): Same.
2133*75fd0b74Schristos	(BFD32_BACKENDS_CFILES): Same.
2134*75fd0b74Schristos
2135*75fd0b74Schristos	* Makefile.in: Regenerate.
2136*75fd0b74Schristos
2137*75fd0b74Schristos	* archures.c (bfd_architecture): Add ms1 entries.
2138*75fd0b74Schristos	Externalize bfd_ms1_arch.
2139*75fd0b74Schristos	(bfd_archures_list): Add bfd_ms1_arch.
2140*75fd0b74Schristos
2141*75fd0b74Schristos	* bfd-in2.h: Regenerate.
2142*75fd0b74Schristos
2143*75fd0b74Schristos	* cpu-ms1.c: New file.
2144*75fd0b74Schristos
2145*75fd0b74Schristos	* elf32-ms1.c: New file.
2146*75fd0b74Schristos
2147*75fd0b74Schristos	* targets.c: Define extern of bfd_elf32_ms1_vec.
2148*75fd0b74Schristos	Add bfd_elf32_ms1_vec to _bfd_target_vector.
2149*75fd0b74Schristos
2150*75fd0b74Schristos	* configure.in: Add bfd_elf32_ms1_vec case.
2151*75fd0b74Schristos
2152*75fd0b74Schristos	* configure: Regenerate.
2153*75fd0b74Schristos
2154*75fd0b74Schristos	* config.bfd: Add ms1-*-elf to table.
2155*75fd0b74Schristos
2156*75fd0b74Schristos2005-06-07  Zack Weinberg  <zack@codesourcery.com>
2157*75fd0b74Schristos
2158*75fd0b74Schristos	* coff-i386.c: Change md_apply_fix3 to md_apply_fix in comment.
2159*75fd0b74Schristos
2160*75fd0b74Schristos2005-06-07  Alan Modra  <amodra@bigpond.net.au>
2161*75fd0b74Schristos
2162*75fd0b74Schristos	* coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Init _bfd_find_line.
2163*75fd0b74Schristos	* coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
2164*75fd0b74Schristos
2165*75fd0b74Schristos2005-06-06  H.J. Lu  <hongjiu.lu@intel.com>
2166*75fd0b74Schristos
2167*75fd0b74Schristos	PR 990
2168*75fd0b74Schristos	* bfd.c (bfd_find_line): New.
2169*75fd0b74Schristos
2170*75fd0b74Schristos	* dwarf2.c (comp_unit): Add variable_table.
2171*75fd0b74Schristos	(funcinfo): Add file, line, and sec.
2172*75fd0b74Schristos	(varinfo): New.
2173*75fd0b74Schristos	(lookup_symbol_in_function_table): New.
2174*75fd0b74Schristos	(lookup_symbol_in_variable_table): New.
2175*75fd0b74Schristos	(scan_unit_for_functions): Renamed to ...
2176*75fd0b74Schristos	(scan_unit_for_symbols): This. Handle DW_TAG_entry_point and
2177*75fd0b74Schristos	DW_TAG_variable.
2178*75fd0b74Schristos	(comp_unit_find_nearest_line): Updated.
2179*75fd0b74Schristos	(comp_unit_find_line): New.
2180*75fd0b74Schristos	(_bfd_dwarf2_find_line): New.
2181*75fd0b74Schristos
2182*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_find_line): New.
2183*75fd0b74Schristos	(_bfd_generic_find_line): New. Defined.
2184*75fd0b74Schristos
2185*75fd0b74Schristos	* elf.c (_bfd_elf_find_line): New.
2186*75fd0b74Schristos
2187*75fd0b74Schristos	* libbfd-in.h (_bfd_dwarf2_find_line): New.
2188*75fd0b74Schristos	(_bfd_generic_find_line): New.
2189*75fd0b74Schristos
2190*75fd0b74Schristos	* bfd-in2.h: Regenerated.
2191*75fd0b74Schristos	* libbfd.h: Likewise.
2192*75fd0b74Schristos
2193*75fd0b74Schristos	* libbfd.c (_bfd_generic_find_line): New.
2194*75fd0b74Schristos
2195*75fd0b74Schristos	* targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize _bfd_find_line
2196*75fd0b74Schristos	with _bfd_generic_find_line.
2197*75fd0b74Schristos	(bfd_target): Add _bfd_find_line.
2198*75fd0b74Schristos
2199*75fd0b74Schristos2005-06-06  H.J. Lu  <hongjiu.lu@intel.com>
2200*75fd0b74Schristos
2201*75fd0b74Schristos	* dwarf2.c (decode_line_info): Properly set low_pc.
2202*75fd0b74Schristos
2203*75fd0b74Schristos2005-06-06  Alan Modra  <amodra@bigpond.net.au>
2204*75fd0b74Schristos
2205*75fd0b74Schristos	* elf64-pcc.c (ppc64_elf_gc_mark_hook): For the local sym in .opd
2206*75fd0b74Schristos	case, include addend when indexing .opd section map.
2207*75fd0b74Schristos	(ppc64_elf_edit_opd): Add no_opd_opt param.  Do nothing besides
2208*75fd0b74Schristos	clear opd_adjust array if no_opd_opt set.  Tidy code.
2209*75fd0b74Schristos	Ignore zero size .opd.  Check bfd_alloc return value.
2210*75fd0b74Schristos	(ppc_stub_name): Return immediately on bfd_malloc fail.
2211*75fd0b74Schristos	* elf64-ppc.h (ppc64_elf_edit_opd): Update prototype.
2212*75fd0b74Schristos
2213*75fd0b74Schristos2005-06-04  H.J. Lu  <hongjiu.lu@intel.com>
2214*75fd0b74Schristos
2215*75fd0b74Schristos	* dwarf2.c (comp_unit): Fix a typo in comment.
2216*75fd0b74Schristos
2217*75fd0b74Schristos2005-06-03  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
2218*75fd0b74Schristos
2219*75fd0b74Schristos	* elf32-vax.c (rtype_to_howto): Remove PARAMS.
2220*75fd0b74Schristos	(reloc_type_lookup): Dito.
2221*75fd0b74Schristos	(elf_vax_discard_copies): Dito.
2222*75fd0b74Schristos	(elf_vax_instantiate_got_entries): Dito.
2223*75fd0b74Schristos	(elf_vax_link_hash_traverse): Dito.
2224*75fd0b74Schristos	(elf_vax_link_hash_newfunc): Dito.
2225*75fd0b74Schristos	(elf_vax_link_hash_table_create): Dito.
2226*75fd0b74Schristos	(elf32_vax_set_private_flags): Dito.
2227*75fd0b74Schristos	(elf32_vax_merge_private_bfd_data): Dito.
2228*75fd0b74Schristos	(elf32_vax_print_private_bfd_data): Dito.
2229*75fd0b74Schristos	(elf_vax_check_relocs): Dito.
2230*75fd0b74Schristos	(elf_vax_gc_mark_hook): Dito.
2231*75fd0b74Schristos	(elf_vax_gc_sweep_hook): Dito.
2232*75fd0b74Schristos	(elf_vax_size_dynamic_sections): Dito.
2233*75fd0b74Schristos	(elf_vax_discard_copies): Dito.
2234*75fd0b74Schristos	(elf_vax_instantiate_got_entries): Dito.
2235*75fd0b74Schristos	(elf_vax_relocate_section): Dito.
2236*75fd0b74Schristos	(elf_vax_finish_dynamic_symbol): Dito.
2237*75fd0b74Schristos	(elf_vax_finish_dynamic_sections): Dito.
2238*75fd0b74Schristos	(elf_vax_hash_table): Break-up of line isn't needed.
2239*75fd0b74Schristos	(elf_vax_check_relocs): Remove leading whitespace
2240*75fd0b74Schristos	(elf_vax_relocate_section): Remove redundant whitespace
2241*75fd0b74Schristos	(elf_vax_link_hash_newfunc): Don't cast NULL.
2242*75fd0b74Schristos	(elf_vax_link_hash_table_create): Dito.
2243*75fd0b74Schristos	* cpu-vax.c (bfd_vax_arch) Remove a trailing space.
2244*75fd0b74Schristos
2245*75fd0b74Schristos2005-06-03  Alan Modra  <amodra@bigpond.net.au>
2246*75fd0b74Schristos
2247*75fd0b74Schristos	PR 568
2248*75fd0b74Schristos	* configure.in: Bump version
2249*75fd0b74Schristos	* configure: Regenerate.
2250*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Use einfo linker callback to print
2251*75fd0b74Schristos	discarded section sym refs and kill linker output.
2252*75fd0b74Schristos	* simple.c (simple_dummy_einfo): New function.
2253*75fd0b74Schristos	(bfd_simple_get_relocated_section_contents): Init callbacks.einfo.
2254*75fd0b74Schristos
2255*75fd0b74Schristos	* elf32-i386.c (elf_i386_relocate_section): Handle zero symndx
2256*75fd0b74Schristos	for all reloc types.
2257*75fd0b74Schristos
2258*75fd0b74Schristos2005-06-02  Alan Modra  <amodra@bigpond.net.au>
2259*75fd0b74Schristos
2260*75fd0b74Schristos	* elf64-ppc.c (add_symbol_adjust): Set sym visibility to most
2261*75fd0b74Schristos	restrictive of func code and func descr for undefined syms as well
2262*75fd0b74Schristos	as defined.
2263*75fd0b74Schristos
2264*75fd0b74Schristos2005-05-31  Jim Blandy  <jimb@redhat.com>
2265*75fd0b74Schristos
2266*75fd0b74Schristos	* Makefile.am: Regenerate dependencies with 'make dep-am'.
2267*75fd0b74Schristos	* Makefile.in: Regenerate.
2268*75fd0b74Schristos
2269*75fd0b74Schristos2005-05-31  Richard Henderson  <rth@redhat.com>
2270*75fd0b74Schristos
2271*75fd0b74Schristos	* elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_JSRDIRECT): New.
2272*75fd0b74Schristos	(ALPHA_ELF_LINK_HASH_TLS_IE): Renumber to 0x80.
2273*75fd0b74Schristos	(ALPHA_ELF_LINK_HASH_LU_PLT): Rename from ALPHA_ELF_LINK_HASH_LU_FUNC.
2274*75fd0b74Schristos	(elf64_alpha_want_plt): Update to match.
2275*75fd0b74Schristos	(elf64_alpha_check_relocs): Collect JSRDIRECT in gotent_flags.
2276*75fd0b74Schristos	(elf64_alpha_relax_with_lituse): Likewise.  Handle JSRDIRECT.
2277*75fd0b74Schristos
2278*75fd0b74Schristos2005-05-31  Zack Weinberg  <zack@codesourcery.com>
2279*75fd0b74Schristos
2280*75fd0b74Schristos	* elf32-arm.c (elf32_arm_reloc_type_lookup)
2281*75fd0b74Schristos	(elf32_arm_nabi_grok_prstatus, elf32_arm_nabi_grok_psinfo):
2282*75fd0b74Schristos	Use ISO C90 function declaration style.
2283*75fd0b74Schristos
2284*75fd0b74Schristos2005-05-31  James E Wilson  <wilson@specifixinc.com>
2285*75fd0b74Schristos
2286*75fd0b74Schristos	* elfcode.h (NAME(bfd_elf,bfd_from_remote_memory)): Check for program
2287*75fd0b74Schristos	header PF_R flag on PT_LOAD segments.
2288*75fd0b74Schristos
2289*75fd0b74Schristos2005-05-30  Richard Henderson  <rth@redhat.com>
2290*75fd0b74Schristos
2291*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_relocate_section): Use dtp_base for
2292*75fd0b74Schristos	the zero index relocs produced by elf64_alpha_relax_tls_get_addr.
2293*75fd0b74Schristos
2294*75fd0b74Schristos2005-05-29  Richard Henderson  <rth@redhat.com>
2295*75fd0b74Schristos
2296*75fd0b74Schristos	* configure.in (--enable-secureplt): New.
2297*75fd0b74Schristos	* elf64-alpha.c (INSN_LDA, INSN_LDAH, INSN_LDQ, INSN_BR): New.
2298*75fd0b74Schristos	(INSN_SUBQ, INSN_S4SUBQ, INSN_JMP): New.
2299*75fd0b74Schristos	(INSN_A, INSN_AB, INSN_ABC, INSN_ABO, INSN_AD): New.
2300*75fd0b74Schristos	(elf64_alpha_use_secureplt): New.
2301*75fd0b74Schristos	(OLD_PLT_HEADER_SIZE, OLD_PLT_ENTRY_SIZE): New.
2302*75fd0b74Schristos	(NEW_PLT_HEADER_SIZE, NEW_PLT_ENTRY_SIZE): New.
2303*75fd0b74Schristos	(PLT_HEADER_SIZE, PLT_ENTRY_SIZE): Conditionalize on secureplt.
2304*75fd0b74Schristos	(ALPHA_ELF_LINK_HASH_PLT_LOC): Remove.
2305*75fd0b74Schristos	(struct alpha_elf_link_hash_entry): Add plt_offset.
2306*75fd0b74Schristos	(PLT_HEADER_WORD1, PLT_HEADER_WORD2, PLT_HEADER_WORD3): Remove.
2307*75fd0b74Schristos	(PLT_HEADER_WORD4, PLT_ENTRY_WORD1, PLT_ENTRY_WORD2): Remove.
2308*75fd0b74Schristos	(PLT_ENTRY_WORD3): Remove.
2309*75fd0b74Schristos	(elf64_alpha_create_dynamic_sections): If secureplt, set SEC_READONLY
2310*75fd0b74Schristos	on .plt and create .got.plt.
2311*75fd0b74Schristos	(elf64_alpha_output_extsym): Remove .plt frobbing for symbol values.
2312*75fd0b74Schristos	(get_got_entry): Initialize plt_offset.
2313*75fd0b74Schristos	(elf64_alpha_want_plt): New.
2314*75fd0b74Schristos	(elf64_alpha_check_relocs): Use it.
2315*75fd0b74Schristos	(elf64_alpha_adjust_dynamic_symbol): Likewise.  Don't allocate
2316*75fd0b74Schristos	plt entries here.
2317*75fd0b74Schristos	(elf64_alpha_calc_got_offsets_for_symbol): Don't report internal
2318*75fd0b74Schristos	error as user error.
2319*75fd0b74Schristos	(elf64_alpha_size_plt_section_1): Allocate one plt entry per
2320*75fd0b74Schristos	got subsection.
2321*75fd0b74Schristos	(elf64_alpha_size_plt_section): Size .got.plt section.
2322*75fd0b74Schristos	(elf64_alpha_size_rela_got_1): Don't allocate relocations if
2323*75fd0b74Schristos	plt entries used.
2324*75fd0b74Schristos	(elf64_alpha_size_dynamic_sections): Call elf64_alpha_size_plt_section.
2325*75fd0b74Schristos	Add PLTRO DYNAMIC entry.
2326*75fd0b74Schristos	(elf64_alpha_finish_dynamic_symbol): Generate secureplt format.
2327*75fd0b74Schristos	(elf64_alpha_finish_dynamic_sections): Likewise.
2328*75fd0b74Schristos
2329*75fd0b74Schristos2005-05-28  David Daney  <ddaney@avtrex.com>
2330*75fd0b74Schristos
2331*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections):  Move
2332*75fd0b74Schristos	calculation of DT_RELSZ to occur after all dynamic relocations
2333*75fd0b74Schristos	are created.
2334*75fd0b74Schristos
2335*75fd0b74Schristos2005-05-28  Eli Zaretskii  <eliz@gnu.org>
2336*75fd0b74Schristos
2337*75fd0b74Schristos	* configure.in: Add snprintf and vsnprintf to AC_CHECK_DECLS.
2338*75fd0b74Schristos	* config.in, configure: Regenerate.
2339*75fd0b74Schristos
2340*75fd0b74Schristos2005-05-26  Mark Kettenis  <kettenis@gnu.org>
2341*75fd0b74Schristos	    Maciej W. Rozycki  <macro@linux-mips.org>
2342*75fd0b74Schristos
2343*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_section_processing): Warn and
2344*75fd0b74Schristos	stop processing of options if one of invalid size is
2345*75fd0b74Schristos	encountered.
2346*75fd0b74Schristos	(_bfd_mips_elf_section_from_shdr): Likewise.
2347*75fd0b74Schristos	(_bfd_mips_elf_fake_sections): Reset the type of empty special
2348*75fd0b74Schristos	sections.
2349*75fd0b74Schristos
2350*75fd0b74Schristos2005-05-26  Richard Henderson  <rth@redhat.com>
2351*75fd0b74Schristos
2352*75fd0b74Schristos	* elf64-alpha.c (struct alpha_elf_link_hash_entry): Remove
2353*75fd0b74Schristos	plt_old_section, plt_old_value.
2354*75fd0b74Schristos	(elf64_alpha_adjust_dynamic_symbol): Don't set it.
2355*75fd0b74Schristos	(elf64_alpha_size_plt_section_1): Don't use it.
2356*75fd0b74Schristos
2357*75fd0b74Schristos2005-05-26  Jakub Jelinek  <jakub@redhat.com>
2358*75fd0b74Schristos
2359*75fd0b74Schristos	* elfcode.h (elf_object_p): Fail if e_shoff != 0, e_shnum == 0 and
2360*75fd0b74Schristos	first shdr has sh_size == 0.  Fail if e_shnum is large to cause
2361*75fd0b74Schristos	arithmetic overflow when allocating the i_shdr array.
2362*75fd0b74Schristos	Sanity check sh_link and sh_info fields.  Fix e_shstrndx sanity check.
2363*75fd0b74Schristos
2364*75fd0b74Schristos2005-05-25  Richard Henderson  <rth@redhat.com>
2365*75fd0b74Schristos
2366*75fd0b74Schristos	* elf64-alpha.c: Update all function definitions to ISO C.  Remove
2367*75fd0b74Schristos	all function prototypes; rearrange functions into def-use order.
2368*75fd0b74Schristos
2369*75fd0b74Schristos2005-05-25  Richard Henderson  <rth@redhat.com>
2370*75fd0b74Schristos
2371*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_merge_gots): Fix gotent iteration
2372*75fd0b74Schristos	in the presence of deleting elements.
2373*75fd0b74Schristos	(elf64_alpha_size_got_sections): Zero dead got section size.
2374*75fd0b74Schristos
2375*75fd0b74Schristos2005-05-23  Fred Fish  <fnf@specifixinc.com>
2376*75fd0b74Schristos
2377*75fd0b74Schristos	* dwarf2.c (struct dwarf2_debug): Add inliner_chain member.
2378*75fd0b74Schristos	(struct funcinfo): Add caller_func, caller_file, caller_line.
2379*75fd0b74Schristos	tag, and nesting_level members.
2380*75fd0b74Schristos	(lookup_address_in_function_table): Change first passed parameter
2381*75fd0b74Schristos	from "struct funcinfo *" to "struct comp_unit *".
2382*75fd0b74Schristos	(lookup_address_in_function_table): Dereference unit to find function
2383*75fd0b74Schristos	table.
2384*75fd0b74Schristos	(lookup_address_in_function_table): Traverse the function list to
2385*75fd0b74Schristos	create a chain of inlined functions back to the first non inlined
2386*75fd0b74Schristos	function.
2387*75fd0b74Schristos	(scan_unit_for_functions): Remember tag and nesting level.  Handle
2388*75fd0b74Schristos	DW_AT_call_file and DW_AT_call_line.
2389*75fd0b74Schristos	(comp_unit_find_nearest_line): Adjust lookup_address_in_function_table
2390*75fd0b74Schristos	call to pass unit pointer instead of function table pointer.  For
2391*75fd0b74Schristos	inlined functions, save pointer to the inliner chain.
2392*75fd0b74Schristos	(_bfd_dwarf2_find_nearest_line): Initialize inliner_chain to NULL.
2393*75fd0b74Schristos	(_bfd_dwarf2_find_inliner_info): New function that returns information
2394*75fd0b74Schristos	from the inliner chain after a call to bfd_find_nearest_line.
2395*75fd0b74Schristos
2396*75fd0b74Schristos	* bfd.c (bfd_find_inliner_info): Define using BFD_SEND.
2397*75fd0b74Schristos	* targets.c (BFD_JUMP_TABLE_SYMBOLS): Add entry for
2398*75fd0b74Schristos	NAME##_find_inliner_info.
2399*75fd0b74Schristos	(bfd_target): Add _bfd_find_inliner_info.
2400*75fd0b74Schristos	* bfd-in2.h: Regenerate.
2401*75fd0b74Schristos
2402*75fd0b74Schristos	* libbfd-in.h (_bfd_nosymbols_find_inliner_info): Define as
2403*75fd0b74Schristos	macro that always returns bfd_false.
2404*75fd0b74Schristos	(_bfd_dwarf2_find_inliner_info): Declare.
2405*75fd0b74Schristos	* libbfd.h: Regenerate.
2406*75fd0b74Schristos
2407*75fd0b74Schristos	* elf32-arm.c (elf32_arm_find_inliner_info): New function
2408*75fd0b74Schristos	that calls _bfd_dwarf2_find_inliner_info.
2409*75fd0b74Schristos	(bfd_elf32_find_inliner_info): Define to elf32_arm_find_inliner_info.
2410*75fd0b74Schristos
2411*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_find_inliner_info): New function
2412*75fd0b74Schristos	that calls _bfd_dwarf2_find_inliner_info.
2413*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_find_inliner_info): Declare.
2414*75fd0b74Schristos	* elfn32-mips.c (bfd_elf32_find_inliner_info): Define to
2415*75fd0b74Schristos	_bfd_mips_elf_find_inliner_info.
2416*75fd0b74Schristos	* elf64-mips.c (bfd_elf64_find_inliner_info): Ditto.
2417*75fd0b74Schristos	* elf32-mips.c (bfd_elf32_find_inliner_info): Ditto.
2418*75fd0b74Schristos
2419*75fd0b74Schristos	* elf.c (_bfd_elf_find_inliner_info): New function that calls
2420*75fd0b74Schristos	_bfd_dwarf2_find_inliner_info.
2421*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_find_inliner_info): Declare.
2422*75fd0b74Schristos	* elfxx-target.h (bfd_elfNN_find_inliner_info): Define to
2423*75fd0b74Schristos	_bfd_elf_find_inliner_info.
2424*75fd0b74Schristos
2425*75fd0b74Schristos	* coffgen.c (coff_find_inliner_info): New function that
2426*75fd0b74Schristos	calls _bfd_dwarf2_find_inliner_info.
2427*75fd0b74Schristos	* libcoff-in.h (coff_find_inliner_info): Declare.
2428*75fd0b74Schristos	* libcoff.h: Regenerate.
2429*75fd0b74Schristos	* coff-rs6000.c (rs6000coff_vec): Add coff_find_inliner_info.
2430*75fd0b74Schristos	(pmac_xcoff_vec) Ditto.
2431*75fd0b74Schristos	* coff64-rs6000.c (rs6000coff64_vec): Ditto.
2432*75fd0b74Schristos	(aix5coff64_vec): Ditto.
2433*75fd0b74Schristos
2434*75fd0b74Schristos	* aout-target.h (MY_find_inliner_info): Define as
2435*75fd0b74Schristos	_bfd_nosymbols_find_inliner_info.
2436*75fd0b74Schristos	* aout-tic30.c (MY_find_inliner_info): Ditto.
2437*75fd0b74Schristos	* binary.c (binary_find_inliner_info): Ditto.
2438*75fd0b74Schristos	* i386msdos.c (msdos_find_inliner_info): Ditto.
2439*75fd0b74Schristos	* ihex.c (ihex_find_inliner_info): Ditto.
2440*75fd0b74Schristos	* libaout.h (aout_32_find_inliner_info): Ditto.
2441*75fd0b74Schristos	* libecoff.h (_bfd_ecoff_find_inliner_info): Ditto.
2442*75fd0b74Schristos	* mach-o.c (bfd_mach_o_find_inliner_info): Ditto.
2443*75fd0b74Schristos	* mmo.c (mmo_find_inliner_info): Ditto.
2444*75fd0b74Schristos	* nlm-target.h (nlm_find_inliner_info): Ditto.
2445*75fd0b74Schristos	* pef.c (bfd_pef_find_inliner_info): Ditto.
2446*75fd0b74Schristos	* ppcboot.c (ppcboot_find_inliner_info): Ditto.
2447*75fd0b74Schristos	* srec.c (srec_find_inliner_info): Ditto.
2448*75fd0b74Schristos	* tekhex.c (tekhex_find_inliner_info): Ditto.
2449*75fd0b74Schristos	* versados.c (versados_find_inliner_info): Ditto.
2450*75fd0b74Schristos	* xsym.c (bfd_sym_find_inliner_info): Ditto.
2451*75fd0b74Schristos
2452*75fd0b74Schristos	* ieee.c (ieee_find_inliner_info): New function that always
2453*75fd0b74Schristos	returns FALSE.
2454*75fd0b74Schristos	* oasys.c (oasys_find_inliner_info): Ditto.
2455*75fd0b74Schristos	* vms.c (vms_find_inliner_info): Ditto.
2456*75fd0b74Schristos
2457*75fd0b74Schristos2005-05-24  Alan Modra  <amodra@bigpond.net.au>
2458*75fd0b74Schristos
2459*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_check_relocs): For old gcc -fPIC code
2460*75fd0b74Schristos	force old plt layout.
2461*75fd0b74Schristos
2462*75fd0b74Schristos2005-05-22  Richard Henderson  <rth@redhat.com>
2463*75fd0b74Schristos
2464*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_relax_section): Ignore non-allocated
2465*75fd0b74Schristos	sections.
2466*75fd0b74Schristos	(elf64_alpha_check_relocs): Likewise.
2467*75fd0b74Schristos	(elf64_alpha_relocate_section): Don't emit dynamic relocations to
2468*75fd0b74Schristos	non-allocated sections.
2469*75fd0b74Schristos
2470*75fd0b74Schristos2005-05-22  Richard Henderson  <rth@redhat.com>
2471*75fd0b74Schristos
2472*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_relax_with_lituse): Relax jsr to
2473*75fd0b74Schristos	undefweak to use zero register.  Call elf64_alpha_relax_got_load
2474*75fd0b74Schristos	if not all uses removed.
2475*75fd0b74Schristos	(elf64_alpha_relax_got_load): Relax undefweak to lda zero.
2476*75fd0b74Schristos	(elf64_alpha_relax_section): Handle undefweak symbols.
2477*75fd0b74Schristos	(elf64_alpha_calc_dynrel_sizes): Don't add relocs for undefweak.
2478*75fd0b74Schristos	(elf64_alpha_size_rela_got_1): Likewise.
2479*75fd0b74Schristos	(elf64_alpha_relocate_section): Likewise.
2480*75fd0b74Schristos
2481*75fd0b74Schristos2005-05-22  Richard Henderson  <rth@redhat.com>
2482*75fd0b74Schristos
2483*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_relax_section): Only operate
2484*75fd0b74Schristos	on SEC_CODE sections.
2485*75fd0b74Schristos
2486*75fd0b74Schristos2005-05-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2487*75fd0b74Schristos
2488*75fd0b74Schristos	* som.c (try_prev_fixup): Changed type of subspace_reloc_sizep to
2489*75fd0b74Schristos	unsigned int *.
2490*75fd0b74Schristos	(som_write_space_strings): Change type of tmp_space and p to char *.
2491*75fd0b74Schristos	(som_write_symbol_strings): Likewise.  Also change type of comp to
2492*75fd0b74Schristos	char *comp[4].
2493*75fd0b74Schristos	(som_begin_writing): Change type of strings_size to unsigned int.
2494*75fd0b74Schristos	(som_finish_writing): Likewise.
2495*75fd0b74Schristos	(som_slurp_reloc_table): Change type of external_relocs to unsigned
2496*75fd0b74Schristos	char *.
2497*75fd0b74Schristos	* som.h (struct som_section_data_struct): Change type of reloc_stream
2498*75fd0b74Schristos	field to unsigned char *.
2499*75fd0b74Schristos
2500*75fd0b74Schristos2005-05-20  Daniel Jacobowitz  <dan@codesourcery.com>
2501*75fd0b74Schristos
2502*75fd0b74Schristos	* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't eliminate
2503*75fd0b74Schristos	copy relocations for VxWorks.
2504*75fd0b74Schristos
2505*75fd0b74Schristos2005-05-20  Daniel Jacobowitz  <dan@codesourcery.com>
2506*75fd0b74Schristos
2507*75fd0b74Schristos	* elf32-ppc.c (struct ppc_elf_link_hash_entry): Add new field
2508*75fd0b74Schristos	has_sda_refs.
2509*75fd0b74Schristos	(ppc_elf_copy_indirect_symbol): Copy has_sda_refs.
2510*75fd0b74Schristos	(ppc_elf_check_relocs): Set has_sda_refs.
2511*75fd0b74Schristos	(ppc_elf_adjust_dynamic_symbol): Check has_sda_refs before eliminating
2512*75fd0b74Schristos	copy relocations.  Use has_sda_refs to place variables in .sbss.
2513*75fd0b74Schristos	(ppc_elf_finish_dynamic_symbol): Use has_sda_refs to place variables in
2514*75fd0b74Schristos	.sbss.
2515*75fd0b74Schristos
2516*75fd0b74Schristos2005-05-20  Bob Wilson  <bob.wilson@acm.org>
2517*75fd0b74Schristos
2518*75fd0b74Schristos	* elf32-xtensa.c (bfd_elf_xtensa_reloc): Make sure that
2519*75fd0b74Schristos	xtensa_default_isa is initialized.
2520*75fd0b74Schristos
2521*75fd0b74Schristos2005-05-20  Alan Modra  <amodra@bigpond.net.au>
2522*75fd0b74Schristos
2523*75fd0b74Schristos	* elf32-ppc.c (allocate_dynrelocs): Correct plt offset assigned
2524*75fd0b74Schristos	for second and subsequent list entries.  Only allocate multiple
2525*75fd0b74Schristos	glink stubs when shared or pie.
2526*75fd0b74Schristos	(ppc_elf_finish_dynamic_symbol): Break out early when only one
2527*75fd0b74Schristos	glink stub is needed.
2528*75fd0b74Schristos
2529*75fd0b74Schristos2005-05-19  Zack Weinberg  <zack@codesourcery.com>
2530*75fd0b74Schristos
2531*75fd0b74Schristos	* Makefile.am: Have 'all' depend on 'info'.
2532*75fd0b74Schristos	* Makefile.in: Regenerate.
2533*75fd0b74Schristos
2534*75fd0b74Schristos2005-05-19  Alan Modra  <amodra@bigpond.net.au>
2535*75fd0b74Schristos
2536*75fd0b74Schristos	* elf-bfd.h (struct elf_link_hash_table): Delete init_refcount and
2537*75fd0b74Schristos	init_offset.  Add init_got_refcount, init_plt_refcount,
2538*75fd0b74Schristos	init_got_offset and init_plt_offset.
2539*75fd0b74Schristos	* elf.c (_bfd_elf_link_hash_newfunc): Adjust for above change.
2540*75fd0b74Schristos	(_bfd_elf_link_hash_hide_symbol): Likewise.
2541*75fd0b74Schristos	(_bfd_elf_link_hash_table_init): Likewise.
2542*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
2543*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
2544*75fd0b74Schristos	* elflink.c (_bfd_elf_adjust_dynamic_symbol): Likewise.
2545*75fd0b74Schristos	(bfd_elf_size_dynamic_sections): Likewise.
2546*75fd0b74Schristos	* elf32-ppc.c (GLINK_PLTRESOLVE): Now 16 insns.
2547*75fd0b74Schristos	(LWZU_0_X_12, LWZ_0_4_30, LWZ_0_X_12, LWZ_11_X_11, LWZ_11_X_30,
2548*75fd0b74Schristos	LWZ_12_4_12, LWZ_12_8_30, LWZ_12_X_12, SUB_11_11_30): Delete.
2549*75fd0b74Schristos	(ADDIS_12_12, BCL_20_31, LWZU_0_12, LWZ_0_12, LWZ_11_11, LWZ_11_30,
2550*75fd0b74Schristos	LWZ_12_12, MFLR_0, MFLR_12, MTLR_0, SUB_11_11_12): Define.
2551*75fd0b74Schristos	(struct plt_entry): New.
2552*75fd0b74Schristos	(ppc_elf_link_hash_table_create): Set new init_plt fields.
2553*75fd0b74Schristos	(ppc_elf_copy_indirect_symbol): Handle merge of plt plist.  Don't
2554*75fd0b74Schristos	use _bfd_elf_link_hash_copy_indirect.
2555*75fd0b74Schristos	(update_plt_info, find_plt_ent): New functions.
2556*75fd0b74Schristos	(ppc_elf_check_relocs): Handle R_PPC_PLTREL24 with non-zero addend
2557*75fd0b74Schristos	and adjust for use of plt list rather than refcount.
2558*75fd0b74Schristos	(ppc_elf_gc_sweep_hook): Likewise.
2559*75fd0b74Schristos	(ppc_elf_tls_optimize): Likewise.
2560*75fd0b74Schristos	(ppc_elf_adjust_dynamic_symbol): Likewise.
2561*75fd0b74Schristos	(allocate_dynrelocs): Likewise.
2562*75fd0b74Schristos	(ppc_elf_relax_section): Likewise.
2563*75fd0b74Schristos	(ppc_elf_relocate_section): Likewise.  Adjust R_PPC_PLTREL24 addends
2564*75fd0b74Schristos	when performing a relocatable link.
2565*75fd0b74Schristos	(ppc_elf_finish_dynamic_symbol): Likewise.  Write .glink stubs here..
2566*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): ..rather than here.  Use new
2567*75fd0b74Schristos	pic resolver stub.
2568*75fd0b74Schristos
2569*75fd0b74Schristos2005-05-19  Alan Modra  <amodra@bigpond.net.au>
2570*75fd0b74Schristos
2571*75fd0b74Schristos	* elf.c (assign_file_positions_for_segments): Use maximum of
2572*75fd0b74Schristos	maxpagesize and section alignment when adjusting initial
2573*75fd0b74Schristos	segment offset and section offsets.
2574*75fd0b74Schristos
2575*75fd0b74Schristos2005-05-18  Zack Weinberg  <zack@codesourcery.com>
2576*75fd0b74Schristos
2577*75fd0b74Schristos	* elf32-arm.c: Make all #ifndef OLD_ARM_ABI blocks
2578*75fd0b74Schristos	unconditional.
2579*75fd0b74Schristos
2580*75fd0b74Schristos2005-05-18  H.J. Lu  <hongjiu.lu@intel.com>
2581*75fd0b74Schristos
2582*75fd0b74Schristos	* elf.c (group_signature): Undo the last change. Check if the
2583*75fd0b74Schristos	symbol table section is correct.
2584*75fd0b74Schristos
2585*75fd0b74Schristos2005-05-17  Zack Weinberg  <zack@codesourcery.com>
2586*75fd0b74Schristos
2587*75fd0b74Schristos	* elf32-arm.c: Wherever possible, use official reloc names
2588*75fd0b74Schristos	from AAELF.
2589*75fd0b74Schristos	(elf32_arm_howto_table, elf32_arm_tls_gd32_howto)
2590*75fd0b74Schristos	(elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto)
2591*75fd0b74Schristos	(elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto)
2592*75fd0b74Schristos	(elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto)
2593*75fd0b74Schristos	(elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel)
2594*75fd0b74Schristos	(elf32_arm_r_howto): Replace with elf32_arm_howto_table_1,
2595*75fd0b74Schristos	elf32_arm_howto_table_2, and elf32_arm_howto_table_3.
2596*75fd0b74Schristos	Add many new relocations from AAELF.
2597*75fd0b74Schristos	(elf32_arm_howto_from_type): Update to match.
2598*75fd0b74Schristos	(elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24,
2599*75fd0b74Schristos	R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8,
2600*75fd0b74Schristos	R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY.
2601*75fd0b74Schristos	(elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type.
2602*75fd0b74Schristos	(elf32_arm_final_link_relocate): Add support for
2603*75fd0b74Schristos	R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6.  Remove
2604*75fd0b74Schristos	case entries redundant with default.
2605*75fd0b74Schristos
2606*75fd0b74Schristos	* reloc.c: Reorganize ARM relocations.  Add Thumb
2607*75fd0b74Schristos	assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8,
2608*75fd0b74Schristos	BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE.
2609*75fd0b74Schristos	Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7,
2610*75fd0b74Schristos	BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25.
2611*75fd0b74Schristos	Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY.
2612*75fd0b74Schristos	* bfd-in2.h, libbfd.h: Regenerate.
2613*75fd0b74Schristos
2614*75fd0b74Schristos2005-05-17  Daniel Jacobowitz  <dan@codesourcery.com>
2615*75fd0b74Schristos
2616*75fd0b74Schristos	* elf.c (_bfd_elf_write_object_contents): Check for non-NULL
2617*75fd0b74Schristos	elf_shstrtab.
2618*75fd0b74Schristos	* format.c (bfd_check_format_matches): Set output_has_begun
2619*75fd0b74Schristos	for both_direction.
2620*75fd0b74Schristos	* section.c (bfd_set_section_contents): Use bfd_write_p.  Remove
2621*75fd0b74Schristos	special case for both_direction.
2622*75fd0b74Schristos
2623*75fd0b74Schristos2005-05-17  Nick Clifton  <nickc@redhat.com>
2624*75fd0b74Schristos
2625*75fd0b74Schristos	* elf.c (group_signature): Check for a group section which is
2626*75fd0b74Schristos	actually a (corrupt) symbol table section in disguise and prevent
2627*75fd0b74Schristos	an infinite loop from occurring.
2628*75fd0b74Schristos
2629*75fd0b74Schristos2005-05-17  H.J. Lu  <hongjiu.lu@intel.com>
2630*75fd0b74Schristos
2631*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relax_brl): Undo the change made on
2632*75fd0b74Schristos	2005-02-16.
2633*75fd0b74Schristos
2634*75fd0b74Schristos2005-05-17  H.J. Lu  <hongjiu.lu@intel.com>
2635*75fd0b74Schristos
2636*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relax_br): Keep the original
2637*75fd0b74Schristos	predicate on slot 0 only if slot 0 isn't br.
2638*75fd0b74Schristos
2639*75fd0b74Schristos2005-05-17  H.J. Lu  <hongjiu.lu@intel.com>
2640*75fd0b74Schristos
2641*75fd0b74Schristos	PR 797
2642*75fd0b74Schristos	* elf32-i386.c (elf_i386_size_dynamic_sections): Also remove
2643*75fd0b74Schristos	empty sdynbss section.
2644*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise.
2645*75fd0b74Schristos
2646*75fd0b74Schristos2005-05-17  Tavis Ormandy <taviso@gentoo.org>
2647*75fd0b74Schristos
2648*75fd0b74Schristos	* elf.c (bfd_section_from_shdr): Add sanity check when parsing
2649*75fd0b74Schristos	dynamic sections.
2650*75fd0b74Schristos
2651*75fd0b74Schristos2005-05-17  Alan Modra  <amodra@bigpond.net.au>
2652*75fd0b74Schristos
2653*75fd0b74Schristos	* elf32-ppc.c (LIS_11. LIS_12): Define.
2654*75fd0b74Schristos	(LWZU_0_X_12, LWZ_0_X_12, LWZ_12_4_12, LWZ_12_X_12): Define.
2655*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): Provide non-pic plt call stub
2656*75fd0b74Schristos	for --data-plt when building non-pie executables.
2657*75fd0b74Schristos
2658*75fd0b74Schristos2005-05-17  Nick Clifton  <nickc@redhat.com>
2659*75fd0b74Schristos
2660*75fd0b74Schristos	* elf32-arm.c (elf32_arm_final_link_relocate): Gracefully handle
2661*75fd0b74Schristos	the situation where a symbols's section is not known but a section
2662*75fd0b74Schristos	relative R_ARM_RELATIVE reloc has to be generated for the Symbian
2663*75fd0b74Schristos	OS.
2664*75fd0b74Schristos
2665*75fd0b74Schristos	* elf32-v850.c (v850_elf_relocate_section): Move code to test for
2666*75fd0b74Schristos	the presence of a symbol table to just before the symbol table is
2667*75fd0b74Schristos	actually used.
2668*75fd0b74Schristos
2669*75fd0b74Schristos2005-05-16  H.J. Lu  <hongjiu.lu@intel.com>
2670*75fd0b74Schristos
2671*75fd0b74Schristos	PR 834
2672*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relax_br): New.
2673*75fd0b74Schristos	(elfNN_ia64_relax_section): Use it.
2674*75fd0b74Schristos
2675*75fd0b74Schristos2005-05-14  Mark Kettenis  <kettenis@gnu.org>
2676*75fd0b74Schristos
2677*75fd0b74Schristos	* elflink.c (bfd_elf_size_dynamic_sections): Use lbasename instead
2678*75fd0b74Schristos	of basename.
2679*75fd0b74Schristos
2680*75fd0b74Schristos2005-05-14  Alan Modra  <amodra@bigpond.net.au>
2681*75fd0b74Schristos
2682*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Set DT_PPC_GOT,
2683*75fd0b74Schristos	not DT_PPC_GLINK.
2684*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): Likewise.
2685*75fd0b74Schristos
2686*75fd0b74Schristos2005-05-13  Fred Fish  <fnf@specifixinc.com>
2687*75fd0b74Schristos
2688*75fd0b74Schristos	* libbfd-in.h: Fix a comment typo, 'neaderst' -> 'nearest'
2689*75fd0b74Schristos	* libbfd.h: Rebuilt.
2690*75fd0b74Schristos
2691*75fd0b74Schristos2005-05-13  Bob Wilson  <bob.wilson@acm.org>
2692*75fd0b74Schristos
2693*75fd0b74Schristos	* elf32-xtensa.c (xtensa_get_property_section_name): Add missing
2694*75fd0b74Schristos	periods in linkonce_kind values.
2695*75fd0b74Schristos
2696*75fd0b74Schristos2005-05-12  H.J. Lu  <hongjiu.lu@intel.com>
2697*75fd0b74Schristos
2698*75fd0b74Schristos	* elf32-i386.c (elf_i386_relocate_section): Allow R_386_GOTOFF
2699*75fd0b74Schristos	against protected function when building executable.
2700*75fd0b74Schristos
2701*75fd0b74Schristos2005-05-12  Alan Modra  <amodra@bigpond.net.au>
2702*75fd0b74Schristos
2703*75fd0b74Schristos	* elf32-ppc.c (LWZU_0_X_11): Delete.
2704*75fd0b74Schristos	(B, LWZ_11_X_11, LWZ_11_X_30, MTCTR_11): Define.
2705*75fd0b74Schristos	(ppc_elf_select_plt_layout): Set .got flags too.  Formatting.
2706*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Allocate space for .glink branch
2707*75fd0b74Schristos	table.
2708*75fd0b74Schristos	(ppc_elf_finish_dynamic_symbol): Point .plt entries into the branch
2709*75fd0b74Schristos	table.
2710*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): Adjust DT_PPC_GLINK value.
2711*75fd0b74Schristos	Generate .glink branch table and updated stubs.
2712*75fd0b74Schristos
2713*75fd0b74Schristos2005-05-11  Alan Modra  <amodra@bigpond.net.au>
2714*75fd0b74Schristos
2715*75fd0b74Schristos	* reloc.c (BFD_RELOC_HI16_PCREL): Define.
2716*75fd0b74Schristos	(BFD_RELOC_HI16_S_PCREL, BFD_RELOC_LO16_PCREL): Define.
2717*75fd0b74Schristos	* elf32-ppc.c (GLINK_PLTRESOLVE, GLINK_ENTRY_SIZE): Define.
2718*75fd0b74Schristos	(CROR_151515, CROR_313131): Delete.
2719*75fd0b74Schristos	(ADDIS_11_11, ADDI_11_11, SUB_11_11_30, ADD_0_11_11, ADD_11_0_11,
2720*75fd0b74Schristos	LWZ_0_4_30, MTCTR_0, LWZ_12_8_30, BCTR, ADDIS_11_30,
2721*75fd0b74Schristos	LWZU_0_X_11): Define.
2722*75fd0b74Schristos	(ppc_elf_howto_raw): Add R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI
2723*75fd0b74Schristos	and R_PPC_REL16_HA entries.
2724*75fd0b74Schristos	(ppc_elf_reloc_type_lookup): Convert new bfd reloc types.
2725*75fd0b74Schristos	(ppc_elf_addr16_ha_reloc): Also handle R_PPC_REL16_HA.
2726*75fd0b74Schristos	(struct ppc_elf_link_hash_table): Add glink, glink_pltresolve,
2727*75fd0b74Schristos	new_plt, and old_plt.
2728*75fd0b74Schristos	(ppc_elf_create_dynamic_sections): Create .glink section.
2729*75fd0b74Schristos	(ppc_elf_check_relocs): Set new_plt and old_plt.
2730*75fd0b74Schristos	(ppc_elf_select_plt_layout): New function.
2731*75fd0b74Schristos	(ppc_elf_tls_setup): Set plt output section elf type and flags.
2732*75fd0b74Schristos	(allocate_got): Handle differences between old and new got layout.
2733*75fd0b74Schristos	(allocate_dynrelocs): Likewise for plt.
2734*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Likewise.  Allocate memory for
2735*75fd0b74Schristos	.glink.  Don't allocate memory for old bss .plt.  Emit DT_PPC_GLINK.
2736*75fd0b74Schristos	(ppc_elf_relax_section): Rename ppc_info to htab.  Handle .glink
2737*75fd0b74Schristos	destination of R_PPC_PLTREL24 relocs.
2738*75fd0b74Schristos	(ppc_elf_relocate_section): Handle new relocs and changed destination
2739*75fd0b74Schristos	of R_PPC_PLTREL24.
2740*75fd0b74Schristos	(ppc_elf_finish_dynamic_symbol): Init new style plt and handle
2741*75fd0b74Schristos	differences in layout.
2742*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): Set DT_PPC_GLINK value.  Don't
2743*75fd0b74Schristos	put a blrl in new got.  Write glink contents.
2744*75fd0b74Schristos	* elf32-ppc.h (ppc_elf_select_plt_layout): Declare.
2745*75fd0b74Schristos	* libbfd.h: Regenerate.
2746*75fd0b74Schristos	* bfd-in2.h: Regenerate.
2747*75fd0b74Schristos
2748*75fd0b74Schristos2005-05-11  Andreas Schwab  <schwab@suse.de>
2749*75fd0b74Schristos
2750*75fd0b74Schristos	* elf32-i386.c (elf_i386_finish_dynamic_sections): Fix signedness
2751*75fd0b74Schristos	warning.
2752*75fd0b74Schristos
2753*75fd0b74Schristos2005-05-10  H.J. Lu  <hongjiu.lu@intel.com>
2754*75fd0b74Schristos
2755*75fd0b74Schristos	* elf.c (_bfd_elf_make_section_from_shdr): Only check debug
2756*75fd0b74Schristos	section if SEC_ALLOC isn't set.
2757*75fd0b74Schristos
2758*75fd0b74Schristos2005-05-09  Kelley Cook  <kcook@gcc.gnu.org>
2759*75fd0b74Schristos
2760*75fd0b74Schristos	* configure.in: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF.
2761*75fd0b74Schristos	* acinclude.m4: Don't sinclude accross.m4.
2762*75fd0b74Schristos	* config.in, configure, Makefile.in, doc/Makefile.in: Regenerate.
2763*75fd0b74Schristos
2764*75fd0b74Schristos2005-05-09  Alan Modra  <amodra@bigpond.net.au>
2765*75fd0b74Schristos
2766*75fd0b74Schristos	* elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_dotsym.
2767*75fd0b74Schristos	(ppc64_elf_add_symbol_hook): Set has_dotsym.
2768*75fd0b74Schristos	(ppc64_elf_check_directives): Only process syms when has_dotsym.
2769*75fd0b74Schristos	(func_desc_adjust): Hide fake function descriptors when function
2770*75fd0b74Schristos	code entry is defined.
2771*75fd0b74Schristos	(adjust_opd_syms): Adjust for deleted_section becoming union field.
2772*75fd0b74Schristos
2773*75fd0b74Schristos2005-05-09  Alan Modra  <amodra@bigpond.net.au>
2774*75fd0b74Schristos
2775*75fd0b74Schristos	* elfcode.h (elf_object_p): Add more sanity checks on elf header.
2776*75fd0b74Schristos
2777*75fd0b74Schristos2005-05-08  Dave Korn   <dave.korn@artimi.com>
2778*75fd0b74Schristos
2779*75fd0b74Schristos	* coff-tic80.c:  Undefine _CONST after system headers to prevent
2780*75fd0b74Schristos	clash with tic80-specific definition in include/coff/tic80.h
2781*75fd0b74Schristos
2782*75fd0b74Schristos2005-05-08  H.J. Lu  <hongjiu.lu@intel.com>
2783*75fd0b74Schristos
2784*75fd0b74Schristos	PR 939
2785*75fd0b74Schristos	* elflink.c (elf_link_output_extsym): Use output_bfd if
2786*75fd0b74Schristos	h->root.u.def.section is bfd_abs_section_ptr when reporting
2787*75fd0b74Schristos	error.
2788*75fd0b74Schristos
2789*75fd0b74Schristos2005-05-07  H.J. Lu  <hongjiu.lu@intel.com>
2790*75fd0b74Schristos
2791*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Update special_sections to
2792*75fd0b74Schristos	array of pointer to bfd_elf_special_section.
2793*75fd0b74Schristos	* elf.c (special_sections): Likewise.
2794*75fd0b74Schristos	* elf32-arm.c (elf32_arm_symbian_special_sections): Likewise.
2795*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_special_sections): Likewise.
2796*75fd0b74Schristos	* elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise.
2797*75fd0b74Schristos	* elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise.
2798*75fd0b74Schristos	* elf32-mcore.c (mcore_elf_special_sections): Likewise.
2799*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_special_sections): Likewise.
2800*75fd0b74Schristos	* elf32-sh64.c (sh64_elf_special_sections): Likewise.
2801*75fd0b74Schristos	* elf32-v850.c (v850_elf_special_sections): Likewise.
2802*75fd0b74Schristos	* elf32-xtensa.c (elf_xtensa_special_sections): Likewise.
2803*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_special_sections): Likewise.
2804*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_special_sections): Likewise.
2805*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_special_sections): Likewise.
2806*75fd0b74Schristos	* elf64-sh64.c (sh64_elf64_special_sections): Likewise.
2807*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_special_sections): Likewise.
2808*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise.
2809*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_special_sections): Likewise.
2810*75fd0b74Schristos
2811*75fd0b74Schristos	* elf.c (get_special_section): Updated.
2812*75fd0b74Schristos
2813*75fd0b74Schristos2005-05-07  Alan Modra  <amodra@bigpond.net.au>
2814*75fd0b74Schristos
2815*75fd0b74Schristos	* elf-bfd.h (struct elf_backend_data): Remove got_symbol_offset.
2816*75fd0b74Schristos	* elfxx-target.h (elf_backend_got_symbol_offset): Delete.
2817*75fd0b74Schristos	* elflink.c (_bfd_elf_create_got_section): Use zero in place of
2818*75fd0b74Schristos	got_symbol_offset.
2819*75fd0b74Schristos	* elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise.
2820*75fd0b74Schristos	* elf32-frv.c (_frv_create_got_section): Likewise.
2821*75fd0b74Schristos	* elf32-i370.c (i370_elf_finish_dynamic_sections): Delete ppc code.
2822*75fd0b74Schristos	(elf_backend_got_symbol_offset): Don't define.
2823*75fd0b74Schristos	* elf64-ppc.c (elf_backend_got_symbol_offset): Don't define.
2824*75fd0b74Schristos	* elf32-ppc.c (struct ppc_elf_link_hash_table): Add got_header_size
2825*75fd0b74Schristos	and got_gap.
2826*75fd0b74Schristos	(ppc_elf_create_got): Tidy.
2827*75fd0b74Schristos	(ppc_elf_create_dynamic_sections): Don't set SEC_IN_MEMORY for .plt.
2828*75fd0b74Schristos	(ppc_elf_check_relocs): Reduce string comparisons by using elf.hgot.
2829*75fd0b74Schristos	(ppc_elf_gc_sweep_hook): Likewise.
2830*75fd0b74Schristos	(ppc_elf_relocate_section): Likewise.
2831*75fd0b74Schristos	(ppc_elf_finish_dynamic_symbol): Likewise.
2832*75fd0b74Schristos	(allocate_got): New function.
2833*75fd0b74Schristos	(allocate_dynrelocs): Use allocate_got.
2834*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Likewise.  Delay tlsld_got allocation
2835*75fd0b74Schristos	so that local got can refcount it.  Set got_header_size.
2836*75fd0b74Schristos	(ppc_elf_relocate_section): Use value of elf.hgot rather than hard-
2837*75fd0b74Schristos	coded 4.
2838*75fd0b74Schristos	(ppc_elf_finish_dynamic_sections): Likewise.
2839*75fd0b74Schristos	(elf_backend_got_symbol_offset): Don't define.
2840*75fd0b74Schristos	(elf_backend_got_header_size): Ditto.
2841*75fd0b74Schristos
2842*75fd0b74Schristos2005-05-05  Steve Ellcey  <sje@cup.hp.com>
2843*75fd0b74Schristos
2844*75fd0b74Schristos	* configure.in (ACX_HEADER_STRING): New.
2845*75fd0b74Schristos	* configure: Regenerate.
2846*75fd0b74Schristos	* config.in: Regenerate.
2847*75fd0b74Schristos	* sysdep.h (STRING_WITH_STRINGS): Use.
2848*75fd0b74Schristos
2849*75fd0b74Schristos2005-05-05  H.J. Lu  <hongjiu.lu@intel.com>
2850*75fd0b74Schristos
2851*75fd0b74Schristos	* elf.c (_bfd_elf_close_and_cleanup): Only call
2852*75fd0b74Schristos	_bfd_dwarf2_cleanup_debug_info on bfd_object.
2853*75fd0b74Schristos
2854*75fd0b74Schristos2005-05-05  H.J. Lu  <hongjiu.lu@intel.com>
2855*75fd0b74Schristos
2856*75fd0b74Schristos	* elflink.c (_bfd_elf_provide_section_bound_symbols): Use
2857*75fd0b74Schristos	"__bss_start" instead of "_edata" as fallback.
2858*75fd0b74Schristos
2859*75fd0b74Schristos2005-05-05  H.J. Lu  <hongjiu.lu@intel.com>
2860*75fd0b74Schristos
2861*75fd0b74Schristos	* bfd-in2.h: Regenerated.
2862*75fd0b74Schristos
2863*75fd0b74Schristos2005-05-05  Paul Brook  <paul@codesourcery.com>
2864*75fd0b74Schristos
2865*75fd0b74Schristos	* config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks.
2866*75fd0b74Schristos	* configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need
2867*75fd0b74Schristos	elf-vxworks.lo.
2868*75fd0b74Schristos	* configure: Regenerate.
2869*75fd0b74Schristos	* Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo.
2870*75fd0b74Schristos	(BFD32_BACKENDS_CFILES): Add elf-vxworks.c.
2871*75fd0b74Schristos	(elf32-i386.lo): Depend on elf-vxworks.h.
2872*75fd0b74Schristos	(elf-vxworks.lo): New rule.
2873*75fd0b74Schristos	* Makefile.in: Regenerate.
2874*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Update type of
2875*75fd0b74Schristos	elf_backend_emit_relocs.
2876*75fd0b74Schristos	(_bfd_elf_link_output_relocs): Update prototype.
2877*75fd0b74Schristos	* elflink.c (_bfd_elf_link_output_relocs): Always use
2878*75fd0b74Schristos	bed->elf_backend_emit_relocs when outputting relocations.
2879*75fd0b74Schristos	* elfxx-target.h (elf_backend_emit_relocs): Default to
2880*75fd0b74Schristos	_bfd_elf_link_output_relocs.
2881*75fd0b74Schristos	* targets.c (bfd_elf32_i386_vxworks_vec): Declare.
2882*75fd0b74Schristos	(_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec.
2883*75fd0b74Schristos	* elf32-i386.c: Add elf32-i386-vxworks target BFD.
2884*75fd0b74Schristos	(elf_i386_plt0_entry): Remove padding.
2885*75fd0b74Schristos	(elf_i386_pic_plt0_entry): Ditto.
2886*75fd0b74Schristos	(PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define.
2887*75fd0b74Schristos	(PLT_NON_JUMP_SLOT_RELOCS): Define.
2888*75fd0b74Schristos	(elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and
2889*75fd0b74Schristos	plt0_pad_byte fields.
2890*75fd0b74Schristos	(elf_i386_link_hash_table_create): Zero them.
2891*75fd0b74Schristos	(elf_i386_create_dynamic_sections): Create static relocation section.
2892*75fd0b74Schristos	(allocate_dynrelocs): Allocate space for static PLT relocations.
2893*75fd0b74Schristos	(elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT
2894*75fd0b74Schristos	symbols.  Give PLT symbols function type.  Don't strip PLT sections
2895*75fd0b74Schristos	if we have exported symbols from them.
2896*75fd0b74Schristos	(elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static
2897*75fd0b74Schristos	relocation section.  Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on
2898*75fd0b74Schristos	VxWorks.
2899*75fd0b74Schristos	(elf_i386_finish_dynamic_sections): Allow different pad bytes.
2900*75fd0b74Schristos	Add relocation for GOT location.  Fill in PLT static relocations.
2901*75fd0b74Schristos	(elf_i386_vxworks_link_hash_table_create): New function.
2902*75fd0b74Schristos	(elf_i386_vxworks_link_output_symbol_hook): New function.
2903*75fd0b74Schristos	* elf-vxworks.h: New file.
2904*75fd0b74Schristos
2905*75fd0b74Schristos2005-05-05  H.J. Lu  <hongjiu.lu@intel.com>
2906*75fd0b74Schristos
2907*75fd0b74Schristos	* section.c (bfd_make_section_anyway_with_flags): New.
2908*75fd0b74Schristos	(bfd_make_section_anyway): Call bfd_make_section_anyway_with_flags,
2909*75fd0b74Schristos	(bfd_make_section_with_flags): New.
2910*75fd0b74Schristos	(bfd_make_section): Call bfd_make_section_with_flags.
2911*75fd0b74Schristos
2912*75fd0b74Schristos	* elf-m10300.c (_bfd_mn10300_elf_create_got_section): Call
2913*75fd0b74Schristos	bfd_make_section_with_flags/bfd_make_section_anyway_with_flags
2914*75fd0b74Schristos	instead of bfd_make_section/bfd_make_section and don't call
2915*75fd0b74Schristos	bfd_set_section_flags.
2916*75fd0b74Schristos	(mn10300_elf_check_relocs): Likewise.
2917*75fd0b74Schristos	(_bfd_mn10300_elf_create_dynamic_sections): Likewise.
2918*75fd0b74Schristos	* elf32-arm.c (create_got_section): Likewise.
2919*75fd0b74Schristos	(bfd_elf32_arm_add_glue_sections_to_bfd): Likewise.
2920*75fd0b74Schristos	(elf32_arm_check_relocs): Likewise.
2921*75fd0b74Schristos	* elf32-cris.c (cris_elf_check_relocs): Likewise.
2922*75fd0b74Schristos	* elf32-frv.c (elf32_frv_add_symbol_hook): Likewise.
2923*75fd0b74Schristos	(_frv_create_got_section): Likewise.
2924*75fd0b74Schristos	(elf32_frvfdpic_create_dynamic_sections): Likewise.
2925*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_create_dynamic_sections): Likewise.
2926*75fd0b74Schristos	(elf32_hppa_check_relocs): Likewise.
2927*75fd0b74Schristos	* elf32-i370.c (i370_elf_create_dynamic_sections): Likewise.
2928*75fd0b74Schristos	(i370_elf_check_relocs): Likewise.
2929*75fd0b74Schristos	* elf32-i386.c (create_got_section): Likewise.
2930*75fd0b74Schristos	(elf_i386_check_relocs): Likewise.
2931*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise.
2932*75fd0b74Schristos	(create_got_section): Likewise.
2933*75fd0b74Schristos	(m32r_elf_create_dynamic_sections): Likewise.
2934*75fd0b74Schristos	(m32r_elf_check_relocs): Likewise.
2935*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
2936*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_create_got): Likewise.
2937*75fd0b74Schristos	(ppc_elf_create_dynamic_sections): Likewise.
2938*75fd0b74Schristos	(ppc_elf_add_symbol_hook): Likewise.
2939*75fd0b74Schristos	(ppc_elf_check_relocs): Likewise.
2940*75fd0b74Schristos	* elf32-s390.c (create_got_section): Likewise.
2941*75fd0b74Schristos	(elf_s390_check_relocs): Likewise.
2942*75fd0b74Schristos	* elf32-sh.c (create_got_section): Likewise.
2943*75fd0b74Schristos	(sh_elf_create_dynamic_sections): Likewise.
2944*75fd0b74Schristos	(sh_elf_check_relocs): Likewise.
2945*75fd0b74Schristos	* elf32-vax.c (elf_vax_check_relocs): Likewise.
2946*75fd0b74Schristos	* elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
2947*75fd0b74Schristos	* elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Likewise.
2948*75fd0b74Schristos	(add_extra_plt_sections): Likewise.
2949*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise.
2950*75fd0b74Schristos	(elf64_alpha_create_got_section): Likewise.
2951*75fd0b74Schristos	(elf64_alpha_create_dynamic_sections): Likewise.
2952*75fd0b74Schristos	(elf64_alpha_check_relocs): Likewise.
2953*75fd0b74Schristos	* elf64-hppa.c (get_reloc_section): Likewise.
2954*75fd0b74Schristos	(get_opd): Likewise.
2955*75fd0b74Schristos	(get_plt): Likewise.
2956*75fd0b74Schristos	(get_dlt): Likewise.
2957*75fd0b74Schristos	(get_stub): Likewise.
2958*75fd0b74Schristos	(elf64_hppa_create_dynamic_sectionso): Likewise.
2959*75fd0b74Schristos	* elf64-mmix.c (mmix_elf_check_common_relocs): Likewise.
2960*75fd0b74Schristos	* elf64-ppc.c (create_linkage_sections): Likewise.
2961*75fd0b74Schristos	(ppc64_elf_check_relocs): Likewise.
2962*75fd0b74Schristos	* elf64-s390.c (create_got_section): Likewise.
2963*75fd0b74Schristos	(elf_s390_check_relocs): Likewise.
2964*75fd0b74Schristos	* elf64-sh64.c (sh_elf64_check_relocs): Likewise.
2965*75fd0b74Schristos	(sh64_elf64_create_dynamic_sections): Likewise.
2966*75fd0b74Schristos	* elf64-x86-64.c (create_got_section): Likewise.
2967*75fd0b74Schristos	(elf64_x86_64_check_relocs): Likewise.
2968*75fd0b74Schristos	* elflink.c (_bfd_elf_create_got_section): Likewise.
2969*75fd0b74Schristos	(_bfd_elf_link_create_dynamic_sections): Likewise.
2970*75fd0b74Schristos	(elf_link_add_object_symbols): Likewise.
2971*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise.
2972*75fd0b74Schristos	(elfNN_ia64_create_dynamic_sections): Likewise.
2973*75fd0b74Schristos	(get_fptr): Likewise.
2974*75fd0b74Schristos	(get_pltoff): Likewise.
2975*75fd0b74Schristos	(get_reloc_section): Likewise.
2976*75fd0b74Schristos	(elfNN_ia64_object_p): Likewise.
2977*75fd0b74Schristos	* elfxx-mips.c (mips_elf_rel_dyn_section): Likewise.
2978*75fd0b74Schristos	(mips_elf_create_compact_rel_section): Likewise.
2979*75fd0b74Schristos	(mips_elf_create_got_section): Likewise.
2980*75fd0b74Schristos	(_bfd_mips_elf_create_dynamic_sections): Likewise.
2981*75fd0b74Schristos	* elfxx-sparc.c (create_got_section): Likewise.
2982*75fd0b74Schristos	(_bfd_sparc_elf_check_relocs): Likewise.
2983*75fd0b74Schristos
2984*75fd0b74Schristos	* elf.c (_bfd_elf_new_section_hook): Call _bfd_elf_get_sec_type_attr
2985*75fd0b74Schristos	on linker created sections.
2986*75fd0b74Schristos
2987*75fd0b74Schristos2005-05-05  H.J. Lu  <hongjiu.lu@intel.com>
2988*75fd0b74Schristos
2989*75fd0b74Schristos	PR 882
2990*75fd0b74Schristos	* elflink.c (_bfd_elf_link_assign_sym_version): Allow version
2991*75fd0b74Schristos	script on executable.
2992*75fd0b74Schristos
2993*75fd0b74Schristos2005-05-05  John Levon  <levon@movementarian.org>
2994*75fd0b74Schristos
2995*75fd0b74Schristos	* dwarf2.c (read_abbrevs): If bfd_realloc fails, free currently
2996*75fd0b74Schristos	allocated memory before returning.
2997*75fd0b74Schristos	(decode_line_info): Likewise.
2998*75fd0b74Schristos	(_bfd_dwarf2_cleanup_debug_info): New function:  Frees memory
2999*75fd0b74Schristos	allocated by functions in this file.
3000*75fd0b74Schristos	* elf-bfd.h (_bfd_dwarf2_cleanup_debug_info): Prototype.
3001*75fd0b74Schristos	* elf.c (_bfd_elf_close_and_cleanup): Call
3002*75fd0b74Schristos	_bfd_dwarf2_cleanup_debug_info.
3003*75fd0b74Schristos
3004*75fd0b74Schristos2005-05-05  Hans-Peter Nilsson  <hp@axis.com>
3005*75fd0b74Schristos
3006*75fd0b74Schristos	* Makefile.am (INCLUDES): Don't -D_GNU_SOURCE here.
3007*75fd0b74Schristos	* configure.in: Call AC_GNU_SOURCE here, after AC_PROG_CC.
3008*75fd0b74Schristos	* configure, config.in, Makefile.in: Regenerate.
3009*75fd0b74Schristos	* sysdep.h (stpcpy): Revert last change.
3010*75fd0b74Schristos
3011*75fd0b74Schristos2005-05-05  Hans-Peter Nilsson  <hp@axis.com>
3012*75fd0b74Schristos
3013*75fd0b74Schristos	* sysdep.h (stpcpy): Wrap declaration in parentheses.
3014*75fd0b74Schristos
3015*75fd0b74Schristos2005-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3016*75fd0b74Schristos
3017*75fd0b74Schristos	* elfxx-ia64.c (ARCH_SIZE): New.
3018*75fd0b74Schristos	(LOG_SECTION_ALIGN): Likewise.
3019*75fd0b74Schristos	(elfNN_ia64_create_dynamic_sections): Use LOG_SECTION_ALIGN to
3020*75fd0b74Schristos	align relocation sections.
3021*75fd0b74Schristos	(get_fptr): Likewise.
3022*75fd0b74Schristos	(get_reloc_section): Likewise.
3023*75fd0b74Schristos	(elfNN_ia64_tprel_base): Likewise.
3024*75fd0b74Schristos	(elfNN_ia64_check_relocs): Support 32bit relocations.
3025*75fd0b74Schristos	(allocate_global_fptr_got): Likewise.
3026*75fd0b74Schristos	(allocate_dynrel_entries): Likewise.
3027*75fd0b74Schristos	(set_got_entry): Likewise.
3028*75fd0b74Schristos	(set_pltoff_entry): Likewise.
3029*75fd0b74Schristos	(elfNN_ia64_relocate_section): Likewise.
3030*75fd0b74Schristos
3031*75fd0b74Schristos2005-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3032*75fd0b74Schristos
3033*75fd0b74Schristos	* configure.in: Add AC_CHECK_DECLS(stpcpy).
3034*75fd0b74Schristos	* configure: Regenerate.
3035*75fd0b74Schristos	* config.in: Likewise.
3036*75fd0b74Schristos
3037*75fd0b74Schristos	* sysdep.h (stpcpy): New.
3038*75fd0b74Schristos
3039*75fd0b74Schristos2005-05-04  Nick Clifton  <nickc@redhat.com>
3040*75fd0b74Schristos
3041*75fd0b74Schristos	* Update the address and phone number of the FSF organization in
3042*75fd0b74Schristos	the GPL notices in the following files:
3043*75fd0b74Schristos	aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c,
3044*75fd0b74Schristos	aout-cris.c, aout-ns32k.c, aout-sparcle.c, aout-target.h,
3045*75fd0b74Schristos	aout-tic30.c, aout0.c, aout32.c, aout64.c, aoutf1.h, aoutx.h,
3046*75fd0b74Schristos	archive.c, archive64.c, archures.c, armnetbsd.c, bfd-in.h,
3047*75fd0b74Schristos	bfd-in2.h, bfd.c, bfdio.c, bfdwin.c, binary.c, bout.c, cache.c,
3048*75fd0b74Schristos	cf-i386lynx.c, cf-m68klynx.c, cf-sparclynx.c, cisco-core.c,
3049*75fd0b74Schristos	coff-a29k.c, coff-alpha.c, coff-apollo.c, coff-arm.c, coff-aux.c,
3050*75fd0b74Schristos	coff-go32.c, coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c,
3051*75fd0b74Schristos	coff-i960.c, coff-ia64.c, coff-m68k.c, coff-m88k.c, coff-maxq.c,
3052*75fd0b74Schristos	coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c,
3053*75fd0b74Schristos	coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c,
3054*75fd0b74Schristos	coff-svm68k.c, coff-tic30.c, coff-tic4x.c, coff-tic54x.c,
3055*75fd0b74Schristos	coff-tic80.c, coff-u68k.c, coff-w65.c, coff-we32k.c, coff-z8k.c,
3056*75fd0b74Schristos	coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c, coffswap.h,
3057*75fd0b74Schristos	corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c,
3058*75fd0b74Schristos	cpu-avr.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c,
3059*75fd0b74Schristos	cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c,
3060*75fd0b74Schristos	cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c,
3061*75fd0b74Schristos	cpu-i960.c, cpu-ia64-opc.c, cpu-ia64.c, cpu-ip2k.c, cpu-iq2000.c,
3062*75fd0b74Schristos	cpu-m10200.c, cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c,
3063*75fd0b74Schristos	cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c,
3064*75fd0b74Schristos	cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-ns32k.c, cpu-openrisc.c,
3065*75fd0b74Schristos	cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c, cpu-rs6000.c,
3066*75fd0b74Schristos	cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c, cpu-tic4x.c,
3067*75fd0b74Schristos	cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c,
3068*75fd0b74Schristos	cpu-we32k.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z8k.c, demo64.c,
3069*75fd0b74Schristos	dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c, ecoffswap.h,
3070*75fd0b74Schristos	efi-app-ia32.c, efi-app-ia64.c, elf-bfd.h, elf-eh-frame.c,
3071*75fd0b74Schristos	elf-hppa.h, elf-m10200.c, elf-m10300.c, elf-strtab.c, elf.c,
3072*75fd0b74Schristos	elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c,
3073*75fd0b74Schristos	elf32-cr16c.c, elf32-cris.c, elf32-crx.c, elf32-d10v.c,
3074*75fd0b74Schristos	elf32-d30v.c, elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c,
3075*75fd0b74Schristos	elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c,
3076*75fd0b74Schristos	elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
3077*75fd0b74Schristos	elf32-iq2000.c, elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c,
3078*75fd0b74Schristos	elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c, elf32-m88k.c,
3079*75fd0b74Schristos	elf32-mcore.c, elf32-mips.c, elf32-msp430.c, elf32-openrisc.c,
3080*75fd0b74Schristos	elf32-or32.c, elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c,
3081*75fd0b74Schristos	elf32-sh-symbian.c, elf32-sh.c, elf32-sh64-com.c, elf32-sh64.c,
3082*75fd0b74Schristos	elf32-sh64.h, elf32-sparc.c, elf32-v850.c, elf32-vax.c,
3083*75fd0b74Schristos	elf32-xstormy16.c, elf32-xtensa.c, elf32.c, elf64-alpha.c,
3084*75fd0b74Schristos	elf64-gen.c, elf64-hppa.c, elf64-hppa.h, elf64-mips.c,
3085*75fd0b74Schristos	elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c,
3086*75fd0b74Schristos	elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elf64.c, elfcode.h,
3087*75fd0b74Schristos	elfcore.h, elflink.c, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c,
3088*75fd0b74Schristos	elfxx-mips.h, elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h,
3089*75fd0b74Schristos	epoc-pe-arm.c, epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c,
3090*75fd0b74Schristos	genlink.h, hash.c, host-aout.c, hp300bsd.c, hp300hpux.c,
3091*75fd0b74Schristos	hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c,
3092*75fd0b74Schristos	i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c,
3093*75fd0b74Schristos	i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c,
3094*75fd0b74Schristos	libaout.h, libbfd-in.h, libbfd.c, libbfd.h, libcoff-in.h,
3095*75fd0b74Schristos	libcoff.h, libecoff.h, libhppa.h, libieee.h, libnlm.h, liboasys.h,
3096*75fd0b74Schristos	libpei.h, libxcoff.h, linker.c, lynx-core.c, m68k4knetbsd.c,
3097*75fd0b74Schristos	m68klinux.c, m68klynx.c, m68knetbsd.c, m88kmach3.c, m88kopenbsd.c,
3098*75fd0b74Schristos	mach-o-target.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c, mmo.c,
3099*75fd0b74Schristos	netbsd-core.c, netbsd.h, newsos3.c, nlm-target.h, nlm.c,
3100*75fd0b74Schristos	nlm32-alpha.c, nlm32-i386.c, nlm32-ppc.c, nlm32-sparc.c, nlm32.c,
3101*75fd0b74Schristos	nlm64.c, nlmcode.h, nlmswap.h, ns32k.h, ns32knetbsd.c, oasys.c,
3102*75fd0b74Schristos	opncls.c, osf-core.c, pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c,
3103*75fd0b74Schristos	pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c, peXXigen.c,
3104*75fd0b74Schristos	pef-traceback.h, pef.c, pef.h, pei-arm.c, pei-i386.c, pei-mcore.c,
3105*75fd0b74Schristos	pei-mips.c, pei-ppc.c, pei-sh.c, peicode.h, ppcboot.c,
3106*75fd0b74Schristos	ptrace-core.c, reloc.c, reloc16.c, riscix.c, rs6000-core.c,
3107*75fd0b74Schristos	sco5-core.c, section.c, simple.c, som.c, som.h, sparclinux.c,
3108*75fd0b74Schristos	sparclynx.c, sparcnetbsd.c, srec.c, stab-syms.c, stabs.c, sunos.c,
3109*75fd0b74Schristos	syms.c, sysdep.h, targets.c, tekhex.c, ticoff.h, trad-core.c,
3110*75fd0b74Schristos	vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c, vms-gsd.c,
3111*75fd0b74Schristos	vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h, xcoff-target.h,
3112*75fd0b74Schristos	xcofflink.c, xsym.c, xsym.h, xtensa-isa.c, xtensa-modules.c,
3113*75fd0b74Schristos	hosts/alphavms.h
3114*75fd0b74Schristos
3115*75fd0b74Schristos2005-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3116*75fd0b74Schristos
3117*75fd0b74Schristos	* bfd-in.h (_bfd_elf_provide_section_bound_symbols): New.
3118*75fd0b74Schristos	* bfd-in2.h: Regenerated.
3119*75fd0b74Schristos
3120*75fd0b74Schristos	* elflink.c (bfd_elf_set_symbol): New.
3121*75fd0b74Schristos	(_bfd_elf_provide_symbol): Call it.
3122*75fd0b74Schristos	(_bfd_elf_provide_section_bound_symbols): New.
3123*75fd0b74Schristos
3124*75fd0b74Schristos2005-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3125*75fd0b74Schristos
3126*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Only skip weak definitions
3127*75fd0b74Schristos	at the end, if a strong definition has already been seen.
3128*75fd0b74Schristos
3129*75fd0b74Schristos2005-05-04  Alan Modra  <amodra@bigpond.net.au>
3130*75fd0b74Schristos
3131*75fd0b74Schristos	* section.c (struct bfd_section): Replace link_order_head and
3132*75fd0b74Schristos	link_order_tail with map_head and map_tail union.
3133*75fd0b74Schristos	(STD_SECTION): Update.
3134*75fd0b74Schristos	(_bfd_strip_section_from_output): Delete.
3135*75fd0b74Schristos	* aoutx.h: Update throughout for above changes.
3136*75fd0b74Schristos	* coff-ppc.c: Likewise.
3137*75fd0b74Schristos	* cofflink.c: Likewise.
3138*75fd0b74Schristos	* ecoff.c: Likewise.
3139*75fd0b74Schristos	* elf-eh-frame.c: Likewise.
3140*75fd0b74Schristos	* elf-m10300.c: Likewise.
3141*75fd0b74Schristos	* elf.c: Likewise.
3142*75fd0b74Schristos	* elf32-arm.c: Likewise.
3143*75fd0b74Schristos	* elf32-cris.c: Likewise.
3144*75fd0b74Schristos	* elf32-hppa.c: Likewise.
3145*75fd0b74Schristos	* elf32-i386.c: Likewise.
3146*75fd0b74Schristos	* elf32-m32r.c: Likewise.
3147*75fd0b74Schristos	* elf32-m68hc1x.c: Likewise.
3148*75fd0b74Schristos	* elf32-m68k.c: Likewise.
3149*75fd0b74Schristos	* elf32-ppc.c: Likewise.
3150*75fd0b74Schristos	* elf32-s390.c: Likewise.
3151*75fd0b74Schristos	* elf32-sh.c: Likewise.
3152*75fd0b74Schristos	* elf32-vax.c: Likewise.
3153*75fd0b74Schristos	* elf32-xtensa.c: Likewise.
3154*75fd0b74Schristos	* elf64-alpha.c: Likewise.
3155*75fd0b74Schristos	* elf64-hppa.c: Likewise.
3156*75fd0b74Schristos	* elf64-ppc.c: Likewise.
3157*75fd0b74Schristos	* elf64-s390.c: Likewise.
3158*75fd0b74Schristos	* elf64-sh64.c: Likewise.
3159*75fd0b74Schristos	* elf64-x86-64.c: Likewise.
3160*75fd0b74Schristos	* elflink.c: Likewise.
3161*75fd0b74Schristos	* elfxx-ia64.c: Likewise.
3162*75fd0b74Schristos	* elfxx-mips.c: Likewise.
3163*75fd0b74Schristos	* elfxx-sparc.c: Likewise.
3164*75fd0b74Schristos	* linker.c: Likewise.
3165*75fd0b74Schristos	* merge.c: Likewise.
3166*75fd0b74Schristos	* pdp11.c: Likewise.
3167*75fd0b74Schristos	* xcofflink.c: Likewise.
3168*75fd0b74Schristos	* elflink.c (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Split
3169*75fd0b74Schristos	out from bfd_elf_size_dynamic_sections.
3170*75fd0b74Schristos	* bfd-in.h (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Declare.
3171*75fd0b74Schristos	* bfd-in2.h: Regenerate.
3172*75fd0b74Schristos
3173*75fd0b74Schristos2005-05-04  Alan Modra  <amodra@bigpond.net.au>
3174*75fd0b74Schristos
3175*75fd0b74Schristos	* section.c (bfd_section_list_remove): Don't clear s->next.
3176*75fd0b74Schristos	(bfd_section_list_append): Always init s->prev.
3177*75fd0b74Schristos	(bfd_section_list_prepend): Define.
3178*75fd0b74Schristos	(bfd_section_list_insert_after): Minor optimization.
3179*75fd0b74Schristos	(bfd_section_removed_from_list): Rewrite.
3180*75fd0b74Schristos	* elf.c (assign_section_numbers): Simplify list traversal now that
3181*75fd0b74Schristos	bfd_section_list_remove doesn't destroy removed section next ptr.
3182*75fd0b74Schristos	* sunos.c (sunos_add_dynamic_symbols): Likewise.
3183*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_object_p): Use bfd_section_list_prepend.
3184*75fd0b74Schristos	* xcofflink.c (_bfd_xcoff_bfd_final_link): Simplify list traversal.
3185*75fd0b74Schristos	* bfd-in2.h: Regenerate.
3186*75fd0b74Schristos
3187*75fd0b74Schristos2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>
3188*75fd0b74Schristos
3189*75fd0b74Schristos	* bfd.c (bfd): Remove section_tail and add section_last.
3190*75fd0b74Schristos	(bfd_preserve): Likewise.
3191*75fd0b74Schristos	(bfd_preserve_save): Likewise.
3192*75fd0b74Schristos	(bfd_preserve_restore): Likewise.
3193*75fd0b74Schristos	* opncls.c (_bfd_new_bfd): Likewise.
3194*75fd0b74Schristos
3195*75fd0b74Schristos	* coffcode.h (coff_compute_section_file_positions): Updated.
3196*75fd0b74Schristos	(coff_compute_section_file_positions): Likewise.
3197*75fd0b74Schristos	* elf.c (assign_section_numbers): Likewise.
3198*75fd0b74Schristos	* elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
3199*75fd0b74Schristos	* elf64-mmix.c (mmix_elf_final_link): Likewise.
3200*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_object_p): Likewise.
3201*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
3202*75fd0b74Schristos	* sunos.c (sunos_add_dynamic_symbols): Likewise.
3203*75fd0b74Schristos	* xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
3204*75fd0b74Schristos
3205*75fd0b74Schristos	* ecoff.c (bfd_debug_section): Initialize prev.
3206*75fd0b74Schristos
3207*75fd0b74Schristos	* section.c (bfd_section): Add prev.
3208*75fd0b74Schristos	(bfd_section_list_remove): Updated.
3209*75fd0b74Schristos	(bfd_section_list_append): New.
3210*75fd0b74Schristos	(bfd_section_list_insert_after): New.
3211*75fd0b74Schristos	(bfd_section_list_insert_before): New.
3212*75fd0b74Schristos	(bfd_section_list_insert): Removed.
3213*75fd0b74Schristos	(bfd_section_removed_from_list): Updated.
3214*75fd0b74Schristos	(STD_SECTION): Initialize prev.
3215*75fd0b74Schristos	(bfd_section_init): Updated.
3216*75fd0b74Schristos	(bfd_section_list_clear): Updated.
3217*75fd0b74Schristos
3218*75fd0b74Schristos	* bfd-in2.h: Regenerated.
3219*75fd0b74Schristos
3220*75fd0b74Schristos2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>
3221*75fd0b74Schristos
3222*75fd0b74Schristos	* elf.c (_bfd_elf_new_section_hook): Don't call
3223*75fd0b74Schristos	_bfd_elf_get_sec_type_attr on sections from input files.
3224*75fd0b74Schristos
3225*75fd0b74Schristos2005-05-02  H.J. Lu  <hongjiu.lu@intel.com>
3226*75fd0b74Schristos
3227*75fd0b74Schristos	* merge.c (sec_merge_init): Call bfd_hash_table_init_n with
3228*75fd0b74Schristos	hash table size 16699 instead of bfd_hash_table_init.
3229*75fd0b74Schristos
3230*75fd0b74Schristos2005-05-01  Paul Brook  <paul@codesourcery.com>
3231*75fd0b74Schristos
3232*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Skip weak definitions if a strong
3233*75fd0b74Schristos	definition has already been seen.
3234*75fd0b74Schristos
3235*75fd0b74Schristos2005-05-01  Paul Brook  <paul@codesourcery.com>
3236*75fd0b74Schristos
3237*75fd0b74Schristos	* elf32-arm.c (bfd_elf32_arm_process_before_allocation): Treat
3238*75fd0b74Schristos	R_ARM_PLT32 the same as R_ARM_PC24.
3239*75fd0b74Schristos	(arm_add_to_rel): Ditto.
3240*75fd0b74Schristos
3241*75fd0b74Schristos2005-04-29  Ralf Corsepius <ralf.corsepius@rtems.org>
3242*75fd0b74Schristos
3243*75fd0b74Schristos	* config.bfd: Add h8300*-*-rtemscoff.
3244*75fd0b74Schristos	Switch h8300*-*-rtems* to elf.
3245*75fd0b74Schristos
3246*75fd0b74Schristos2005-04-29  Daniel Jacobowitz  <dan@codesourcery.com>
3247*75fd0b74Schristos
3248*75fd0b74Schristos	* aclocal.m4, Makefile.in: Regnerated.
3249*75fd0b74Schristos
3250*75fd0b74Schristos2005-04-28  Paul Brook  <paul@codesourcery.com>
3251*75fd0b74Schristos
3252*75fd0b74Schristos	Merge changes only applied to Makefile.in.
3253*75fd0b74Schristos	* Makefile.am (BFD32_BACKENDS): Add elfxx-sparc.lo
3254*75fd0b74Schristos	(BFD32_BACKENDS_CFILES): Add elfxx-sparc.c
3255*75fd0b74Schristos	(elfxx-sparc.lo): New rule.
3256*75fd0b74Schristos	(elf32-sparc.lo): Add elfxx-sparc.h dependency.
3257*75fd0b74Schristos	(elf64-sparc.lo): Likewise.
3258*75fd0b74Schristos
3259*75fd0b74Schristos2005-04-28  Julian Brown  <julian@codesourcery.com>
3260*75fd0b74Schristos
3261*75fd0b74Schristos	* elflink.c (_bfd_elf_provide_symbol): Provide symbol for weak
3262*75fd0b74Schristos	import.
3263*75fd0b74Schristos
3264*75fd0b74Schristos2005-04-27  H.J. Lu  <hongjiu.lu@intel.com>
3265*75fd0b74Schristos
3266*75fd0b74Schristos	* elf-bfd.h (bfd_elf_sym_name): Also take "asection *".
3267*75fd0b74Schristos
3268*75fd0b74Schristos	* elf.c (bfd_elf_sym_name): Updated.
3269*75fd0b74Schristos	(group_signature): Likewise.
3270*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
3271*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_edit_opd): Likewise.
3272*75fd0b74Schristos	(ppc64_elf_edit_toc): Likewise.
3273*75fd0b74Schristos	(ppc64_elf_relocate_section): Likewise.
3274*75fd0b74Schristos	* elfcode.h (elf_slurp_symbol_table): Likewise.
3275*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Likewise.
3276*75fd0b74Schristos
3277*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relocate_section): Call
3278*75fd0b74Schristos	bfd_elf_sym_name to get local symbol name when reporting errors.
3279*75fd0b74Schristos
3280*75fd0b74Schristos2005-04-27  Nick Clifton  <nickc@redhat.com>
3281*75fd0b74Schristos
3282*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Handle the case where a badly
3283*75fd0b74Schristos	formatted input file results in a reloc which has no associated
3284*75fd0b74Schristos	global symbol.
3285*75fd0b74Schristos
3286*75fd0b74Schristos2005-04-26  Jerome Guitton  <guitton@gnat.com>
3287*75fd0b74Schristos
3288*75fd0b74Schristos	* bfd.m4 (BFD_NEED_DECLARATION): Restore.
3289*75fd0b74Schristos
3290*75fd0b74Schristos2005-04-25  David S. Miller  <davem@davemloft.net>
3291*75fd0b74Schristos
3292*75fd0b74Schristos	* elfxx-sparc.c (sparc_elf_append_rela_64): Add BFD64 protection.
3293*75fd0b74Schristos	(sparc_elf_r_info_64, _bfd_sparc_elf_finish_dynamic_symbol,
3294*75fd0b74Schristos	sparc64_finish_dyn, _bfd_sparc_elf_finish_dynamic_sections):
3295*75fd0b74Schristos	Likewise.
3296*75fd0b74Schristos
3297*75fd0b74Schristos2005-04-25  H.J. Lu  <hongjiu.lu@intel.com>
3298*75fd0b74Schristos
3299*75fd0b74Schristos	PR 858
3300*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Make non-debugging reference
3301*75fd0b74Schristos	to discarded section an error.
3302*75fd0b74Schristos
3303*75fd0b74Schristos2005-04-21  Jerome Guitton  <guitton@gnat.com>
3304*75fd0b74Schristos
3305*75fd0b74Schristos	* configure.in: Replace BFD_NEED_DECLARATION checks by the
3306*75fd0b74Schristos	corresponding AC_CHECK_DECLS.
3307*75fd0b74Schristos	* sysdep.h: Replace NEED_DECLARATION_* checks by the corresponding
3308*75fd0b74Schristos	HAVE_DECL_*.
3309*75fd0b74Schristos	* bfd.m4 (BFD_NEED_DECLARATION): Remove, obsolete.
3310*75fd0b74Schristos	* configure: Regenerate.
3311*75fd0b74Schristos	* config.in: Ditto.
3312*75fd0b74Schristos
3313*75fd0b74Schristos2005-04-21  Andreas Schwab  <schwab@suse.de>
3314*75fd0b74Schristos
3315*75fd0b74Schristos	* elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove
3316*75fd0b74Schristos	unsigned from type of dynamic_interpreter.
3317*75fd0b74Schristos	* elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create): Remove
3318*75fd0b74Schristos	casts again.
3319*75fd0b74Schristos
3320*75fd0b74Schristos	* elf.c (assign_section_numbers): Fix comment.
3321*75fd0b74Schristos
3322*75fd0b74Schristos2005-04-21  Jerome Guitton  <guitton@gnat.com>
3323*75fd0b74Schristos
3324*75fd0b74Schristos	* som.c (som_bfd_print_private_bfd_data): Add explicit cast to long
3325*75fd0b74Schristos	for struct som_exec_auxhdr fields.
3326*75fd0b74Schristos
3327*75fd0b74Schristos2005-04-21  Nick Clifton  <nickc@redhat.com>
3328*75fd0b74Schristos
3329*75fd0b74Schristos	* aout-adobe.c: Convert to ISO C and fix formatting.
3330*75fd0b74Schristos	* aout-arm.c: Convert to ISO C and fix formatting.
3331*75fd0b74Schristos	* aout-cris.c: Convert to ISO C and fix formatting.
3332*75fd0b74Schristos	* aout-ns32k.c: Convert to ISO C and fix formatting.
3333*75fd0b74Schristos	* aout-tic30.c: Convert to ISO C and fix formatting.
3334*75fd0b74Schristos	* coffcode.h: Convert to ISO C and fix formatting.
3335*75fd0b74Schristos	* coffswap.h: Convert to ISO C and fix formatting.
3336*75fd0b74Schristos	* i386aout.c: Convert to ISO C and fix formatting.
3337*75fd0b74Schristos	* libaout.h: Convert to ISO C and fix formatting.
3338*75fd0b74Schristos	* libcoff-in.h: Convert to ISO C and fix formatting.
3339*75fd0b74Schristos	* libcoff.h: Convert to ISO C and fix formatting.
3340*75fd0b74Schristos	* libecoff.h: Convert to ISO C and fix formatting.
3341*75fd0b74Schristos	* libnlm.h: Convert to ISO C and fix formatting.
3342*75fd0b74Schristos	* libpei.h: Convert to ISO C and fix formatting.
3343*75fd0b74Schristos	* libxcoff.h: Convert to ISO C and fix formatting.
3344*75fd0b74Schristos	* nlm-target.h: Convert to ISO C and fix formatting.
3345*75fd0b74Schristos	* nlm.c: Convert to ISO C and fix formatting.
3346*75fd0b74Schristos	* nlm32-alpha.c: Convert to ISO C and fix formatting.
3347*75fd0b74Schristos	* nlm32-i386.c: Convert to ISO C and fix formatting.
3348*75fd0b74Schristos	* nlm32-ppc.c: Convert to ISO C and fix formatting.
3349*75fd0b74Schristos	* nlm32-sparc.c: Convert to ISO C and fix formatting.
3350*75fd0b74Schristos	* nlmcode.h: Convert to ISO C and fix formatting.
3351*75fd0b74Schristos	* nlmswap.h: Convert to ISO C and fix formatting.
3352*75fd0b74Schristos	* pe-mips.c: Convert to ISO C and fix formatting.
3353*75fd0b74Schristos	* peXXigen.c: Convert to ISO C and fix formatting.
3354*75fd0b74Schristos	* peicode.h: Convert to ISO C and fix formatting.
3355*75fd0b74Schristos	* vms-gsd.c: Convert to ISO C and fix formatting.
3356*75fd0b74Schristos	* vms-hdr.c: Convert to ISO C and fix formatting.
3357*75fd0b74Schristos	* vms-misc.c: Convert to ISO C and fix formatting.
3358*75fd0b74Schristos	* vms-tir.c: Convert to ISO C and fix formatting.
3359*75fd0b74Schristos	* vms.c: Convert to ISO C and fix formatting.
3360*75fd0b74Schristos	* vms.h: Convert to ISO C and fix formatting.
3361*75fd0b74Schristos
3362*75fd0b74Schristos	* coffgen.c (coff_print_symbol): Restore correct formatting of
3363*75fd0b74Schristos	output.
3364*75fd0b74Schristos
3365*75fd0b74Schristos2005-04-20  David S. Miller  <davem@davemloft.net>
3366*75fd0b74Schristos
3367*75fd0b74Schristos	* elfxx-sparc.c (sparc_elf_r_symndx_64): Fix compiler warning.
3368*75fd0b74Schristos	(_bfd_sparc_elf_link_hash_table_create): Likewise.
3369*75fd0b74Schristos	(allocate_dynrelocs): Likewise.
3370*75fd0b74Schristos
3371*75fd0b74Schristos2005-04-20  Jerome Guitton  <guitton@gnat.com>
3372*75fd0b74Schristos
3373*75fd0b74Schristos	* configure.in: Fix the check for basename declaration. Add check
3374*75fd0b74Schristos	for declarations of ftello, ftello64, fseeko, fseeko64.
3375*75fd0b74Schristos	* configure: Regenerate.
3376*75fd0b74Schristos	* config.in: Ditto.
3377*75fd0b74Schristos	* sysdep.h: If needed, declare ftello, ftello64, fseeko, fseeko64.
3378*75fd0b74Schristos
3379*75fd0b74Schristos2005-04-19  David S. Miller  <davem@davemloft.net>
3380*75fd0b74Schristos
3381*75fd0b74Schristos	* elfxx-sparc.c: New file.
3382*75fd0b74Schristos	* elfxx-sparc.h: New file.
3383*75fd0b74Schristos	* Makefile.in (BFD32_BACKENDS): Add elfxx-sparc.lo
3384*75fd0b74Schristos	(BFD32_BACKENDS_CFILES): Add elfxx-sparc.c
3385*75fd0b74Schristos	(elfxx-sparc.lo): New rule.
3386*75fd0b74Schristos	(elf32-sparc.lo): Add elfxx-sparc.h dependency.
3387*75fd0b74Schristos	(elf64-sparc.lo): Likewise.
3388*75fd0b74Schristos	* configure.in (bfd_elf32_sparc_vec): Add elfxx-sparc.lo
3389*75fd0b74Schristos	(bfd_elf64_sparc_vec): Likewise.
3390*75fd0b74Schristos	* configure: Regenerate.
3391*75fd0b74Schristos	* elf32-sparc.c: Remove common code now in elfxx-sparc.c
3392*75fd0b74Schristos	* elf64-sparc.c: Likewise, also use elf64_sparc_*() naming
3393*75fd0b74Schristos	which is more consistent with elf32-sparc.c
3394*75fd0b74Schristos
3395*75fd0b74Schristos2005-04-19  Daniel Jacobowitz  <dan@codesourcery.com>
3396*75fd0b74Schristos
3397*75fd0b74Schristos	* elfxx-mips.c (struct mips_elf_link_hash_entry): Update comment.
3398*75fd0b74Schristos	(mips_elf_create_local_got_entry): Check h->root.forced_local.
3399*75fd0b74Schristos
3400*75fd0b74Schristos2005-04-19  Alan Modra  <amodra@bigpond.net.au>
3401*75fd0b74Schristos
3402*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_check_relocs): Don't bother with
3403*75fd0b74Schristos	dynamic relocs in non-SEC_ALLOC sections.
3404*75fd0b74Schristos	(ppc_elf_gc_sweep_hook): Likewise.
3405*75fd0b74Schristos	(ppc_elf_relax_section): Likewise.
3406*75fd0b74Schristos	(ppc_elf_relocate_section): Likewise.
3407*75fd0b74Schristos
3408*75fd0b74Schristos2005-04-18  Nick Clifton  <nickc@redhat.com>
3409*75fd0b74Schristos
3410*75fd0b74Schristos	* aix5ppc-core.c (xcoff64_core_p): Fix compile time warning
3411*75fd0b74Schristos	assigning a value to return_value.
3412*75fd0b74Schristos
3413*75fd0b74Schristos2005-04-17  H.J. Lu  <hongjiu.lu@intel.com>
3414*75fd0b74Schristos
3415*75fd0b74Schristos	PR 855
3416*75fd0b74Schristos	* elf.c (_bfd_elf_copy_private_section_data): Don't copy linker
3417*75fd0b74Schristos	created group data.
3418*75fd0b74Schristos
3419*75fd0b74Schristos2005-04-17  H.J. Lu  <hongjiu.lu@intel.com>
3420*75fd0b74Schristos
3421*75fd0b74Schristos	PR 855
3422*75fd0b74Schristos	* elf.c (setup_group): Properly handle zero group count.
3423*75fd0b74Schristos
3424*75fd0b74Schristos2005-04-17  Mark Kettenis  <kettenis@gnu.org>
3425*75fd0b74Schristos
3426*75fd0b74Schristos	* som.c (hppa_som_reloc, som_mkobject, som_is_space)
3427*75fd0b74Schristos	(som_is_subspace, compare_subspaces, som_compute_checksum)
3428*75fd0b74Schristos	(som_build_and_write_symbol_table, som_slurp_symbol_table): New
3429*75fd0b74Schristos	protoypes.
3430*75fd0b74Schristos	(hppa_som_reloc, compare_syms, compare_subspaces)
3431*75fd0b74Schristos	(som_print_symbol, som_get_section_contents)
3432*75fd0b74Schristos	(som_set_section_contents): Remove space after 'void *'.
3433*75fd0b74Schristos	(som_bfd_print_private_bfd_data): Use %lx to print longs.
3434*75fd0b74Schristos	(som_bfd_merge_private_bfd_data)
3435*75fd0b74Schristos	(som_bfd_copy_private_header_data, som_bfd_set_private_flags): New
3436*75fd0b74Schristos	defines.
3437*75fd0b74Schristos
3438*75fd0b74Schristos2005-04-15  Julian Brown  <julian@codesourcery.com>
3439*75fd0b74Schristos
3440*75fd0b74Schristos	* bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
3441*75fd0b74Schristos	* bfd-in2.h: Regenerate.
3442*75fd0b74Schristos	* elf32-arm.c (elf32_arm_link_hash_table): New field, 'use_blx'.
3443*75fd0b74Schristos	(elf32_arm_link_hash_table_create): Initialise fix_v4bx, use_blx.
3444*75fd0b74Schristos	(bfd_elf32_arm_set_target_relocs): Handle use_blx.
3445*75fd0b74Schristos	(elf32_arm_final_link_relocate): Use Thumb BLX for R_ARM_THM_PC22
3446*75fd0b74Schristos	relocations if requested to.
3447*75fd0b74Schristos	(allocate_dynrelocs): Don't count size of omitted Thumb stubs based on
3448*75fd0b74Schristos	use_blx rather than symbian_p.
3449*75fd0b74Schristos	(elf32_arm_finish_dynamic_symbol): Don't output Thumb PLT stubs if
3450*75fd0b74Schristos	use_blx is in effect.
3451*75fd0b74Schristos	(elf32_arm_symbian_link_hash_table_create): Enable use_blx by default
3452*75fd0b74Schristos	for SymbianOS.
3453*75fd0b74Schristos
3454*75fd0b74Schristos2005-04-15  Nick Clifton  <nickc@redhat.com>
3455*75fd0b74Schristos
3456*75fd0b74Schristos	* coffgen.c (coff_print_symbol): Use fprintf_vma to print vma
3457*75fd0b74Schristos	values.
3458*75fd0b74Schristos
3459*75fd0b74Schristos2005-04-15  Alan Modra  <amodra@bigpond.net.au>
3460*75fd0b74Schristos
3461*75fd0b74Schristos	PR ld/815
3462*75fd0b74Schristos	* elflink.c (elf_smash_syms): Clear undef.next if it's not being
3463*75fd0b74Schristos	used as a list pointer.
3464*75fd0b74Schristos
3465*75fd0b74Schristos2005-04-14  Alan Modra  <amodra@bigpond.net.au>
3466*75fd0b74Schristos
3467*75fd0b74Schristos	* Makefile.am (NO_WERROR): Define.
3468*75fd0b74Schristos	* warning.m4: New file
3469*75fd0b74Schristos	* acinclude.m4: Include warning.m4.
3470*75fd0b74Schristos	* configure.in: Invoke AM_BINUTILS_WARNINGS.
3471*75fd0b74Schristos	* Makefile.in: Regenerate.
3472*75fd0b74Schristos	* configure: Regenerate.
3473*75fd0b74Schristos
3474*75fd0b74Schristos2005-04-14  Alan Modra  <amodra@bigpond.net.au>
3475*75fd0b74Schristos
3476*75fd0b74Schristos	* merge.c (sec_merge_emit): Tidy.  Check for bfd_zmalloc errors.
3477*75fd0b74Schristos	Write trailing padding.
3478*75fd0b74Schristos
3479*75fd0b74Schristos	* merge.c (merge_strings): Round up section size for alignment.
3480*75fd0b74Schristos
3481*75fd0b74Schristos2005-04-14  David S. Miller  <davem@davemloft.net>
3482*75fd0b74Schristos
3483*75fd0b74Schristos	Add TLS support for 64-bit Sparc ELF.
3484*75fd0b74Schristos	*  elf64-sparc.c (sparc64_elf_dyn_relocs,
3485*75fd0b74Schristos	sparc64_elf_link_hash_entry, sparc64_elf_obj_tdata): New structs.
3486*75fd0b74Schristos	(GOT_UNKNOWN, GOT_NORMAL, GOT_TLD_GD, GOT_TLD_IE,
3487*75fd0b74Schristos	sparc64_elf_hash_entry, sparc64_elf_tdata,
3488*75fd0b74Schristos	sparc64_elf_local_got_tls_type): New defines.
3489*75fd0b74Schristos	(sparc64_elf_mkobject): New function.
3490*75fd0b74Schristos	(sparc64_elf_link_hash_table): Add members for dynamic linker
3491*75fd0b74Schristos	sections PLT, RELPLT, DYNBSS, and RELBSS.  Add tls_ldm_got
3492*75fd0b74Schristos	uion to track TLS GOT references.  Add sym_sec to cache
3493*75fd0b74Schristos	mappings from local sym to section.
3494*75fd0b74Schristos	(link_hash_newfunc): New function.
3495*75fd0b74Schristos	(sparc64_elf_bfd_link_hash_table_create): Rename to
3496*75fd0b74Schristos	sparc64_elf_link_hash_table_create for consistency.
3497*75fd0b74Schristos	Pass link_hash_newfunc to _bfd_elf_link_hash_table_init.
3498*75fd0b74Schristos	(sparc64_elf_create_dynamic_sections): Initialize new section
3499*75fd0b74Schristos	members of sparc64_elf_link_hash_table.  Only init srelbss
3500*75fd0b74Schristos	if not-shared.
3501*75fd0b74Schristos	(sparc64_elf_copy_indirect_symbol, sparc64_elf_tls_transition):
3502*75fd0b74Schristos	New functions.
3503*75fd0b74Schristos	(SPARC_NOP): Define.
3504*75fd0b74Schristos	(sparc64_elf_build_plt, sparc64_elf_plt_entry_offset,
3505*75fd0b74Schristos	sparc64_elf_plt_ptr_offset): Delete.
3506*75fd0b74Schristos	(sparc64_plt_entry_build): New function to build PLT entries
3507*75fd0b74Schristos	gradually instread of all at once at the end of linking.
3508*75fd0b74Schristos	(sparc64_elf_check_relocs): Delete dynobj, sgot, and srelgot
3509*75fd0b74Schristos	local vars.  Get them from sparc64_elf_hash_table instead.
3510*75fd0b74Schristos	Check early on if r_symndx is in bounds.  Handle TLS transitions.
3511*75fd0b74Schristos	Account for TLS GOT references and DF_STATIC_TLS, as needed.
3512*75fd0b74Schristos	For TLS relocs, record the tls_type in either
3513*75fd0b74Schristos	sparc64_elf_local_got_tls_type or sparc64_elf_hash_entry as
3514*75fd0b74Schristos	appropriate.  For R_SPARC_TLS_{GD,LDM}_CALL, emit a reference
3515*75fd0b74Schristos	to the __tls_get_addr symbol.  For PLT relocs, track references
3516*75fd0b74Schristos	via h->plt.refcount.  When R_SPARC_{PC10,PC22,PC_HH22,PC_HM10,
3517*75fd0b74Schristos	PC_LM22} and h not-NULL, set h->non_got_ref.  For global data
3518*75fd0b74Schristos	symbol references, count the number of relocations needed for
3519*75fd0b74Schristos	that symbol.  For default switch case, don't error, this lets
3520*75fd0b74Schristos	the TLS relocs not explicitly handled by this function get
3521*75fd0b74Schristos	accepted.
3522*75fd0b74Schristos	(sparc64_elf_gc_mark_hook, sparc64_gc_sweep_hook): New functions.
3523*75fd0b74Schristos	(sparc64_elf_adjust_dynamic_symbol): Remove dynobj local var, get
3524*75fd0b74Schristos	it from sparc64_elf_hash_table.  Store the real PLT offset
3525*75fd0b74Schristos	in h->plt.offset, and build PLT entries one at a time.  Also
3526*75fd0b74Schristos	get .dynbss section pointer from htab.
3527*75fd0b74Schristos	(allocate_dynrelocs, readonly_dynrelocs,
3528*75fd0b74Schristos	sparc64_omit_section_dynsym): New functions.
3529*75fd0b74Schristos	(sparc64_elf_omit_section_dynsym): Use these new functions as
3530*75fd0b74Schristos	helpers.
3531*75fd0b74Schristos	(dtpoff_base, tpoff): New functions.
3532*75fd0b74Schristos	(sparc64_elf_relocate_section): Kill dynobj, sgot, and splt
3533*75fd0b74Schristos	locals, get them from sparc64_elf_hash_table.  Handle TLS
3534*75fd0b74Schristos	relocations and refcounting in main relocation loop.
3535*75fd0b74Schristos	(sparc64_elf_finish_dynamic_symbol): Use
3536*75fd0b74Schristos	sparc64_elf_link_hash_table.  Build PLT entries as we see
3537*75fd0b74Schristos	them.  Handle TLS GOT relocations.
3538*75fd0b74Schristos	(sparc64_elf_finish_dynamic_sections): Get sgot and dynobj
3539*75fd0b74Schristos	from sparc64_elf_hash_table.  Initialize only PLT header
3540*75fd0b74Schristos	not all entries since we not build PLT entries one by one.
3541*75fd0b74Schristos	(elf_backend_copy_indirect_symbol, bfd_elf64_mkobject,
3542*75fd0b74Schristos	elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook,
3543*75fd0b74Schristos	elf_backend_can_gc_sections, elf_backend_can_refcount): Define.
3544*75fd0b74Schristos
3545*75fd0b74Schristos2005-04-13  Daniel Jacobowitz  <dan@codesourcery.com>
3546*75fd0b74Schristos
3547*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Update check for removed
3548*75fd0b74Schristos	sections.
3549*75fd0b74Schristos
3550*75fd0b74Schristos2005-04-12  Alan Modra  <amodra@bigpond.net.au>
3551*75fd0b74Schristos
3552*75fd0b74Schristos	* Makefile.am: Run "make dep-am".
3553*75fd0b74Schristos	* Makefile.in: Regenerate.
3554*75fd0b74Schristos	* aclocal.m4: Regenerate.
3555*75fd0b74Schristos	* libcoff.h: Regenerate.
3556*75fd0b74Schristos
3557*75fd0b74Schristos2005-04-11  H.J. Lu  <hongjiu.lu@intel.com>
3558*75fd0b74Schristos
3559*75fd0b74Schristos	* linker.c (_bfd_generic_link_output_symbols): Also check if
3560*75fd0b74Schristos	the output section of an input section has been removed from
3561*75fd0b74Schristos	the output file.
3562*75fd0b74Schristos
3563*75fd0b74Schristos	* section.c (bfd_section_list_remove): Clear the next field
3564*75fd0b74Schristos	of the removed section.
3565*75fd0b74Schristos	(bfd_section_removed_from_list): New.
3566*75fd0b74Schristos	* bfd-in2.h: Regenerated.
3567*75fd0b74Schristos
3568*75fd0b74Schristos2005-04-11  David S. Miller  <davem@davemloft.net>
3569*75fd0b74Schristos
3570*75fd0b74Schristos	* elf32-sparc.c (elf32_sparc_relocate_section,
3571*75fd0b74Schristos	R_SPARC_TLS_LDO_{HIX22,LOX10}): When not shared, transition to
3572*75fd0b74Schristos	R_SPARC_TLS_LE_{HIX22,LOX10}.
3573*75fd0b74Schristos	(elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_HIX22): Only
3574*75fd0b74Schristos	xor relocation with 0xffffffff if R_SPARC_TLS_LE_HIX22.
3575*75fd0b74Schristos	(elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_LOX10): Only
3576*75fd0b74Schristos	or 0x1c00 into relocation if R_SPARC_TLS_LE_HIX22.
3577*75fd0b74Schristos
3578*75fd0b74Schristos2005-04-11  H.J. Lu  <hongjiu.lu@intel.com>
3579*75fd0b74Schristos
3580*75fd0b74Schristos	* coffcode.h (STRING_SIZE_SIZE): Updated to match libcoff-in.h.
3581*75fd0b74Schristos
3582*75fd0b74Schristos2005-04-11  Nick Clifton  <nickc@redhat.com>
3583*75fd0b74Schristos
3584*75fd0b74Schristos	* aout-target.h:  Convert to ISO C.
3585*75fd0b74Schristos	* aoutf1.h:  Convert to ISO C.
3586*75fd0b74Schristos	* aoutx.h:  Convert to ISO C.
3587*75fd0b74Schristos	* bout.c:  Convert to ISO C.
3588*75fd0b74Schristos	* dwarf1.c:  Convert to ISO C.
3589*75fd0b74Schristos	* ecoffswap.h:  Convert to ISO C.
3590*75fd0b74Schristos	* freebsd.h:  Convert to ISO C.
3591*75fd0b74Schristos	* genlink.h:  Convert to ISO C.
3592*75fd0b74Schristos	* ieee.c:  Convert to ISO C.
3593*75fd0b74Schristos	* ihex.c:  Convert to ISO C.
3594*75fd0b74Schristos	* libcoff-in.h:  Convert to ISO C.
3595*75fd0b74Schristos	* mach-o.c:  Convert to ISO C.
3596*75fd0b74Schristos	* mach-o.h:  Convert to ISO C.
3597*75fd0b74Schristos	* netbsd.h:  Convert to ISO C.
3598*75fd0b74Schristos	* ns32k.h:  Convert to ISO C.
3599*75fd0b74Schristos	* ns32knetbsd.c:  Convert to ISO C.
3600*75fd0b74Schristos	* oasys.c:  Convert to ISO C.
3601*75fd0b74Schristos	* pdp11.c:  Convert to ISO C.
3602*75fd0b74Schristos	* pef-traceback.h:  Convert to ISO C.
3603*75fd0b74Schristos	* pef.c:  Convert to ISO C.
3604*75fd0b74Schristos	* pef.h:  Convert to ISO C.
3605*75fd0b74Schristos	* riscix.c:  Convert to ISO C.
3606*75fd0b74Schristos	* som.c:  Convert to ISO C.
3607*75fd0b74Schristos	* som.h:  Convert to ISO C.
3608*75fd0b74Schristos	* srec.c:  Convert to ISO C.
3609*75fd0b74Schristos	* stabs.c:  Convert to ISO C.
3610*75fd0b74Schristos	* sunos.c:  Convert to ISO C.
3611*75fd0b74Schristos	* tekhex.c:  Convert to ISO C.
3612*75fd0b74Schristos	* versados.c:  Convert to ISO C.
3613*75fd0b74Schristos	* version.h:  Convert to ISO C.
3614*75fd0b74Schristos	* xcoff-target.h:  Convert to ISO C.
3615*75fd0b74Schristos	* xcofflink.c:  Convert to ISO C.
3616*75fd0b74Schristos	* xsym.c:  Convert to ISO C.
3617*75fd0b74Schristos	* xsym.h:  Convert to ISO C.
3618*75fd0b74Schristos
3619*75fd0b74Schristos2005-04-08  Paul Brook  <paul@codesourcery.com>
3620*75fd0b74Schristos
3621*75fd0b74Schristos	* elf32-arm.c (ARM2THUMB_GLUE_SIZE): Rename...
3622*75fd0b74Schristos	(ARM2THUMB_STATIC_GLUE_SIZE): ... to this.
3623*75fd0b74Schristos	(ARM2THUMB_PIC_GLUE_SIZE): Define.
3624*75fd0b74Schristos	(a2t1p_ldr_insn, a2t2p_add_pc_insn, a2t3p_bx_r12_insn): Add.
3625*75fd0b74Schristos	(elf32_arm_to_thumb_stub): Create PIC stubs.
3626*75fd0b74Schristos	(record_arm_to_thumb_glue): Use different stub size for relocatable
3627*75fd0b74Schristos	images.
3628*75fd0b74Schristos
3629*75fd0b74Schristos2005-04-05  Alan Modra  <amodra@bigpond.net.au>
3630*75fd0b74Schristos
3631*75fd0b74Schristos	* elf64-ppc.c (dec_dynrel_count): New function split out from
3632*75fd0b74Schristos	ppc64_elf_edit_toc, with additional code from ppc64_elf_edit_opd.
3633*75fd0b74Schristos	(ppc64_elf_edit_toc, ppc64_elf_edit_opd): Use it.
3634*75fd0b74Schristos	(ppc64_elf_tls_optimize): Likewise.
3635*75fd0b74Schristos
3636*75fd0b74Schristos2005-04-05  Mark Kettenis  <kettenis@gnu.org>
3637*75fd0b74Schristos
3638*75fd0b74Schristos	* netbsd-core.c (SPARC_WCOOKIE_OFFSET): Renamed from
3639*75fd0b74Schristos	CORE_WCOOKIE_OFFSET.
3640*75fd0b74Schristos	(SPARC64_WCOOKIE_OFFSET): New.
3641*75fd0b74Schristos	(netbsd_core_file_p): Provide .wcookie section for OpenBSD/sparc64.
3642*75fd0b74Schristos
3643*75fd0b74Schristos2005-04-05  Nick Clifton  <nickc@redhat.com>
3644*75fd0b74Schristos
3645*75fd0b74Schristos	* po/rw.po: New translation: Kinyarwanda
3646*75fd0b74Schristos	* configure.in (ALL_LINGUAS): Add rw
3647*75fd0b74Schristos	* configure: Regenerate.
3648*75fd0b74Schristos
3649*75fd0b74Schristos2005-04-05  Richard Sandiford  <rsandifo@redhat.com>
3650*75fd0b74Schristos
3651*75fd0b74Schristos	* elfxx-mips.c (MIPS_ELF_OPTIONS_SECTION_NAME_P): New macro.
3652*75fd0b74Schristos	(_bfd_mips_elf_section_from_shdr): Use it to check for recognized
3653*75fd0b74Schristos	SHT_MIPS_OPTIONS names.  Allow all sections with unrecognised
3654*75fd0b74Schristos	section flags.
3655*75fd0b74Schristos	(_bfd_mips_elf_fake_sections): Use MIPS_ELF_OPTIONS_SECTION_NAME_P
3656*75fd0b74Schristos	to check for SHT_MIPS_OPTIONS sections.
3657*75fd0b74Schristos	(_bfd_mips_elf_set_section_contents): Likewise.
3658*75fd0b74Schristos
3659*75fd0b74Schristos2005-04-04  Eric Christopher  <echristo@redhat.com>
3660*75fd0b74Schristos
3661*75fd0b74Schristos	* elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents):
3662*75fd0b74Schristos	Clean up gp handling code.
3663*75fd0b74Schristos
3664*75fd0b74Schristos2005-04-04  H.J. Lu  <hongjiu.lu@intel.com>
3665*75fd0b74Schristos
3666*75fd0b74Schristos	* elf.c (bfd_elf_set_group_contents): Ignore linker created
3667*75fd0b74Schristos	group section.
3668*75fd0b74Schristos	(assign_section_numbers): Accept link_info. Check SHT_GROUP
3669*75fd0b74Schristos	sections for relocatable files only. Remove the linker created
3670*75fd0b74Schristos	group sections.
3671*75fd0b74Schristos	(_bfd_elf_compute_section_file_positions): Pass link_info to
3672*75fd0b74Schristos	assign_section_numbers.
3673*75fd0b74Schristos
3674*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_object_p): New.
3675*75fd0b74Schristos	(elf_backend_object_p): Defined.
3676*75fd0b74Schristos
3677*75fd0b74Schristos2005-04-04  H.J. Lu  <hongjiu.lu@intel.com>
3678*75fd0b74Schristos
3679*75fd0b74Schristos	* elf-bfd.h (elf_section_data): Use (sec) instead of sec.
3680*75fd0b74Schristos
3681*75fd0b74Schristos2005-04-03  Fred Fish  <fnf@specifixinc.com>
3682*75fd0b74Schristos
3683*75fd0b74Schristos	* dwarf2.c (struct dwarf2_debug): Add dwarf_ranges_buffer and
3684*75fd0b74Schristos	dwarf_ranges_size members.
3685*75fd0b74Schristos	(struct comp_unit): Add base_address member.
3686*75fd0b74Schristos	(struct funcinfo): Replace low/high members with an arange.
3687*75fd0b74Schristos	(arange_add): Replace incoming "unit" parameter with "abfd" and
3688*75fd0b74Schristos	"first_arange" pointers.  Reorganize/rewrite function body.
3689*75fd0b74Schristos	(decode_line_info): Change arange_add call to pass bfd and arange
3690*75fd0b74Schristos	pointers.
3691*75fd0b74Schristos	(lookup_address_in_line_info_table): Use arange list instead of
3692*75fd0b74Schristos	individual low/high members.  Walk function's arange list to find
3693*75fd0b74Schristos	lowest PC in list, to test for overlapping functions.
3694*75fd0b74Schristos	(read_debug_ranges): New function, reads the debug_ranges section.
3695*75fd0b74Schristos	(lookup_address_in_function_table): Use arange list instead of
3696*75fd0b74Schristos	individual low/high members.  Rewrite to find smallest range that
3697*75fd0b74Schristos	matches.
3698*75fd0b74Schristos	(read_rangelist): Read a given rangelist from debug_ranges.
3699*75fd0b74Schristos	(scan_unit_for_functions): Use arange list instead of individual
3700*75fd0b74Schristos	low/high members.  Handle a DW_AT_ranges attribute.
3701*75fd0b74Schristos	(parse_comp_unit): Use arange list instead of individual low/high
3702*75fd0b74Schristos	members.  Save comp unit base address.  Handle a DW_AT_ranges
3703*75fd0b74Schristos	attribute.
3704*75fd0b74Schristos
3705*75fd0b74Schristos2005-04-01  H.J. Lu  <hongjiu.lu@intel.com>
3706*75fd0b74Schristos
3707*75fd0b74Schristos	* elf.c (assign_section_numbers): Really use the kept section.
3708*75fd0b74Schristos
3709*75fd0b74Schristos2005-03-31  H.J. Lu  <hongjiu.lu@intel.com>
3710*75fd0b74Schristos
3711*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_check_kept_section): New.
3712*75fd0b74Schristos
3713*75fd0b74Schristos	* elf.c (assign_section_numbers): When sh_link points to a
3714*75fd0b74Schristos	discarded section, call _bfd_elf_check_kept_section to see if
3715*75fd0b74Schristos	the kept section can be used. Otherwise reject sh_link
3716*75fd0b74Schristos	pointing to discarded section.
3717*75fd0b74Schristos
3718*75fd0b74Schristos	* elflink.c (_bfd_elf_check_kept_section): New.
3719*75fd0b74Schristos	(elf_link_input_bfd): Use it.
3720*75fd0b74Schristos
3721*75fd0b74Schristos2005-04-01  Alan Modra  <amodra@bigpond.net.au>
3722*75fd0b74Schristos
3723*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_edit_toc): Account for dynamic relocs
3724*75fd0b74Schristos	that we no longer need.
3725*75fd0b74Schristos
3726*75fd0b74Schristos2005-04-01  Alan Modra  <amodra@bigpond.net.au>
3727*75fd0b74Schristos
3728*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Return -1 on errors
3729*75fd0b74Schristos	rather than 0.
3730*75fd0b74Schristos	(ppc64_elf_check_relocs): Remove unnecessary SEC_ALLOC check.
3731*75fd0b74Schristos
3732*75fd0b74Schristos2005-03-31  H.J. Lu  <hongjiu.lu@intel.com>
3733*75fd0b74Schristos
3734*75fd0b74Schristos	* elf.c (assign_section_numbers): Fix a typo.
3735*75fd0b74Schristos
3736*75fd0b74Schristos2005-03-31  H.J. Lu  <hongjiu.lu@intel.com>
3737*75fd0b74Schristos
3738*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Remove the extra `\n' in
3739*75fd0b74Schristos	error message.
3740*75fd0b74Schristos	(_bfd_elf_section_already_linked): Likewise.
3741*75fd0b74Schristos
3742*75fd0b74Schristos2005-03-31  Jerome Guitton  <guitton@gnat.com>
3743*75fd0b74Schristos
3744*75fd0b74Schristos	* config.in: Regenerate.
3745*75fd0b74Schristos
3746*75fd0b74Schristos2005-03-31  Jerome Guitton  <guitton@gnat.com>
3747*75fd0b74Schristos
3748*75fd0b74Schristos	* config.in (HAVE_DECL_BASENAME): New configure macro.
3749*75fd0b74Schristos	* configure.in: Check for basename.
3750*75fd0b74Schristos	* configure: Regenerate.
3751*75fd0b74Schristos
3752*75fd0b74Schristos2005-03-30  Julian Brown  <julian@codesourcery.com>
3753*75fd0b74Schristos
3754*75fd0b74Schristos	* bfd-in.h (bfd_is_arm_mapping_symbol_name): Rename from
3755*75fd0b74Schristos	bfd_elf32_is_arm_mapping_symbol_name.
3756*75fd0b74Schristos	* bfd-in2.h: Regenerate.
3757*75fd0b74Schristos	* cpu-arm.c (bfd_is_arm_mapping_symbol_name): Rename from
3758*75fd0b74Schristos	bfd_elf32_is_arm_mapping_symbol_name.
3759*75fd0b74Schristos	* elf32-arm.c (elf32_arm_is_target_special_symbol): Rename
3760*75fd0b74Schristos	bfd_elf32_is_arm_mapping_symbol_name to bfd_is_arm_mapping_symbol_name.
3761*75fd0b74Schristos	(arm_elf_find_function): Likewise.
3762*75fd0b74Schristos	(elf32_arm_output_symbol_hook): Likewise.
3763*75fd0b74Schristos
3764*75fd0b74Schristos2005-03-30  Julian Brown  <julian@codesourcery.com>
3765*75fd0b74Schristos
3766*75fd0b74Schristos	* bfd-in.h (bfd_elf32_is_arm_mapping_symbol_name): Add prototype.
3767*75fd0b74Schristos	* bfd-in2.h: Regenerate.
3768*75fd0b74Schristos	* elf32-arm.c (elf32_arm_is_target_special_symbol): Rename call to
3769*75fd0b74Schristos	bfd_elf32_is_arm_mapping_symbol_name.
3770*75fd0b74Schristos	(elf32_arm_output_symbol_hook): Likewise.
3771*75fd0b74Schristos	(arm_elf_find_function): Likewise, and include STT_NOTYPE in test for
3772*75fd0b74Schristos	mapping symbols.
3773*75fd0b74Schristos	(is_arm_mapping_symbol_name): Function moved from here...
3774*75fd0b74Schristos	* cpu-arm.c (bfd_elf32_is_arm_mapping_symbol_name): ...to here, renamed
3775*75fd0b74Schristos	and made global.
3776*75fd0b74Schristos
3777*75fd0b74Schristos2005-03-29  Aaron W. LaFramboise  <aaron98wiridge9@aaronwl.com>
3778*75fd0b74Schristos
3779*75fd0b74Schristos	* configure.in: Check for ffs decl and alphabetize.
3780*75fd0b74Schristos	* config.in: Regenerate.
3781*75fd0b74Schristos	* configure: Regenerate.
3782*75fd0b74Schristos	* sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize.
3783*75fd0b74Schristos
3784*75fd0b74Schristos2005-03-29  Fred Fish  <fnf@specifixinc.com>
3785*75fd0b74Schristos
3786*75fd0b74Schristos	* dwarf2.c (struct comp_unit): Fix typo.
3787*75fd0b74Schristos	(scan_unit_for_functions): Remove unused local variable "name"
3788*75fd0b74Schristos	and dead code that set it.
3789*75fd0b74Schristos
3790*75fd0b74Schristos2005-03-29  Daniel Jacobowitz  <dan@codesourcery.com>
3791*75fd0b74Schristos	    Phil Blundell  <philb@gnu.org>
3792*75fd0b74Schristos
3793*75fd0b74Schristos	* bfd-in2.h, libbfd.h: Regenerated.
3794*75fd0b74Schristos	* reloc.c: Add ARM TLS relocations.
3795*75fd0b74Schristos	* elf32-arm.c (elf32_arm_howto_table): Add dynamic TLS
3796*75fd0b74Schristos	relocations.
3797*75fd0b74Schristos	(elf32_arm_tls_gd32_howto, elf32_arm_tls_ldo32_howto)
3798*75fd0b74Schristos	(elf32_arm_tls_ldm32_howto, elf32_arm_tls_le32_howto)
3799*75fd0b74Schristos	(elf32_arm_tls_ie32_howto): New.
3800*75fd0b74Schristos	(elf32_arm_howto_from_type): Support TLS relocations.
3801*75fd0b74Schristos	(elf32_arm_reloc_map): Likewise.
3802*75fd0b74Schristos	(elf32_arm_reloc_type_lookup): Likewise.
3803*75fd0b74Schristos	(TCB_SIZE): Define.
3804*75fd0b74Schristos	(struct elf32_arm_obj_tdata): New.
3805*75fd0b74Schristos	(elf32_arm_tdata, elf32_arm_local_got_tls_type): Define.
3806*75fd0b74Schristos	(elf32_arm_mkobject): New function.
3807*75fd0b74Schristos	(struct elf32_arm_relocs_copied): Add pc_count.
3808*75fd0b74Schristos	(elf32_arm_hash_entry, GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD)
3809*75fd0b74Schristos	(GOT_TLS_IE): Define.
3810*75fd0b74Schristos	(struct elf32_arm_link_hash_table): Add tls_ldm_got.
3811*75fd0b74Schristos	(elf32_arm_link_hash_newfunc): Initialize tls_type.
3812*75fd0b74Schristos	(elf32_arm_copy_indirect_symbol): Copy pc_count and tls_type.
3813*75fd0b74Schristos	(elf32_arm_link_hash_table_create): Initialize tls_ldm_got.
3814*75fd0b74Schristos	(dtpoff_base, tpoff): New functions.
3815*75fd0b74Schristos	(elf32_arm_final_link_relocate): Handle TLS relocations.
3816*75fd0b74Schristos	(IS_ARM_TLS_RELOC): Define.
3817*75fd0b74Schristos	(elf32_arm_relocate_section): Warn about TLS mismatches.
3818*75fd0b74Schristos	(elf32_arm_gc_sweep_hook): Handle TLS relocations and pc_count.
3819*75fd0b74Schristos	(elf32_arm_check_relocs): Detect invalid symbol indexes.  Handle
3820*75fd0b74Schristos	TLS relocations and pc_count.
3821*75fd0b74Schristos	(elf32_arm_adjust_dynamic_symbol): Check non_got_ref.
3822*75fd0b74Schristos	(allocate_dynrelocs): Handle TLS.  Bind REL32 relocs to local
3823*75fd0b74Schristos	calls.
3824*75fd0b74Schristos	(elf32_arm_size_dynamic_sections): Handle TLS.
3825*75fd0b74Schristos	(elf32_arm_finish_dynamic_symbol): Likewise.
3826*75fd0b74Schristos	(bfd_elf32_mkobject): Define.
3827*75fd0b74Schristos
3828*75fd0b74Schristos2005-03-29  Daniel Jacobowitz  <dan@codesourcery.com>
3829*75fd0b74Schristos
3830*75fd0b74Schristos	* elf32-arm.c (elf32_arm_check_relocs): Increment count for all
3831*75fd0b74Schristos	relocation types.  Don't count relocations which will use a PLT.
3832*75fd0b74Schristos
3833*75fd0b74Schristos2005-03-29  Joel Brobecker  <brobecker@gnat.com>
3834*75fd0b74Schristos
3835*75fd0b74Schristos	* elf.c (elfcore_grok_nto_status): Print tid as long.
3836*75fd0b74Schristos	(elfcore_grok_nto_regs): Likewise.
3837*75fd0b74Schristos
3838*75fd0b74Schristos2005-03-29  Joel Brobecker  <brobecker@gnat.com>
3839*75fd0b74Schristos
3840*75fd0b74Schristos	* irix-core.c: Remove some unnecessary prototypes.
3841*75fd0b74Schristos
3842*75fd0b74Schristos2005-03-28  Joel Brobecker  <brobecker@adacore.com>
3843*75fd0b74Schristos
3844*75fd0b74Schristos	* irix-core.c: Convert to ISO C.
3845*75fd0b74Schristos
3846*75fd0b74Schristos2005-03-28  Joel Brobecker  <brobecker@adacore.com>
3847*75fd0b74Schristos
3848*75fd0b74Schristos	* irix-core.c (do_sections): Replace + by | in expression.
3849*75fd0b74Schristos	(irix_core_core_file_matches_executable_p): Add ATTRIBUTE_UNUSED
3850*75fd0b74Schristos	to unused parameters to avoid a compiler warning.
3851*75fd0b74Schristos
3852*75fd0b74Schristos2005-03-28  Mark Kettenis  <kettenis@gnu.org>
3853*75fd0b74Schristos
3854*75fd0b74Schristos	* netbsd-core.c: Convert to ISO C.  Fix formatting.
3855*75fd0b74Schristos
3856*75fd0b74Schristos2005-03-24  Eric Christopher  <echristo@redhat.com>
3857*75fd0b74Schristos
3858*75fd0b74Schristos	* elfxx-mips.c: Revert previous patch.
3859*75fd0b74Schristos
3860*75fd0b74Schristos2005-03-24  Nick Clifton  <nickc@redhat.com>
3861*75fd0b74Schristos
3862*75fd0b74Schristos	* targets.c (_bfd_target_vector): Only include the
3863*75fd0b74Schristos	bfd_elf32_ia64_hpux_big_vec vector when building a 64-bit BFD with
3864*75fd0b74Schristos	all targets enabled.
3865*75fd0b74Schristos
3866*75fd0b74Schristos2005-03-24  James E Wilson  <wilson@specifixinc.com>
3867*75fd0b74Schristos
3868*75fd0b74Schristos	* Makefile.am (BFD32_BACKENDS): Delete elf32-ia64.lo.
3869*75fd0b74Schristos	(BFD64_BACKENDS): Add elf32-ia64.lo.
3870*75fd0b74Schristos	* Makefile.in: Regenerate.
3871*75fd0b74Schristos
3872*75fd0b74Schristos2005-03-23  Eric Christopher  <echristo@redhat.com>
3873*75fd0b74Schristos
3874*75fd0b74Schristos	* elfxx-mips.c (MIPS_ELF_READONLY_SECTION): New.
3875*75fd0b74Schristos	(mips_elf_calculate_relocation): Use. Define DF_TEXTREL
3876*75fd0b74Schristos	after emitting relocation.
3877*75fd0b74Schristos	(_bfd_mips_elf_adjust_dynamic_symbol): Ditto.
3878*75fd0b74Schristos	(_bfd_mips_elf_check_relocs): Remove code to set DF_TEXTREL
3879*75fd0b74Schristos	and readonly_reloc.
3880*75fd0b74Schristos
3881*75fd0b74Schristos2005-03-23  Mike Frysinger  <vapier@gentoo.org>
3882*75fd0b74Schristos	    Nick Clifton  <nickc@redhat.com>
3883*75fd0b74Schristos
3884*75fd0b74Schristos	* config.bfd: Accept any C library to accompany a GNU Linux
3885*75fd0b74Schristos	implementation, not just the GNU C library.
3886*75fd0b74Schristos	* configure.in: Likewise.
3887*75fd0b74Schristos	* configure: Regenerate.
3888*75fd0b74Schristos
3889*75fd0b74Schristos2005-03-22  H.J. Lu  <hongjiu.lu@intel.com>
3890*75fd0b74Schristos
3891*75fd0b74Schristos	* bfd-in.h (_bfd_elf_provide_symbol): New.
3892*75fd0b74Schristos	* bfd-in2.h: Regenerated.
3893*75fd0b74Schristos
3894*75fd0b74Schristos	* elf32-ppc.c (set_linker_sym): Moved to elflink.c.
3895*75fd0b74Schristos	(ppc_elf_set_sdata_syms): Call _bfd_elf_provide_symbol instead
3896*75fd0b74Schristos	of set_linker_sym.
3897*75fd0b74Schristos
3898*75fd0b74Schristos	* elflink.c (_bfd_elf_provide_symbol): New. Moved and renamed
3899*75fd0b74Schristos	from elf32-ppc.c.
3900*75fd0b74Schristos
3901*75fd0b74Schristos2005-03-22  Hans-Peter Nilsson  <hp@axis.com>
3902*75fd0b74Schristos
3903*75fd0b74Schristos	* hash.c (strtab_hash_newfunc): Fix typo in allocated size.
3904*75fd0b74Schristos
3905*75fd0b74Schristos2005-03-22  Bob Wilson  <bob.wilson@acm.org>
3906*75fd0b74Schristos
3907*75fd0b74Schristos	* xtensa-isa.c (xtensa_opcode_lookup, xtensa_state_lookup,
3908*75fd0b74Schristos	xtensa_sysreg_lookup_name, xtensa_interface_lookup,
3909*75fd0b74Schristos	xtensa_funcUnit_lookup): Skip bsearch call if count is zero.
3910*75fd0b74Schristos	(xtensa_opcode_decode): Rearrange code.
3911*75fd0b74Schristos
3912*75fd0b74Schristos2005-03-22  Nick Clifton  <nickc@redhat.com>
3913*75fd0b74Schristos
3914*75fd0b74Schristos	* binary.c: Convert to ISO C90 formatting.
3915*75fd0b74Schristos	* coff-arm.c: Convert to ISO C90 formatting.
3916*75fd0b74Schristos	* coffgen.c: Convert to ISO C90 formatting.
3917*75fd0b74Schristos	* elf32-gen.c: Convert to ISO C90 formatting.
3918*75fd0b74Schristos	* elf64-gen.c: Convert to ISO C90 formatting.
3919*75fd0b74Schristos	* hash.c: Convert to ISO C90 formatting.
3920*75fd0b74Schristos	* ieee.c: Convert to ISO C90 formatting.
3921*75fd0b74Schristos
3922*75fd0b74Schristos2005-03-22  Daniel Jacobowitz  <dan@codesourcery.com>
3923*75fd0b74Schristos
3924*75fd0b74Schristos	* elf32-arm.c (elf32_arm_final_link_relocate): Don't fail for
3925*75fd0b74Schristos	unresolved symbols in R_ARM_NONE relocations.
3926*75fd0b74Schristos
3927*75fd0b74Schristos2005-03-22  Daniel Jacobowitz  <dan@codesourcery.com>
3928*75fd0b74Schristos
3929*75fd0b74Schristos	* elf32-arm.c (elf32_arm_final_link_relocate): Add
3930*75fd0b74Schristos	UNRESOLVED_RELOC_P argument.  Set it appropriately.
3931*75fd0b74Schristos	(elf32_arm_relocate_section): Update call to
3932*75fd0b74Schristos	elf32_arm_final_link_relocate.  Don't clobber RELOCATION; use
3933*75fd0b74Schristos	unresolved_reloc instead.
3934*75fd0b74Schristos
3935*75fd0b74Schristos2005-03-23  Alan Modra  <amodra@bigpond.net.au>
3936*75fd0b74Schristos
3937*75fd0b74Schristos	* elflink.c (elf_link_add_object_symbols): Set SEC_EXCLUDE on
3938*75fd0b74Schristos	.gnu.warning.* sections.
3939*75fd0b74Schristos
3940*75fd0b74Schristos2005-03-22  Alan Modra  <amodra@bigpond.net.au>
3941*75fd0b74Schristos
3942*75fd0b74Schristos	* elf32-ppc.c (elf_linker_section_pointers_t): Remove
3943*75fd0b74Schristos	written_address_p.
3944*75fd0b74Schristos	(ppc_elf_create_linker_section): Don't try to reuse existing section.
3945*75fd0b74Schristos	(elf_create_pointer_linker_section): Delete info parm.  Don't make
3946*75fd0b74Schristos	h dynamic.  Don't set written_address_p.
3947*75fd0b74Schristos	(ppc_elf_check_relocs): Adjust ppc_elf_create_linker_section calls.
3948*75fd0b74Schristos	(bfd_put_ptr): Delete.
3949*75fd0b74Schristos	(elf_finish_pointer_linker_section): Remove output_bfd and info parms.
3950*75fd0b74Schristos	Always write section contents.  Assert global sym is def_regular.
3951*75fd0b74Schristos	Use offset bottom bit as a written flag.
3952*75fd0b74Schristos	(ppc_elf_relocate_section): Adjust elf_finish_pointer_linker_section
3953*75fd0b74Schristos	calls.
3954*75fd0b74Schristos
3955*75fd0b74Schristos2005-03-22  Alan Modra  <amodra@bigpond.net.au>
3956*75fd0b74Schristos
3957*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_set_sdata_syms): New function, extracted from..
3958*75fd0b74Schristos	(ppc_elf_set_sdata_syms): ..here.  Expand comment.  Set .sbss start
3959*75fd0b74Schristos	and end syms.
3960*75fd0b74Schristos
3961*75fd0b74Schristos2005-03-21  Nick Clifton  <nickc@redhat.com>
3962*75fd0b74Schristos
3963*75fd0b74Schristos	* coff-arm.c (coff_link_hash_entry): Only define for non WINCE
3964*75fd0b74Schristos	targets.
3965*75fd0b74Schristos	(t2a1_bx_pc_insn): Likewise.
3966*75fd0b74Schristos	(t2a2_noop_insn): Likewise.
3967*75fd0b74Schristos	(t2a3_b_insn): Likewise.
3968*75fd0b74Schristos	(t2a1_push_insn): Likewise.
3969*75fd0b74Schristos	(t2a2_ldr_insn): Likewise.
3970*75fd0b74Schristos	(t2a3_mov_insn): Likewise.
3971*75fd0b74Schristos	(t2a4_bx_insn): Likewise.
3972*75fd0b74Schristos	(t2a5_pop_insn): Likewise.
3973*75fd0b74Schristos	(t2a6_bx_insn): Likewise.
3974*75fd0b74Schristos	(coff_arm_relocate_section): Only declare the high_address
3975*75fd0b74Schristos	variable for non WINCE targets.
3976*75fd0b74Schristos
3977*75fd0b74Schristos2005-03-22  Alan Modra  <amodra@bigpond.net.au>
3978*75fd0b74Schristos
3979*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_add_symbol_hook): Make htab->sbss
3980*75fd0b74Schristos	SEC_LINKER_CREATED.  Attach to dynobj.
3981*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Strip htab->sbss if zero size.
3982*75fd0b74Schristos
3983*75fd0b74Schristos2005-03-21  Alan Modra  <amodra@bigpond.net.au>
3984*75fd0b74Schristos
3985*75fd0b74Schristos	* elf32-ppc.c (struct elf_linker_section): Remove sym_hash and
3986*75fd0b74Schristos	sym_offset.  Add name, bss_name, sym_name, sym_val.
3987*75fd0b74Schristos	(struct ppc_elf_link_hash_table): Remove sdata and sdata2 pointers.
3988*75fd0b74Schristos	Add sdata array of elf_linker_section_t.
3989*75fd0b74Schristos	(ppc_elf_link_hash_table_create): Set name, sym_name, and bss_name.
3990*75fd0b74Schristos	(enum elf_linker_section_enum): Delete.
3991*75fd0b74Schristos	(ppc_elf_create_linker_section): Rewrite.  Don't create syms here.
3992*75fd0b74Schristos	(ppc_elf_check_relocs): Delay ppc_elf_create_linker_section until
3993*75fd0b74Schristos	the special sections are needed.  Adjust htab->sdata refs.
3994*75fd0b74Schristos	Ensure dynobj is set in sreloc code.
3995*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Strip sdata sections.
3996*75fd0b74Schristos	(ppc_elf_set_sdata_syms): New function.
3997*75fd0b74Schristos	(elf_finish_pointer_linker_section): Use 0x8000 for sym_offset.
3998*75fd0b74Schristos	(ppc_elf_relocate_section): Adjust references to htab->sdata.  Use
3999*75fd0b74Schristos	sym_val instead of sym_hash.
4000*75fd0b74Schristos	* elf32-ppc.h (ppc_elf_set_sdata_syms): Declare.
4001*75fd0b74Schristos
4002*75fd0b74Schristos2005-03-21  Alan Modra  <amodra@bigpond.net.au>
4003*75fd0b74Schristos
4004*75fd0b74Schristos	* elf32-ppc.c (is_ppc_elf_target): Move to linker part of file.
4005*75fd0b74Schristos	(ppc_elf_merge_private_bfd_data): Likewise.
4006*75fd0b74Schristos
4007*75fd0b74Schristos2005-03-21  Alan Modra  <amodra@bigpond.net.au>
4008*75fd0b74Schristos
4009*75fd0b74Schristos	* elf32-ppc.c (struct elf_linker_section): Remove rel_section.
4010*75fd0b74Schristos	(ppc_elf_create_linker_section): Don't create rel_section.
4011*75fd0b74Schristos	(elf_create_pointer_linker_section): Don't size relocs.
4012*75fd0b74Schristos	(elf_finish_pointer_linker_section): Remove relative_reloc parm.
4013*75fd0b74Schristos	Don't generate relocs.
4014*75fd0b74Schristos	(ppc_elf_relocate_section): Adjust calls to
4015*75fd0b74Schristos	elf_finish_pointer_linker_section.
4016*75fd0b74Schristos
4017*75fd0b74Schristos2005-03-21  Alan Modra  <amodra@bigpond.net.au>
4018*75fd0b74Schristos
4019*75fd0b74Schristos	* elf32-ppc.c (is_ppc_elf_target): New function.
4020*75fd0b74Schristos	(ppc_elf_merge_private_bfd_data): Use it rather than just testing
4021*75fd0b74Schristos	for bfd_target_elf_flavour.  Do this test before endian check.
4022*75fd0b74Schristos	(ppc_elf_add_symbol_hook): Use is_pcc_elf_target.
4023*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Likewise.
4024*75fd0b74Schristos
4025*75fd0b74Schristos2005-03-20  H.J. Lu  <hongjiu.lu@intel.com>
4026*75fd0b74Schristos
4027*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Add int to
4028*75fd0b74Schristos	elf_backend_section_from_shdr.
4029*75fd0b74Schristos	(bfd_elf_section_data): Update comment for this_idx.
4030*75fd0b74Schristos	(_bfd_elf_make_section_from_shdr): Add int.
4031*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
4032*75fd0b74Schristos
4033*75fd0b74Schristos	* elf.c (_bfd_elf_make_section_from_shdr): Take section index
4034*75fd0b74Schristos	and use it to set this_idx in bfd_elf_section_data.
4035*75fd0b74Schristos	(bfd_section_from_shdr): Pass shindex to
4036*75fd0b74Schristos	_bfd_elf_make_section_from_shdr.
4037*75fd0b74Schristos	(_bfd_elf_section_from_bfd_section): Use this_idx in
4038*75fd0b74Schristos	bfd_elf_section_data to find section index.
4039*75fd0b74Schristos
4040*75fd0b74Schristos	* elf32-arm.c (elf32_arm_section_from_shdr): Take section
4041*75fd0b74Schristos	index and pass it to _bfd_elf_make_section_from_shdr.
4042*75fd0b74Schristos	* elf32-i370.c(i370_elf_section_from_shdr): Likewise.
4043*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
4044*75fd0b74Schristos	* elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
4045*75fd0b74Schristos	* elf32-v850.c (v850_elf_section_from_shdr): Likewise.
4046*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
4047*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
4048*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_section_from_shdr): Likewise.
4049*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
4050*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
4051*75fd0b74Schristos
4052*75fd0b74Schristos2005-03-19  Danny Smith <dannysmith@users.sourceforge.net>
4053*75fd0b74Schristos	    Ross Ridge  <rridge@csclub.uwaterloo.ca>
4054*75fd0b74Schristos
4055*75fd0b74Schristos	* peicode.h (pe_ILF_build_a_bfd): Strip only one prefix
4056*75fd0b74Schristos	character in IMPORT_NAME_UNDECORATE and IMPORT_NAME_NOPREFIX
4057*75fd0b74Schristos	cases.  Add comment.
4058*75fd0b74Schristos
4059*75fd0b74Schristos2005-03-18  H.J. Lu  <hongjiu.lu@intel.com>
4060*75fd0b74Schristos
4061*75fd0b74Schristos	* elflink.c (elf_mark_used_section): Remove check for special
4062*75fd0b74Schristos	sections.
4063*75fd0b74Schristos
4064*75fd0b74Schristos2005-03-18  Andreas Schwab  <schwab@suse.de>
4065*75fd0b74Schristos
4066*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_install_value): Change type of insn
4067*75fd0b74Schristos	from bfd_vma to ia64_insn, remove broken cast.
4068*75fd0b74Schristos
4069*75fd0b74Schristos2005-03-18  C Jaiprakash  <cjaiprakash@noida.hcltech.com>
4070*75fd0b74Schristos
4071*75fd0b74Schristos	* elf32-m68k.c (elf_cfv4e_plt0_entry): plt entry for coldfire v4e.
4072*75fd0b74Schristos	(elf_m68k_adjust_dynamic_symbol,elf_m68k_finish_dynamic_symbol,
4073*75fd0b74Schristos	 elf_m68k_finish_dynamic_sections): Use it.
4074*75fd0b74Schristos
4075*75fd0b74Schristos2005-03-17  Paul Brook <paul@codesourcery.com>
4076*75fd0b74Schristos	    Dan Jacobowitz <dan@codesourcery.com>
4077*75fd0b74Schristos	    Mark Mitchell  <mark@codesourcery.com>
4078*75fd0b74Schristos
4079*75fd0b74Schristos	* elf32-arm.c (elf32_arm_modify_segment_map): New function.
4080*75fd0b74Schristos	(elf32_arm_additional_program_headers): Likewise.
4081*75fd0b74Schristos	(elf_backend_modify_segment_map): Define.
4082*75fd0b74Schristos	(elf_backend_additional_program_headers): Likewise.
4083*75fd0b74Schristos	(elf32_arm_symbian_modify_segment_map): Use
4084*75fd0b74Schristos	elf32_arm_modify_segment_map.
4085*75fd0b74Schristos
4086*75fd0b74Schristos2005-03-18  H.J. Lu  <hongjiu.lu@intel.com>
4087*75fd0b74Schristos
4088*75fd0b74Schristos	* elflink.c (elf_mark_used_section): Check bfd_is_const_section
4089*75fd0b74Schristos	for special sections.
4090*75fd0b74Schristos
4091*75fd0b74Schristos2005-03-18  Alan Modra  <amodra@bigpond.net.au>
4092*75fd0b74Schristos
4093*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_link_renumber_dynsyms): Delete.
4094*75fd0b74Schristos	* elflink.c (_bfd_elf_link_renumber_dynsyms): Make static, add
4095*75fd0b74Schristos	section_sym_count param, and return number of section symbols.
4096*75fd0b74Schristos	(bfd_elf_size_dynamic_sections): Clear section symbol area of
4097*75fd0b74Schristos	.dynsym contents.  Don't bother calling swap_symbol_out on the
4098*75fd0b74Schristos	first all-zero dynsym.
4099*75fd0b74Schristos	(elf_mark_used_section): Formatting.  Avoid twiddling flags in
4100*75fd0b74Schristos	special sections like bfd_abs_section.
4101*75fd0b74Schristos	(bfd_elf_gc_sections): Spelling fix.
4102*75fd0b74Schristos
4103*75fd0b74Schristos2005-03-16  Fred Fish  <fnf@specifixinc.com>
4104*75fd0b74Schristos
4105*75fd0b74Schristos	PR binutils/790
4106*75fd0b74Schristos	* dwarf2.c (read_indirect_string): Fix apparent typo, check
4107*75fd0b74Schristos	dwarf_str_buffer allocation, not dwarf_abbrev_buffer.
4108*75fd0b74Schristos
4109*75fd0b74Schristos2005-03-16  H.J. Lu  <hongjiu.lu@intel.com>
4110*75fd0b74Schristos
4111*75fd0b74Schristos	* elflink.c (elf_mark_used_section): New.
4112*75fd0b74Schristos	(bfd_elf_gc_sections): Call elf_gc_mark_section for
4113*75fd0b74Schristos	non-relocatable link if we don't do GC.
4114*75fd0b74Schristos
4115*75fd0b74Schristos2005-03-16  Nick Clifton  <nickc@redhat.com>
4116*75fd0b74Schristos	    Ben Elliston  <bje@au.ibm.com>
4117*75fd0b74Schristos
4118*75fd0b74Schristos	* configure.in (werror): New switch: Add -Werror to the
4119*75fd0b74Schristos	compiler command line.  Enabled by default.  Disable via
4120*75fd0b74Schristos	--disable-werror.
4121*75fd0b74Schristos	* configure: Regenerate.
4122*75fd0b74Schristos
4123*75fd0b74Schristos2005-03-16  Nick Clifton  <nickc@redhat.com>
4124*75fd0b74Schristos
4125*75fd0b74Schristos	* ecoff.c: Convert to ISO C90 formatting.
4126*75fd0b74Schristos
4127*75fd0b74Schristos2005-03-16  Alan Modra  <amodra@bigpond.net.au>
4128*75fd0b74Schristos
4129*75fd0b74Schristos	* elf32-ppc.c: Divide file into general and linker specific
4130*75fd0b74Schristos	functions.  Sort linker functions into roughly the order in which
4131*75fd0b74Schristos	they are called by the ELF linker code.
4132*75fd0b74Schristos
4133*75fd0b74Schristos2005-03-16  Alan Modra  <amodra@bigpond.net.au>
4134*75fd0b74Schristos
4135*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_create_linker_section): Set SEC_LINKER_CREATED
4136*75fd0b74Schristos	on section.  Correct comment, and add FIXME.
4137*75fd0b74Schristos	(ppc_elf_additional_program_headers): Don't bump header count for
4138*75fd0b74Schristos	interp.  Test SEC_ALLOC, not SEC_LOAD, and don't test size.
4139*75fd0b74Schristos	(ppc_elf_size_dynamic_sections): Don't strip sdata and sdata2, but
4140*75fd0b74Schristos	do allocate memory if they need it.
4141*75fd0b74Schristos
4142*75fd0b74Schristos2005-03-15  Mikkel Krautz  <krautz@gmail.com>
4143*75fd0b74Schristos
4144*75fd0b74Schristos	* config.bfd (x86_64-elf): Add target.
4145*75fd0b74Schristos
4146*75fd0b74Schristos2005-03-15  Alan Modra  <amodra@bigpond.net.au>
4147*75fd0b74Schristos
4148*75fd0b74Schristos	* po/es.po: Commit new Spanish translation.
4149*75fd0b74Schristos
4150*75fd0b74Schristos2005-03-14  H.J. Lu  <hongjiu.lu@intel.com>
4151*75fd0b74Schristos
4152*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relocate_section): Set symbo name
4153*75fd0b74Schristos	for global symbol when reporting overflow.
4154*75fd0b74Schristos
4155*75fd0b74Schristos2005-03-11  Jakub Jelinek  <jakub@redhat.com>
4156*75fd0b74Schristos
4157*75fd0b74Schristos	* libbfd-in.h (_bfd_ar_spacepad): New prototype.
4158*75fd0b74Schristos	* libbfd.h: Rebuilt.
4159*75fd0b74Schristos	* archive.c (_bfd_ar_spacepad): New function.
4160*75fd0b74Schristos	(_bfd_construct_extended_name_table, _bfd_write_archive_contents,
4161*75fd0b74Schristos	bsd_write_armap, _bfd_archive_bsd_update_armap_timestamp,
4162*75fd0b74Schristos	coff_write_armap): Use it.
4163*75fd0b74Schristos	(bfd_ar_hdr_from_filesystem): Likewise.  Fix HP-UX large
4164*75fd0b74Schristos	uid/gid support.
4165*75fd0b74Schristos	* archive64.c (bfd_elf64_archive_write_armap): Use _bfd_ar_spacepad.
4166*75fd0b74Schristos
4167*75fd0b74Schristos2005-03-10  Mark Kettenis  <kettenis@gnu.org>
4168*75fd0b74Schristos
4169*75fd0b74Schristos	* archive.c (_bfd_look_for_bfd_in_cache): Move declaration of
4170*75fd0b74Schristos	has_table to the start of the function.
4171*75fd0b74Schristos
4172*75fd0b74Schristos2005-03-10  Ben Elliston  <bje@au.ibm.com>
4173*75fd0b74Schristos
4174*75fd0b74Schristos	* archive.c: Include hashtab.h.
4175*75fd0b74Schristos	(struct ar_cache): Rename `arelt' to `arbfd' and remove `next'.
4176*75fd0b74Schristos	(_bfd_look_for_bfd_in_cache): Reimplement using htab_find.
4177*75fd0b74Schristos	(hash_file_ptr): New function.
4178*75fd0b74Schristos	(eq_file_ptr): Likewise.
4179*75fd0b74Schristos	(_bfd_add_bfd_to_archive_cache): Reimplement using a hash table.
4180*75fd0b74Schristos	* libbfd-in.h: Include hashtab.h.
4181*75fd0b74Schristos	(struct artdata): Change `cache' member type to htab_t.
4182*75fd0b74Schristos	* libbfd.h: Rebuild.
4183*75fd0b74Schristos
4184*75fd0b74Schristos2005-03-08  Daniel Jacobowitz  <dan@codesourcery.com>
4185*75fd0b74Schristos
4186*75fd0b74Schristos	* configure.in: Bump version to 2.16.90.
4187*75fd0b74Schristos	* configure: Regenerated.
4188*75fd0b74Schristos
4189*75fd0b74Schristos2005-03-07  Jakub Jelinek  <jakub@redhat.com>
4190*75fd0b74Schristos
4191*75fd0b74Schristos	* opncls.c (opncls_bread, opncls_bclose): Fix if pread resp.
4192*75fd0b74Schristos	close is a function like macro in system headers.
4193*75fd0b74Schristos
4194*75fd0b74Schristos2005-03-07  Alan Modra  <amodra@bigpond.net.au>
4195*75fd0b74Schristos
4196*75fd0b74Schristos	PR ld/778
4197*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_create_dynamic_sections): Reinstate
4198*75fd0b74Schristos	_GLOBAL_OFFSET_TABLE_ as a normal dynamic symbol.
4199*75fd0b74Schristos
4200*75fd0b74Schristos2005-03-06  Alan Modra  <amodra@bigpond.net.au>
4201*75fd0b74Schristos
4202*75fd0b74Schristos	* elf.c (elfcore_grok_win32pstatus): Warning fixes.
4203*75fd0b74Schristos
4204*75fd0b74Schristos2005-03-05  Alan Modra  <amodra@bigpond.net.au>
4205*75fd0b74Schristos
4206*75fd0b74Schristos	* po/bfd.pot: Regenerate.
4207*75fd0b74Schristos
4208*75fd0b74Schristos2005-03-05  Alan Modra  <amodra@bigpond.net.au>
4209*75fd0b74Schristos
4210*75fd0b74Schristos	* elf64-ppc.c (update_plt_info): Don't mark new ABI call syms
4211*75fd0b74Schristos	with is_func.
4212*75fd0b74Schristos	(func_desc_adjust): Force dot-syms local in executables as well
4213*75fd0b74Schristos	as shared libs.
4214*75fd0b74Schristos
4215*75fd0b74Schristos2005-03-04  David Daney  <ddaney@avtrex.com>
4216*75fd0b74Schristos
4217*75fd0b74Schristos	* elfxx-mips.c (mips_elf_calculate_relocation): Handle special
4218*75fd0b74Schristos	'__gnu_local_gp' symbol used by gas -mno-shared.
4219*75fd0b74Schristos
4220*75fd0b74Schristos2005-03-03  H.J. Lu  <hongjiu.lu@intel.com>
4221*75fd0b74Schristos
4222*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Add "const char *" to
4223*75fd0b74Schristos	elf_backend_section_from_phdr.
4224*75fd0b74Schristos
4225*75fd0b74Schristos	* elf.c (bfd_section_from_phdr): Pass "proc" to the
4226*75fd0b74Schristos	elf_backend_section_from_phdr hook.
4227*75fd0b74Schristos
4228*75fd0b74Schristos2005-03-02  Daniel Jacobowitz  <dan@codesourcery.com>
4229*75fd0b74Schristos	    Joseph Myers  <joseph@codesourcery.com>
4230*75fd0b74Schristos
4231*75fd0b74Schristos	* elfxx-mips.c (struct mips_got_entry): Add tls_type.
4232*75fd0b74Schristos	(struct mips_got_info): Add tls_gotno, tls_assigned_gotno,
4233*75fd0b74Schristos	and tls_ldm_offset.
4234*75fd0b74Schristos	(struct mips_elf_got_per_bfd_arg): Add global_count.
4235*75fd0b74Schristos	(struct mips_elf_count_tls_arg): New.
4236*75fd0b74Schristos	(struct mips_elf_hash_sort_data): Update comment for min_got_dynindx.
4237*75fd0b74Schristos	(struct mips_elf_link_hash_entry): Add tls_type and tls_got_offset.
4238*75fd0b74Schristos	(GOT_NORMAL, GOT_TLS_GD, GOT_TLS_LDM, GOT_TLS_IE)
4239*75fd0b74Schristos	(GOT_TLS_OFFSET_DONE, GOT_TLS_DONE): Define.
4240*75fd0b74Schristos	(TLS_RELOC_P): Define.
4241*75fd0b74Schristos	(TP_OFFSET, DTP_OFFSET): Define.
4242*75fd0b74Schristos	(dtprel_base, tprel_base): New functions.
4243*75fd0b74Schristos	(mips_elf_link_hash_newfunc): Initialize tls_type.
4244*75fd0b74Schristos	(mips_elf_got_entry_hash, mips_elf_got_entry_eq)
4245*75fd0b74Schristos	(mips_elf_multi_got_entry_hash, mips_elf_multi_got_entry_eq): Handle
4246*75fd0b74Schristos	TLS entries.
4247*75fd0b74Schristos	(mips_tls_got_relocs, mips_elf_count_local_tls_relocs)
4248*75fd0b74Schristos	(mips_elf_count_global_tls_entries, mips_elf_count_global_tls_relocs)
4249*75fd0b74Schristos	(mips_elf_output_dynamic_relocation, mips_elf_initialize_tls_slots)
4250*75fd0b74Schristos	(mips_tls_got_index): New functions.
4251*75fd0b74Schristos	(mips_elf_local_got_index): Add new R_SYMNDX, H, and R_TYPE
4252*75fd0b74Schristos	arguments.  Pass them to mips_elf_create_local_got_entry.  Use
4253*75fd0b74Schristos	mips_tls_got_index.
4254*75fd0b74Schristos	(mips_elf_global_got_index): Add new R_TYPE and INFO arguments.
4255*75fd0b74Schristos	Handle TLS entries.
4256*75fd0b74Schristos	(mips_elf_got_page, mips_elf_got16_entry): Update calls to
4257*75fd0b74Schristos	mips_elf_create_local_got_entry.
4258*75fd0b74Schristos	(mips_elf_create_local_got_entry): Add new R_SYMNDX, H, and R_TYPE
4259*75fd0b74Schristos	arguments.  Handle TLS entries.
4260*75fd0b74Schristos	(mips_elf_sort_hash_table_f): Add non-TLS assertions.
4261*75fd0b74Schristos	(mips_elf_record_local_got_symbol): Add new TLS_FLAG argument.  Handle
4262*75fd0b74Schristos	TLS entries.
4263*75fd0b74Schristos	(mips_elf_record_global_got_symbol): Likewise.
4264*75fd0b74Schristos	(mips_elf_make_got_per_bfd): Initialize new mips_got_info members.
4265*75fd0b74Schristos	Count TLS entries.
4266*75fd0b74Schristos	(mips_elf_merge_gots): Handle TLS entries when merging.
4267*75fd0b74Schristos	(mips_elf_initialize_tls_index): New function.
4268*75fd0b74Schristos	(mips_elf_set_global_got_offset): Handle TLS entries.
4269*75fd0b74Schristos	(mips_elf_adjust_gp): Handle TLS.
4270*75fd0b74Schristos	(mips_elf_multi_got): Remove redundant call to
4271*75fd0b74Schristos	mips_elf_resolve_final_got_entries.  Initialize global_count.
4272*75fd0b74Schristos	Correct a comment.  Initialize new TLS members of mips_got_info.
4273*75fd0b74Schristos	Assign TLS GOT indexes for new GOTs.
4274*75fd0b74Schristos	(mips_elf_create_got_section): Initialize new TLS members of
4275*75fd0b74Schristos	mips_got_info.
4276*75fd0b74Schristos	(mips_elf_calculate_relocation): Handle TLS relocs.
4277*75fd0b74Schristos	(_bfd_mips_elf_check_relocs): Likewise.  Update calls to changed
4278*75fd0b74Schristos	functions.
4279*75fd0b74Schristos	(_bfd_mips_elf_always_size_sections): Handle TLS.
4280*75fd0b74Schristos	(_bfd_mips_elf_size_dynamic_sections): Likewise.
4281*75fd0b74Schristos	(_bfd_mips_elf_finish_dynamic_symbol): Likewise.  Update calls to
4282*75fd0b74Schristos	changed functions.
4283*75fd0b74Schristos	(_bfd_mips_elf_copy_indirect_symbol): Copy tls_type.
4284*75fd0b74Schristos	(_bfd_mips_elf_hide_symbol): Handle TLS.
4285*75fd0b74Schristos	* elfn32-mips.c (elf_mips_howto_table_rel, elf_mips_howto_table_rela)
4286*75fd0b74Schristos	(mips_reloc_map): Add TLS relocs.
4287*75fd0b74Schristos	* elf32-mips.c (elf_mips_howto_table_rel, mips_reloc_map): Likewise.
4288*75fd0b74Schristos	* elf64-mips.c (mips_elf64_howto_table_rel)
4289*75fd0b74Schristos	(mips_elf64_howto_table_rela, mips_reloc_map): Likewise.
4290*75fd0b74Schristos	* reloc.c: Define new MIPS TLS relocations.
4291*75fd0b74Schristos	* libbfd.h, bfd-in2.h: Regenerated.
4292*75fd0b74Schristos
4293*75fd0b74Schristos2005-03-02  Jan Beulich  <jbeulich@novell.com>
4294*75fd0b74Schristos
4295*75fd0b74Schristos	* Makefile.am: Add dependency of cache.o on libiberty.h.
4296*75fd0b74Schristos	* cache.c: Include libiberty.h.
4297*75fd0b74Schristos	(bfd_open_file): Use unlink_if_ordinary instead of unlink.
4298*75fd0b74Schristos
4299*75fd0b74Schristos2005-03-01  Zack Weinberg  <zack@codesourcery.com>
4300*75fd0b74Schristos
4301*75fd0b74Schristos	* elf.c (bfd_section_from_shdr <default case>): Call
4302*75fd0b74Schristos	elf_backend_section_from_shdr hook unconditionally, and return
4303*75fd0b74Schristos	what it returns.
4304*75fd0b74Schristos	(bfd_section_from_phdr): Similarly, for elf_backend_section_from_phdr.
4305*75fd0b74Schristos	* elfxx-target.h (elf_backend_section_from_shdr)
4306*75fd0b74Schristos	(elf_backend_section_from_phdr): Default to
4307*75fd0b74Schristos	_bfd_elf_make_section_from_shdr and _bfd_elf_make_section_from_phdr
4308*75fd0b74Schristos	respectively.
4309*75fd0b74Schristos
4310*75fd0b74Schristos2005-03-01  Alan Modra  <amodra@bigpond.net.au>
4311*75fd0b74Schristos
4312*75fd0b74Schristos	* targets.h: Typo fix.
4313*75fd0b74Schristos	* bfd-in2.h: Regenerate.
4314*75fd0b74Schristos
4315*75fd0b74Schristos	* bout.c (b_out_write_object_contents): Don't use sizeof on host
4316*75fd0b74Schristos	structs to size on-disk structures.
4317*75fd0b74Schristos	(b_out_set_section_contents): Size the external struct, not the
4318*75fd0b74Schristos	internal one for on-disk size.
4319*75fd0b74Schristos	(b_out_sizeof_headers): Likewise.
4320*75fd0b74Schristos
4321*75fd0b74Schristos2005-03-01  Alan Modra  <amodra@bigpond.net.au>
4322*75fd0b74Schristos
4323*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_size_stubs): Override defined dot-sym
4324*75fd0b74Schristos	entry points with the func descriptor as well as undefweak.
4325*75fd0b74Schristos
4326*75fd0b74Schristos2005-02-28  Ross Ridge  <rridge@csclub.uwaterloo.ca>
4327*75fd0b74Schristos
4328*75fd0b74Schristos	* peicode.h (pe_ILF_build_a_bfd): Do not assume that an @ will be
4329*75fd0b74Schristos	present when IMPORT_NAME_UNDOECRATE is used.
4330*75fd0b74Schristos
4331*75fd0b74Schristos2005-02-28  H.J. Lu  <hongjiu.lu@intel.com>
4332*75fd0b74Schristos
4333*75fd0b74Schristos	PR 757
4334*75fd0b74Schristos	* elf-bfd.h (_bfd_elf_merge_symbol): Add a pointer to unsigned
4335*75fd0b74Schristos	int.
4336*75fd0b74Schristos
4337*75fd0b74Schristos	* elf32-sh-symbian.c (sh_symbian_relocate_section): Pass NULL
4338*75fd0b74Schristos	to _bfd_elf_merge_symbol.
4339*75fd0b74Schristos
4340*75fd0b74Schristos	* elflink.c (_bfd_elf_merge_symbol): Use the pointer to
4341*75fd0b74Schristos	unsigned int to return the alignment of the old common symbol
4342*75fd0b74Schristos	in the dynamic object.
4343*75fd0b74Schristos	(_bfd_elf_add_default_symbol): Pass NULL to
4344*75fd0b74Schristos	_bfd_elf_merge_symbol.
4345*75fd0b74Schristos	(elf_link_add_object_symbols): Pass &old_alignment to
4346*75fd0b74Schristos	_bfd_elf_merge_symbol. Get the alignment of the new common
4347*75fd0b74Schristos	symbol in the dynamic object.
4348*75fd0b74Schristos
4349*75fd0b74Schristos2005-02-24  Ben Elliston  <bje@au.ibm.com>
4350*75fd0b74Schristos
4351*75fd0b74Schristos	* coffcode.h (coff_sym_filepos): Remove GNU960 conditional code.
4352*75fd0b74Schristos	* format.c (bfd_check_format_matches): Likewise.
4353*75fd0b74Schristos	* archive.c (BFD_GNU960_ARMAG): Likewise.
4354*75fd0b74Schristos	(bfd_generic_archive_p): Likewise.
4355*75fd0b74Schristos	(_bfd_write_archive_contents): Likewise.
4356*75fd0b74Schristos
4357*75fd0b74Schristos2005-02-24  H.J. Lu  <hongjiu.lu@intel.com>
4358*75fd0b74Schristos
4359*75fd0b74Schristos	* configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.95.
4360*75fd0b74Schristos	* configure: Regenerate.
4361*75fd0b74Schristos
4362*75fd0b74Schristos2005-02-24  Julian Brown  <julian@sirius.codesourcery.com>
4363*75fd0b74Schristos
4364*75fd0b74Schristos	* elflink.c (elf_link_add_object_symbols): Force symbols in discarded
4365*75fd0b74Schristos	COMDAT group sections to have default visibility.
4366*75fd0b74Schristos
4367*75fd0b74Schristos2005-02-24  Alan Modra  <amodra@bigpond.net.au>
4368*75fd0b74Schristos
4369*75fd0b74Schristos	* coffcode.h (coff_print_aux): Warning fix.
4370*75fd0b74Schristos	* elf-m10300.c (mn10300_elf_relax_section): Use section->id
4371*75fd0b74Schristos	instead of section pointer to identify.
4372*75fd0b74Schristos	* coff-h8300.c (h8300_reloc16_extra_cases): Likewise.  Allocate
4373*75fd0b74Schristos	the correct size buffer for local sym mangling too.
4374*75fd0b74Schristos	(h8300_bfd_link_add_symbols): Likewise.
4375*75fd0b74Schristos	* elf32-sh-symbian.c (sh_symbian_process_embedded_commands): Fix
4376*75fd0b74Schristos	warning.
4377*75fd0b74Schristos	* elf32-sh64.c (shmedia_prepare_reloc): Use %B and %p in error message
4378*75fd0b74Schristos	* elf32-xtensa.c (literal_value_hash): Warning fix.
4379*75fd0b74Schristos	* versados.c (process_otr): Warning fix.
4380*75fd0b74Schristos	(versados_canonicalize_reloc): Likewise.
4381*75fd0b74Schristos	* vms-gsd.c (_bfd_vms_slurp_gsd): Warning fix.
4382*75fd0b74Schristos	* vms.c (fill_section_ptr): Warning fix.
4383*75fd0b74Schristos
4384*75fd0b74Schristos2005-02-23  H.J. Lu  <hongjiu.lu@intel.com>
4385*75fd0b74Schristos
4386*75fd0b74Schristos	* coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Defined.
4387*75fd0b74Schristos	* coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Likewise.
4388*75fd0b74Schristos
4389*75fd0b74Schristos2005-02-23  Nick Clifton  <nickc@redhat.com>
4390*75fd0b74Schristos
4391*75fd0b74Schristos	* elfxx-mips.c (mips_elf_create_dynamic_relocation): Initialise
4392*75fd0b74Schristos	the relvaddr field of the Elf32_crinfo structure.
4393*75fd0b74Schristos
4394*75fd0b74Schristos	* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Initialise
4395*75fd0b74Schristos	variables that are passed by reference to
4396*75fd0b74Schristos	m68hc11_get_relocation_value in case that function does not
4397*75fd0b74Schristos	initialise them.
4398*75fd0b74Schristos
4399*75fd0b74Schristos	* elf32-cr16c.c (cr16c_elf_final_link_relocate): Remove duplicated
4400*75fd0b74Schristos	return statements and replace with a single return at the end of
4401*75fd0b74Schristos	the function.  This helps pacify the flow analysis code in gcc 4.0.
4402*75fd0b74Schristos
4403*75fd0b74Schristos	* elf.c (_bfd_elf_compute_section_file_positions): Initialise
4404*75fd0b74Schristos	strtab to avoid compile time warning.
4405*75fd0b74Schristos
4406*75fd0b74Schristos2005-02-23  Ben Elliston  <bje@au.ibm.com>
4407*75fd0b74Schristos
4408*75fd0b74Schristos	* opncls.c (bfd_zalloc): Document this function.
4409*75fd0b74Schristos
4410*75fd0b74Schristos2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>
4411*75fd0b74Schristos
4412*75fd0b74Schristos	* coffcode.h (sec_to_styp_flags): Replaced SEC_CLINK with
4413*75fd0b74Schristos	SEC_TIC54X_CLINK. Replace SEC_BLOCK with SEC_TIC54X_BLOCK.
4414*75fd0b74Schristos	Replace SEC_SHARED with SEC_COFF_SHARED.
4415*75fd0b74Schristos	(styp_to_sec_flags): Likewise.
4416*75fd0b74Schristos
4417*75fd0b74Schristos	* elfxx-target.h (TARGET_BIG_SYM): Remove SEC_ARCH_BIT_0.
4418*75fd0b74Schristos	(TARGET_LITTLE_SYM): Likewise.
4419*75fd0b74Schristos
4420*75fd0b74Schristos	* section.c (SEC_ARCH_BIT_0): Removed.
4421*75fd0b74Schristos	(SEC_LINK_DUPLICATES_SAME_CONTENTS): Defined with
4422*75fd0b74Schristos	SEC_LINK_DUPLICATES_ONE_ONLY and SEC_LINK_DUPLICATES_SAME_SIZE.
4423*75fd0b74Schristos	(SEC_SHARED): Renamed to ...
4424*75fd0b74Schristos	(SEC_COFF_SHARED): This.
4425*75fd0b74Schristos	(SEC_BLOCK): Renamed to ...
4426*75fd0b74Schristos	(SEC_TIC54X_BLOCK): This.
4427*75fd0b74Schristos	(SEC_CLINK): Renamed to ...
4428*75fd0b74Schristos	(SEC_TIC54X_CLINK): This.
4429*75fd0b74Schristos	(SEC_XXX): Rearranged. Move SEC_COFF_SHARED_LIBRARY,
4430*75fd0b74Schristos	SEC_COFF_SHARED, SEC_TIC54X_BLOCK and SEC_TIC54X_CLINK to the
4431*75fd0b74Schristos	end.
4432*75fd0b74Schristos	* bfd-in2.h: Regenerated.
4433*75fd0b74Schristos
4434*75fd0b74Schristos2005-02-21  Fred Fish  <fnf@specifixinc.com>
4435*75fd0b74Schristos
4436*75fd0b74Schristos	* dwarf2.c (find_abstract_instance_name): Call recursively
4437*75fd0b74Schristos	to handle a DW_AT_specification.
4438*75fd0b74Schristos
4439*75fd0b74Schristos2005-02-21  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
4440*75fd0b74Schristos
4441*75fd0b74Schristos	* elfxx-mips.c (ecoff_swap_rpdr_out, mips_elf_output_extsym,
4442*75fd0b74Schristos	mips_elf_create_dynamic_relocation,
4443*75fd0b74Schristos	_bfd_mips_elf_size_dynamic_sections, _bfd_mips_elf_final_link):
4444*75fd0b74Schristos	Remove #if 0'd code.
4445*75fd0b74Schristos
4446*75fd0b74Schristos2005-02-21  Alan Modra  <amodra@bigpond.net.au>
4447*75fd0b74Schristos
4448*75fd0b74Schristos	* Makefile.am: Run "make dep-am"
4449*75fd0b74Schristos	* Makefile.in: Regenerate.
4450*75fd0b74Schristos
4451*75fd0b74Schristos2005-02-21  Alan Modra  <amodra@bigpond.net.au>
4452*75fd0b74Schristos
4453*75fd0b74Schristos	* coffgen.c (bfd_coff_get_comdat_section): Check that
4454*75fd0b74Schristos	coff_section_data isn't NULL.
4455*75fd0b74Schristos
4456*75fd0b74Schristos2005-02-21  Alan Modra  <amodra@bigpond.net.au>
4457*75fd0b74Schristos
4458*75fd0b74Schristos	* bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix.
4459*75fd0b74Schristos	* coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise.
4460*75fd0b74Schristos	* coff-rs6000.c (xcoff_write_armap_big): Warning fixes.  Remove
4461*75fd0b74Schristos	useless assignments.
4462*75fd0b74Schristos	(xcoff_write_archive_contents_big): Likewise.
4463*75fd0b74Schristos	(_bfd_xcoff_put_ldsymbol_name): Likewise.
4464*75fd0b74Schristos	* coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise.
4465*75fd0b74Schristos	* coffgen.c (coff_write_symbols): Make "written" a bfd_vma.
4466*75fd0b74Schristos	* cofflink.c (process_embedded_commands): Warning fixes.
4467*75fd0b74Schristos	* cpu-arm.c: Delete unnecessary prototypes.  Convert to C90.
4468*75fd0b74Schristos	Warning fixes.
4469*75fd0b74Schristos	* dwarf2.c: Warning fixes.
4470*75fd0b74Schristos	* elf-bfd.h: Likewise.
4471*75fd0b74Schristos	* elf-eh-frame.c: Likewise.
4472*75fd0b74Schristos	* elf-strtab.c: Likewise.
4473*75fd0b74Schristos	* elf.c: Likewise.
4474*75fd0b74Schristos	* elf32-m68k.c: Likewise.
4475*75fd0b74Schristos	* elf32-ppc.c: Likewise.
4476*75fd0b74Schristos	* elf32-sh-symbian.c: Likewise.
4477*75fd0b74Schristos	* elf32-sh.c: Delete unnecessary prototypes.  Warning fixes.
4478*75fd0b74Schristos	* elf64-sh64.c: Likewise.
4479*75fd0b74Schristos	* peicode.h: Likewise.
4480*75fd0b74Schristos	* elf64-mmix.c: Warning fixes.
4481*75fd0b74Schristos	* elfcode.h: Likewise.
4482*75fd0b74Schristos	* elfxx-mips.c: Likewise.
4483*75fd0b74Schristos	* libbfd-in.h: Likewise.
4484*75fd0b74Schristos	* libbfd.c: Likewise.
4485*75fd0b74Schristos	* mach-o.c: Likewise.
4486*75fd0b74Schristos	* merge.c: Likewise.
4487*75fd0b74Schristos	* mmo.c: Likewise.
4488*75fd0b74Schristos	* opncls.c: Likewise.
4489*75fd0b74Schristos	* pef.c: Likewise.
4490*75fd0b74Schristos	* srec.c: Likewise.
4491*75fd0b74Schristos	* vms-hdr.c: Likewise.
4492*75fd0b74Schristos	* vms-tir.c: Likewise.
4493*75fd0b74Schristos	* xtensa-isa.c: Likewise.
4494*75fd0b74Schristos	* xtensa-modules.c: Likewise.
4495*75fd0b74Schristos	* xsym.c: Likewise.
4496*75fd0b74Schristos	(pstrcmp): Use correct choice of string lengths.  Fix return value.
4497*75fd0b74Schristos	(bfd_sym_module_name): Correct string length.
4498*75fd0b74Schristos	* bfd-in2.h: Regenerate.
4499*75fd0b74Schristos	* libbfd.h: Regenerate.
4500*75fd0b74Schristos
4501*75fd0b74Schristos2005-02-17  Alexandre Oliva  <aoliva@redhat.com>
4502*75fd0b74Schristos
4503*75fd0b74Schristos	* elf32-frv.c (elf32_frv_relocate_section): Remove warning from
4504*75fd0b74Schristos	uninitialized check_segment[1] in TLSMOFF case.
4505*75fd0b74Schristos	Reported by Alan Modra.
4506*75fd0b74Schristos	(elf32_frv_relocate_section): Improve errors and warnings.
4507*75fd0b74Schristos
4508*75fd0b74Schristos2005-02-17  Alan Modra  <amodra@bigpond.net.au>
4509*75fd0b74Schristos
4510*75fd0b74Schristos	* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Fix warning.
4511*75fd0b74Schristos
4512*75fd0b74Schristos2005-02-16  Alan Modra  <amodra@bigpond.net.au>
4513*75fd0b74Schristos
4514*75fd0b74Schristos	* coff-arm.c (coff_arm_is_local_label_name): Warning fix.
4515*75fd0b74Schristos	* elf32-frv.c (frvfdpic_relocs_info_hash): Likewise.
4516*75fd0b74Schristos	* pef.c (bfd_pef_scan): Don't ignore return value of
4517*75fd0b74Schristos	bfd_pef_scan_start_address.
4518*75fd0b74Schristos	* mach-o.c (bfd_mach_o_scan): Don't ignore return value of
4519*75fd0b74Schristos	bfd_mach_o_scan_start_address.
4520*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relax_brl): Rewrite for 32-bit bfd_vma.
4521*75fd0b74Schristos	* elfxx-mips.c: Remove unnecessary prototypes.
4522*75fd0b74Schristos	(sort_dynamic_relocs_64): Abort if not BFD64.
4523*75fd0b74Schristos
4524*75fd0b74Schristos2005-02-16  Alan Modra  <amodra@bigpond.net.au>
4525*75fd0b74Schristos
4526*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_edit_toc): Skip toc if size is zero.
4527*75fd0b74Schristos	Skip toc reloc adjust if reloc_count is zero.
4528*75fd0b74Schristos
4529*75fd0b74Schristos2005-02-15  Nigel Stephens  <nigel@mips.com>
4530*75fd0b74Schristos	    Maciej W. Rozycki  <macro@mips.com>
4531*75fd0b74Schristos
4532*75fd0b74Schristos	* elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
4533*75fd0b74Schristos	reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
4534*75fd0b74Schristos	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
4535*75fd0b74Schristos	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
4536*75fd0b74Schristos	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
4537*75fd0b74Schristos	dst_mask.
4538*75fd0b74Schristos	(mips16_gprel_reloc): Remove bit shuffling; call
4539*75fd0b74Schristos	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
4540*75fd0b74Schristos	and _bfd_mips16_elf_reloc_shuffle() instead.
4541*75fd0b74Schristos	(mips16_reloc_map): New reloc map for MIPS16 relocs.
4542*75fd0b74Schristos	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
4543*75fd0b74Schristos	relocs.
4544*75fd0b74Schristos	(mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from
4545*75fd0b74Schristos	elf_mips16_howto_table_rel.
4546*75fd0b74Schristos	* elf64-mips.c (mips16_elf64_howto_table_rel): New array for
4547*75fd0b74Schristos	MIPS16 REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16
4548*75fd0b74Schristos	relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
4549*75fd0b74Schristos	(elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel.
4550*75fd0b74Schristos	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
4551*75fd0b74Schristos	dst_mask.
4552*75fd0b74Schristos	(mips16_elf64_howto_table_rela): New array for MIPS16 RELA
4553*75fd0b74Schristos	reloc howtos.  Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and
4554*75fd0b74Schristos	R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16
4555*75fd0b74Schristos	placeholders.
4556*75fd0b74Schristos	(mips16_gprel_reloc): Remove bit shuffling; call
4557*75fd0b74Schristos	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
4558*75fd0b74Schristos	and _bfd_mips16_elf_reloc_shuffle() instead.
4559*75fd0b74Schristos	(mips16_reloc_map): New reloc map for MIPS16 relocs.
4560*75fd0b74Schristos	(bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
4561*75fd0b74Schristos	relocs.
4562*75fd0b74Schristos	(mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from
4563*75fd0b74Schristos	mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel.
4564*75fd0b74Schristos	* elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16
4565*75fd0b74Schristos	REL reloc howtos.  Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and
4566*75fd0b74Schristos	R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders.
4567*75fd0b74Schristos	(elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel.
4568*75fd0b74Schristos	(elf_mips16_gprel_howto): Likewise.  Redefine src_mask and
4569*75fd0b74Schristos	dst_mask.
4570*75fd0b74Schristos	(mips16_gprel_reloc): Remove bit shuffling; call
4571*75fd0b74Schristos	_bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp()
4572*75fd0b74Schristos	and _bfd_mips16_elf_reloc_shuffle() instead.
4573*75fd0b74Schristos	(mips16_reloc_map): New reloc map for MIPS16 relocs.
4574*75fd0b74Schristos	(bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16
4575*75fd0b74Schristos	relocs.
4576*75fd0b74Schristos	(mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from
4577*75fd0b74Schristos	elf_mips16_howto_table_rela or elf_mips16_howto_table_rel.
4578*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to
4579*75fd0b74Schristos	handle bit shuffling for MIPS16 relocs.
4580*75fd0b74Schristos	(_bfd_mips16_elf_reloc_shuffle): Likewise.
4581*75fd0b74Schristos	(_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle()
4582*75fd0b74Schristos	and _bfd_mips16_elf_reloc_shuffle().
4583*75fd0b74Schristos	(_bfd_mips_elf_generic_reloc): Likewise.
4584*75fd0b74Schristos	(mips_elf_calculate_relocation): Likewise.  Handle R_MIPS16_HI16
4585*75fd0b74Schristos	and R_MIPS16_LO16.
4586*75fd0b74Schristos	(mips_elf_obtain_contents): Remove bit shuffling.
4587*75fd0b74Schristos	(mips_elf_perform_relocation): Likewise; call
4588*75fd0b74Schristos	_bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle()
4589*75fd0b74Schristos	instead.
4590*75fd0b74Schristos	(_bfd_mips_elf_relocate_section): Likewise.  Handle R_MIPS16_HI16
4591*75fd0b74Schristos	and R_MIPS16_LO16.
4592*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare.
4593*75fd0b74Schristos	(_bfd_mips16_elf_reloc_shuffle): Likewise.
4594*75fd0b74Schristos	* reloc.c (BFD_RELOC_MIPS16_HI16): New reloc.
4595*75fd0b74Schristos	(BFD_RELOC_MIPS16_HI16_S): Likewise.
4596*75fd0b74Schristos	(BFD_RELOC_MIPS16_LO16): Likewise.
4597*75fd0b74Schristos	* bfd-in2.h: Regenerate.
4598*75fd0b74Schristos	* libbfd.h: Regenerate.
4599*75fd0b74Schristos
4600*75fd0b74Schristos2005-02-15  Jan Beulich  <jbeulich@novell.com>
4601*75fd0b74Schristos
4602*75fd0b74Schristos	* elfxx-ia64.c (ia64_howto_table): Correct strings for
4603*75fd0b74Schristos	R_IA64_DTPMOD64[LM]SB.
4604*75fd0b74Schristos
4605*75fd0b74Schristos2005-02-14  H.J. Lu  <hongjiu.lu@intel.com>
4606*75fd0b74Schristos
4607*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_relax_section): Allow relax
4608*75fd0b74Schristos	backward branch in the same section.
4609*75fd0b74Schristos	(elfNN_ia64_relocate_section): Inform users that the input
4610*75fd0b74Schristos	section is too big to relax br instruction when overflow
4611*75fd0b74Schristos	happens to R_IA64_PCREL21B, R_IA64_PCREL21BI, R_IA64_PCREL21M
4612*75fd0b74Schristos	and R_IA64_PCREL21F.
4613*75fd0b74Schristos
4614*75fd0b74Schristos2005-02-14 Orjan Friberg <orjanf@axis.com>
4615*75fd0b74Schristos
4616*75fd0b74Schristos	* elfcore.h (elf_core_file_p): Move the call to
4617*75fd0b74Schristos	elf_backend_object_p to allow the correct machine to be set before
4618*75fd0b74Schristos	processing the program headers.
4619*75fd0b74Schristos
4620*75fd0b74Schristos2005-02-14  Nick Clifton  <nickc@redhat.com>
4621*75fd0b74Schristos
4622*75fd0b74Schristos	PR binutils/716
4623*75fd0b74Schristos	* peicode.h (pe_bfd_copy_private_bfd_data): Copy the large address
4624*75fd0b74Schristos	aware flag from the input bfd to the output bfd.
4625*75fd0b74Schristos
4626*75fd0b74Schristos2005-02-11  Maciej W. Rozycki  <macro@mips.com>
4627*75fd0b74Schristos
4628*75fd0b74Schristos	* elf32-mips.c (_bfd_mips_elf32_gprel16_reloc): Reject
4629*75fd0b74Schristos	R_MIPS_LITERAL relocations for external symbols.
4630*75fd0b74Schristos	* elf64-mips.c (mips_elf64_literal_reloc): Likewise.
4631*75fd0b74Schristos	* elfn32-mips.c (mips_elf_literal_reloc): Likewise.
4632*75fd0b74Schristos
4633*75fd0b74Schristos2005-02-11  H.J. Lu  <hongjiu.lu@intel.com>
4634*75fd0b74Schristos
4635*75fd0b74Schristos	* bfd-in2.h: Rebuilt.
4636*75fd0b74Schristos
4637*75fd0b74Schristos2005-02-11  Paul Brook  <paul@codesourcery.com>
4638*75fd0b74Schristos
4639*75fd0b74Schristos	* elf-bfd.h (struct elf_link_hash_table): Add
4640*75fd0b74Schristos	is_relocatable_executable.
4641*75fd0b74Schristos	* elf.c (_bfd_elf_link_hash_table_init): Initialize it.
4642*75fd0b74Schristos	* elflink.c (bfd_elf_link_record_dynamic_symbol): Create local dynamic
4643*75fd0b74Schristos	symbols in relocatable executables.
4644*75fd0b74Schristos	(bfd_elf_record_link_assignment): Create dynamic section symbols in
4645*75fd0b74Schristos	relocatable executables.
4646*75fd0b74Schristos	(_bfd_elf_link_renumber_dynsyms): Ditto.
4647*75fd0b74Schristos	(bfd_elf_final_link): Ditto.
4648*75fd0b74Schristos	* elf32-arm.c (elf32_arm_final_link_relocate): Copy absolute
4649*75fd0b74Schristos	relocations into relocatable executables.
4650*75fd0b74Schristos	(elf32_arm_check_relocs): Crate dynamic sections for relocatable
4651*75fd0b74Schristos	executables.  Also copy absolute relocations.
4652*75fd0b74Schristos	(elf32_arm_adjust_dynamic_symbol): Don't create copy relocations
4653*75fd0b74Schristos	in relocatable executables.
4654*75fd0b74Schristos	(allocate_dynrelocs): Copy relocations for relocatable executables.
4655*75fd0b74Schristos	Output dynamic symbols for symbols defined in linker scripts.
4656*75fd0b74Schristos
4657*75fd0b74Schristos2005-02-11  Nick Clifton  <nickc@redhat.com>
4658*75fd0b74Schristos
4659*75fd0b74Schristos	* libbfd.c (read_signed_leb128): Use an unsigned type for 'shift'
4660*75fd0b74Schristos	to avoid a compile time warning.
4661*75fd0b74Schristos
4662*75fd0b74Schristos	* coff-alpha.c (alpha_adjust_reloc_in): Remove redundant test from
4663*75fd0b74Schristos	BFD_ASSERT.
4664*75fd0b74Schristos
4665*75fd0b74Schristos	* coff-tic4x.c (coff_rtype_to_howto): Move definition before
4666*75fd0b74Schristos	inclusion of coffcode.h so that it is actually picked up.
4667*75fd0b74Schristos
4668*75fd0b74Schristos	* coffcode.h (coff_std_swap_table): Add an unused attribute in
4669*75fd0b74Schristos	case it is not used.
4670*75fd0b74Schristos
4671*75fd0b74Schristos	* elf32-ip2k.c (ip2k_call_opcode, IS_CALL_OPCODE): Remove unused
4672*75fd0b74Schristos	structure and macro.
4673*75fd0b74Schristos
4674*75fd0b74Schristos	* elf32-iq2000.c (iq2000_reloc_map): Remove unused structure and
4675*75fd0b74Schristos	array.
4676*75fd0b74Schristos
4677*75fd0b74Schristos	* elf32-m32r.c (m32r_reloc_map_old): Use #ifdef	USE_M32R_OLD_RELOC
4678*75fd0b74Schristos	to protect the declaration of this array.
4679*75fd0b74Schristos
4680*75fd0b74Schristos	* xsym.c (bfd_sym_parse_contained_variables_table_entry_v32):
4681*75fd0b74Schristos	Avoid call to memcpy with a size of 0.
4682*75fd0b74Schristos
4683*75fd0b74Schristos2005-02-12  Alan Modra  <amodra@bigpond.net.au>
4684*75fd0b74Schristos
4685*75fd0b74Schristos	* elf64-ppc.c (toc_adjusting_stub_needed): Return true for
4686*75fd0b74Schristos	old-style branches to undefined dot-symbols which will be
4687*75fd0b74Schristos	satisfied by a plt call.
4688*75fd0b74Schristos
4689*75fd0b74Schristos2005-02-11  Alan Modra  <amodra@bigpond.net.au>
4690*75fd0b74Schristos
4691*75fd0b74Schristos	* elf64-ppc.c (move_plt_plist): New function, extracted from..
4692*75fd0b74Schristos	(ppc64_elf_copy_indirect_symbol): ..here.
4693*75fd0b74Schristos	(func_desc_adjust): Use move_plt_plist.
4694*75fd0b74Schristos
4695*75fd0b74Schristos2005-02-10  Paul Brook  <paul@codesourcery.com>
4696*75fd0b74Schristos
4697*75fd0b74Schristos	* elf32-arm.c (elf32_arm_final_link_relocate): Handle R_ARM_THM_PC9.
4698*75fd0b74Schristos
4699*75fd0b74Schristos2005-02-10  Paul Brook  <paul@codesourcery.com>
4700*75fd0b74Schristos
4701*75fd0b74Schristos	* elflink.c (bfd_elf_record_link_assignment): Make hidden and internal
4702*75fd0b74Schristos	symbols local.
4703*75fd0b74Schristos	(elf_link_renumber_hash_table_dynsyms): Ignore local symbols.
4704*75fd0b74Schristos	(elf_link_renumber_local_hash_table_dynsyms): New function.
4705*75fd0b74Schristos	(_bfd_elf_link_renumber_dynsyms): Number local dynamic symbols.
4706*75fd0b74Schristos
4707*75fd0b74Schristos2005-02-10  Jakub Jelinek  <jakub@redhat.com>
4708*75fd0b74Schristos
4709*75fd0b74Schristos	* bfd-in.h (BFD_LINKER_CREATED): Define.
4710*75fd0b74Schristos	* bfd-in2.h: Rebuilt.
4711*75fd0b74Schristos	* elflink.c (bfd_elf_size_dynamic_sections): Disregard
4712*75fd0b74Schristos	BFD_LINKER_CREATED bfds when determining input bfds without
4713*75fd0b74Schristos	.note.GNU-stack section.
4714*75fd0b74Schristos
4715*75fd0b74Schristos2005-02-10  Maciej W. Rozycki  <macro@mips.com>
4716*75fd0b74Schristos
4717*75fd0b74Schristos	* elf64-mips.c (mips16_gprel_reloc): Update a comment.
4718*75fd0b74Schristos	* elfn32-mips.c (mips16_gprel_reloc): Keep R_MIPS16_GPREL
4719*75fd0b74Schristos	relocations against external symbols unchanged.
4720*75fd0b74Schristos
4721*75fd0b74Schristos2005-02-08  Paul Brook  <paul@codesourcery.com>
4722*75fd0b74Schristos
4723*75fd0b74Schristos	* elflink.c (elf_link_input_bfd): Ignore symbols from null input
4724*75fd0b74Schristos	sections.
4725*75fd0b74Schristos
4726*75fd0b74Schristos2005-02-08  Hans-Peter Nilsson  <hp@axis.com>
4727*75fd0b74Schristos
4728*75fd0b74Schristos	* elflink.c (elf_link_add_object_symbols): Don't add "warning: "
4729*75fd0b74Schristos	prefix here.
4730*75fd0b74Schristos
4731*75fd0b74Schristos2005-02-07  Maciej W. Rozycki  <macro@mips.com>
4732*75fd0b74Schristos
4733*75fd0b74Schristos	* elf64-mips.c: Fix formatting throughout.
4734*75fd0b74Schristos
4735*75fd0b74Schristos2005-02-07  Maciej W. Rozycki  <macro@mips.com>
4736*75fd0b74Schristos
4737*75fd0b74Schristos	* elfn32-mips.c (elf_mips_howto_table_rela): Fix a comment typo.
4738*75fd0b74Schristos
4739*75fd0b74Schristos2005-02-07  Alexandre Oliva  <aoliva@redhat.com>
4740*75fd0b74Schristos
4741*75fd0b74Schristos	* elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove special handling for
4742*75fd0b74Schristos	*ABS*/*UND* sections.
4743*75fd0b74Schristos	(elf32_frv_relocate_section): Move zero-addend-required error...
4744*75fd0b74Schristos	(_frv_emit_got_relocs_plt_entries): ... here.  Report error for
4745*75fd0b74Schristos	missing needed TLS section.
4746*75fd0b74Schristos
4747*75fd0b74Schristos2005-02-07  Hans-Peter Nilsson  <hp@axis.com>
4748*75fd0b74Schristos
4749*75fd0b74Schristos	* aoutx.h (NAME(aout,find_nearest_line)): Correct case for N_SO
4750*75fd0b74Schristos	being the last symbol.
4751*75fd0b74Schristos	(aout_link_add_symbols): Just return TRUE if a warning
4752*75fd0b74Schristos	symbol was last.
4753*75fd0b74Schristos
4754*75fd0b74Schristos2005-02-07  Maciej W. Rozycki  <macro@mips.com>
4755*75fd0b74Schristos
4756*75fd0b74Schristos	* elf32-mips.c (mips_elf_gprel32_reloc): Reject
4757*75fd0b74Schristos	R_MIPS_GPREL32 relocations against external symbols.
4758*75fd0b74Schristos	* elf64-mips.c (mips_elf64_gprel32_reloc): Replace an incorrect
4759*75fd0b74Schristos	comment.
4760*75fd0b74Schristos
4761*75fd0b74Schristos2005-02-07  Alan Modra  <amodra@bigpond.net.au>
4762*75fd0b74Schristos
4763*75fd0b74Schristos	* elf-bfd.h (elf_string_from_elf_strtab): Delete macro.
4764*75fd0b74Schristos	* elf.c (bfd_elf_string_from_elf_section): Expand occurrence of
4765*75fd0b74Schristos	elf_string_from_elf_strtab.
4766*75fd0b74Schristos	(_bfd_elf_setup_group_pointers, bfd_section_from_shdr): Likewise.
4767*75fd0b74Schristos	(bfd_section_from_shdr): For SHT_SYMTAB, load SHT_SYMTAB_SHNDX too
4768*75fd0b74Schristos	if it exists.  Don't do the reverse for SHT_SYMTAB_SHNDX.  For
4769*75fd0b74Schristos	SHT_STRTAB, check whether the strtab is for symtab or dynsymtab by
4770*75fd0b74Schristos	looking at cached symtab info first, before iterating over headers.
4771*75fd0b74Schristos	For SHT_REL and SHT_RELA, load dynsymtab if needed.
4772*75fd0b74Schristos	* elfcode.h (elf_object_p): Don't load section header stringtab
4773*75fd0b74Schristos	specially.
4774*75fd0b74Schristos
4775*75fd0b74Schristos2005-02-06  H.J. Lu  <hongjiu.lu@intel.com>
4776*75fd0b74Schristos
4777*75fd0b74Schristos	* elf32-i386.c (elf_i386_relocate_section): Disallow R_386_GOTOFF
4778*75fd0b74Schristos	against protected function when building shared library.
4779*75fd0b74Schristos
4780*75fd0b74Schristos	PR 584
4781*75fd0b74Schristos	* elf64-x86-64.c (is_32bit_relative_branch): New.
4782*75fd0b74Schristos	(elf64_x86_64_relocate_section): Alllow R_X86_64_PC32 on a
4783*75fd0b74Schristos	protected function symbol when building shared library for
4784*75fd0b74Schristos	32bit relative branch instruction.
4785*75fd0b74Schristos
4786*75fd0b74Schristos2005-02-06  Alan Modra  <amodra@bigpond.net.au>
4787*75fd0b74Schristos
4788*75fd0b74Schristos	* elf64-ppc.c (add_symbol_adjust): Don't create fake descriptor
4789*75fd0b74Schristos	syms when doing a relocatable link.
4790*75fd0b74Schristos	(ppc64_elf_gc_mark_hook): Check that syms are defined before looking
4791*75fd0b74Schristos	at u.def.section.
4792*75fd0b74Schristos	(ppc64_elf_tls_setup): Likewise.
4793*75fd0b74Schristos	(ppc64_elf_edit_opd): Don't use an undefined func desc sym.
4794*75fd0b74Schristos
4795*75fd0b74Schristos2005-02-04  Alan Modra  <amodra@bigpond.net.au>
4796*75fd0b74Schristos
4797*75fd0b74Schristos	* elf64-ppc.c (struct ppc_link_hash_entry): Add "fake".
4798*75fd0b74Schristos	(link_hash_newfunc): Clear all locals using memset.
4799*75fd0b74Schristos	(make_fdh): Remove flags param.  Always create fake func desc
4800*75fd0b74Schristos	weak.  Link the descriptor with the code entry sym.
4801*75fd0b74Schristos	(ppc64_elf_archive_symbol_lookup): Don't return fake syms.
4802*75fd0b74Schristos	(add_symbol_adjust): Adjust make_fdh call.
4803*75fd0b74Schristos	(func_desc_adjust): Likewise.  Twiddle any pre-existing fake
4804*75fd0b74Schristos	descriptor to strong undefined if code entry is strong.
4805*75fd0b74Schristos
4806*75fd0b74Schristos2005-02-04  Alan Modra  <amodra@bigpond.net.au>
4807*75fd0b74Schristos
4808*75fd0b74Schristos	* elflink.c (bfd_elf_record_link_assignment): Do "provide" symbol
4809*75fd0b74Schristos	lookup here.  Set to new before calling bfd_link_repair_undef_list.
4810*75fd0b74Schristos	(elf_smash_syms): Check that u.undef.weak isn't the not_needed bfd.
4811*75fd0b74Schristos
4812*75fd0b74Schristos2005-02-03  Alan Modra  <amodra@bigpond.net.au>
4813*75fd0b74Schristos
4814*75fd0b74Schristos	* linker.c (_bfd_link_hash_newfunc): Set all local fields.
4815*75fd0b74Schristos
4816*75fd0b74Schristos2005-02-03  Alan Modra  <amodra@bigpond.net.au>
4817*75fd0b74Schristos
4818*75fd0b74Schristos	* linker.c (_bfd_generic_link_add_one_symbol): Set u.undef.weak.
4819*75fd0b74Schristos	* elflink.c (elf_smash_syms): Restore symbols that were undefweak
4820*75fd0b74Schristos	before the as-needed lib was loaded.  Abort on unexpected refs.
4821*75fd0b74Schristos
4822*75fd0b74Schristos2005-02-02  Alan Modra  <amodra@bigpond.net.au>
4823*75fd0b74Schristos
4824*75fd0b74Schristos	* elflink.c (elf_smash_syms): Expand comments.
4825*75fd0b74Schristos	(elf_link_add_object_symbols): Only call elf_smash_syms for
4826*75fd0b74Schristos	as-needed dynamic objects.
4827*75fd0b74Schristos
4828*75fd0b74Schristos	* elfxx-ia64.c (elfNN_ia64_new_elf_hash_entry): Don't clear
4829*75fd0b74Schristos	everything, just the field specific to ia64.
4830*75fd0b74Schristos	* elf64-hppa.c (elf64_hppa_new_dyn_hash_entry): Likewise.
4831*75fd0b74Schristos
4832*75fd0b74Schristos2005-02-01  Alan Modra  <amodra@bigpond.net.au>
4833*75fd0b74Schristos
4834*75fd0b74Schristos	* elf64-ppc.c (func_desc_adjust): Move code creating func desc sym to..
4835*75fd0b74Schristos	(make_fdh): ..here.  New function.  Don't set BSF_OBJECT for
4836*75fd0b74Schristos	undefined syms.
4837*75fd0b74Schristos	(struct add_symbol_adjust_data): New.
4838*75fd0b74Schristos	(add_symbol_adjust): Make an undefweak func desc for old ABI
4839*75fd0b74Schristos	objects to link with --as-needed shared libs.  Return fail status.
4840*75fd0b74Schristos	Don't adjust old ABI func entry sym to weak if func desc syms
4841*75fd0b74Schristos	isn't defined.
4842*75fd0b74Schristos	(ppc64_elf_check_directives): Adjust call to add_symbol_adjust,
4843*75fd0b74Schristos	and return status.
4844*75fd0b74Schristos
4845*75fd0b74Schristos2005-02-01  Hans-Peter Nilsson  <hp@axis.com>
4846*75fd0b74Schristos
4847*75fd0b74Schristos	* cpu-cris.c (get_compatible): Rearrange disabled code and comment
4848*75fd0b74Schristos	for clarity.
4849*75fd0b74Schristos
4850*75fd0b74Schristos2005-02-01  Alan Modra  <amodra@bigpond.net.au>
4851*75fd0b74Schristos
4852*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_check_directives): Move undefs list fixup..
4853*75fd0b74Schristos	* linker.c (bfd_link_repair_undef_list): ..to new function, but don't
4854*75fd0b74Schristos	remove anything but new and undefweak.
4855*75fd0b74Schristos	* elflink.c (_bfd_elf_link_create_dynamic_sections): Override any
4856*75fd0b74Schristos	existing _DYNAMIC.
4857*75fd0b74Schristos	(_bfd_elf_create_dynamic_sections): Formatting.
4858*75fd0b74Schristos	(bfd_elf_record_link_assignment): Call bfd_link_repair_undef_list.
4859*75fd0b74Schristos	(_bfd_elf_merge_symbol): Don't handle as-needed syms here.
4860*75fd0b74Schristos	(struct elf_smash_data): New.
4861*75fd0b74Schristos	(elf_smash_syms): New function.
4862*75fd0b74Schristos	(elf_link_add_object_symbols): Call elf_smash_syms.  Don't add
4863*75fd0b74Schristos	unneeded dynamic objects to loaded list.
4864*75fd0b74Schristos	(elf_link_output_extsym): Don't handle as-needed here.  Strip
4865*75fd0b74Schristos	bfd_link_hash_new symbols.
4866*75fd0b74Schristos	* elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
4867*75fd0b74Schristos	delref when dynindx is already -1.
4868*75fd0b74Schristos	* elf64-alpha.c (elf64_alpha_output_extsym): Strip bfd_link_hash_new
4869*75fd0b74Schristos	symbols.
4870*75fd0b74Schristos	* elfxx-mips.c (mips_elf_output_extsym): Likewise.
4871*75fd0b74Schristos
4872*75fd0b74Schristos2005-02-01  Ben Elliston  <bje@au.ibm.com>
4873*75fd0b74Schristos
4874*75fd0b74Schristos	* elfxx-target.h (bfd_elfNN_bfd_discard_group): Redefine.
4875*75fd0b74Schristos
4876*75fd0b74Schristos2005-02-01  Ben Elliston  <bje@au.ibm.com>
4877*75fd0b74Schristos
4878*75fd0b74Schristos	* aout-arm.c, aout-target.h, aoutx.h, archive.c, armnetbsd.c,
4879*75fd0b74Schristos	bfd-in.h, bfdio.c, coff-alpha.c, coff-arm.c, coff-h8300.c,
4880*75fd0b74Schristos	coff-i860.c, coff-mcore.c, coff-or32.c, coff-ppc.c, coff-sh.c,
4881*75fd0b74Schristos	coff-sparc.c, coffcode.h, coffgen.c, cofflink.c, cpu-cris.c,
4882*75fd0b74Schristos	cpu-h8500.c, cpu-ns32k.c, ecoff.c, ecofflink.c, elf.c,
4883*75fd0b74Schristos	elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-hppa.c,
4884*75fd0b74Schristos	elf32-i860.c, elf32-ip2k.c, elf32-m32r.c, elf32-sh.c,
4885*75fd0b74Schristos	elf32-v850.c, elf64-mips.c, elf64-sparc.c, elflink.c,
4886*75fd0b74Schristos	i386aout.c, i386msdos.c, i386os9k.c, ieee.c, mach-o.c,
4887*75fd0b74Schristos	nlm32-sparc.c, oasys.c, opncls.c, pdp11.c, pe-mips.c, peXXigen.c,
4888*75fd0b74Schristos	pef.c, peicode.h, reloc.c, riscix.c, section.c, simple.c, som.c,
4889*75fd0b74Schristos	sparclynx.c, targets.c, vms-misc.c, vms-tir.c, xsym.c,
4890*75fd0b74Schristos	hosts/delta68.h, hosts/vaxbsd.h: Remove #if 0'd code
4891*75fd0b74Schristos	throughout. Similarly, collapse #if 1'd code.
4892*75fd0b74Schristos
4893*75fd0b74Schristos2005-02-01  Ben Elliston  <bje@au.ibm.com>
4894*75fd0b74Schristos
4895*75fd0b74Schristos	* elf-bfd.h (bfd_elf_discard_group): Remove.
4896*75fd0b74Schristos	* elf.c (bfd_elf_discard_group): Likewise.
4897*75fd0b74Schristos	* elfxx-target.h (bfd_elfNN_bfd_discard_group): Remove macro.
4898*75fd0b74Schristos
4899*75fd0b74Schristos2005-01-31  Richard Sandiford  <rsandifo@redhat.com>
4900*75fd0b74Schristos
4901*75fd0b74Schristos	* elf-bfd.h (elf_backend_data): Add elf_backend_eh_frame_address_size.
4902*75fd0b74Schristos	(_bfd_elf_eh_frame_address_size): Declare.
4903*75fd0b74Schristos	* elfxx-target.h (elf_backend_eh_frame_address_size): Define a default.
4904*75fd0b74Schristos	(elfNN_bed): Initialize elf_backend_eh_frame_address_size.
4905*75fd0b74Schristos	* elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Declare.
4906*75fd0b74Schristos	(elf_backend_eh_frame_address_size): Define.
4907*75fd0b74Schristos	* elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): New function.
4908*75fd0b74Schristos	* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Get the address
4909*75fd0b74Schristos	size from the new backend hook.
4910*75fd0b74Schristos	(_bfd_elf_write_section_eh_frame): Likewise.
4911*75fd0b74Schristos	(_bfd_elf_eh_frame_address_size): New function.
4912*75fd0b74Schristos
4913*75fd0b74Schristos2005-01-31  Andrew Cagney  <cagney@gnu.org>
4914*75fd0b74Schristos
4915*75fd0b74Schristos	* configure: Regenerate to track ../gettext.m4.
4916*75fd0b74Schristos
4917*75fd0b74Schristos2005-01-31  Mark Mitchell  <mark@codesourcery.com>
4918*75fd0b74Schristos
4919*75fd0b74Schristos	* elf32-arm.c (elf32_arm_symbian_special_sections): Do not set
4920*75fd0b74Schristos	SHF_WRITE for .init_array, .fini_array, and .preinit_array.
4921*75fd0b74Schristos
4922*75fd0b74Schristos2005-01-31  Nick Clifton  <nickc@redhat.com>
4923*75fd0b74Schristos
4924*75fd0b74Schristos	* confg.bfd: Make targets scheduled for obsoletion (m68k-lynxos,
4925*75fd0b74Schristos	sparc-lynxos, vax-vms) be obsolete.
4926*75fd0b74Schristos
4927*75fd0b74Schristos2005-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
4928*75fd0b74Schristos
4929*75fd0b74Schristos	* elf-bfd.h (struct elf_backend_data): Add minpagesize.
4930*75fd0b74Schristos	* elf32-arm.c (ELF_MINPAGESIZE): Define.
4931*75fd0b74Schristos	* elf32-ppc.c (ELF_MINPAGESIZE): Define.
4932*75fd0b74Schristos	* elfcode.h (elf_object_p): Use minpagesize instead of
4933*75fd0b74Schristos	maxpagesize.
4934*75fd0b74Schristos	* elfxx-target.h (ELF_MINPAGESIZE): Default to ELF_MAXPAGESIZE.
4935*75fd0b74Schristos	(elfNN_bed): Include ELF_MINPAGESIZE.
4936*75fd0b74Schristos
4937*75fd0b74Schristos2005-01-28  Julian Brown  <julian@codesourcery.com>
4938*75fd0b74Schristos
4939*75fd0b74Schristos	* bin-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
4940*75fd0b74Schristos	* bin-in2.h (bfd_elf32_arm_set_target_relocs): Update prototype.
4941*75fd0b74Schristos	* elf32-arm.c (elf32_arm_link_hash_table): Add fix_v4bx flag.
4942*75fd0b74Schristos	(bfd_elf32_arm_set_target_relocs): Add formal parameter fix_v4bx for
4943*75fd0b74Schristos	passing flag value from ld. Set flag value in global hash table entry.
4944*75fd0b74Schristos	(elf32_arm_final_link_relocate): Add code to implement R_ARM_V4BX
4945*75fd0b74Schristos	relocation.
4946*75fd0b74Schristos
4947*75fd0b74Schristos2005-01-27  Andrew Cagney  <cagney@gnu.org>
4948*75fd0b74Schristos
4949*75fd0b74Schristos	* configure: Regenerate to track ../gettext.m4 change.
4950*75fd0b74Schristos
4951*75fd0b74Schristos2005-01-25  Mark Mitchell  <mark@codesourcery.com>
4952*75fd0b74Schristos
4953*75fd0b74Schristos	* elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for
4954*75fd0b74Schristos	SymbianOS.
4955*75fd0b74Schristos
4956*75fd0b74Schristos2005-01-25  Alexandre Oliva  <aoliva@redhat.com>
4957*75fd0b74Schristos
4958*75fd0b74Schristos	2004-12-10  Alexandre Oliva  <aoliva@redhat.com>
4959*75fd0b74Schristos	* elf32-frv.c (elf32_frv_relocate_section): Force local binding
4960*75fd0b74Schristos	for TLSMOFF.
4961*75fd0b74Schristos	* reloc.c: Add R_FRV_TLSMOFF.
4962*75fd0b74Schristos	* elf32-frv.c (elf32_frv_howto_table): Likewise.
4963*75fd0b74Schristos	(frv_reloc_map, frv_reloc_type_lookup): Map it.
4964*75fd0b74Schristos	(elf32_frv_relocate_section): Handle it.
4965*75fd0b74Schristos	(elf32_frv_check_relocs): Likewise.
4966*75fd0b74Schristos	* libbfd.h, bfd-in2.h: Rebuilt.
4967*75fd0b74Schristos	2004-11-26  Alexandre Oliva  <aoliva@redhat.com>
4968*75fd0b74Schristos	* elf32-frv.c (_frvfdpic_emit_got_relocs_plt_entries): Don't crash
4969*75fd0b74Schristos	when given an undefweak TLS symbol.  Fix constant TLS PLT entries
4970*75fd0b74Schristos	such that they return the constant in gr9.
4971*75fd0b74Schristos	(_frvfdpic_relax_tls_entries): Don't crash for undefweak TLS
4972*75fd0b74Schristos	symbols.
4973*75fd0b74Schristos	(_frvfdpic_size_got_plt): Set _cooked_size of dynamic sections.
4974*75fd0b74Schristos	too, such that they shrink on relaxation.
4975*75fd0b74Schristos	(elf32_frvfdpic_finish_dynamic_sections): Check __ROFIXUP_END__ as
4976*75fd0b74Schristos	marking the position right past the _GLOBAL_OFFSET_TABLE_ value.
4977*75fd0b74Schristos	(_frvfdpic_assign_plt_entries): Shrink constant TLS PLT entries
4978*75fd0b74Schristos	if we can guarantee the use of 16-bit constants.
4979*75fd0b74Schristos	2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
4980*75fd0b74Schristos	Introduce TLS support for FR-V FDPIC.
4981*75fd0b74Schristos	* reloc.c: Add TLS relocations.
4982*75fd0b74Schristos	* elf32-frv.c (elf32_frv_howto_table): Add TLS relocations.
4983*75fd0b74Schristos	(elf32_frv_rel_tlsdesc_value_howto): New.
4984*75fd0b74Schristos	(elf32_frv_rel_tlsoff_howto): New.
4985*75fd0b74Schristos	(frv_reloc_map): Add new mappings.
4986*75fd0b74Schristos	(struct frvfdpic_elf_link_hash_table): Add pointer to summary
4987*75fd0b74Schristos	reloc information.
4988*75fd0b74Schristos	(frvfdpic_dynamic_got_plt_info): New.
4989*75fd0b74Schristos	(frvfdpic_plt_tls_ret_offset): New.
4990*75fd0b74Schristos	(ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE): Move earlier.
4991*75fd0b74Schristos	(struct _frvfdpic_dynamic_got_info): Likewise.  Add TLS members.
4992*75fd0b74Schristos	(struct _frvfdpic_dynamic_got_plt_info): Likewise.
4993*75fd0b74Schristos	(FRVFDPIC_SYM_LOCAL): Regard symbols defined in the absolute
4994*75fd0b74Schristos	section as local.
4995*75fd0b74Schristos	(struct frvfdpic_relocs_info): Add TLS fields.
4996*75fd0b74Schristos	(frvfdpic_relocs_info_hash): Warning clean up.
4997*75fd0b74Schristos	(frvfdpic_relocs_info_find): Initialize tlsplt_entry.
4998*75fd0b74Schristos	(frvfdpic_pic_merge_early_relocs_info): Merge TLS fields.
4999*75fd0b74Schristos	(FRVFDPIC_TLS_BIAS): Define.
5000*75fd0b74Schristos	(tls_biased_base): New.
5001*75fd0b74Schristos	(_frvfdpic_emit_got_relocs_plt_entries): Deal with TLS
5002*75fd0b74Schristos	relocations.
5003*75fd0b74Schristos	(frv_reloc_type_lookup): Likewise.
5004*75fd0b74Schristos	(frvfdpic_info_to_howto_rel): Likewise.
5005*75fd0b74Schristos	(elf32_frv_relocate_section): Likewise.
5006*75fd0b74Schristos	(_frv_create_got_section): Create the PLT section here.
5007*75fd0b74Schristos	(elf32_frvfdpic_create_dynamic_sections): Not here.
5008*75fd0b74Schristos	(_frvfdpic_count_nontls_entries): Move out of...
5009*75fd0b74Schristos	(_frvfdpic_count_got_plt_entries): ... here.
5010*75fd0b74Schristos	(_frvfdpic_count_tls_entries): Likewise.  Add TLS support.
5011*75fd0b74Schristos	(_frvfdpic_count_relocs_fixups): Likewise.  Add relaxation
5012*75fd0b74Schristos	support.
5013*75fd0b74Schristos	(_frvfdpic_relax_tls_entries): New.
5014*75fd0b74Schristos	(_frvfdpic_compute_got_alloc_data): Add TLS support.
5015*75fd0b74Schristos	(_frvfdpic_get_tlsdesc_entry): New.
5016*75fd0b74Schristos	(_frvfdpic_assign_got_entries): Add TLS support.
5017*75fd0b74Schristos	(_frvfdpic_assign_plt_entries): Likewise.
5018*75fd0b74Schristos	(_frvfdpic_reset_got_plt_entries): New.
5019*75fd0b74Schristos	(_frvfdpic_size_got_plt): Move out of...
5020*75fd0b74Schristos	(elf32_frvfdpic_size_dynamic_sections): ... here.
5021*75fd0b74Schristos	(_frvfdpic_relax_got_plt_entries): New.
5022*75fd0b74Schristos	(elf32_frvfdpic_relax_section): New.
5023*75fd0b74Schristos	(elf32_frvfdpic_finish_dynamic_sections): Add TLS sanity check.
5024*75fd0b74Schristos	(elf32_frv_check_relocs): Add TLS support.
5025*75fd0b74Schristos	(bfd_elf32_bfd_relax_section): Define for FDPIC.
5026*75fd0b74Schristos	* libbfd.h, bfd-in2.h: Rebuilt.
5027*75fd0b74Schristos
5028*75fd0b74Schristos2005-01-25  Alan Modra  <amodra@bigpond.net.au>
5029*75fd0b74Schristos
5030*75fd0b74Schristos	* elf.c (_bfd_elf_get_dynamic_reloc_upper_bound): Only include
5031*75fd0b74Schristos	loadable reloc sections.
5032*75fd0b74Schristos	(_bfd_elf_canonicalize_dynamic_reloc): Likewise.
5033*75fd0b74Schristos	(_bfd_elf_get_synthetic_symtab): Return 0 if no dynamic syms.
5034*75fd0b74Schristos
5035*75fd0b74Schristos2005-01-25  Alan Modra  <amodra@bigpond.net.au>
5036*75fd0b74Schristos
5037*75fd0b74Schristos	* elflink.c (elf_link_add_object_symbols): Don't create link dynamic
5038*75fd0b74Schristos	sections immediately when linking shared libs.  Instead, wait until
5039*75fd0b74Schristos	we know a lib is needed.
5040*75fd0b74Schristos	(_bfd_elf_link_create_dynstrtab): Extract from..
5041*75fd0b74Schristos	(_bfd_elf_link_create_dynamic_sections_): ..here.
5042*75fd0b74Schristos	(elf_add_dt_needed_tag): Call _bfd_elf_link_create_dynstrtab and
5043*75fd0b74Schristos	_bfd_elf_link_create_dynamic_sections.  Add abfd param.  Allow
5044*75fd0b74Schristos	for non-existent .dynamic.
5045*75fd0b74Schristos	(elf_link_output_extsym): Don't complain about undefined symbols
5046*75fd0b74Schristos	in as-needed dynamic libs that aren't actually linked.
5047*75fd0b74Schristos
5048*75fd0b74Schristos2005-01-24  Andrew Cagney  <cagney@gnu.org>
5049*75fd0b74Schristos
5050*75fd0b74Schristos	* configure: Regenerate, ../gettext.m4 was updated.
5051*75fd0b74Schristos
5052*75fd0b74Schristos2005-01-21  Ben Elliston  <bje@au.ibm.com>
5053*75fd0b74Schristos
5054*75fd0b74Schristos	* aout-encap.c: Remove unused file.
5055*75fd0b74Schristos
5056*75fd0b74Schristos2005-01-19  H.J. Lu  <hongjiu.lu@intel.com>
5057*75fd0b74Schristos
5058*75fd0b74Schristos	PR 679
5059*75fd0b74Schristos	* elflink.c (_bfd_elf_dynamic_symbol_p): Only protected
5060*75fd0b74Schristos	non-function symbols are local.
5061*75fd0b74Schristos	(_bfd_elf_symbol_refs_local_p): Likewise.
5062*75fd0b74Schristos
5063*75fd0b74Schristos2005-01-18  Alan Modra  <amodra@bigpond.net.au>
5064*75fd0b74Schristos
5065*75fd0b74Schristos	* bfd.c (bfd_link_just_syms): Add abfd param.
5066*75fd0b74Schristos	* bfd-in2.h: Regenerate.
5067*75fd0b74Schristos
5068*75fd0b74Schristos2005-01-17  Richard Sandiford  <rsandifo@redhat.com>
5069*75fd0b74Schristos
5070*75fd0b74Schristos	* elf-eh-frame.c (skip_cfa_op, skip_non_nops): New functions.
5071*75fd0b74Schristos	(_bfd_elf_discard_section_eh_frame): Use them to interpret the CFA
5072*75fd0b74Schristos	instructions.  If the amount of padding is known, reduce the size
5073*75fd0b74Schristos	of the CIE or FDE by that amount.
5074*75fd0b74Schristos
5075*75fd0b74Schristos2005-01-17  Richard Sandiford  <rsandifo@redhat.com>
5076*75fd0b74Schristos
5077*75fd0b74Schristos	* elf-bfd.h (struct cie): Use bfd_vmas for code_align, ra_column and
5078*75fd0b74Schristos	augmentation_size.  Use bfd_signed_vmas for data_align.
5079*75fd0b74Schristos	* elf-eh-frame.c (read_uleb128, read_sleb128): Delete in favor of...
5080*75fd0b74Schristos	(read_byte, skip_leb128, read_uleb128, read_sleb128): ...these new
5081*75fd0b74Schristos	functions.  Don't read past the end of the enclosing CIE or FDE.
5082*75fd0b74Schristos	(skip_bytes): New utility function.
5083*75fd0b74Schristos	(_bfd_elf_discard_section_eh_frame): Use new functions, adding more
5084*75fd0b74Schristos	sanity checking.
5085*75fd0b74Schristos	(_bfd_elf_write_section_eh_frame): Use new functions.
5086*75fd0b74Schristos
5087*75fd0b74Schristos2005-01-17  Richard Sandiford  <rsandifo@redhat.com>
5088*75fd0b74Schristos
5089*75fd0b74Schristos	* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use an
5090*75fd0b74Schristos	assert-style REQUIRE() macro to handle sanity checks.
5091*75fd0b74Schristos
5092*75fd0b74Schristos2005-01-17  H.J. Lu  <hongjiu.lu@intel.com>
5093*75fd0b74Schristos
5094*75fd0b74Schristos	* dwarf2.c (dwarf2_debug): Move info_ptr_unit to ...
5095*75fd0b74Schristos	(comp_unit): Here.
5096*75fd0b74Schristos	(read_unsigned_leb128): Removed.
5097*75fd0b74Schristos	(read_signed_leb128): Removed.
5098*75fd0b74Schristos	(find_abstract_instance_name): Updated.
5099*75fd0b74Schristos	(parse_comp_unit): Accept info_ptr_unit.
5100*75fd0b74Schristos	(_bfd_dwarf2_find_nearest_line): Set info_ptr_unit for each
5101*75fd0b74Schristos	comp unit and pass it to parse_comp_unit.
5102*75fd0b74Schristos
5103*75fd0b74Schristos	* elf-eh-frame.c (read_unsigned_leb128): Moved to ...
5104*75fd0b74Schristos	(read_signed_leb128): Moved to ...
5105*75fd0b74Schristos	* libbfd.c: Here.
5106*75fd0b74Schristos
5107*75fd0b74Schristos	* libbfd-in.h (read_unsigned_leb128): New prototype.
5108*75fd0b74Schristos	(read_signed_leb128): Likewise.
5109*75fd0b74Schristos	* libbfd.h: Regenerated.
5110*75fd0b74Schristos
5111*75fd0b74Schristos2005-01-17  Andrew Stubbs  <andrew.stubbs@st.com>
5112*75fd0b74Schristos	    Nick Clifton   <nickc@redhat.com>
5113*75fd0b74Schristos
5114*75fd0b74Schristos	* cpu-sh.c (bfd_to_arch_table): Change arch_sh1_up to arch_sh_up,
5115*75fd0b74Schristos	arch__sh4_nofp_up to arch_sh4_nofpu_up and arch_sh4a_nofp_up to
5116*75fd0b74Schristos	arch_sh4a_nofpu_up in order to match the external names and make the
5117*75fd0b74Schristos	testsuite's job easier.
5118*75fd0b74Schristos	* archuires.c: Rename bfd_mach_sh2a_fake? to more meaningful
5119*75fd0b74Schristos	names.
5120*75fd0b74Schristos	* bfd-in2.h: Regenerate.
5121*75fd0b74Schristos
5122*75fd0b74Schristos2005-01-15  Andrew Cagney  <cagney@gnu.org>
5123*75fd0b74Schristos
5124*75fd0b74Schristos	* bfd.m4: New file.
5125*75fd0b74Schristos	* acinclude.m4: Move BFD_NEED_DECLARATION,
5126*75fd0b74Schristos	BFD_HAVE_SYS_PROCFS_TYPE and BFD_HAVE_SYS_PROCFS_TYPE_MEMBER to
5127*75fd0b74Schristos	the new file bfd.m4.  Include ../bfd/bfd.m4.
5128*75fd0b74Schristos	* configure: Re-generate.
5129*75fd0b74Schristos
5130*75fd0b74Schristos2005-01-12  Alan Modra  <amodra@bigpond.net.au>
5131*75fd0b74Schristos
5132*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_howto_raw): Delete RELAX32* entries.
5133*75fd0b74Schristos	(ppc_elf_relax_section): Use PLT variants of RELAX32 relocs for
5134*75fd0b74Schristos	reaching PLT.
5135*75fd0b74Schristos	(ppc_elf_relocate_section): Handle R_PPC_RELAX32_PLT and
5136*75fd0b74Schristos	R_PPC_RELAX32PC_PLT.
5137*75fd0b74Schristos
5138*75fd0b74Schristos2005-01-11  Alan Modra  <amodra@bigpond.net.au>
5139*75fd0b74Schristos
5140*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_gc_sweep_hook): Follow indirect and warning
5141*75fd0b74Schristos	symbols.
5142*75fd0b74Schristos	* elf32-arm.c (elf32_arm_gc_sweep_hook): Likewise.
5143*75fd0b74Schristos	* elf32-cris.c (cris_elf_gc_sweep_hook): Likewise.
5144*75fd0b74Schristos	* elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise.
5145*75fd0b74Schristos	* elf32-i386.c (elf_i386_gc_sweep_hook): Likewise.
5146*75fd0b74Schristos	* elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise.
5147*75fd0b74Schristos	* elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise.
5148*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise.
5149*75fd0b74Schristos	* elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
5150*75fd0b74Schristos	* elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
5151*75fd0b74Schristos	* elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise.
5152*75fd0b74Schristos	* elf32-vax.c (elf_vax_gc_sweep_hook): Likewise.
5153*75fd0b74Schristos	* elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise.
5154*75fd0b74Schristos	* elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
5155*75fd0b74Schristos	* elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
5156*75fd0b74Schristos
5157*75fd0b74Schristos2005-01-11  Alan Modra  <amodra@bigpond.net.au>
5158*75fd0b74Schristos
5159*75fd0b74Schristos	* elf32-ppc.c (ppc_elf_create_dynamic_sections): Correct
5160*75fd0b74Schristos	.dynsbss flags.
5161*75fd0b74Schristos
5162*75fd0b74Schristos2005-01-10  Inderpreet Singh <inderpreetb@noida.hcltech.com>
5163*75fd0b74Schristos
5164*75fd0b74Schristos	* archures.c: Define bfd_mach_maxq10 and bfd_mach_maxq20.
5165*75fd0b74Schristos	* bfd-in2.h:  Regenerate.
5166*75fd0b74Schristos	* coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Add code
5167*75fd0b74Schristos	to support these new machine values.
5168*75fd0b74Schristos	* cpu-maxq.c (bfd_maxq10_arch): New architecture definition for
5169*75fd0b74Schristos	the maxq10.
5170*75fd0b74Schristos	(bfd_maxq_arch): Update values for the maxq20.
5171*75fd0b74Schristos
5172*75fd0b74Schristos2005-01-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
5173*75fd0b74Schristos
5174*75fd0b74Schristos	* elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): When linking a
5175*75fd0b74Schristos	non-shared object, do not reserve space in .plt and .rela.plt for
5176*75fd0b74Schristos	regular symbols neither defined nor referenced in shared objects.
5177*75fd0b74Schristos
5178*75fd0b74Schristos2005-01-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
5179*75fd0b74Schristos
5180*75fd0b74Schristos	* elf32-sparc.c (elf32_sparc_link_hash_table_create): Use bfd_zmalloc
5181*75fd0b74Schristos	to zero the structure.
5182*75fd0b74Schristos	(create_got_section): Use BFD_ASSERT instead of abort.
5183*75fd0b74Schristos	* elf64-sparc.c (struct sparc64_elf_link_hash_table): New 'sgot' and
5184*75fd0b74Schristos	'srelgot' fields.
5185*75fd0b74Schristos	(create_got_section): New function.
5186*75fd0b74Schristos	(sparc64_elf_create_dynamic_sections): Likewise.
5187*75fd0b74Schristos	(sparc64_elf_check_relocs): Invoke create_got_section instead of
5188*75fd0b74Schristos	_bfd_elf_create_got_section.  Use the sgot and srelgot shortcuts.
5189*75fd0b74Schristos	(sparc64_elf_size_dynamic_sections): Use the srelgot shortcut.
5190*75fd0b74Schristos	(sparc64_elf_relocate_section): Use the sgot and srelgot shortcuts.
5191*75fd0b74Schristos	(sparc64_elf_finish_dynamic_symbol): Likewise.
5192*75fd0b74Schristos	(sparc64_elf_finish_dynamic_sections): Use the sgot shortcut.
5193*75fd0b74Schristos	(elf_backend_create_dynamic_sections): Define to
5194*75fd0b74Schristos	sparc64_elf_create_dynamic_sections.
5195*75fd0b74Schristos
5196*75fd0b74Schristos2005-01-09  Eric Botcazou  <ebotcazou@libertysurf.fr>
5197*75fd0b74Schristos
5198*75fd0b74Schristos	* elf32-sparc.c (elf32_sparc_omit_section_dynsym): New function.
5199*75fd0b74Schristos	(elf_backend_omit_section_dynsym): Define to it.
5200*75fd0b74Schristos	* elf64-sparc.c (sparc64_elf_omit_section_dynsym): New function.
5201*75fd0b74Schristos	(elf_backend_omit_section_dynsym): Define to it.
5202*75fd0b74Schristos
5203*75fd0b74Schristos2005-01-07  Jakub Jelinek  <jakub@redhat.com>
5204*75fd0b74Schristos
5205*75fd0b74Schristos	* elf.c (INCLUDE_SECTION_IN_SEGMENT): Don't put empty sections into
5206*75fd0b74Schristos	PT_DYNAMIC segment, unless .dynamic.
5207*75fd0b74Schristos
5208*75fd0b74Schristos2005-01-06  Paul Brook  <paul@codesourcery.com>
5209*75fd0b74Schristos
5210*75fd0b74Schristos	* config.bfd: Add entry for arm-*-vxworks and arm-*-windiss.
5211*75fd0b74Schristos	* configure.in: Add bfd_elf32_{big,little}arm_vxworks_vec.
5212*75fd0b74Schristos	* configure: Regenerate.
5213*75fd0b74Schristos	* elf32-arm.c: Add VxWorks target bfd.
5214*75fd0b74Schristos	(USE_REL): Remove.
5215*75fd0b74Schristos	(elf32_arm_link_hash_table): Add use_rel.
5216*75fd0b74Schristos	(elf32_arm_link_hash_table_create, elf32_arm_final_link_relocate,
5217*75fd0b74Schristos	elf32_arm_relocate_section): Replace USE_REL with runtime check.
5218*75fd0b74Schristos	Correct offset calculation for RELA case.
5219*75fd0b74Schristos	(elf_backend_may_use_rel_p, elf_backend_may_use_rela_p,
5220*75fd0b74Schristos	elf_backend_default_use_rela_p, elf_backend_rela_normal): Define.
5221*75fd0b74Schristos	(elf32_arm_vxworks_link_hash_table_create): New function.
5222*75fd0b74Schristos	* targets.c (bfd_elf32_bigarm_vxworks_vec): Add declaration.
5223*75fd0b74Schristos	(bfd_elf32_littlearm_vxworks_vec): Ditto.
5224*75fd0b74Schristos	(_bfd_target_vector): Add bfd_elf32_{big,little}arm_vxworks_vec.
5225*75fd0b74Schristos
5226*75fd0b74Schristos2005-01-06  Alan Modra  <amodra@bigpond.net.au>
5227*75fd0b74Schristos
5228*75fd0b74Schristos	* elf64-ppc.c (struct ppc_link_hash_table): Add no_multi_toc and
5229*75fd0b74Schristos	multi_toc_needed.
5230*75fd0b74Schristos	(has_toc_reloc, makes_toc_func_call, call_check_in_progress): Define.
5231*75fd0b74Schristos	(ppc64_elf_check_relocs): Update references to has_gp_reloc.
5232*75fd0b74Schristos	(ppc64_elf_setup_section_lists): Add no_multi_toc parm, set htab bit.
5233*75fd0b74Schristos	(ppc64_elf_next_toc_section): Heed no_multi_toc.
5234*75fd0b74Schristos	(ppc64_elf_reinit_toc): Set multi_toc_needed.
5235*75fd0b74Schristos	(toc_adjusting_stub_needed): Rewrite.
5236*75fd0b74Schristos	(ppc64_elf_next_input_section): Use multi_toc_needed to shortcut
5237*75fd0b74Schristos	toc tests.  Adjust for toc_adjusting_stub_needed changes.
5238*75fd0b74Schristos	(ppc64_elf_size_stubs): Update references to has_gp_reloc.
5239*75fd0b74Schristos	* elf64-ppc.h (ppc64_elf_setup_section_lists): Update prototype.
5240*75fd0b74Schristos	* section.c: Expand comment on backend bits.
5241*75fd0b74Schristos	* bfd-in2.h: Regenerate.
5242*75fd0b74Schristos	* libbfd.h: Regenerate.
5243*75fd0b74Schristos
5244*75fd0b74Schristos2005-01-06  Alan Modra  <amodra@bigpond.net.au>
5245*75fd0b74Schristos
5246*75fd0b74Schristos	* elf64-ppc.c (ppc64_elf_size_stubs): When determining need for
5247*75fd0b74Schristos	toc adjusting stub, do not test source section flags.
5248*75fd0b74Schristos
5249*75fd0b74Schristos2005-01-05  Eric Botcazou  <ebotcazou@libertysurf.fr>
5250*75fd0b74Schristos
5251*75fd0b74Schristos	* elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows
5252*75fd0b74Schristos	from STABS debugging sections again.
5253*75fd0b74Schristos
5254*75fd0b74Schristos2005-01-05  Fred Fish  <fnf@specifixinc.com>
5255*75fd0b74Schristos
5256*75fd0b74Schristos	* dwarf2.c (struct dwarf2_debug): Add info_ptr_unit member.
5257*75fd0b74Schristos	(find_abstract_instance_name): New function.
5258*75fd0b74Schristos	(scan_unit_for_functions): Handle DW_TAG_inlined_subroutine.
5259*75fd0b74Schristos	(scan_unit_for_functions): Handle DW_AT_abstract_origin.
5260*75fd0b74Schristos	(_bfd_dwarf2_find_nearest_line): Initialize info_ptr_unit.
5261*75fd0b74Schristos
5262*75fd0b74SchristosFor older changes see ChangeLog-2004
5263*75fd0b74Schristos
5264*75fd0b74SchristosCopyright (C) 2005 Free Software Foundation, Inc.
5265*75fd0b74Schristos
5266*75fd0b74SchristosCopying and distribution of this file, with or without modification,
5267*75fd0b74Schristosare permitted in any medium without royalty provided the copyright
5268*75fd0b74Schristosnotice and this notice are preserved.
5269*75fd0b74Schristos
5270*75fd0b74SchristosLocal Variables:
5271*75fd0b74Schristosmode: change-log
5272*75fd0b74Schristosleft-margin: 8
5273*75fd0b74Schristosfill-column: 74
5274*75fd0b74Schristosversion-control: never
5275*75fd0b74SchristosEnd:
5276