]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
* config/obj-elf.c (obj_elf_change_section): Make non-static.
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
4972a8e9
SC
12002-08-16 Stephen Clarke <stephen.clarke@superh.com>
2
3 * bfd/elf32-sh.c (sh_elf_gc_mark_hook): For sh64, skip indirect
4 symbols when looking for section referred to by a relocation.
5 * bfd/elf64-sh.c (sh_elf64_gc_mark_hook): Likewise.
6
c5cd6d62
AM
72002-08-15 Alan Modra <amodra@bigpond.net.au>
8
9 * elf32-i370.c: Move reloc enum to include/elf/i370.h.
10
0741c7be
HPN
112002-08-15 Hans-Peter Nilsson <hp@axis.com>
12
13 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add
14 missing check for whether the symbol is referenced by DSO before
15 unexporting it as an unneeded dynamic symbol.
16
e8d5d179
L
172002-08-14 H.J. Lu <hjl@gnu.org>
18
19 * libbfd.h: Regenerate.
20
e9229007
L
212002-08-14 H.J. Lu <hjl@gnu.org>
22
23 * config.bfd: Always add 64bit vectors to 32bit Linux/mips.
24
1fd03b5a
SC
252002-08-14 Stephane Carrez <stcarrez@nerim.fr>
26
27 * elf32-m68hc11.c (m68hc11_relax_group): New to relax group of
28 instructions.
29 (m68hc11_direct_relax): New to define table of relaxable instructions.
30 (find_relaxable_insn): New, find a relaxable insn.
31 (compare_reloc): New to compare two relocs.
32 (m68hc11_elf_relax_section): New, relax text sections.
33 (m68hc11_elf_relax_delete_bytes): New, delete bytes and adjust branchs.
34 (elf32_m68hc11_check_relocs): New function for GC support.
35 (elf32_m68hc11_relocate_section): New function for GC support.
36 (bfd_elf32_bfd_relax_section): Define to support linker relaxation.
37 (elf_backend_check_relocs): Likewise.
38 (elf_backend_relocate_section): Likewise.
39
c828c771
L
402002-08-13 H.J. Lu <hjl@gnu.org>
41
42 * elflink.h (NAME(bfd_elf,size_dynamic_sections): Don't count
43 definitions in shared objects when checking symbol with
44 undefined version.
45
9b701e44
SC
462002-08-13 Stephane Carrez <stcarrez@nerim.fr>
47
48 * elf32-m68hc11.c (elf32_m68hc11_gc_mark_hook): New for section GC.
49 (elf32_m68hc11_gc_sweep_hook): Likewise.
50 (elf_backend_gc_mark_hook): Define for GC section support.
51 (elf_backend_gc_sweep_hook): Likewise.
52 (elf_backend_can_gc_sections): Likewise.
53
54 * elf32-m68hc12.c: Likewise.
55
96405e3c
SC
562002-08-13 Stephane Carrez <stcarrez@nerim.fr>
57
58 * elf32-m68hc11.c (_bfd_m68hc11_elf_print_private_bfd_data): New.
59 (_bfd_m68hc11_elf_merge_private_bfd_data): New function.
60 (_bfd_m68hc11_elf_set_private_flags): New function.
61 Use them to set/check/print ELF flags specific to 68HC11.
62
63 * elf32-m68hc12.c (_bfd_m68hc12_elf_print_private_bfd_data): New.
64 (_bfd_m68hc12_elf_merge_private_bfd_data): New function.
65 (_bfd_m68hc12_elf_set_private_flags): New function.
66 Use them to set/check/print ELF flags specific to 68HC12.
67
dae78fb0
SC
682002-08-13 Stephane Carrez <stcarrez@nerim.fr>
69
70 * elf32-m68hc11.c (elf_m68hc11_howto_table): Add the new relocs;
71 fix masks for PC-rel relocs.
72 (m68hc11_elf_ignore_reloc): New function.
73
74 * elf32-m68hc12.c (m68hc12_elf_special_reloc): New to handle specific
75 68HC12 banked addressing relocs.
76 (m68hc12_phys_addr): New to compute physical address of banked memory.
77 (m68hc12_phys_page): Likewise for page.
78 (m68hc12_addr_is_banked): New to see if address is in banked area.
79 (elf_m68hc12_howto_table): Add new relocs and rename to xx12.
80
3dbfec86
SC
812002-08-13 Stephane Carrez <stcarrez@nerim.fr>
82
83 * reloc.c (BFD_RELOC_M68HC11_RL_JUMP, BFD_RELOC_M68HC11_RL_GROUP,
84 BFD_RELOC_M68HC11_LO16, BFD_RELOC_M68HC11_PAGE,
85 BFD_RELOC_M68HC11_24): New relocs for 68HC11/68HC12.
86 * bfd-in2.h: Regenerate.
87
871da94f
L
882002-08-12 H.J. Lu <hjl@gnu.org>
89
90 * elflink.h (elf_add_default_symbol): Preserve section across
91 elf_merge_symbol.
92
59bc061d
NC
932002-08-09 Graeme Peterson <gp@qnx.com>
94
95 * Makefile.am: Add entries for elf32-ppcqnx.c, and add
96 elf32-qnx.h dependency to elfarmqnx-nabi.c and elf32-i386qnx.c.
97 * Makefile.in: Regenerate.
98 * config.bfd: Add support for powerpc{le}-*-nto targets.
99 * configure.in: Add support for bfd_elf32_powerpc{le}qnx_vec.
100 * configure: Regenerate.
101 * elf32-i386qnx.c: Moved backend functions into a QNX specific
102 common file "elf32-qnx.h", and now include that file.
103 * elf32-qnx.h: New file: QNX specific common elf backend.
104 * elf32-ppc.c: Do not include elf32-target.h if
105 ELF32_PPC_C_INCLUDED is defined.
106 * elf32-ppcqnx.c: New file: Support for QNX.
107 * elfarmqnx-nabi.c: Include elf32-qnx.h for qnx elf backend.
108 * targets.c: Add bfd_elf32_powerpc{le}qnx_vec.
109
2b692c59
NC
1102002-08-09 Nick Clifton <nickc@redhat.com>
111
112 * po/sv.po: Updated Swedish translation.
113
d0c7ff07
TS
1142002-08-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
115
116 * elfxx-mips.c (mips_elf_global_got_index): Avoid segfault if
117 g->global_gotsym is NULL.
118
d8bbe778
L
1192002-08-08 H.J. Lu <hjl@gnu.org>
120
c5cd6d62 121 * elflink.h (elf_add_default_symbol): Don't warn if a definition
d8bbe778
L
122 overrides an indirect versioned symbol.
123
c366c25e
JJ
1242002-08-08 Jakub Jelinek <jakub@redhat.com>
125
126 * elf32-i386.c (elf_i386_relocate_section): Fill in proper addend
127 for R_386_TLS_TPOFF32 relocs against symndx 0.
128
31941635
L
1292002-08-07 H.J. Lu <hjl@gnu.org>
130
131 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Check symbol
132 with undefined version if needed.
133 (elf_link_assign_sym_version): Match a default symbol with a
134 version without definition. No need to hide the default
135 definition separately.
136
0f3bd64f
AM
1372002-08-08 Alan Modra <amodra@bigpond.net.au>
138
7330fb86
AM
139 * elflink.h (elf_link_output_extsym): Don't output symbols from
140 SEC_EXCLUDE sections.
141
0f3bd64f
AM
142 * aoutx.h (aout_link_write_symbols): Correct handling of warning syms.
143
a4aa0fb7
AM
1442002-08-07 Alan Modra <amodra@bigpond.net.au>
145
146 * elf64-ppc.c (edit_opd): Arrange to drop symbols for discarded .opd
147 entries.
148
34ea4a36
TS
1492002-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
150
151 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Cast signedness
152 mismatch.
153
141ff970
TS
1542002-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
155
156 * elfxx-mips.c (ABI_64_P): Remove superfluous check.
157
28458e7e
TS
1582002-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
159
160 * elf32-mips.c (mips_reloc_map): Fix typo.
161
0121a3da
AM
1622002-08-06 Alan Modra <amodra@bigpond.net.au>
163
164 * xcofflink.c (xcoff_write_global_symbol): Set n_scnum for abs_section.
165
d006db6c
AM
1662002-08-06 Alan Modra <amodra@bigpond.net.au>
167
168 * elf64-ppc.c (ppc64_elf_howto_raw): Zero all src_mask entries.
169
8ea80f08
AM
1702002-08-06 Alan Modra <amodra@bigpond.net.au>
171
2a52da53
AM
172 * libxcoff.h: Use PARAMS on function declarations.
173 * coff-rs6000.c (xcoff_generate_rtinit): Simplify size calc.
174 * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
175
8ea80f08
AM
176 * coff-rs6000.c: (xcoff_rtype2howto): Don't place reloc address in
177 addend.
178 * coff64-rs6000.c: (xcoff64_rtype2howto): Likewise.
179
cf9ab45b
AM
1802002-08-06 Alan Modra <amodra@bigpond.net.au>
181
182 * coff-rs6000.c: Formatting fixes.
183 (xcoff_calculate_relocation): Use PARAMS in declaration.
184 (xcoff_complain_overflow): Likewise.
185 (xcoff_ppc_relocate_section): Use old-style function pointer call.
186 (bfd_xcoff_backend_data): Remove useless comments.
187 (rs6000coff_vec): Likewise.
188 (bfd_pmac_xcoff_backend_data): Likewise.
189 (pmac_xcoff_vec): Likewise.
8ea80f08 190
cf9ab45b
AM
191 * coff64-rs6000.c: Formatting fixes.
192 (xcoff64_calculate_relocation): Use PARAMS in declaration.
193 (xcoff64_ppc_relocate_section): Use old-style function pointer call.
194 (bfd_xcoff_backend_data): Remove useless comments.
195 (rs6000coff64_vec): Likewise.
196 (bfd_xcoff_aix5_backend_data): Likewise.
197 (aix5coff64_vec): Likewise.
198
48bfecdd
AM
1992002-08-06 Alan Modra <amodra@bigpond.net.au>
200
a78eab4e
AM
201 * coff-rs6000.c (xcoff_howto_table): Revert some of last change to
202 mask entries. Use complain_overflow_dont for R_REF.
203 (xcoff_reloc_type_ba): Revert last change.
204 (xcoff_reloc_type_br): Likewise.
205 (xcoff_reloc_type_crel): Likewise.
206 (xcoff_ppc_relocate_section): Likewise.
207 * coff64-rs6000.c (xcoff64_reloc_type_br): Likewise.
208 (xcoff64_ppc_relocate_section): Likewise.
209 (xcoff64_howto_table): Revert some of last change to mask entries.
210 Use complain_overflow_dont for R_REF.
211
48bfecdd
AM
212 * coff-rs6000.c (xcoff_howto_table): Fix src_mask entries. Make all
213 relocs with bitsize == 16 have size = 1.
214 (xcoff_reloc_type_ba): Correct src_mask and dst_mask adjustment.
215 (xcoff_reloc_type_br): Likewise.
216 (xcoff_reloc_type_crel): Likewise.
217 (xcoff_ppc_relocate_section): Set up src_mask and dst_mask correctly.
218 * coff64-rs6000.c (xcoff64_reloc_type_br): Correct src_mask and
219 dst_mask adjustment.
220 (xcoff64_ppc_relocate_section): Set up src_mask and dst_mask correctly.
221 (xcoff64_howto_table): Fix src_mask entries. Make all relocs with
222 bitsize == 16 have size = 1.
223
fd13ed0c
DC
2242002-08-01 Denis Chertykov <denisc@overta.ru>
225
226 * elf32-ip2k.c: Processor manufacturer changed to Ubicom.
227 (struct misc): New field isymbuf. All free_* fields removed.
228 (symbol_value): Pass in internal syms. No need to swap syms in.
229 (ip2k_elf_relax_section): Use bfd_elf_get_elf_syms. Properly free
230 possibly cached info.
231 (tidyup_after_error): Removed.
232 (ip2k_elf_relax_section_pass1): Don't use removed fields of struct
233 misc. Use new field.
234 (adjust_all_relocations): Use internal syms. No need to swap syms
235 in and out.
236 (add_page_insn): Don't use removed fields of struct misc.
237
24a1ba0f
NC
2382002-08-01 Nick Clifton <nickc@redhat.com>
239
240 * elf32-arm.h: Revert previous delta.
241
a6903459
NC
2422002-08-01 Nick Clifton <nickc@redhat.com>
243
244 * configure.in (AM_INIT_AUTOMAKE): Bump version number.
245 * configure: Regenerate.
246
39a2a3eb
L
2472002-07-31 H.J. Lu <hjl@gnu.org>
248
249 * config.bfd: Add x86-64 vector to Linux/i386 if 64bit BFD is
250 selected.
251
a0dfa6a8
L
2522002-07-31 H.J. Lu <hjl@gnu.org>
253
254 * config.bfd: Add n32 vectors to 32bit Linux/mips if 64bit BFD
255 is selected.
256
cd67d266
JJ
2572002-07-31 Jakub Jelinek <jakub@redhat.com>
258
259 * elf32-i386.c (elf_i386_copy_indirect_symbol): Swap tls_type
260 if _bfd_elf_link_hash_copy_indirect will swap got.refcount.
261
4eb6b71c
NC
2622002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au>
263
264 * cpu-ns32k.c (_bfd_ns32k_put_immdeiate, _bfd_ns32k_get_immediate):
265 There is no 8 byte relocation type for this architecture.
266 (do_ns32k_reloc): Use bfd_vma instead of native types.
267 (bfd_ns32k_put_immediate, _bfd_ns32k_relocate_contents) put_data
268 returns void.
269 (_bfd_ns32k_put_displacement): Don't check for overflow. We can
270 rely on generic code to do that.
271 * aout-ns32k.c (howto_table): Add appropriate overflow detection
272 to all table entries.
273 (_bfd_ns32k_relocate_contents): put_data returns void.
274 * ns32k.h: (_bfd_ns32k_put_displacement, _bfd_ns32k_put_immediate)
275 (_bfd_do_ns32k_reloc_contents): Fix prototypes. put data functions
276 return void.
277
f7c33884
NC
2782002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au>
279
280 * aoutx.h (aout_link_check_ar_symbols): Whether to include an
281 archive object is target dependant.
282
8f64befb
NC
2832002-07-31 Adam Nemet <anemet@lnxw.com>
284
285 * elf32-arm.h (ARM_PLT_ENTRY_SIZE): Rename PLT_ENTRY_SIZE.
286 (THUMB_PLT_ENTRY_SIZE): New macro.
287 (PLT_ENTRY_SIZE): Return the appropriate *_PLT_ENTRY_SIZE.
288 (elf32_arm_plt0_entry): Rename PLT_ENTRY_SIZE to
289 ARM_PLT_ENTRY_SIZE.
290 (elf32_arm_plt_entry): Likewise.
291 (elf_backend_plt_header_size): Likewise.
292 (elf32_thumb_plt0_entry): New global.
293 (elf32_arm_finish_dynamic_sections): Use it. Put Thumb entries
294 into .plt.thumb.
295 (elf32_thumb_plt_entry): New global.
296 (elf32_arm_finish_dynamic_symbol): Use it. Use .thumb.plt for
297 Thumb entries. Set the bottom bit of the corresponding GOT entry
298 for a Thumb PLT entry.
299 (struct elf32_arm_plt_entry_info): New structure.
300 (struct elf32_arm_link_hash_entry, plt_info): New member of this
301 type.
302 (elf32_arm_link_hash_newfunc): Initialize new member.
303 (elf32_arm_final_link_relocate, R_ARM_THM_PC22 case): Handle
304 relocations against the PLT.
305 (elf32_arm_check_relocs, case R_ARM_PLT32 case): Set
306 first_rel_type if this is the first time we encounter the symbol.
307 (elf32_arm_check_relocs, case R_ARM_THM_PC22 case): New case.
308 Determine if relocation needs a PLT entry. Set first_rel_type if
309 this is the first time we encounter the symbol
310 (elf32_arm_adjust_dynamic_symbol): Create PLT entries for Thumb
311 functions as well.
312 (elf32_arm_size_dynamic_sections): Handle .plt.thumb like .plt.
313 (elf32_arm_create_dynamic_sections): New function. Create the
314 .plt.thumb section.
315 (elf_backend_create_dynamic_sections): Call it.
316
47badb7b
NC
3172002-07-31 Nick Clifton <nickc@redhat.com>
318
319 * bfd.c (bfd_alt_mach_code): Rename parameter 'index' to
320 'alternative' in order to avoid shadowing global symbol of the
321 same name.
322 * bfd-in2.h: Regenerate.
323 * libbfd.h: Regenerate.
324 * libcoff.h: Regenerate.
325
8a397dad
TS
3262002-07-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
327
328 * Makefile.am: Add n32 ABI support.
329 * Makefile.in: Regenerate.
330 * config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64
331 bit vectors for mips*-*-linux targets as optional.
332 * configure.in: Add n32 ABI vectors.
333 * configure: Regenerate.
334 * elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files.
335 * elfn32-mips.c: New file, n32 ABI support.
336 * targets.c: Add n32 ABI vectors.
337
7e392df6 3382002-07-30 Graeme Peterson <gp@qnx.com>
83e1617e 339
7e392df6
NC
340 * elfarmqnx-nabi.c: New file: Support for QNX.
341 * config.bfd: Add support for arm-*-nto target.
342 * configure.in: Add support for bfd_elf32_{big|little}armqnx_vec.
343 * configure: Regenerate.
344 * Makefile.am: Add entries for elfarmqnx-nabi.c.
345 * Makefile.in: Regenerate.
346 * elf32-arm.h (ELF_MAXPAGESIZE): Do not define if already defined.
347 Do not define global function if ELFARM_NABI_C_INCLUDED is defined.
348 * elfarm-nabi.c: Do not include elf32-arm.h if
349 ELFARM_NABI_C_INCLUDED is defined.
350 * targets.c: Add bfd_elf32_{big|little}armqnx_vec.
7330fb86 351
7e392df6 3522002-07-30 Nick Clifton <nickc@redhat.com>
7330fb86 353
83e1617e
NC
354 * po/sv.po: Updated Swedish translation.
355
704afa60
JJ
3562002-07-30 Jakub Jelinek <jakub@redhat.com>
357
358 * elf.c (elf_fake_sections): Fix up .tbss sh_size and sh_type.
359
487e54f2
AM
3602002-07-30 Alan Modra <amodra@bigpond.net.au>
361
362 * aoutx.h (some_aout_object_p): Clean up tdata properly on error.
363 * archive.c (bfd_generic_archive_p): Likewise.
364 * coff-rs6000.c (_bfd_xcoff_archive_p): Likewise.
365 (_bfd_xcoff_archive_p): Use bfd_scan_vma in place of strtol.
366 * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
367 (xcoff64_archive_p): Likewise.
368 (xcoff64_openr_next_archived_file): Likewise.
369 (xcoff64_archive_p): Clean up tdata properly on error.
370 * coffgen.c (coff_real_object_p): Likewise.
371 (coff_object_p): Release filehdr and opthdr.
372 * ecoff.c (_bfd_ecoff_archive_p): Clean up tdata properly on error.
373 * ieee.c (ieee_archive_p): Likewise.
374 * ihex.c (ihex_object_p): Likewise.
375 (ihex_mkobject): Always allocate tdata.
376 * peicode.h (pe_ILF_object_p): Release bfd_alloc'd buffer on error.
377 * srec.c (srec_mkobject): Always allocate tdata.
378 (srec_object_p): Clean up tdata properly on error.
379 (symbolsrec_object_p): Likewise.
380 * versados.c (versados_object_p): Likewise.
381 * vms-misc.c (_bfd_vms_get_record): Use bfd_malloc instead of malloc,
382 and bfd_realloc instead of realloc.
383 (add_new_contents): Use bfd_alloc instead of bfd_malloc for sections.
384 * vms.c (vms_initialize): Always allocate tdata. Use bfd_alloc in
385 place of bfd_malloc, simplifying error freeing. Free hash table too.
386 (vms_object_p): Clean up tdata on error.
387 (vms_mkobject): Don't complain on stderr if vms_initialize fails.
388 (vms_close_and_cleanup): Adjust for bfd_alloc use.
389
9d46020e
AM
3902002-07-30 Alan Modra <amodra@bigpond.net.au>
391
392 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags.
393
fb39dac1
RS
3942002-07-26 Chris Demetriou <cgd@broadcom.com>
395
396 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
397 flags into resulting BFD.
398
7a624474
AM
3992002-07-26 Alan Modra <amodra@bigpond.net.au>
400
401 From John Reiser <jreiser@BitWagon.com>
402 * elf32-i386.c (elf_i386_link_hash_table_create): Clear
403 tls_ldm_got.refcount.
404
a4382ec6
TS
4052002-07-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
406
407 * elf64-mips.c: Update TODO comment.
408 (mips_elf64_higher_reloc,mips_elf64_highest_reloc,
409 mips_elf64_gprel16_reloca): Remove prototypes.
410 (mips16_jump_reloc,mips16_gprel_reloc): Add functions.
411 (UNUSED_RELOC): Replace by EMPTY_RELOC.
412 (mips_elf64_howto_table_rel): Use special R_MIPS_HI16 handling. Remove
413 wrong comments. Remove disfunctional support of R_MIPS_HIGHER and
414 R_MIPS_HIGHEST.
415 (mips_elf64_howto_table_rela): Fix handling of R_MIPS_GPREL16 and
416 R_MIPS_GOT16. Remove wrong comments.
417 (elf_mips16_jump_howto,elf_mips16_gprel_howto,
418 elf_mips_gnu_vtinherit_howto,elf_mips_gnu_vtentry_howto): New, code
419 from elf32-mips.c.
420 (mips_elf64_hi16_reloc): Fix formatting.
421 (mips_elf64_higher_reloc,mips_elf64_highest_reloc): Remove.
422 (mips_elf64_got16_reloc): Fix formatting. Remove superfluous code.
423 Better comment. Fall back to R_MIPS_GOT_DISP instead of abort().
424 (mips_elf64_gprel16_reloc): Make static. Add check for
425 partial_inplace.
426 (mips_elf64_gprel16_reloca): Remove.
427 (mips_elf64_literal_reloc): New function.
428 (mips_elf64_gprel32_reloc): Fix formatting.
429 (mips_elf64_shift6_reloc): Fix comment. Make static.
430 (mips16_jump_reloc,mips16_gprel_reloc): New functions, code from
431 elf32-mips.c.
432 (elf_reloc_map,mips_reloc_map): New mapping table, similiar as in
433 elf32-mips.c
434 (bfd_elf64_bfd_reloc_type_lookup): Use the mapping table. Enable GNU
435 specific relocations.
436 (mips_elf64_rtype_to_howto): Enable GNU specific relocations.
437 (mips_elf64_object_p): Invert logic to check for SGI-ish ABI.
438 (ELF_MAXPAGESIZE): Add comment.
439
219576a4
NC
4402002-07-25 Nick Clifton <nickc@redhat.com>
441
442 * po/sv.po: Updated Swedish translation.
443 * po/es.po: Updated Spanish translation.
444 * po/fr.po: Updated French translation.
445
8c58d23b
AM
4462002-07-25 Alan Modra <amodra@bigpond.net.au>
447
448 * elf-bfd.h (_bfd_elf32_link_record_local_dynamic_symbol): Define
449 as elf_link_record_local_dynamic_symbol.
450 (_bfd_elf64_link_record_local_dynamic_symbol): Likewise.
451 (elf_link_record_local_dynamic_symbol): Declare. Now returns int.
452 * elflink.h (elf_link_record_local_dynamic_symbol): Move to..
453 * elflink.c: .. here. Use bfd_elf_get_elf_syms. Check whether an
454 attempt is made to record a symbol in a discarded section, and
455 return `2' in that case.
456
ff3063f5
NC
4572002-07-24 Nick Clifton <nickc@redhat.com>
458
459 * po/sv.po: Updated Swedish translation.
460 * po/es.po: Updated Spanish translation.
461
f0fe0e16
AM
4622002-07-23 Alan Modra <amodra@bigpond.net.au>
463
c1fb5f8a
AM
464 * po/SRC-POTFILES.in: Regenerate.
465
f0fe0e16
AM
466 * elf-hppa.h (elf_hppa_relocate_section): If relocatable, return
467 immediately. Remove code handling relocatable linking.
468 * elf32-avr.c (elf32_avr_relocate_section): Likewise.
469 * elf32-cris.c (cris_elf_relocate_section): Likewise.
470 * elf32-fr30.c (elf32_frv_relocate_section): Likewise.
de2d743e 471 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
f0fe0e16
AM
472 * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
473 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
474 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
475 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
476 * elf32-v850.c (v850_elf_relocate_section): Likewise.
477 * elf32-vax.c (elf_vax_relocate_section): Likewise.
478 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
479 * elf32-avr.c (elf_backend_rela_normal): Define.
480 * elf32-cris.c: Likewise.
481 * elf32-fr30.c: Likewise.
de2d743e 482 * elf32-frv.c: Likewise.
f0fe0e16
AM
483 * elf32-h8300.c: Likewise.
484 * elf32-hppa.c: Likewise.
485 * elf32-ip2k.c: Likewise.
486 * elf32-sparc.c: Likewise.
487 * elf32-v850.c: Likewise.
488 * elf32-vax.c: Likewise.
489 * elf64-hppa.c: Likewise.
490 * elf64-sparc.c: Likewise.
491 * elf32-fr30.c (elf32_frv_relocate_section): Edit comment.
de2d743e 492 * elf32-frv.c (elf32_frv_relocate_section): Likewise.
f0fe0e16
AM
493 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
494 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
495 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
496 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
497 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
498 * elf-m10200.c (USE_RELA): Don't define.
499 * elf-m10300.c: Likewise.
de2d743e 500 * elfarm-oabi.c: Likewise.
f0fe0e16
AM
501 * elf32-i370.c: Likewise.
502 * elf32-ip2k.c: Likewise.
503 * elf32-m68k.c: Likewise.
504 * elf32-mcore.c: Likewise.
505 * elf32-ppc.c: Likewise.
506 * elf32-s390.c: Likewise.
507 * elf32-vax.c: Likewise.
508 * elf64-ppc.c: Likewise.
509 * elf64-s390.c: Likewise.
510 * elf64-x86-64.c: Likewise.
511 * elfxx-ia64.c: Likewise.
512 * elf32-avr.c (USE_REL): Don't undef.
513 * elf32-ip2k.c: Likewise.
514
5e8d7549
NC
5152002-07-23 Nick Clifton <nickc@redhat.com>
516
517 * elf-bfd.h (struct elf_backend_data): Add new bitfield
518 'want_p_paddr_set_to_zero'.
519 * elfxx-target.h: Set default value for want_p_paddr_set_to_zero
520 to false;
521 * elfxx-ia64.c: Set want_p_paddr_set_zero for HPUX target.
522 * elf.c (copy_private_bfd_data): Test want_p_paddr_set_zero.
523
9e12c7db
NC
5242002-07-23 Gabor Keresztfalvi <keresztg@mail.com>
525
526 * nlmcode.h (nlm_swap_auxiliary_headers_out): Swapped the order of
527 the MeSsAgEs and CoPyRiGhT tags to make >=NW4.x NLM loaders to
528 show the Copyright string.
529 Minor formatting tidy ups.
530
0461a601
NC
5312002-07-23 Nick Clifton <nickc@redhat.com>
532
ff3063f5
NC
533 * po/fr.po: Updated French translation.
534 * po/sv.po: Updated Swedish translation.
0461a601 535
fad2542d
AM
5362002-07-23 Alan Modra <amodra@bigpond.net.au>
537
538 * elflink.h (elf_link_input_bfd): Don't change internal symbols
539 when outputting relocs.
540
c0647bfc
JT
5412002-07-20 Jason Thorpe <thorpej@wasabisystems.com>
542
543 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only insert
544 DT_PLTGOT into the dynamic section if there is a PLT.
545
d01414a5
TS
5462002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
547
548 * elfxx-mips.c (_bfd_mips_elf_discard_info): New function, code from
549 elf32-mips.c.
550 (_bfd_mips_elf_write_section): Likewise.
551 * elfxx-mips.h (_bfd_mips_elf_discard_info): New prototype.
552 (_bfd_mips_elf_write_section): Likewise.
553 * elf32-mips.c (elf32_mips_discard_info): Move to elfxx-mips.c.
554 (elf32_mips_write_section): Likewise.
555 * elf64-mips.c (_bfd_mips_elf_ignore_discarded_relocs): Use it.
556 (_bfd_mips_elf_write_section): Likewise.
557
40c97fc6
AM
5582002-07-19 Alan Modra <amodra@bigpond.net.au>
559
560 * elfxx-ia64.c: (elfNN_ia64_modify_segment_map): Properly scan
561 PT_IA_64_UNWIND segments for a given section.
562
58378160
L
5632002-07-17 H.J. Lu <hjl@gnu.org>
564
565 * Makefile.am: Fix a typo.
566 * Makefile.in: Regenerate.
567
cf88bb9f
NC
5682002-07-15 Denis Chertykov <denisc@overta.ru>
569 Frank Ch. Eigler <fche@redhat.com>
570 Ben Elliston <bje@redhat.com>
571 Alan Lehotsky <alehotsky@cygnus.com>
572 John Healy <jhealy@redhat.com>
573 Graham Stott <grahams@redhat.com>
574 Jeff Johnston <jjohnstn@redhat.com>
575
576 * Makefile.am: Add support for ip2k.
577 * Makefile.in: Regenerate.
578 * doc/Makefile.in: Regenerate.
579 * archures.c: Add support for ip2k.
580 * config.bfd: Add support for ip2k.
581 * configure.in: Add support for ip2k.
582 * configure: Regenerate.
583 * reloc.c: Add support for ip2k.
584 * targets.c: Add support for ip2k.
585 * bfd-in2.h: Regenerate.
586 * libbfd.h: Regenerate.
587 * cpu-ip2k.c: New file.
588 * elf32-ip2k.c: New file.
589
0dafd5f6
RE
5902002-07-17 Ian Rickards <irickard@arm.com>
591
40c97fc6 592 * dwarf2.c (concat_filename): If we can't establish the directory
0dafd5f6
RE
593 just return the filename.
594
36b08f12
AM
5952002-07-16 Moritz Jodeit <moritz@jodeit.org>
596
597 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Correct order of memset args.
598
58821868
AM
5992002-07-16 Alan Modra <amodra@bigpond.net.au>
600
601 * elflink.h: Formatting fixes, tidy prototypes.
602 (elf_link_assign_sym_version): Move common code out of loop.
603
c89583f8
AM
6042002-07-16 Alan Modra <amodra@bigpond.net.au>
605
606 * elflink.h (elf_link_input_bfd): Don't call reloc_emitter when
607 reloc section size is zero. Correct reloc output location.
608
ba94744e
AM
6092002-07-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
610
611 * elf-hppa.h (elf_hppa_reloc_final_type): Use R_PARISC_PCREL16F as
612 the final type for the e_fsel selector when generating PA2.0W code.
613 (elf_hppa_relocate_insn): Provide support for PA2.0W 16-bit format 1
614 relocations.
615
96a94295
L
6162002-07-14 H.J. Lu <hjl@gnu.org>
617
618 * elflink.h (elf_link_assign_sym_version): Hide the default
619 definition if there is a hidden versioned definition.
620
6849c52f
HPN
6212002-07-12 Hans-Peter Nilsson <hp@axis.com>
622
623 * elf32-cris.c (cris_elf_relocate_section): Drop nonsensical
624 dynamic reference test in assertion when initializing GOT with
625 static contents. Just assert that there are either no dynamic
626 sections, the symbol is defined in the regular objects or that the
627 symbol is undef weak. Tweak comment.
628 (elf_cris_finish_dynamic_symbol): Emit .got reloc for a program
629 only if the symbol isn't defined in the program and isn't undef
630 weak.
631 (elf_cris_adjust_dynamic_symbol): Simplify condition for getting
632 rid of PLT entry: only do it if the symbol isn't defined in a DSO.
633 When doing so, clear ELF_LINK_HASH_NEEDS_PLT. Tweak comments.
634 (elf_cris_discard_excess_program_dynamics): Don't consider
635 ELF_LINK_HASH_REF_DYNAMIC when omitting .got runtime relocs.
636
239e1f3a
AM
6372002-07-11 Alan Modra <amodra@bigpond.net.au>
638
639 * elf32-i386.c (elf_i386_relocate_section): Don't complain about
640 unresolved debugging relocs in dynamic applications.
641 * elf32-s390.c (elf_s390_relocate_section): Likewise.
642 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
643 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
644 * elf64-s390.c (elf_s390_relocate_section): Likewise.
645 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
646 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
647
2f6d9989
AM
6482002-07-10 Alan Modra <amodra@bigpond.net.au>
649
f5e87a1d
AM
650 * elf64-ppc.c (ONES): Define.
651 (ppc64_elf_howto_table): Use ONES here to avoid warnings. Fill in
652 missing src_mask fields. Tweak R_PPC64_NONE, R_PPC64_COPY. Fill
653 in missing dst_mask fields on R_PPC64_PLT32, R_PPC64_PLTREL32.
654
2f6d9989
AM
655 * elf64-ppc.c (ppc64_elf_get_symbol_info): Delete.
656 (ppc64_elf_set_private_flags): Delete.
657 (ppc64_elf_section_from_shdr): Delete.
658 (ppc64_elf_merge_private_bfd_data): Remove flag checking/merging code.
659 (ppc64_elf_fake_sections): Delete.
660 (bfd_elf64_bfd_set_private_flags): Don't define.
661 (bfd_elf64_get_symbol_info): Likewise.
662 (elf_backend_section_from_shdr): Likewise.
663 (elf_backend_fake_sections): Likewise.
664
0594c12d
AM
6652002-07-10 Marco Walther <Marco.Walther@sun.com>
666
667 * elf.c: (assign_section_numbers) Set sh_entsize for .stab only
668 when not already set.
669 * elf64-sparc.c: (sparc64_elf_fake_sections): New function.
670 (elf_backend_fake_sections): Define.
671
699cb9b8
AM
6722002-07-10 Alan Modra <amodra@bigpond.net.au>
673
674 * merge.c (_bfd_merge_section): Remove redundant output_section check.
675 Formatting.
676 (_bfd_merge_sections): Don't set SEC_EXCLUDE on unused sections.
677
0a4787a0
HPN
6782002-07-09 Hans-Peter Nilsson <hp@axis.com>
679
680 * elf32-cris.c (cris_elf_relocate_section): Move sanity-check for
681 NULL sym_hashes to just before use.
682 <case R_CRIS_32_GOTREL>: In test for local symbol, accept also
683 symbol with non-default visibility.
684 <case R_CRIS_32_GOTREL, case R_CRIS_32_PLT_GOTREL>: Ditto.
685 <case R_CRIS_8_PCREL, case R_CRIS_16_PCREL, case R_CRIS_32_PCREL>:
686 Ditto.
687 (cris_elf_gc_sweep_hook): Only decrease h->plt.refcount for
688 symbol with non-default visibility.
689 (cris_elf_check_relocs): At tests for local symbol before
690 increasing h->plt.refcount, also check for non-default
691 visibility. Ditto when checking for local symbol to eliminate
692 pc-relative runtime relocs.
693
aecc8f8a
AM
6942002-07-08 Alan Modra <amodra@bigpond.net.au>
695
696 * elf.c: Formatting.
697 (IS_SOLARIS_PT_INTERP): Add p_paddr and p_memsz checks.
698 (INCLUDE_SECTION_IN_SEGMENT): Remove IS_SOLARIS_PT_INTERP.
699 (copy_private_bfd_data): Set p_vaddr on broken Solaris PT_INTERP
700 segments.
701
e9168c1e
MM
7022002-07-07 Mark Mitchell <mark@codesourcery.com>
703 Alan Modra <amodra@bigpond.net.au>
704
705 * cofflink.c (_bfd_coff_final_link): On PE COFF systems, take into
706 account the impact of relocation count overflow when computing
707 section offsets.
708 * coffcode.h (coff_write_relocs): Use obj_pe when deciding whether
709 or not to apply the PE COFF reloc overflow handling. Fix a
710 fencepost error in deciding whether or not to use that technique.
711
6cdc0ccc
AM
7122002-07-07 Alan Modra <amodra@bigpond.net.au>
713
714 * elf-bfd.h (struct elf_reloc_cookie): Remove locsym_shndx,
715 change type of locsyms.
716 (bfd_elf_get_elf_syms): Declare.
717 * elf.c (bfd_elf_get_elf_syms): New function.
718 (group_signature): Use bfd_elf_get_elf_syms.
719 (bfd_section_from_r_symndx): Likewise.
720 * elfcode.h (elf_slurp_symbol_table): Likewise.
721 * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
722 (elf_link_add_object_symbols): Likewise. Reorganise to increase
723 locality of various data structures. Properly free internal relocs.
724 (elf_bfd_final_link): Properly free internal relocs.
725 (elf_link_check_versioned_symbol): Use bfd_elf_get_elf_syms.
726 (elf_link_input_bfd): Likewise.
727 (elf_gc_mark): Likewise. Properly free internal relocs.
728 (elf_gc_sweep): Properly free internal relocs.
729 (elf_reloc_symbol_deleted_p): No need to swap syms in.
730 (elf_bfd_discard_info): Use bfd_elf_get_elf_syms. Properly free
731 internal relocs.
732 * elf-m10200.c (mn10200_elf_relax_section): Use bfd_elf_get_elf_syms.
733 Properly free possibly cached info.
734 (mn10200_elf_relax_delete_bytes): Remove symbol swapping code.
735 (mn10200_elf_symbol_address_p): Pass in internal syms. Remove
736 symbol swapping code.
737 (mn10200_elf_get_relocated_section_contents): Use bfd_elf_get_elf_syms.
738 Properly free possibly cached info.
739 * elf-m10300.c (mn10300_elf_relax_section): As above for elf-m10200.c.
740 (mn10300_elf_relax_delete_bytes): Likewise.
741 (mn10300_elf_symbol_address_p): Likewise.
742 (mn10300_elf_get_relocated_section_contents): Likewise.
743 * elf32-h8300.c (elf32_h8_relax_section): As above for elf-m10200.c.
744 (elf32_h8_relax_delete_bytes): Likewise.
745 (elf32_h8_symbol_address_p): Likewise.
746 (elf32_h8_get_relocated_section_contents): Likewise.
747 * elf32-m32r.c (m32r_elf_relax_section): As above for elf-m10200.c.
748 (m32r_elf_relax_delete_bytes): Likewise.
749 (m32r_elf_get_relocated_section_contents): Likewise.
750 * elf32-sh.c (sh_elf_reloc_loop): Free section contents using
751 elf_section_data to determine whether cached.
752 (sh_elf_relax_section): As above for elf-m10200.c.
753 (sh_elf_relax_delete_bytes): Likewise.
754 (sh_elf_get_relocated_section_contents): Likewise.
755 * elf32-xstormy16.c (xstormy16_elf_relax_section): As above.
756 * elf64-alpha.c (elf64_alpha_relax_section): As above. Also delay
757 reading of local syms.
758 * elf64-mmix.c (mmix_elf_relax_section): Likewise.
759 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): As above.
760 * elfxx-ia64.c (elfNN_ia64_relax_section): As above.
761 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Properly free internal
762 relocs.
763 * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Properly
764 free internal relocs and section contents. Don't read symbols.
765 * elf32-hppa.c (get_local_syms): Use bfd_elf_get_elf_syms.
766 (elf32_hppa_size_stubs): Don't free local syms.
767 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Delay
768 reading of local syms. Use bfd_elf_get_elf_syms. Properly free
769 possibly cached info.
770 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
771 * elf64-hppa.c (elf64_hppa_check_relocs): Use bfd_elf_get_elf_syms.
772 * elf64-ppc.c (struct ppc_link_hash_table): Delete bfd_count and
773 all_local_syms.
774 (get_local_syms): Delete function.
775 (edit_opd): Use bfd_elf_get_elf_syms. Free on error exit. Cache
776 on exit.
777 (ppc64_elf_size_stubs): Use bfd_elf_get_elf_syms. Free/cache on exit.
778
b3212001
JW
7792002-07-05 Jim Wilson <wilson@redhat.com>
780
781 * syms.c (decode_section_type): New.
782 (bfd_decode_symclass): Call decode_section_type.
783
894bb1ee
JJ
7842002-07-04 Jakub Jelinek <jakub@redhat.com>
785
786 * merge.c (_bfd_merged_section_offset): Avoid accessing byte before
787 section content start.
788 Reported by Michael Schumacher <mike@hightec-rt.com>.
789
bc0ba537
AM
7902002-07-04 Alan Modra <amodra@bigpond.net.au>
791
792 * section.c (_bfd_strip_section_from_output): Remove unnecessary
793 link order code. Don't actually remove the output section here;
794 Just set a flag for the linker to do so.
795 * elflink.c (_bfd_elf_link_renumber_dynsyms): Test for removed
796 sections when setting up output section dynsyms.
797
797fc050
AM
7982002-07-04 Alan Modra <amodra@bigpond.net.au>
799
800 * elflink.h (elf_link_add_object_symbols): Revert 1999-09-02 hpux
801 fudge.
802 * elf.c (bfd_section_from_shdr): Work around broken hpux shared
803 libs here instead.
804
99881371
MS
8052002-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
806
807 * elf64-s390.c (create_got_section): Set .got section alignment to
808 8 bytes.
809 (elf_s390_check_relocs): Set .rela.dyn section alignment to 8 bytes.
810
47d9a591
AM
8112002-07-02 Alan Modra <amodra@bigpond.net.au>
812
813 * elf.c (_bfd_elf_reloc_type_class): Fix comment grammar.
814
179d3252
JT
8152002-07-01 Matt Thomas <matt@3am-software.com>
816
817 * elf32-vax.c (elf32_vax_print_private_bfd_data): Change EF_*
818 to EF_VAX_*.
819
4a14403c
TS
8202002-07-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
821
822 * elfxx-mips.c (ABI_64_P): Fix comment.
823 (MIPS_ELF_OPTIONS_SECTION_NAME,MIPS_ELF_STUB_SECTION_NAME): Use the
824 new section names for N64 ABI.
825 (mips_elf_output_extsym): No special _gp_disp handling for NewABI.
826 (mips_elf_calculate_relocation): Code formatting.
827 (mips_elf_create_dynamic_relocation): Likewise.
828 (_bfd_mips_elf_fake_sections): IRIX6 needs this hack, too.
829 (_bfd_mips_elf_size_dynamic_sections): Handle GOT_PAGE for any NewABI.
830 (_bfd_mips_elf_relocate_section): No special handling for R_MIPS_64
831 in any NewABI.
832 (_bfd_mips_elf_finish_dynamic_symbol): No special _gp_disp handling
833 for NewABI.
834 (_bfd_mips_elf_modify_segment_map): Handle any N64 ABI.
835 (_bfd_mips_elf_gc_sweep_hook): NewABI GOT relocs should be handled
836 here, too.
837
607c0e09
AS
8382002-07-01 Andreas Schwab <schwab@suse.de>
839
840 * elf64-x86-64.c (elf64_x86_64_relocate_section): Only convert
841 R_X86_64_64 to R_X86_64_RELATIVE.
842
ba26fd96
AM
8432002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
844
845 * vaxbsd.c: New BFD backend for VAX BSD and Ultrix.
846 * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add new backend.
847 Run "make dep-am".
848 * config.bfd (vax-*-bsd* | vax-*-ultrix*): Use vaxbsd_vec instead of
849 host_aout_vec.
850 * configure.in (vaxbsd_vec): Add.
851 * targets.c (vaxbsd_vec): Add.
852 * Makefile.in: Rebuild.
853 * configure: Rebuild.
854 * po/SRC-POTFILES.in: Rebuild.
855
1e2f5b6e
AM
8562002-07-01 Alan Modra <amodra@bigpond.net.au>
857
858 * elflink.h (elf_gc_mark): Pass in the section whose relocs we are
859 examining to gc_mark_hook, rather than the bfd.
860 (elf_gc_sections): Adjust.
861 * elf-bfd.h (struct elf_backend_data <gc_mark_hook>): Likewise.
862 * elf-m10300.c (mn10300_elf_gc_mark_hook): Likewise.
863 * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise.
864 * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise.
865 * elf32-cris.c (cris_elf_gc_mark_hook): Likewise.
866 * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise.
867 * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise.
868 * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise.
869 * elf32-i386.c (elf_i386_gc_mark_hook): Likewise.
870 * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise.
871 * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise.
872 * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise.
873 * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise.
874 * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise.
875 * elf32-s390.c (elf_s390_gc_mark_hook): Likewise.
876 * elf32-sh.c (sh_elf_gc_mark_hook): Likewise.
877 * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise.
878 * elf32-v850.c (v850_elf_gc_mark_hook): Likewise.
879 * elf32-vax.c (elf_vax_gc_mark_hook): Likewise.
880 * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise.
881 * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise.
882 * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
883 * elf64-s390.c (elf_s390_gc_mark_hook): Likewise.
884 * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
885 * elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise.
886 * elfxx-mips.h (_bfd_mips_elf_gc_mark_hook): Likewise.
887 * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise.
888 * elf32-frv.c (elf32_frv_gc_mark_hook): Likewise. Also remove
889 redundant local sym tests.
890 * elf64-ppc.c (struct ppc_link_hash_entry): Add is_entry.
891 (link_hash_newfunc): Init is_entry.
892 (ppc64_elf_copy_indirect_symbol): Copy is_entry.
893 (ppc64_elf_link_hash_table_create): Init all_local_syms.
894 (create_linkage_sections): Use bfd_make_section_anyway rather than
895 bfd_make_section.
896 (ppc64_elf_mark_entry_syms): New function.
897 (ppc64_elf_check_relocs): Don't bother testing elf_bad_symtab. Set
898 up opd entry to function section map.
899 (ppc64_elf_gc_mark_hook): Special case opd section relocs, and
900 relocs that reference the opd section.
901 (edit_opd): New function.
902 (ppc64_elf_size_dynamic_sections): Call get_local_syms and edit_opd.
903 (ppc64_elf_setup_section_lists): Don't calculate htab->bfd_count here.
904 (get_local_syms): Do so here. Exit if we already have local syms.
905 Remove bogus comment imported from elf32-hppa.c. Don't attempt to
906 read local syms on non-ELF input.
907 (ppc64_elf_size_stubs): Call _bfd_elf64_link_read_relocs rather
908 than duplicating it's function here. Adjust free of internal
909 relocs to suit.
910 (ppc64_elf_relocate_section): Adjust local syms in opd section.
911 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Declare.
912 * elf32-hppa.c (elf32_hppa_size_stubs): Call
913 _bfd_elf32_link_read_relocs rather than duplicating it's function
914 here. Adjust free of internal relocs to suit.
915
1b71fb54
AJ
9162002-07-01 Andreas Jaeger <aj@suse.de>
917
918 * elf64-x86-64.c (elf64_x86_64_check_relocs): Certain relocations
919 are not allowed in shared libs code, enforce -fPIC.
920
8d28f606
HPN
9212002-06-29 Hans-Peter Nilsson <hp@bitrange.com>
922
923 * mmo.c (mmo_write_loc_chunk): Don't eliminate leading and
924 trailing zero-sequences when there's previous left-over data.
925
5ac81c74
JL
9262002-06-27 John David Anglin <dave@hiauly1.hia.nrc.ca>
927
928 * elf64-hppa.c (elf64_hppa_reloc_type_class): New function.
929 (elf64_hppa_finish_dynamic_sections): Check other_rel_sec, dlt_rel_sec
930 and opd_rel_sec in order for starting rela section. Check _raw_size.
931 (elf_backend_reloc_type_class): Define.
932
91a4d569
AM
9332002-06-27 Kevin Buettner <kevinb@redhat.com>
934
935 * dwarf2.c (decode_line_info): Handle older, non-standard, 64-bit
936 DWARF2 formats.
937
feee612b
AM
9382002-06-27 Alan Modra <amodra@bigpond.net.au>
939
940 * cpu-powerpc.c: Comment on ordering of arch_info.
941 * elf32-ppc.c (ppc_elf_object_p): New function.
942 (elf_backend_object_p): Define.
943 * elf64-ppc.c (ppc64_elf_object_p): New function.
944 (elf_backend_object_p): Define.
945
a4e6cefc
JT
9462002-06-26 Jason Thorpe <thorpej@wasabisystems.com>
947
948 * configure.in (vax-*-netbsd*): Set COREFILE to netbsd-core.lo.
949 * configure: Regenerate.
950
dae2dd0d
NC
9512002-06-25 Jason Eckhardt <jle@rice.edu>
952
953 * dwarf2.c (decode_line_info): Check unit->addr_size
954 to read in the proper number of prologue bytes.
955
680f9d5c
NC
9562002-06-25 Nick Clifton <nickc@cambridge.redhat.com>
957
958 * config.bfd (powerpc-*-aix5*): Only create a selvecs for
959 aix5coff64_vec if 64-bit bfd support has been enabled.
91a4d569
AM
960 (powerpc64-*-aix5*): Only define if 64-bit bfd support has
961 been enabled.
dae2dd0d 962
680f9d5c
NC
963 * targets.c (_bfd_target_vector[]): Only include
964 aix5coff64_vec if 64-bit bfd support has been enabled.
965
d4c88bbb
AM
9662002-06-25 Alan Modra <amodra@bigpond.net.au>
967
968 * elf64-ppc.c (ppc_add_stub): Replace strcpy/strncpy with memcpy.
969 * elf32-hppa.c (hppa_add_stub): Likewise.
970 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise.
971 * elflink.h (elf_add_default_symbol): Fix comment typo.
972 (elf_add_default_symbol): Replace strcpy and strncpy with memcpy.
973 (elf_link_add_object_symbols): Likewise.
974 (elf_link_assign_sym_version): Likewise.
975 * hash.c (bfd_hash_lookup): Likewise.
976 * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
977 * section.c (bfd_get_unique_section_name): Likewise.
978 * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
979 * elf.c (_bfd_elf_make_section_from_phdr): Likewise.
980 (assign_section_numbers): Likewise.
981 (_bfd_elfcore_make_pseudosection): Likewise.
982 (elfcore_grok_lwpstatus): Likewise.
983 (elfcore_grok_win32pstatus): Likewise.
984 (elfcore_write_note): Constify input params. Use PTR instead of
985 void *. Include terminating NUL in namesz. Correct padding.
986 Support NULL "name" param. Use memcpy instead of strcpy.
987 (elfcore_write_prpsinfo): Constify input params.
988 (elfcore_write_prstatus): Likewise. Use PTR instead of void *.
989 (elfcore_write_lwpstatus): Likewise.
990 (elfcore_write_pstatus): Likewise.
991 (elfcore_write_prfpreg): Likewise.
992 (elfcore_write_prxfpreg): Likewise.
993 * elf-bfd.h (elfcore_write_note): Update declaration.
994 (elfcore_write_prpsinfo): Likewise.
995 (elfcore_write_prstatus): Likewise.
996 (elfcore_write_pstatus): Likewise.
997 (elfcore_write_prfpreg): Likewise.
998 (elfcore_write_prxfpreg): Likewise.
999 (elfcore_write_lwpstatus): Likewise.
1000
b0ac09d2
NC
10012002-06-25 Jason Eckhardt <jle@rice.edu>
1002
1003 * ecoff.c (ecoff_set_symbol_info): Set BSF_FUNCTION for
1004 symbols of type stProc and stStaticProc.
1005
10062002-06-25 Nick Clifton <nickc@redhat.com>
1007
1008 * ecoff.c: VArious formatting fixes.
1009
021d6096
AM
10102002-06-25 Alan Modra <amodra@bigpond.net.au>
1011
1012 * coff-rs6000.c (xcoff_generate_rtinit): Fix typo.
1013
82e51918
AM
10142002-06-25 Alan Modra <amodra@bigpond.net.au>
1015
1016 * aout-adobe.c: Don't compare against "true" or "false.
1017 * aout-target.h: Likewise.
1018 * aoutx.h: Likewise.
1019 * archive.c: Likewise.
1020 * bout.c: Likewise.
1021 * cache.c: Likewise.
1022 * coff-a29k.c: Likewise.
1023 * coff-alpha.c: Likewise.
1024 * coff-i386.c: Likewise.
1025 * coff-mips.c: Likewise.
1026 * coff-or32.c: Likewise.
1027 * coff64-rs6000.c: Likewise.
1028 * coffcode.h: Likewise.
1029 * coffgen.c: Likewise.
1030 * cpu-ns32k.c: Likewise.
1031 * ecoff.c: Likewise.
1032 * ecofflink.c: Likewise.
1033 * elf.c: Likewise.
1034 * elf32-arm.h: Likewise.
1035 * elf32-cris.c: Likewise.
1036 * elf32-d30v.c: Likewise.
1037 * elf32-i386.c: Likewise.
1038 * elf32-mcore.c: Likewise.
1039 * elf32-ppc.c: Likewise.
1040 * elf32-sh.c: Likewise.
1041 * elf32-sh64.c: Likewise.
1042 * elf32-v850.c: Likewise.
1043 * elf64-alpha.c: Likewise.
1044 * elf64-sh64.c: Likewise.
1045 * elfcode.h: Likewise.
1046 * elfcore.h: Likewise.
1047 * elflink.h: Likewise.
1048 * elfxx-mips.c: Likewise.
1049 * i386os9k.c: Likewise.
1050 * ieee.c: Likewise.
1051 * libbfd.c: Likewise.
1052 * linker.c: Likewise.
1053 * mmo.c: Likewise.
1054 * nlm32-alpha.c: Likewise.
1055 * nlm32-i386.c: Likewise.
1056 * nlm32-ppc.c: Likewise.
1057 * nlm32-sparc.c: Likewise.
1058 * nlmcode.h: Likewise.
1059 * oasys.c: Likewise.
1060 * pdp11.c: Likewise.
1061 * peicode.h: Likewise.
1062 * reloc.c: Likewise.
1063 * som.c: Likewise.
1064 * srec.c: Likewise.
1065 * tekhex.c: Likewise.
1066 * vms.c: Likewise.
1067 * xcofflink.c: Likewise.
1068 * elf64-sparc.c: Edit comment to not use "== false".
1069
1070 * aoutf1.h: Don't use "? true : false".
1071 * ecoff.c: Likewise.
1072 * format.c: Likewise.
1073 * ieee.c: Likewise.
1074 * linker.c: Likewise.
1075 * mmo.c: Likewise.
1076 * oasys.c: Likewise.
1077
48fc70a2
AM
10782002-06-23 H.J. Lu <hjl@gnu.org>
1079
1080 * elflink.h (elf_link_add_archive_symbols): For the default
1081 version, check references with only one `@' first.
1082
47b7c2db
AM
10832002-06-23 John David Anglin <dave@hiauly1.hia.nrc.ca>
1084
1085 * elf64-hppa.c (elf64_hppa_mark_milli_and_exported_functions): New
1086 function.
1087 (allocate_global_data_dlt): Don't add millicode symbols to dynamic
1088 symbol table.
1089 (allocate_global_data_opd, allocate_dynrel_entries): Likewise.
1090 (elf64_hppa_size_dynamic_sections): Revise to use
1091 elf64_hppa_mark_milli_and_exported_functions.
1092 (elf64_hppa_finish_dynamic_symbol): Remove code to keep millicode
1093 symbols out of dynamic symbol table.
1094
f5d44ba0
AM
10952002-06-23 Alan Modra <amodra@bigpond.net.au>
1096
bb3fff1e
AM
1097 * Makefile.in: Regenerate.
1098 * libbfd.h: Regenerate.
1099 * bfd-in2.h: Regenerate.
1100 * configure: Regenerate.
1101 * po/SRC-POTFILES.in: Regenerate.
1102
f5d44ba0
AM
1103 * elflink.h: Comment typo fixes.
1104
11052002-06-23 H.J. Lu <hjl@gnu.org>
1106
1107 * elf-bfd.h (elf_link_loaded_list): New structure.
1108 (elf_link_hash_table): Add "loaded".
1109 * elf.c (_bfd_elf_link_hash_table_init): Initialize "loaded".
1110 * elflink.h (elf_link_check_versioned_symbol): New function.
1111 (elf_link_output_extsym): Call elf_link_check_versioned_symbol.
1112
cc36acdf
NC
11132002-06-19 Nick Clifton <nickc@cambridge.redhat.com>
1114
1115 * elflink.h (size_dynamic_sections): If the target does not
f5d44ba0 1116 support an ELF style hash table, return true, indicating that
cc36acdf
NC
1117 nothing needed to be done, rather than false, indicating that the
1118 section's size could not be computed.
1119
4e5ba5b7
DB
11202002-06-18 Dave Brolley <brolley@redhat.com>
1121
1122 From Catherine Moore, Michael Meissner, Dave Brolley:
1123 * po/SRC-POTFILES.in: Add cpu-frv.c and elf32-frv.c
1124 * targets.c: Support bfd_elf32_frv_vec.
1125 * reloc.c: Add FRV relocs.
1126 * configure.in: Add support for bfd-elf32-frv-vec.
1127 * config.bfd (targ_cpu): Add support for frv-*-elf.
1128 * archures.c: Add frv arch and machines.
1129 * Makefile.am (ALL_MACHINES): Add cpu-frv.lo.
1130 (ALL_MACHINES_CFILES): Add cpu-frv.c.
1131 (BFD32_BACKENDS): Add elf32-frv.lo.
1132 (BFD32_BACKENDS_CFILES): Add elf32-frv.c
1133 (cpu-frv.lo): New target.
1134 (elf32-frv.lo): New target.
1135 * cpu-frv.c: New file.
1136 * elf32-frv.c: New file.
1137
7ece0d85
JJ
11382002-06-18 Jakub Jelinek <jakub@redhat.com>
1139
1140 * elfcode.h (elf_object_p): Sanity check eh_shoff == 0 implies
1141 e_shnum == 0.
1142 Only read the first section header if e_shoff is non-zero.
1143 Don't consider e_shstrndx if there are no sections.
1144
57fb03ac
TR
11452002-06-17 Tom Rix <trix@redhat.com>
1146
1147 * elf32-d10v.c (elf_d10v_howto_table): Change R_D10V_10_PCREL_R,
f5d44ba0 1148 R_D10V_10_PCREL_L and R_D10V_18_PCREL to use
57fb03ac
TR
1149 complain_overflow_bitfield.
1150
341ca622
AM
11512002-06-17 Alan Modra <amodra@bigpond.net.au>
1152
767e34d1
AM
1153 * opncls.c (bfd_openr): Remove redundant bfd_set_error.
1154 (bfd_fdopenr): Likewise.
1155 (bfd_openstreamr): Likewise.
1156 (bfd_openw): Likewise.
1157
341ca622
AM
1158 * targets.c: Sort target vecs.
1159 (_bfd_target_vector): Add aix5coff64_vec, bfd_elf32_sh64_vec,
1160 bfd_elf32_sh64l_vec, bfd_elf32_sh64lnbsd_vec,
1161 bfd_elf32_sh64nbsd_vec, bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec,
1162 bfd_elf64_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec.
1163 * configure.in: Sort target vecs. Add m88kmach3_vec.
1164 * configure: Regenerate.
1165
dfbbae4c
HPN
11662002-06-16 Hans-Peter Nilsson <hp@bitrange.com>
1167
1168 * elf64-mmix.c (bpo_reloc_request_sort_fn): Use member
1169 bpo_reloc_no to break sort order ties, not address of items.
1170
d663e1cd
JL
11712002-06-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
1172
1173 * elf-hppa.h (elf_hppa_final_link): Fix formatting in comment.
1174 Skip excluded sections in determing __gp value.
1175 (elf_hppa_final_link_relocate): Use the symbol's address in
1176 R_PARISC_FPTR64 relocations that don't need an opd entry.
1177 * elf64-hppa.c (allocate_dynrel_entries): Simplify code.
1178 (elf64_hppa_finalize_dynreloc): Likewise.
1179 (elf64_hppa_size_dynamic_sections): Move comments and fix typo.
1180 (elf64_hppa_finish_dynamic_symbol): Break up assert.
1181
a8295218
NC
11822002-06-14 Sergey Grigoriev <serge@leopold.Physik.Uni-Augsburg.DE>
1183
1184 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
1185 alignment for .bss, .data and .text sections so that sse and sse2
1186 code will work.
1187 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
1188
11892002-06013 J"orn Rennecke <joern.rennecke@superh.com>
5d9b5481
JR
1190
1191 config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
1192 sh[1234]*-elf*.
1193
3db4b612
JL
11942002-06-12 John David Anglin <dave@hiauly1.hia.nrc.ca>
1195
2cb69dd3
JL
1196 * elflink.h (elf_bfd_final_link): Improve error handling for missing
1197 dynamic sections.
1198
3db4b612
JL
1199 * elf64-hppa.c (allocate_global_data_opd): We don't need an opd entry
1200 for a symbol that has no output section.
1201 (allocate_dynrel_entries): Correct comment.
1202 (elf64_hppa_finalize_dynreloc): Likewise. Don't create an opd entry
1203 unless we want one.
1204 (elf64_hppa_finalize_opd): Prevent segfault if dyn_h is NULL.
1205 (elf64_hppa_finalize_dlt): Likewise. Prevent segfault for symbols
1206 with no section. Remove unnecessary parentheses.
1207
f3813499
TR
12082002-06-11 Tom Rix <trix@redhat.com>
1209
1210 * coffcode.h (coff_compute_section_file_positions): Add data
1211 section to AIX loader alignment check.
1212
f5d44ba0 1213 * coff-rs6000.c (_bfd_xcoff_mkobject): Set default text section
f3813499
TR
1214 alignment to 4 bytes.
1215 (_bfd_xcoff_copy_private_bfd_data): Use text and data alignment
1216 power accessor macro.
1217 (do_shared_object_padding): Remove invalid assertion.
1218
0ebaf185
RS
12192002-06-10 Richard Sandiford <rsandifo@redhat.com>
1220
1221 * section.c (_bfd_strip_section_from_output): Set SEC_EXCLUDE
1222 for removed output sections.
1223
ebe3e2d1
NC
12242002-06-10 Geoffrey Keating <geoffk@redhat.com>
1225
1226 * merge.c (merge_strings): Use htab_create_alloc with calloc, not
1227 htab_alloc.
1228 * elf-strtab.c (_bfd_elf_strtab_finalize): Likewise.
1229
0b14c2aa
L
12302002-06-08 H.J. Lu <hjl@gnu.org>
1231
1232 * elf.c (copy_private_bfd_data): Don't cast to bfd_size_type to
1233 work around a long long bug in gcc 2.96 on mips.
1234
3c2bfad6
JT
12352002-06-08 Jason Thorpe <thorpej@wasabisystems.com>
1236
1237 * Makefile.am (BFD32_BACKENDS): Add vax1knetbsd.lo.
1238 (BFD32_BACKENDS_CFILES): Add vax1knetbsd.c.
1239 Regenerate dependency lists.
1240 * Makefile.in: Regenerate.
1241 * config.bfd (vax-*-netbsdelf*, vax-*-netbsdaout*): Add
1242 vax1knetbsd_vec to targ_selvecs.
1243 * configure.in: Add vax1knetbsd_vec.
1244 * configure: Regenerate.
1245 * targets.c (_bfd_target_vector): Add vax1knetbsd_vec.
1246 * vax1knetbsd.c: New file.
1247 * vaxnetbsd.c: Update copyright years.
1248 (TARGET_PAGE_SIZE): Set to 0x1000.
1249 (DEFAULT_MID): Set to M_VAX4K_NETBSD.
1250
91149be3
JT
12512002-06-08 Matt Thomas <matt@3am-software.com>
1252
1253 * libaout.h (enum machine_type): Add M_VAX4K_NETBSD.
1254
21e15248
AM
12552002-06-08 Alan Modra <amodra@bigpond.net.au>
1256
1257 * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Make static.
1258
986b7daa
AM
12592002-06-08 Alan Modra <amodra@bigpond.net.au>
1260
e90b95f6
AM
1261 * Makefile.am: Run "make dep-am".
1262 * Makefile.in: Regenerate.
1263
3f9c735e
AM
1264 * armnetbsd.c: Replace CONST with const.
1265 * corefile.c: Likewise.
1266 * elf32-dlx.c: Likewise.
1267 * elf64-mips.c: Likewise.
1268 * mmo.c: Likewise.
1269 * ns32knetbsd.c: Likewise.
1270
986b7daa
AM
1271 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Check the hash
1272 table is elf64-sparc.
1273
5a659663
TS
12742002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1275
1276 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Simplify code.
1277 Fix RELA addends to get not shifted in the result. Don't do special
1278 handling of R_MIPS_64 for NewABI.
1279
9bab7074
AM
12802002-06-07 Alan Modra <amodra@bigpond.net.au>
1281
1282 * aoutx.h (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc.
1283 (NAME(aout,slurp_reloc_table)): Likewise.
1284 * coff-mips.c (mips_relax_section): Use bfd_zalloc.
1285 * coff-rs6000.c (xcoff_write_armap_big): Use bfd_zmalloc.
1286 (xcoff_write_archive_contents_big): Likewise.
1287 (xcoff_generate_rtinit): Likewise.
1288 (xcoff_generate_rtinit): Likewise, and check error return.
1289 * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
1290 * coffgen.c (coff_section_symbol): Use bfd_zalloc.
1291 (coff_get_normalized_symtab): Likewise.
1292 (coff_make_empty_symbol): Likewise.
1293 (bfd_coff_set_symbol_class): Likewise.
1294 * cofflink.c (coff_link_add_symbols): Likewise.
1295 * ecoff.c (_bfd_ecoff_make_empty_symbol): Likewise.
1296 * ecofflink.c (ecoff_write_shuffle): Use bfd_zmalloc.
1297 (bfd_ecoff_write_accumulated_debug): Likewise.
1298 * elf64-alpha.c (get_got_entry): Use bfd_zalloc.
1299 * i386linux.c (bfd_i386linux_size_dynamic_sections): Likewise.
1300 * i386lynx.c (NAME(lynx,slurp_reloc_table)): Use bfd_zmalloc.
1301 * ieee.c (do_with_relocs): Use bfd_zalloc.
1302 * m68klinux.c (bfd_m68klinux_size_dynamic_sections): Likewise.
1303 * pdp11.c (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc.
1304 (NAME(aout,slurp_reloc_table)): Likewise.
1305 (NAME(aout,squirt_out_relocs)): Don't memset when zalloc'd.
1306 * reloc16.c (bfd_coff_reloc16_relax_section): Use bfd_zmalloc.
1307 * som.c (som_build_and_write_symbol_table): Likewise.
1308 (som_slurp_string_table): Likewise.
1309 (som_slurp_symbol_table): Likewise.
1310 (som_bfd_ar_write_symbol_stuff): Likewise.
1311 * sparclinux.c (bfd_sparclinux_size_dynamic_sections): Use bfd_zalloc.
1312 * sunos.c (bfd_sunos_size_dynamic_sections): Likewise.
1313 * tekhex.c (find_chunk): Likewise. Get rid of unused "sname".
1314 * vms-gsd.c (_bfd_vms_slurp_gsd): Use bfd_zmalloc.
1315 * xcofflink.c (xcoff_link_add_symbols): Use bfd_zalloc/bfd_zmalloc.
1316
1126897b
AM
13172002-06-07 Alan Modra <amodra@bigpond.net.au>
1318
1319 * elf-bfd.h (struct bfd_elf_section_data <group_name>): Replace with
1320 "group" union.
1321 (elf_group_name): Update.
1322 (elf_group_id): Define.
1323 (bfd_elf_set_group_contents): Declare.
1324 * elf.c (elf_fake_sections): Qualify use of elf_group_name.
1325 (set_group_contents): Rename to bfd_elf_set_group_contents. Remove
1326 ATTRIBUTE_UNUSED from failedptrarg. If elf_group_id is set, use
1327 that sym for the signature.
1328 (_bfd_elf_compute_section_file_positions): Don't call
1329 set_group_contents for "ld -r" case.
1330 (swap_out_syms): Use bfd_zalloc.
1331 * elflink.h (elf_link_add_archive_symbols): Likewise.
1332 (NAME(bfd_elf,size_dynamic_sections)): Likewise.
1333 (elf_bfd_final_link): Call bfd_elf_set_group_contents.
1334
3fad3c7c
AM
13352002-06-07 Alan Modra <amodra@bigpond.net.au>
1336
1337 * elf64-ppc.c (ppc64_elf_relocate_section): Allow unresolved
1338 relocs in opd for non-shared too.
1339
76f99c63
JL
13402002-06-06 Jeffrey Law <law@redhat.com
1341
1342 * elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting
1343 relocations.
1344
7217313c
NC
13452002-06-06 Nick Clifton <nickc@cambridge.redhat.com>
1346
1347 * merge.c: Include libiberty.h.
1348 * elf-strtab.c: Include libiberty.h.
1349
6cb22815
AM
13502002-06-06 Elias Athanasopoulos <eathan@otenet.gr>
1351
1352 * peXXigen.c (pe_print_idata): Remove unused variable.
1353
1ed89aa9
NC
13542002-06-06 David Heine <dlheine@tensilica.com>
1355
1356 * elf.c (assign_file_positions_for_segments): Remove unallocated
1357 sections from the section to segment mapping for PT_LOAD segments.
1358 Update comment about empty loadable segments.
1359
644c4c80
RS
13602002-06-06 Richard Sandiford <rsandifo@redhat.com>
1361
1362 * stabs.c (_bfd_link_section_stabs): Check that the symbol offset
1363 is within the .stabstr section.
1364
f8ecb12b
AM
13652002-06-06 Alan Modra <amodra@bigpond.net.au>
1366
1367 * elf-bfd.h (struct elf_size_info <swap_symbol_in>): Function args
1368 are "const PTR", not "const PTR *".
1369 (bfd_elf32_swap_symbol_in): Likewise.
1370 (bfd_elf64_swap_symbol_in): Likewise.
1371 * elfcode.h (elf_swap_symbol_in): Change input args to const PTR.
1372 (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
1373 * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
1374 (elf_link_add_object_symbols): Likewise.
1375 (elf_link_record_local_dynamic_symbol): Likewise.
1376 (elf_link_input_bfd): Likewise.
1377 (elf_gc_mark): Likewise.
1378 (elf_reloc_symbol_deleted_p): Likewise.
1379 * elf-m10200.c (mn10200_elf_relax_section): Likewise.
1380 (mn10200_elf_relax_delete_bytes): Likewise.
1381 (mn10200_elf_symbol_address_p): Likewise.
1382 (mn10200_elf_get_relocated_section_contents): Likewise.
1383 * elf-m10300.c (mn10300_elf_relax_section): Likewise.
1384 (mn10300_elf_relax_section): Likewise.
1385 (mn10300_elf_relax_delete_bytes): Likewise.
1386 (mn10300_elf_symbol_address_p): Likewise.
1387 (mn10300_elf_get_relocated_section_contents): Likewise.
1388 * elf32-h8300.c (elf32_h8_relax_section): Likewise.
1389 (elf32_h8_relax_delete_bytes): Likewise.
1390 (elf32_h8_symbol_address_p): Likewise.
1391 (elf32_h8_get_relocated_section_contents): Likewise.
1392 * elf32-hppa.c (get_local_syms): Likewise.
1393 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
1394 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
1395 * elf32-sh.c (sh_elf_relax_section): Likewise.
1396 (sh_elf_relax_delete_bytes): Likewise.
1397 (sh_elf_get_relocated_section_contents): Likewise.
1398 * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
1399 * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
1400 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
1401 * elf64-mmix.c (mmix_elf_relax_section): Likewise.
1402 * elf64-ppc.c (get_local_syms): Likewise.
1403 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
1404 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
1405
1ed89aa9 14062002-06-05 J"orn Rennecke <joern.rennecke@superh.com>
7a33bc10
JR
1407
1408 * config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations.
1409
73ff0d56
AM
14102002-06-05 Alan Modra <amodra@bigpond.net.au>
1411
9dce4196
AM
1412 * elf.c (group_signature): Swap in the whole symbol, and handle
1413 extracting section symbol names.
1414 (setup_group): Add comment.
1415 (set_group_contents): When called from objcopy or ld, arrange for
1416 section contents to be written. Write group member output section
1417 indices to allow objcopy to reorganize sections.
1418 (_bfd_elf_copy_private_section_data): Copy group info.
1419
73ff0d56
AM
1420 * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field.
1421 (bfd_elf32_swap_symbol_in): Update prototype.
1422 (bfd_elf64_swap_symbol_in): Likewise.
1423 * elfcode.h (elf_swap_symbol_in): Change input args to const PTR *.
1424 (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
1425 * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
1426 (elf_link_add_object_symbols): Likewise.
1427 (elf_link_record_local_dynamic_symbol): Likewise.
1428 (elf_link_input_bfd): Likewise.
1429 (elf_gc_mark): Likewise.
1430 (elf_reloc_symbol_deleted_p): Likewise.
1431 * elf-m10200.c (mn10200_elf_relax_section): Likewise.
1432 (mn10200_elf_relax_delete_bytes): Likewise.
1433 (mn10200_elf_symbol_address_p): Likewise.
1434 (mn10200_elf_get_relocated_section_contents): Likewise.
1435 * elf-m10300.c (mn10300_elf_relax_section): Likewise.
1436 (mn10300_elf_relax_section): Likewise.
1437 (mn10300_elf_relax_delete_bytes): Likewise.
1438 (mn10300_elf_symbol_address_p): Likewise.
1439 (mn10300_elf_get_relocated_section_contents): Likewise.
1440 * elf32-h8300.c (elf32_h8_relax_section): Likewise.
1441 (elf32_h8_relax_delete_bytes): Likewise.
1442 (elf32_h8_symbol_address_p): Likewise.
1443 (elf32_h8_get_relocated_section_contents): Likewise.
1444 * elf32-hppa.c (get_local_syms): Likewise.
1445 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
1446 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
1447 * elf32-sh.c (sh_elf_relax_section): Likewise.
1448 (sh_elf_relax_delete_bytes): Likewise.
1449 (sh_elf_get_relocated_section_contents): Likewise.
1450 * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
1451 * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
1452 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
1453 * elf64-mmix.c (mmix_elf_relax_section): Likewise.
1454 * elf64-ppc.c (get_local_syms): Likewise.
1455 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
1456 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
1457 * elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser.
1458 * elf64-alpha.c (alpha_elf_size_info): Likewise.
1459 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
1460 * elf64-mips.c (mips_elf64_size_info): Likewise.
1461 * elf64-s390.c (s390_elf64_size_info): Likewise.
1462 * elf64-sparc.c (sparc64_elf_size_info): Likewise.
1463
53bfd6b4
MR
14642002-06-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1465
1466 * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to...
1467 elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here.
1468 elf64-mips.c (elf_backend_ignore_discarded_relocs): Use
1469 _bfd_mips_elf_ignore_discarded_relocs.
1470 elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare.
1471
d4df96e6
L
14722002-06-05 H.J. Lu <hjl@gnu.org>
1473
1474 * elfxx-mips.c (mips_elf_calculate_relocation): Call
1475 _bfd_elf_rel_local_sym for STT_SECTION relocations against
1476 the SEC_MERGE section.
1477
e61463e1
AM
14782002-06-05 Alan Modra <amodra@bigpond.net.au>
1479
3cac74d0
AM
1480 * coff-alpha.c: Update copyright date.
1481 * coff-mips.c: Likewise.
1482 * xcoff-target.h: Likewise.
1483
e61463e1
AM
1484 * bfd-in.h: Remove "taken from the source" comment.
1485 * libbfd-in.h: Likewise.
1486 * libcoff-in.h: Likewise.
1487 * bfd-in2.h: Regenerate.
1488 * libbfd.h: Regenerate.
1489 * libcoff.h: Regenerate.
1490
1491 * elf.c (bfd_elf_discard_group): Return true.
1492 * elf-bfd.h (bfd_elf_discard_group): Declare.
1493 * bfd-in.h (bfd_elf_discard_group): Don't declare here.
1494 * section.c (bfd_discard_group): Rename to bfd_generic_discard_group.
1495 * bfd.c (bfd_discard_group): Define.
1496 * targets.c (struct bfd_target): Add _bfd_discard_group.
1497 (BFD_JUMP_TABLE_LINK): Here too.
1498 * libbfd-in.h (_bfd_nolink_bfd_discard_group): Define.
1499 * aout-adobe.c (aout_32_bfd_discard_group): Define.
1500 * aout-target.h (MY_bfd_discard_group): Define.
1501 * aout-tic30.c (MY_bfd_discard_group): Define.
1502 * binary.c (binary_bfd_discard_group): Define.
1503 * bout.c (b_out_bfd_discard_group): Define.
1504 * coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define.
1505 * coffcode.h (coff_bfd_discard_group): Define.
1506 * coff-mips.c (_bfd_ecoff_bfd_discard_group): Define.
1507 * elfxx-target.h (bfd_elfNN_bfd_discard_group): Define.
1508 * i386msdos.c (msdos_bfd_discard_group): Define.
1509 * i386os9k.c (os9k_bfd_discard_group): Define.
1510 * ieee.c (ieee_bfd_discard_group): Define.
1511 * ihex.c (ihex_bfd_discard_group): Define.
1512 * mmo.c (mmo_bfd_discard_group): Define.
1513 * nlm-target.h (nlm_bfd_discard_group): Define.
1514 * oasys.c (oasys_bfd_discard_group): Define.
1515 * ppcboot.c (ppcboot_bfd_discard_group): Define.
1516 * som.c (som_bfd_discard_group): Define.
1517 * srec.c (srec_bfd_discard_group): Define.
1518 * tekhex.c (tekhex_bfd_discard_group): Define.
1519 * versados.c (versados_bfd_discard_group): Define.
1520 * vms.c (vms_bfd_discard_group): Define.
1521 * xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define.
1522 * coff64-rs6000.c (rs6000coff64_vec): Update initialiser.
1523 (aix5coff64_vec): Likewise.
1524 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
1525
9cba27b2
JT
15262002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
1527
1528 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo.
1529 (BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c.
1530 (elf32-sh64-com.lo): New dependency list.
1531 * Makefile.in: Regenerate.
1532 * configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec)
1533 (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add
1534 elf32-sh64-com.lo.
1535 * configure: Regenerate.
1536 * elf32-sh64.c (sh64_address_in_cranges)
1537 (sh64_get_contents_type, sh64_address_is_shmedia): Move to...
1538 (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb):
1539 (crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to...
1540 * elf32-sh64-com.c: ...here. New file.
1541
8d2c33be
AM
15422002-06-04 Alan Modra <amodra@bigpond.net.au>
1543
1544 * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove
1545 ATTRIBUTE_UNUSED on used params.
1546 * elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks
1547 before calling bfd_section_from_elf_index on local syms.
1548 * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
1549
5b0e55b6
JT
15502002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
1551
1552 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
1553 (BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
1554 (BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
1555 (BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
1556 (elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
1557 * Makefile.in: Regenerate.
1558 * config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
1559 (sh64-*-netbsd*): New targets.
1560 * configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
1561 bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
1562 * configure: Regenerate.
1563 * elf32-sh64-nbsd.c: New file.
1564 * elf64-sh64-nbsd.c: New file.
1565 * targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
1566 bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
1567 bfd_elf64_sh64lnbsd_vec.
1568
b885599b
AM
15692002-06-04 Alan Modra <amodra@bigpond.net.au>
1570
1571 * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups.
1572 (bfd_section_from_shdr): Likewise. Set section name of group
1573 sections from signature.
1574 (group_signature): Split out from setup_group. Ensure symbol table
1575 is available.
1576 (bfd_elf_discard_group): New function.
1577 (_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on
1578 .gnu.linkonce* sections if they are members of a group.
1579 (set_group_contents): Set GRP_COMDAT flag.
1580 * section.c (bfd_discard_group): New function.
1581 * bfd-in.h (bfd_elf_discard_group): Declare.
1582 * bfd-in2.h: Regenerate.
1583 * elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field.
1584 (elf_linkonce_p): Define.
1585
90937f86
AM
15862002-06-04 Alan Modra <amodra@bigpond.net.au>
1587
1588 * elf.c (bfd_section_from_shdr): Make "name" const.
1589 * elf-bfd.h (elf_backend_section_from_shdr): Likewise.
1590 * elf32-i370.c (i370_elf_section_from_shdr): Likewise.
1591 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
1592 * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
1593 * elf32-v850.c (v850_elf_section_from_shdr): Likewise.
1594 * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
1595 * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
1596 * elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise.
1597 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
1598 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
1599 * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
1600
cf6fb9ce
MR
16012002-06-03 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1602
1603 * elfxx-mips.c (ABI_64_P): Use backend's data to determine the
1604 ABI.
1605
cedb70c5
KH
16062002-06-02 Kazu Hirata <kazu@cs.umass.edu>
1607
1608 * elf32-arc.c: Fix formatting.
1609 * elf32-arm.h: Likewise.
1610 * elf32-cris.c: Likewise.
1611 * elf32-dlx.c: Likewise.
1612 * elf32-hppa.c: Likewise.
1613 * elf32-i386.c: Likewise.
1614 * elf32-i386qnx.c: Likewise.
1615 * elf32-or32.c: Likewise.
1616 * elf32-s390.c: Likewise.
1617 * elf32-sh64.c: Likewise.
1618 * elf32-vax.c: Likewise.
1619 * elf32-xstormy16.c: Likewise.
1620 * elf64-alpha.c: Likewise.
1621 * elf64-mmix.c: Likewise.
1622 * elf64-ppc.c: Likewise.
1623 * elf64-s390.c: Likewise.
1624 * elf64-sh64.c: Likewise.
1625 * elf64-x86-64.c: Likewise.
1626
048d873d
RH
16272002-06-02 Richard Henderson <rth@redhat.com>
1628
1629 * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference
1630 null when there are no got entries for a symbol.
1631 (elf64_alpha_relax_find_tls_segment): Rearrange to avoid
1632 uninitialized variable warning.
1633
4a67a098
RH
16342002-06-01 Richard Henderson <rth@redhat.com>
1635
1636 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for
1637 undefined symbols here.
1638 (elf64_alpha_relax_section): Do it here. Also test for not
1639 defined in the current module.
1640 (elf64_alpha_relocate_section_r): Split out of ...
1641 (elf64_alpha_relocate_section): ... here. Don't dereference
1642 NULL when looking up local got entries.
1643
f44f99a5
RH
16442002-06-01 Richard Henderson <rth@redhat.com>
1645
1646 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined
1647 symbols from JSR relaxation.
1648 (elf64_alpha_size_plt_section_1): New.
1649 (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ...
1650 (elf64_alpha_size_rela_got_1): ... here.
1651 (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ...
1652 (elf64_alpha_size_rela_got_section): ... here.
1653 (elf64_alpha_size_plt_section): New.
1654 (elf64_alpha_relax_section): Call them.
1655 (elf64_alpha_size_got_sections): Remove output_bfd arg.
1656 (elf64_alpha_finish_dynamic_symbol): Check gotent use_count.
1657
9e756d64
RH
16582002-06-01 Richard Henderson <rth@redhat.com>
1659
1660 * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New.
1661 (elf64_alpha_relocate_section): Use them. Reject LE TLS relocs
1662 in shared libraries. Fix DTPRELHI and TPRELHI value.
1663 (INSN_ADDQ, INSN_RDUNIQ): New.
1664 (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent.
1665 (elf64_alpha_relax_with_lituse): Return boolean. Remove irelend
1666 argument. Reject dynamic symbols. Use LITUSE symbolic constants.
1667 (elf64_alpha_relax_got_load): Rename from relax_without_lituse.
1668 Handle GOTDTPREL and GOTTPREL relocations.
1669 (elf64_alpha_relax_gprelhilo): New.
1670 (elf64_alpha_relax_tls_get_addr): New.
1671 (elf64_alpha_relax_find_tls_segment): New.
1672 (elf64_alpha_relax_section): Handle TLS relocations.
1673 (ALPHA_ELF_LINK_HASH_TLS_IE): New.
1674 (elf64_alpha_check_relocs): Set it.
1675
c853d7f6
RH
16762002-06-01 Richard Henderson <rth@redhat.com>
1677
b646261c
RH
1678 * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp.
1679
c853d7f6
RH
1680 * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
1681 check; don't suppress dynamic relocs for non-allocated sections.
1682
d7e41a96
RH
1683 * elf64-alpha.c: Remove dead code.
1684
5f333394
AM
16852002-05-31 Alan Modra <amodra@bigpond.net.au>
1686
08e0ee05
AM
1687 * bfd-in2.h: Regenerate.
1688 * libbfd.h: Regenerate.
1689 * po/SRC-POTFILES.in: Regenerate.
1690
5f333394
AM
1691 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate
1692 space for bss .plt.
1693
caf47ea6
AM
16942002-05-31 Graeme Peterson <gp@qnx.com>
1695
1696 * Makefile.am (BFD32_BACKENDS): Add elf32-i386qnx.lo.
1697 (BFD32_BACKENDS_CFILES): Add elf32-i386qnx.c.
1698 Run "make dep-am".
1699 * Makefile.in: Regenerate.
1700 * config.bfd: Add i[3456]86-*-nto-qnx* support.
1701 * configure.in: Add bfd_elf32_i386qnx_vec support.
1702 * configure: Regenerate.
1703 * elf-bfd.h (struct elf_backend_data): Add set_nonloadable_filepos,
1704 is_contained_by_filepos, and copy_private_bfd_data_p.
1705 * elf.c (assign_file_positions_for_segments): Call backend
1706 set_nonloadable_filepos. Fix non-K&R call to _bfd_error_handler.
1707 (IS_CONTAINED_BY_FILEPOS): Define.
1708 (INCLUDE_SECTION_IN_SEGMENT): Also test IS_CONTAINED_BY_FILEPOS.
1709 (copy_private_bfd_data): Use IS_CONTAINED_BY_FILEPOS. Typo fix.
1710 Fix non-K&R call to _bfd_error_handler.
1711 (_bfd_elf_copy_private_section_data): Use backend
1712 copy_private_bfd_data_p.
1713 * elf32-i386.c: Don't include elfxx-target.h when
1714 ELF32_I386_C_INCLUDED is defined.
1715 * elf32-i386qnx.c: New QNX elf backend file.
1716 * elfxx-target.h: Add elf_backend_set_nonloadable_filepos,
1717 elf_backend_is_contained_by_filepos, and
1718 elf_backend_do_copy_private_bfd_data.
1719 * targets.c: Add bfd_target bfd_elf32_i386qnx_vec.
1720
5bc56484
AM
17212002-05-31 Alan Modra <amodra@bigpond.net.au>
1722
1723 * elfarm-oabi.c (bfd_elf32_arm_add_glue_sections_to_bfd): Define.
1724 Move other similar defines to start of file.
1725
1b164155
TR
17262002-05-30 Tom Rix <trix@redhat.com>
1727
1728 * coff-rs6000.c (xcoff_rtype2howto): Handle 16 bit R_RBA.
1729 * coff64-rs6000.c (xcoff64_rtype2howto): Same.
1730
3765b1be
RH
17312002-05-30 Richard Henderson <rth@redhat.com>
1732
1733 * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD,
1734 ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New.
1735 (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove.
1736 (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove.
1737 (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated.
1738 (struct alpha_elf_obj_tdata): Rename total_got_entries and
1739 n_local_got_entries to total_got_size and local_got_size.
1740 (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs.
1741 (alpha_got_entry_size): New.
1742 (elf64_alpha_relax_with_lituse): Use it.
1743 (elf64_alpha_relax_without_lituse): Likewise.
1744 (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES.
1745 (get_got_entry): New.
1746 (elf64_alpha_check_relocs): Handle TLS relocs. Reorganize.
1747 (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask.
1748 (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type.
1749 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise.
1750 (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size.
1751 (elf64_alpha_calc_got_offsets): Likewise.
1752 (alpha_dynamic_entries_for_reloc): New.
1753 (elf64_alpha_calc_dynrel_sizes): Use it.
1754 (elf64_alpha_size_dynamic_sections): Likewise.
1755 (elf64_alpha_relocate_section): Handle TLS relocations.
1756 * reloc.c: Add Alpha TLS relocations.
1757 * bfd-in2.h, libbfd.h: Rebuild.
1758
5e226794
NC
17592002-05-29 Ralf Habacker <ralf.habacker@freenet.de>
1760
1761 * peXXigen.c (pe_print_idata): Remove double printed
1762 import table lines; add Bound-To comment.
1763
90ace9e9
JT
17642002-05-29 Matt Thomas <matt@3am-software.com>
1765
1766 * Makefile.am (BFD32_BACKENDS): Add elf32-vax.lo.
1767 (BFD32_BACKENDS_CFILES): Add elf32-vax.c.
1768 (elf32-vax.lo): New rule.
1769 * Makefile.in: Regenerate.
1770 * configure.in (bfd_elf32_vax_vec)
1771 (vaxnetbsd_vec): New vectors.
1772 * configure: Regenerate.
1773 * config.bfd (vax-*-netbsdelf*)
1774 (vax-*-netbsdaout*)
1775 (vax-*-netbsd*): New targets.
1776 * elf32-vax.c: New file.
1777 * reloc.c: Add VAX relocations.
1778 * bfd-in2.h: Regenerate.
1779 * targets.c (_bfd_target_vector): Add bfd_elf32_vax_vec.
1780
4a253e81
JT
17812002-05-29 Jason Thorpe <thorpej@wasabisystems.com>
1782
1783 * config.bfd (arm-*-netbsd*): Add bfd_elf32_littlearm_vec
1784 and bfd_elf32_bigarm_vec to targ_selvecs.
1785
6e7c73dd
CF
17862002-05-29 Ralf Habacker <ralf.habacker@freenet.de>
1787
1788 * peXXigen.c (pe_print_idata): Fix seg faults on printing import tables
1789 with auto-imported symbols.
1790
8afb0e02
NC
17912002-05-29 Adam Nemet <anemet@lnxw.com>
1792
1793 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Don't add glue
1794 sections only record bfd.
9bab7074 1795 (bfd_elf32_arm_add_glue_sections_to_bfd): New function.
8afb0e02 1796 * bfd-in.h (bfd_elf32_arm_add_glue_sections_to_bfd): Declare it.
9bab7074 1797 * bfd-in2.h: Regenerate.
8afb0e02 1798
a95653f5
NC
17992002-05-28 Nick Clifton <nickc@cambridge.redhat.com>
1800
1801 * syms.c (_bfd_stab_section_find_nearest_line): Move
1802 declaration and initialisation of saw_line and saw_func out of
1803 for loop.
1804
7cdc5bba
AM
18052002-05-29 Alan Modra <amodra@bigpond.net.au>
1806
1807 * elf64-ppc.c (ppc64_elf_get_symbol_info): New function.
1808 (bfd_elf64_get_symbol_info): Define.
1809 * elfxx-target.h (bfd_elfNN_get_symbol_info): Only define if undef.
1810
4c7aad1c
AM
18112002-05-29 Andrey Volkov <avolkov@transas.com>
1812
1813 * cpu-h8300.c: Make default h8300 machine first in machine list.
1814
d172d4ba
NC
18152002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
1816
1817 * config.bfd: Added DLX configuraton.
1818 * Makefile.am: Added DLX configuraton.
1819 * configure.in: Added DLX configuraton.
1820 * archures.c: Add DLX architecure.
1821 * reloc.c: Add DLX relocs.
1822 * targets.c: Added DLX target vector.
1823 * configure: Regenerate.
1824 * Makefile.in: Regenreate.
1825 * bfd-in2.h: Regenreate.
1826 * elf32-dlx.c: New file: Support DLX target.
1827 * cpu-dlx.c: New file: Support DLX target.
1828
d1329ca3
AM
18292002-05-25 Alan Modra <amodra@bigpond.net.au>
1830
428d0de3
AM
1831 * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Formatting.
1832
d1329ca3
AM
1833 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Revert last change.
1834 (ppc64_elf_check_relocs): Don't set up function descriptor symbol
1835 strings to point inside function code sym string.
1836 (func_desc_adjust): Likewise.
1837 (ppc64_elf_hide_symbol): Rewrite code to look up function code sym.
1838
3bab7989
ML
18392002-05-24 Michal Ludvig <mludvig@suse.cz>
1840
1841 * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Added.
1842 (elf64_x86_64_grok_psinfo): Added.
1843
436e8db0
NC
18442002-05-24 TAMURA Kent <kent@netbsd.org>
1845
1846 * config.bfd: Add a target for i386-netbsdpe.
1847
ea1e4b0d
AM
18482002-05-24 Alan Modra <amodra@bigpond.net.au>
1849
1850 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy is_func
1851 and is_func_descriptor.
1852 (func_desc_adjust): Hide function code sym in shared libs unless
1853 there is a matching exported function descriptor sym.
1854
13ae64f3
JJ
18552002-05-23 Jakub Jelinek <jakub@redhat.com>
1856
1857 * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL
1858 for symbols from SHF_TLS section.
1859 (_bfd_elf_print_private_bfd_data): Add PT_TLS.
1860 (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections.
1861 (map_sections_to_segments): Build PT_TLS segment if necessary.
1862 (assign_file_positions_for_segments): Likewise.
1863 (get_program_header_size): Account for PT_TLS segment.
1864 (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from
1865 SEC_THREAD_LOCAL sections to STT_TLS.
1866 * reloc.c: Add 386 and IA-64 TLS relocs.
1867 * section.c (SEC_THREAD_LOCAL): Define.
1868 (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS):
1869 Remove.
1870 * elflink.h (elf_link_add_object_symbols): Support .tcommon.
1871 (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS
1872 unconditionally.
1873 (struct elf_final_link_info): Add first_tls_sec.
1874 (elf_bfd_final_link): Set first_tls_sec.
1875 Compute elf_hash_table (info)->tls_segment.
1876 (elf_link_output_extsym): Handle STT_TLS symbols.
1877 (elf_link_input_bfd): Likewise.
1878 * syms.c (BSF_THREAD_LOCAL): Define.
1879 * bfd-in2.h: Rebuilt.
1880 * libbfd.h: Rebuilt.
1881 * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff,
1882 elf_i386_mkobject, elf_i386_object_p): New functions.
1883 (elf_howto_table): Add TLS relocs.
1884 (elf_i386_reloc_type_lookup): Support TLS relocs.
1885 (elf_i386_info_to_howto_rel): Likewise.
1886 (struct elf_i386_link_hash_entry): Add tls_type.
1887 (struct elf_i386_obj_tdata): New.
1888 (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type):
1889 New macros.
1890 (struct elf_i386_link_hash_table): Add tls_ldm_got.
1891 (link_hash_newfunc): Clear tls_type.
1892 (elf_i386_check_relocs): Support TLS relocs.
1893 (elf_i386_gc_sweep_hook): Likewise.
1894 (allocate_dynrelocs): Likewise.
1895 (elf_i386_size_dynamic_sections): Likewise.
1896 (elf_i386_relocate_section): Likewise.
1897 (elf_i386_finish_dynamic_symbol): Likewise.
1898 (bfd_elf32_mkobject, elf_backend_object_p): Define.
1899 * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset,
1900 dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done,
1901 want_tprel, want_dtpmod, want_dtprel.
1902 (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions.
1903 (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to
1904 R_IA64_LTOFF_TPREL22.
1905 (elf_code_to_howto_index): Add TLS relocs.
1906 (elfNN_ia64_check_relocs): Support TLS relocs.
1907 (allocate_global_data_got): Account for TLS .got data.
1908 (allocate_dynrel_entries): Account for TLS dynamic relocations.
1909 (elfNN_ia64_install_value): Supprt TLS relocs.
1910 (set_got_entry): Support TLS relocs.
1911 (elfNN_ia64_relocate_section): Likewise.
1912
c62e1cc3
NC
19132002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
1914
1915 * elf32-arm.h (elf32_arm_final_link_relocate): For the Thumb
1916 BLX reloc round the relocation up rather than down.
1917 * coff-arm.c (coff_arm_relocate_section): Likewise.
1918
c5a43a5d
L
19192002-05-21 H.J. Lu (hjl@gnu.org)
1920
1921 * linker.c (_bfd_generic_link_add_one_symbol): Allow multiple
1922 definition.
1923
afbe61cf
AM
19242002-05-22 Alan Modra <amodra@bigpond.net.au>
1925
1926 * elf64-ppc.c (ppc64_elf_size_stubs): Don't strip .branch_lt.
1927 (ppc64_elf_relocate_section): Handle unresolved relocs in opd.
1928
9c07fe7c
AM
19292002-05-22 Alan Modra <amodra@bigpond.net.au>
1930
1931 * elf64-ppc.c (ppc64_elf_relocate_section): Return false for
1932 unresolved relocs.
1933 (ppc64_elf_size_dynamic_sections): Check for splt NULL.
1934
21611032
TS
19352002-05-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1936
c5cd6d62 1937 * bfd.c (bfd_get_arch_size): Remove bfd_set_error call for
21611032
TS
1938 non-ELF targets.
1939
41241523
TS
19402002-05-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1941
1942 * elf-bfd.h (elf_backend_emit_relocs): Change prototype to return
1943 an error value.
1944 * elflink.h (elf_link_output_relocs): Likewise. Improve error message.
1945 return with false on error.
1946 (elf_link_input_bfd): Check reloc_emitter return value.
1947
658f2588
JT
19482002-05-21 Jason Thorpe <thorpej@wasabisystems.com>
1949
1950 * config.bfd (armeb-*-netbsdelf*): New target.
1951
c862ae31
AM
19522002-05-20 Alan Modra <amodra@bigpond.net.au>
1953
1954 * elf64-ppc.c (ppc_build_one_stub): Point undefined function syms
1955 at the plt call stub.
1956
6dd14845
TS
19572002-05-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1958
1959 * cpu-mips.c (mips_compatible): Don't try to check machine
1960 compatibility.
1961
a58d9c34
TR
19622002-05-18 Tom Rix <trix@redhat.com>
1963
1964 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_out): Fix C_FILE auxent.
1965
ef60b7ff
AM
19662002-05-17 Alan Modra <amodra@bigpond.net.au>
1967
1968 * elf64-ppc.c (ppc64_elf_info_to_howto): Formatting.
1969 (ppc64_elf_relocate_section): Don't warn about reloc overflow when
1970 we've already warned about an undefined symbol. Report more
1971 detail on reloc errors.
1972
a703a6ea
AM
19732002-05-17 Alan Modra <amodra@bigpond.net.au>
1974
1975 * acinclude.m4 (AM_INSTALL_LIBBFD): New.
1976 * configure.in: Invoke AM_INSTALL_LIBBFD.
1977 * Makefile.am (install-data-local): Revert 2002-05-13. Move to..
1978 (install_libbfd): .. New target.
1979 (uninstall_libbfd): Likewise.
1980 (install-bfdlibLTLIBRARIES): Likewise.
1981 (uninstall-bfdlibLTLIBRARIES): Likewise.
1982 (bfdlibdir): New.
1983 (bfdincludedir): New.
1984 (lib_LTLIBRARIES): Rename to bfdlib_LTLIBRARIES.
1985 * aclocal.m4: Regenerate.
1986 * configure: Regenerate.
1987 * Makefile.in: Regenerate.
1988
2c13d98b
NC
19892002-05-17 Stuart Balfour <sbalfour@cisco.com>
1990
1991 * hash.c (bfd_hash_lookup): Remove computation of len from inside
1992 hash loop.
1993
629936c5
NC
19942002-05-16 Nick Clifton <nickc@cambridge.redhat.com>
1995
1996 * config.bfd: Add targets for sh64-linux (little endian and
1997 big endian).
1998
e4cf60a8
NC
19992002-05-15 Laurent Pinchart <laurent.pinchart@skynet.be>
2000
2001 * peXXigen.c (pe_print_idata): Do not assume that the first thunk
2002 is located in the same section as the import table. Instead
2003 check, and if necessary load the section containing the thunk.
2004
d1e66cd4
NC
20052002-05-15 Nick Clifton <nickc@cambridge.redhat.com>
2006
2007 * aix5ppc-core.c (xcoff64_core_p): Replace bfd_read with
ea1e4b0d
AM
2008 bfd_bread.
2009 (xcoff64_core_file_matches_executable_p): Replace bfd_read
2010 with bfd_bread.
d1e66cd4 2011
2d653fc7
AM
20122002-05-15 Alan Modra <amodra@bigpond.net.au>
2013
2014 * aix5ppc-core.c: Warning fixes.
2015 * aout-adobe.c (aout_32_bfd_link_just_syms): Define.
2016 * aout-target.h (MY_bfd_link_just_syms): Define.
2017 * aout-tic30.c (MY_bfd_link_just_syms): Define.
2018 * bfd.c (bfd_link_just_syms): Define.
2019 * binary.c (binary_bfd_link_just_syms): Define.
2020 * bout.c (b_out_bfd_link_just_syms): Define.
2021 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update initializer.
2022 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
2023 * coffcode.h (coff_bfd_link_just_syms): Define.
2024 * elf-bfd.h (enum elf_link_info_type): Add ELF_INFO_TYPE_JUST_SYMS.
2025 (elf_discarded_section): Check for ELF_INFO_TYPE_JUST_SYMS.
2026 (_bfd_elf_link_just_syms): Declare.
2027 * elf.c (_bfd_elf_link_just_syms): New function.
2028 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Check that
2029 sections haven't already been discarded by the linker.
2030 * elflink.h (elf_link_add_object_symbols): Likewise for stab
2031 sections and SEC_MERGE sections.
2032 (elf_bfd_discard_info): Similarly here.
2033 * elfxx-target.h (bfd_elfNN_bfd_link_just_syms): Define.
2034 * i386msdos.c (msdos_bfd_link_just_syms): Define.
2035 * i386os9k.c (os9k_bfd_link_just_syms): Define.
2036 * ieee.c (ieee_bfd_link_just_syms): Define.
2037 * ihex.c (ihex_bfd_link_just_syms): Define.
2038 * libbfd-in.h (_bfd_nolink_bfd_link_just_syms): Define.
2039 (_bfd_generic_link_just_syms): Declare.
2040 * libecoff.h (_bfd_ecoff_bfd_link_just_syms): Define.
2041 * linker.c (_bfd_generic_link_just_syms): New function.
2042 * mmo.c (mmo_bfd_link_just_syms): Define.
2043 * nlm-target.h (nlm_bfd_link_just_syms): Define.
2044 * oasys.c (oasys_bfd_link_just_syms): Define.
2045 * ppcboot.c (ppcboot_bfd_link_just_syms): Define.
2046 * som.c (som_bfd_link_just_syms): Define.
2047 * srec.c (srec_bfd_link_just_syms): Define.
2048 * targets.c (struct bfd_target): Add _bfd_link_just_syms.
2049 (BFD_JUMP_TABLE_LINK): And here.
2050 * tekhex.c (tekhex_bfd_link_just_syms): Define.
2051 * versados.c (versados_bfd_link_just_syms): Define.
2052 * vms.c (vms_bfd_link_just_syms): Define.
2053 * libbfd.h: Regenerate.
2054 * bfd-in2.h: Regenerate.
2055
cb7394f2
TS
20562002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2057
2058 * elf32-mips.c: Remove superfluous definitions copied from
2059 elfxx-mips.c.
2060 (bfd_elf32_bigmips_vec,bfd_elf32_littlemips_vec): Use the
2061 SGIish vectors to check the special case.
2062 (mips_elf_hi16_reloc): Fix comment.
2063 (mips_elf_got16_reloc): Likewise.
2064 (_bfd_mips_elf32_gprel16_reloc): Likewise.
2065 (elf_reloc_map): Code cleanup.
2066 (mips_reloc_map): Add comment.
2067 (bfd_elf23_bfd_reloc_type_lookup): Code cleanup.
2068 (mips_elf32_rtype_to_howto): Likewise.
2069 (mips_elf32_discard_info): Likewise.
2070 (elf32_mips_irix_compat): Invert logic: Only SGIish vectors
2071 lead to IRIX compatibility now.
2072
8dc1a139
TS
20732002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2074
2075 * elfxx-mips.c: Call it IRIX, not Irix in comments.
2076
2051e1b5
JT
20772002-05-13 Jason Thorpe <thorpej@wasabisystems.com>
2078
2079 * config.bfd (shle-*-netbsdelf*): Add target which includes
2080 sh64 support.
2081
83954261
AM
20822002-05-13 David Edelsohn <edelsohn@gnu.org>
2083
2084 * configure.in: Revert 2002-04-07. Instead, auto-configure
2085 HAVE_ST_C_IMPL.
2086 * configure: Regenerate.
2087 * config.in: Regenerate.
2088 * rs6000-core.c (CNEW_IMPL): Guard use of c_impl with HAVE_ST_C_IMPL
2089 or AIX_5_CORE.
2090
a9bf1154
NC
20912002-05-11 Federico G. Schwindt <fgsch@olimpo.com.br>
2092
2093 * configure.in (sparc*-*-openbsd*): Support sparc64-openbsd
2094 corefiles as well.2
2095 * configure: Regenerate.
2096
3129eb7a
AM
20972002-05-13 Alan Modra <amodra@bigpond.net.au>
2098
2099 * Makefile.am (install-data-local): Install headers to
2100 $(exec_prefix)/include.
2101 * Makefile.in: Regenerate.
2102
a9a32010
DJ
21032002-05-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
2104 Daniel Jacobowitz <drow@mvista.com>
2105
2106 * coff-sh.c (sh_reloc_map): Map to R_SH_IMM32 for non-PE. Don't
2107 map BFD_RELOC_RVA.
2108
21092002-05-11 Federico G. Schwindt <fgsch@olimpo.com.br>
690cc98b
NC
2110
2111 * config.bfd (alpha*-*-openbsd*, sparc64*-*-openbsd*,
2112 hppa*-*-openbsd*): New targets.
2113 * configure.in (alpha*-*-openbsd*): Set COREFILE.
2114 * configure: Regenerate.
2115
f1f0d9ab
TR
21162002-05-10 Tom Rix <trix@redhat.com>
2117
ea1e4b0d 2118 * coff64-rs6000.c (xcoff64_reloc_type_br): New function for
f1f0d9ab
TR
2119 xcoff64_ppc_relocate_section.
2120 * coff-rs6000.c : Extern common xcoff_reloc_type functions.
2121 * libxcoff.h: Common xcoff_reloc_type function declaration.
2122
c432ba1a
AM
21232002-05-10 Alan Modra <amodra@bigpond.net.au>
2124
16a10388 2125 * elf32-i386.c (elf_i386_relocate_section): Remove overflow checks
90937f86 2126 added in 2002-05-09 commit.
16a10388 2127
c432ba1a
AM
2128 * elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04,
2129 don't look for stubs on all undefined syms.
2130
4a335f3d
AM
21312002-05-09 Alan Modra <amodra@bigpond.net.au>
2132
8fc39d5d
AM
2133 * elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete.
2134 (ppc64_elf_howto_raw <R_PPC64_RELATIVE>): Not pc_relative or
2135 pcrel_offset.
2136
4a335f3d
AM
2137 * elf32-i386.c (elf_howto_table): Comments.
2138 (elf_i386_relocate_section): Handle more relocs for relocatable
2139 linking and against SEC_MERGE sections.
2140
41fcb14e
AM
21412002-05-08 Alan Modra <amodra@bigpond.net.au>
2142
2143 * elf32-ppc.c (ppc_elf_create_got): New function.
2144 (ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before
ea1e4b0d 2145 _bfd_elf_create_dynamic_sections. Correct .plt flags.
41fcb14e
AM
2146 (ppc_elf_check_relocs): Use ppc_elf_create_got in place of
2147 _bfd_elf_create_got_section.
2148
b491616a
AM
21492002-05-07 Alan Modra <amodra@bigpond.net.au>
2150
2151 * elf-bfd.h (struct elf_backend_data): Add rela_normal.
2152 * elfxx-target.h (elf_backend_rela_normal): Define.
2153 (elfNN_bed): Init rela_normal.
2154 * elflink.h (elf_link_input_bfd <emit_relocs>): Handle adjustment
2155 for section symbols here if rela_normal. Simplify abs section test.
2156 * elf-m10200.c (mn10200_elf_relocate_section): If relocatable,
2157 return immediately. Remove code handling relocatable linking.
2158 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
2159 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
2160 * elf32-i370.c (i370_elf_relocate_section): Likewise.
2161 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
2162 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2163 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
2164 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
2165 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2166 * elf32-s390.c (elf_s390_relocate_section): Likewise.
2167 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
2168 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2169 * elf64-s390.c (elf_s390_relocate_section): Likewise.
2170 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2171 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
2172 * elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL.
2173 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
2174 * elf-m10200.c (elf_backend_rela_normal): Define.
2175 * elf-m10300.c (elf_backend_rela_normal): Define.
2176 * elf32-fr30.c (elf_backend_rela_normal): Define.
2177 * elf32-i370.c (elf_backend_rela_normal): Define.
2178 * elf32-i860.c (elf_backend_rela_normal): Define.
2179 * elf32-m68k.c (elf_backend_rela_normal): Define.
2180 * elf32-mcore.c (elf_backend_rela_normal): Define.
2181 * elf32-openrisc.c (elf_backend_rela_normal): Define.
2182 * elf32-ppc.c (elf_backend_rela_normal): Define.
2183 * elf32-s390.c (elf_backend_rela_normal): Define.
2184 * elf32-xstormy16.c (elf_backend_rela_normal): Define.
2185 * elf64-ppc.c (elf_backend_rela_normal): Define.
2186 * elf64-s390.c (elf_backend_rela_normal): Define.
2187 * elf64-x86-64.c (elf_backend_rela_normal): Define.
2188 * elfxx-ia64.c (elf_backend_rela_normal): Define.
2189 * elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL.
2190 * elf32-m32r.c (elf_backend_rela_normal): Likewise.
2191
df212a7e
NC
21922002-05-06 Nick Clifton <nickc@cambridge.redhat.com>
2193
2194 * elf32-arm.h (elf32_arm_final_link_relocate): Convert
2195 'reloc_signed_max' and 'reloc_signed_min' into half-word offsets.
2196
3decf53c
AM
21972002-05-06 Alan Modra <amodra@bigpond.net.au>
2198
2199 * elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset
2200 when not relocatable. Fix reloc_emitter call for K&R.
2201
f46c2da6
AM
22022002-05-04 Alan Modra <amodra@bigpond.net.au>
2203
2204 * elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code
2205 reloading local sym addend mistakenly removed in 2002-05-01 change.
2206
2207 * dwarf2.c (struct line_head): Make prologue_length a bfd_vma.
2208 (read_abbrevs): Change "offset" param to bfd_vma.
2209 (parse_comp_unit): Change "version" and addr_size to unsigned ints.
2210 Change "abbrev_offset" to bfd_vma.
2211 (read_indirect_string): Use correct conversion chars in error
2212 message format string, cast bfd_vma's to unsigned long.
2213 (read_abbrevs): Likewise.
2214 (read_attribute_value): Likewise.
2215 (decode_line_info): Likewise.
2216 (scan_unit_for_functions): Likewise.
2217 (parse_comp_unit): Likewise.
2218
59862849
TR
22192002-05-04 Tom Rix <trix@redhat.com>
2220
2221 * coffswap.h (coff_swap_reloc_in): Remove XCOFF support.
2222 (coff_swap_reloc_out): Same.
2223 * coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h.
2224 (xcoff_swap_reloc_out): Same.
2225 (xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special
2226 case some 16 bit relocs. Add reloc value to output.
2227 (xcoff_howto_table): Remove 64 bit R_POS, add 16 bit
ea1e4b0d 2228 R_RBR. Improve names.
59862849
TR
2229 (_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS.
2230 (bfd_xcoff_backend_data): Update with new reloc swap names.
2231 (bfd_pmac_xcoff_backend_data) : Same.
2232 * coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h.
2233 (xcoff64_swap_reloc_out): Same.
ea1e4b0d 2234 (xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit
59862849 2235 R_POS. Add reloc value to output.
ea1e4b0d
AM
2236 (xcoff64_howto_table): Move 64 bit R_POS to first entry. Add 16
2237 bit R_RBR. Improve names, masks.
59862849
TR
2238 (xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS.
2239 (bfd_xcoff_backend_data): Update with new reloc swap names.
2240 (bfd_xcoff_aix5_backend_data) : Same.
2241
b4655ea9
AM
22422002-05-04 Alan Modra <amodra@bigpond.net.au>
2243
2244 * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add
2245 bfd_count top_index, input_list, all_local_syms.
2246 (elf32_hppa_setup_section_lists): New function, split from
2247 elf32_hppa_size_stubs.
2248 (elf32_hppa_next_input_section): Likewise.
2249 (group_sections): Likewise.
2250 (get_local_syms): Likewise.
2251 (elf32_hppa_size_stubs): Adjust for split out functions. Look for
2252 stubs on undefined syms too.
2253 (elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*.
8fc39d5d 2254 Only access htab elf fields when we have an elf hash table.
b4655ea9
AM
2255 * elf32-hppa.h (elf32_hppa_setup_section_lists): Declare.
2256 (elf32_hppa_next_input_section): Declare.
2257
301e3139
AM
22582002-05-04 Bob Byrnes <byrnes@curl.com>
2259
2260 * opncls.c (_bfd_new_bfd_contained_in): Check return value of
2261 _bfd_new_bfd.
2262
7c5fcef7
L
22632002-05-03 H.J. Lu (hjl@gnu.org)
2264
2265 * elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local.
2266 (mips_elf_link_hash_newfunc): Initialize forced_local to false.
2267 (mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol
2268 to hide a global symbol.
2269 (_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set
ea1e4b0d 2270 forced_local to true.
7c5fcef7 2271
84de6048
RH
22722002-05-02 Richard Henderson <rth@redhat.com>
2273
2274 * elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs
2275 vs SHN_UNDEF to zero.
2276
805fc799
AM
22772002-05-02 Alan Modra <amodra@bigpond.net.au>
2278
c061c2d8
AM
2279 * elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_SECTOFF>): Change to a
2280 16 bit reloc.
2281 <R_PPC64_SECTOFF_DS>: Likewise.
2282 (ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
2283 SECTOFF reloc.
2284 * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_SECTOFF>): Correct.
2285 (ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
2286 SECTOFF reloc.
2287
805fc799
AM
2288 * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
2289 (ppc64_elf_ha_reloc): New function.
2290 (ppc64_elf_brtaken_reloc): New function.
2291 (ppc64_elf_sectoff_reloc): New function.
2292 (ppc64_elf_sectoff_ha_reloc): New function.
2293 (ppc64_elf_toc_reloc): New function.
2294 (ppc64_elf_toc_ha_reloc): New function.
2295 (ppc64_elf_toc64_reloc): New function.
2296 (ppc64_elf_unhandled_reloc): New function.
2297 (ppc64_elf_howto_raw): Use the above.
2298 <R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset.
2299 <R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset. Fix dst_mask.
2300 <R_PPC64_SECTOFF_DS>: Likewise.
2301 (IS_ABSOLUTE_RELOC): Update.
2302 (struct ppc_link_hash_table): Add have_undefweak.
2303 (ppc64_elf_link_hash_table_create): Init.
2304 (func_desc_adjust): Set have_undefweak.
2305 (ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier. Only
2306 add the .sfpr blr when have_undefweak.
2307 (ppc64_elf_setup_section_lists): Check hash table flavour.
2308 (ppc64_elf_next_input_section): Move output_section->owner test to
2309 ppc64elf.em.
2310 (ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
2311 and relocatable test. Return TOCstart and don't set elf_gp.
2312 (ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
2313 offset calculation. Add assert on weak sym branch tweaks.
2314 * elf64-ppc.h (ppc64_elf_set_toc): Delete.
2315 (ppc64_elf_toc): Declare.
2316 (ppc64_elf_next_input_section): Update.
ea1e4b0d 2317
818c39a3
AM
23182002-05-01 Alan Modra <amodra@bigpond.net.au>
2319
2320 * syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL
2321 file_name.
2322
721956f4
AM
23232002-05-01 Alan Modra <amodra@bigpond.net.au>
2324
2325 * elf64-ppc.c (CROR_151515, CROR_313131): Define.
2326 (ppc64_elf_relocate_section): Use them. Don't look for plt calls
2327 on R_PPC64_ADDR24 relocs. Require a nop or no link reg on plt
2328 call branches. Correct undefined weak destination.
2329 (ppc64_elf_func_desc_adjust): Always create at least one blr in
2330 .sfpr, and correct case where either only savef* or restf* is
2331 needed.
2332
2333 Long branch stubs, multiple stub sections.
2334 * elf64-ppc.h (ppc64_elf_setup_section_lists): Declare.
2335 (ppc64_elf_next_input_section): Declare.
2336 * elf64-ppc.c: Move linker-only prototypes.
2337 (STUB_SUFFIX): Define.
2338 (enum ppc_stub_type): New.
2339 (struct ppc_stub_hash_entry): New.
2340 (struct ppc_branch_hash_entry): New.
2341 (struct ppc_link_hash_entry): Add stub_cache, oh.
2342 (struct ppc_link_hash_table): Add stub_hash_table etc. Remove
2343 sstub. Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration.
2344 Rename plt_overflow to stub_error.
2345 (ppc_stub_hash_lookup): Define.
2346 (ppc_branch_hash_lookup): Define.
2347 (stub_hash_newfunc): New function.
2348 (branch_hash_newfunc): New function.
2349 (link_hash_newfunc): Init new fields.
2350 (ppc64_elf_link_hash_table_create): Likewise.
2351 (ppc64_elf_link_hash_table_free): New function.
2352 (ppc_stub_name): New function.
2353 (ppc_get_stub_entry): New function.
2354 (ppc_add_stub): New function.
2355 (create_linkage_sections): Use bfd_make_section_anyway. Create
2356 .branch_lt and .rela.branch_lt sections. Don't create .stub.
2357 (ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*,
2358 and set up for plt call stubs. Link func and func desc syms.
2359 (ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24.
2360 (func_desc_adjust): Avoid hash lookup when func desc sym available
2361 via shortcut, and set links when processing.
2362 (ppc64_elf_hide_symbol): Likewise.
2363 (allocate_dynrelocs): Don't allocate stub section here.
2364 (ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt.
2365 Remove sstub code.
2366 (ppc_type_of_stub): New function.
2367 (build_one_stub): Delete.
2368 (ppc_build_one_stub): New function.
2369 (ppc_size_one_stub): New function.
2370 (ppc64_elf_setup_section_lists): New function.
2371 (ppc64_elf_next_input_section): New function.
2372 (group_sections): New function.
2373 (get_local_syms): New function.
2374 (ppc64_elf_size_stubs): Rewrite.
2375 (ppc64_elf_build_stubs): Rewrite.
2376 (ppc64_elf_relocate_section): Look up stub entry for REL24
2377 relocs. Don't propagate REL14* to dynamic objects. Look for long
2378 branch stubs if REL14* or REL24 relocs won't reach.
2379 (bfd_elf64_bfd_link_hash_table_free): Define.
2380
09c2219b
MM
23812002-04-30 Mark Mitchell <mark@codesourcery.com>
2382
c5cd6d62 2383 * config.bfd: Add support for powerpc-*-windiss.
09c2219b 2384
07b678c0
TR
23852002-04-30 Tom Rix <trix@redhat.com>
2386
2387 * xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT
2388 symbol names into the hash table.
2389
dbe341c6
TR
23902002-04-28 Tom Rix <trix@redhat.com>
2391
2392 * coff-rs6000.c (xcoff_calculate_relocation) : Function table for
ea1e4b0d 2393 calulating relocations.
dbe341c6 2394 (xcoff_complain_overflow) : Function table for relocation errors.
ea1e4b0d
AM
2395 (xcoff_ppc_relocate_section): Use relocation and complain function
2396 tables.
2397 (xcoff_complain_overflow_unsigned_func): New complain function.
dbe341c6
TR
2398 (xcoff_complain_overflow_signed_func): Same.
2399 (xcoff_complain_overflow_bitfield_func): Same.
2400 (xcoff_complain_overflow_dont_func): Same.
2401 (xcoff_reloc_type_crel): New recot function.
2402 (xcoff_reloc_type_br): Same.
2403 (xcoff_reloc_type_ba): Same.
2404 (xcoff_reloc_type_toc): Same.
2405 (xcoff_reloc_type_rel): Same.
2406 (xcoff_reloc_type_neg): Same.
2407 (xcoff_reloc_type_pos): Same.
2408 (xcoff_reloc_type_fail): Same.
2409 (xcoff_reloc_type_noop): Same.
2410 * libxcoff.h : Declare common parts for xcoff64.
2411 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation
ea1e4b0d 2412 and complain function tables.
dbe341c6 2413
985142a4
AM
24142002-04-28 Alan Modra <amodra@bigpond.net.au>
2415
2416 * elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo.
2417 * elf32-hppa.c (elf32_hppa_final_link): Formatting.
2418
eba91044
AM
24192002-04-26 Alan Modra <amodra@bigpond.net.au>
2420
e54fdaa5
AM
2421 * opncls.c (bfd_make_readable): Call bfd_section_list_clear.
2422 * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.
2423
a50c1845
AM
2424 * elflink.h (elf_bfd_final_link): Ensure input bfd class is the
2425 same as the output before calling elf_link_input_bfd.
2426
eba91044
AM
2427 * coffcode.h (coff_compute_section_file_positions): Set
2428 section_tail after shuffling section list.
2429
3c25c5f6
NC
24302002-04-24 Christian Groessler <chris@groessler.org>
2431
2432 * coff-z8k.c (extra_case): Fix R_IMM32 relocations: The
2433 addresses are 23bit with a special layout, not plain 32bit
2434 values. Prevent relocation of immediate values.
2435
40d32fc6
CD
24362002-04-24 Chris G. Demetriou <cgd@broadcom.com>
2437
2438 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or
2439 MIPS-16 ASE flags are set, print something to indicate that.
2440
067fa4a6
AM
24412002-04-23 Alan Modra <amodra@bigpond.net.au>
2442
2443 * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
2444 under which a plt call stub is used.
2445 (final_link_relocate): Similarly.
2446 (allocate_plt_static): Clear h-plabel except when plt entry is
2447 exclusively used for a plabel.
2448 (allocate_dynrelocs): Use the above to simplify plt sizing.
2449 (struct elf32_hppa_link_hash_table): Add has_22bit_branch.
2450 (elf32_hppa_link_hash_table_create): Init.
2451 (BL22_RP): Define.
2452 (hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
2453 (elf32_hppa_check_relocs): Set has_22bit_branch.
2454
2455 * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
2456 (final_link_relocate): Likewise.
2457
af40ce3c
JJ
24582002-04-22 Jakub Jelinek <jakub@redhat.com>
2459
2460 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
2461 search table if some FDE is DW_EH_PE_aligned encoded either.
2462 (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.
2463
09ae86c2
JJ
24642002-04-22 Richard Smith <richard@ex-parrot.com>
2465 Jakub Jelinek <jakub@redhat.com>
2466
2467 * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
2468 (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
2469 encoded personality.
2470 (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
2471 for CIE/FDE removal.
2472
deeb2cd7
TR
24732002-04-20 Tom Rix <trix@redhat.com>
2474
2475 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.
2476
99dc0092
AM
24772002-04-20 Alan Modra <amodra@bigpond.net.au>
2478
aa3d5824
AM
2479 * archures.c (bfd_lookup_arch): Move the list order comment..
2480 (struct bfd_arch_info): ..to where it belongs.
2481 * bfd-in2.h: Regenerate.
2482
99dc0092
AM
2483 * archures.c (bfd_lookup_arch): Add comment on list order.
2484 (bfd_default_set_arch_mach): Use bfd_lookup_arch.
2485 * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
2486 is always at head of list.
2487
7831a775
NC
24882002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
2489
2490 * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
2491 insert_thumb_branch, record_thumb_to_arm_glue): Suppress
2492 definition of these functions for ARM_WINCE builds as they are
2493 not used.
ea1e4b0d 2494 (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
7831a775
NC
2495 for ARM_WINCE builds.
2496
24972002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
2498
ea1e4b0d 2499 * coff-arm.c (bfd_arm_process_before_allocation):
7831a775
NC
2500
25012002-04-17 J"orn Rennecke <joern.rennecke@superh.com>
a44d7f9c
JR
2502
2503 * cpu-sh.c (scan_mach): Delete.
2504 (arch_info_struct): Replace scan_mach with bfd_default_scan.
2505 (bfd_sh_arch): Likewise.
2506
3d8dbe36
NC
25072002-04-16 Nick Clifton <nickc@cambridge.redhat.com>
2508
2509 * ihex.c (ihex_write_object_contents): Fix check for records
2510 crossing 64K boundaries.
2511
4ab82700
AM
25122002-04-16 Alan Modra <amodra@bigpond.net.au>
2513
2514 * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
2515 type rather than just assuming entries are ELF.
2516 * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
2517 * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
2518 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
2519 * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
2520 rather than elf_link_hash_entry.
2521
036fe0fe
RH
25222002-04-15 Richard Henderson <rth@redhat.com>
2523
2524 * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
2525 n32 binaries.
2526
c4f3d130
NC
25272002-04-15 Michael Snyder <msnyder@redhat.com>
2528
2529 * opncls.c (bfd_close): Write contents if writeable.
2530 Minor formatting tidy-ups.
2531
4ab82700 25322002-04-15 Alan Modra <amodra@bigpond.net.au>
27242387
AM
2533
2534 * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.
2535
0c04d169
MS
25362002-04-12 Michael Snyder <msnyder@redhat.com>
2537
2538 * bfd-in.h (bfd_get_section_lma): New access macro.
2539 Minor white-space fix-up.
2540
89d4966f
AM
25412002-04-12 Alan Modra <amodra@bigpond.net.au>
2542
2543 * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
2544 header pad.
2545
8d0da3c2
DD
25462002-04-09 DJ Delorie <dj@redhat.com>
2547
2548 * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.
2549
05793179
NC
25502002-04-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
2551
2552 * coffcode.h (coff_read_word): New.
2553 (coff_compute_checksum): New.
2554 (coff_apply_checksum): New.
2555 (coff_write_object_contents): Call coff_apply_checksum () to
2556 apply checksum to PE image.
2557
46fe4e66
AM
25582002-04-08 Randolph Chung <tausq@debian.org>
2559
2560 * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
2561 (elf32_hppa_final_link): Split out sorting logic to..
2562 * elf-hppa.h (elf_hppa_sort_unwind): ..here.
2563 (elf_hppa_final_link): Call elf_hppa_sort_unwind.
2564
3b5b409c
AC
25652002-04-07 Andrew Cagney <ac131313@redhat.com>
2566
2567 * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
2568 pattern.
2569 * configure: Re-generate.
2570
ac7b6ceb
AC
25712002-04-07 Andrew Cagney <ac131313@redhat.com>
2572
2573 * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
2574 is greater or equal to 4.3.3.
2575 * configure: Regenerate.
2576 Fix PR gdb/344.
2577
44aa49bb
HPN
25782002-04-05 Hans-Peter Nilsson <hp@axis.com>
2579
2580 * elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL,
2581 R_CRIS_32_PCREL>: Fix typo in name.
2582 (cris_elf_check_relocs): Always create .rela.got here when
2583 R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
2584 (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
2585 assume it's created.
2586
e2d34d7d
DJ
25872002-04-04 Daniel Jacobowitz <drow@mvista.com>
2588
2589 * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
2590 * aout-target.h (MY_bfd_link_hash_table_free): Conditionally
2591 define.
2592 * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
2593 * bfd.c (bfd_link_hash_table_free): Define.
2594 * binary.c (binary_bfd_link_hash_table_free): Define.
2595 * bout.c (b_out_bfd_link_hash_table_free): Define.
2596 * coff-rs6000.c (rs6000coff_vec): Include
2597 _bfd_generic_link_hash_table_free.
2598 (pmac_xcoff_vec): Likewise.
2599 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
2600 (aix5coff64_vec): Likewise.
2601 * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
2602 * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
2603 (bfd_elf32_bfd_link_hash_table_free): Define.
2604 * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
2605 (bfd_elf32_bfd_link_hash_table_free): Define.
2606 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
2607 define.
2608 * i386msdos.c (msdos_bfd_link_hash_table_free): Define.
2609 * i386os9k.c (os9k_bfd_link_hash_table_free): Define.
2610 * ieee.c (ieee_bfd_link_hash_table_free): Define.
2611 * ihex.c (ihex_bfd_link_hash_table_free): Define.
2612 * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
2613 (_bfd_generic_link_hash_table_free): Add prototype.
2614 * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
2615 * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
2616 * linker.c (_bfd_generic_link_hash_table_free): New function.
2617 * mmo.c (mmo_bfd_link_hash_table_free): Define.
2618 * nlm-target.h (nlm_bfd_link_hash_table_free): Define.
2619 * oasys.c (oasys_bfd_link_hash_table_free): Define.
2620 * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
2621 * som.c (som_bfd_link_hash_table_free): Define.
2622 * srec.c (srec_bfd_link_hash_table_free): Define.
2623 * tekhex.c (tekhex_bfd_link_hash_table_free): Define.
2624 * versados.c (versados_bfd_link_hash_table_free): Define.
2625 * vms.c (vms_bfd_link_hash_table_free): New function.
2626 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.
2627
2628 * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
2629 instead of bfd_alloc.
2630 * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
2631 * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
2632 * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
2633 * cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
2634 * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
2635 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
2636 * elf.c (_bfd_elf_link_hash_table_create): Likewise.
2637 * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
2638 * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
2639 * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
2640 * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
2641 * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
2642 * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
2643 * elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
2644 * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
2645 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
2646 * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
2647 * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
2648 * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
2649 * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
2650 * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
2651 * linker.c (_bfd_generic_link_hash_table_create): Likewise.
2652 * m68klinux.c (linux_link_hash_table_create): Likewise.
2653 * sparclinux.c (linux_link_hash_table_create): Likewise.
2654 * sunos.c (sunos_link_hash_table_create): Likewise.
2655 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
2656
2657 * targets.c: Add _bfd_link_hash_table_free to xvec.
2658
2659 * bfd-in2.h: Regenerate.
2660 * libbfd.h: Regenerate.
2661 * libcoff.h: Regenerate.
2662
830629ab
AM
26632002-04-04 Alan Modra <amodra@bigpond.net.au>
2664
2665 * dep-in.sed: Cope with absolute paths.
2666 * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
2667 Run "make dep-am".
2668 * Makefile.in: Regenerate.
2669 * coff-arm.c: Fix copyright date.
2670 * cpu-h8300.c: Likewise.
2671 * cpu-i370.c: Likewise.
2672 * cpu-s390.c: Likewise.
2673 * cpu-mips.c: Likewise.
2674 * po/SRC-POTFILES.in: Regenerate.
2675
c6e90b02
TS
26762002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2677
2678 * Makefile.am: Add elfxx-mips.c to the known backends.
2679 (elf32-mips.lo): remove dependency to coff/external.h.
2680 * Makefile.in: Regenerate.
2681 * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
2682 Remove elf32-mips.lo from 64 bit vectors. Update dependencies
2683 accordingly.
2684 * configure: Regenerate.
2685 * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
2686 (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
2687 (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
2688 MIPS specific backend functions.
2689 * elf32-mips.c: Moved most code to elfxx-mips.c.
2690 (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
2691 static.
2692 (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
2693 (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
2694 (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
2695 (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
2696 interface to allow selection of the right REL or RELA howto table.
2697 (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
2698 static. Let it refuse n32 objects.
2699 (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
2700 (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
2701 (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
2702 (elf32_mips_ignore_discarded_relocs): Rename from
2703 _bfd_elf32_mips_ignore_discarded_relocs.
2704 (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
2705 (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
2706 (elf_mips_howto_table_rela): Remove.
2707 * elf64-mips.c: Moved most code to elfxx-mips.c.
2708 (bfd_elf64_bfd_reloc_type_lookup): Make static.
2709 (mips_elf64_rtype_to_howto): New function.
2710 (mips_elf64_object_p): Likewise.
2711 (elf64_mips_irix_compat): Likewise.
2712 * elfxx-mips.c: New file containing common code merged together from
2713 elf32-mips.c and elf64-mips.c.
2714 * elfxx-mips.h: New file containing MIPS specific prototypes from
2715 elf-bfd.h.
2716 * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
2717 elf_backend_mips_rtype_to_howto.
2718
d8dce692
AM
27192002-04-04 Alan Modra <amodra@bigpond.net.au>
2720
2721 * srec.c (MAXCHUNK, Chunk): Revise comments.
2722 (srec_write_record): Correct buffer size.
2723 (srec_write_header): Do without intermediate buffer.
2724 (srec_write_section): Validate Chunk.
2725 (srec_write_terminator): Pass NULL instead of dummy buffer.
2726 (srec_write_symbols): Pass file and symbol names directly to
2727 bfd_bwrite so sprintf won't overflow buffer.
2728
b88a866a
JJ
27292002-04-03 Jakub Jelinek <jakub@redhat.com>
2730
2731 * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
2732 PC relative relocs against hidden symbols.
2733 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2734
d7866f04
AM
27352002-04-03 Alan Modra <amodra@bigpond.net.au>
2736
2737 * elf.c (_bfd_elf_make_section_from_shdr): When setting section
2738 LMAs, loop over segments until p_vaddr and p_memsz specify an
2739 extent enclosing the section.
2740
9e81ee67
NC
27412002-04-02 Nick Clifton <nickc@cambridge.redhat.com>
2742
2743 * ihex.c (ihex_write_object_contents): Do not allow records to
2744 cross a 64K boundary - wrap if necessary.
2745
d2b64500
JT
27462002-04-01 Nathan Williams <nathanw@wasabisystems.com>
2747
2748 * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
2749 which caused the returned LWP ID to always be 0.
2750
e36f7d53
RH
27512002-04-01 Richard Henderson <rth@redhat.com>
2752
2753 * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
2754 (elf32_sparc_relocate_section): Use it to figure out when to
2755 initialize .got entries.
2756 * elf64-sparc.c: Similarly.
2757
e92d460e
AM
27582002-03-28 Alan Modra <amodra@bigpond.net.au>
2759
2760 * linker.c (link_action): Ignore duplicate warning syms.
2761 (_bfd_generic_link_write_global_symbol): Follow warning symbol link.
2762 * elflink.h (elf_adjust_dynstr_offsets): Likewise.
2763 (elf_adjust_dynamic_symbol): Likewise.
2764 (elf_export_symbol): Likewise.
2765 (elf_link_find_version_dependencies): Likewise.
2766 (elf_link_assign_sym_version): Likewise.
2767 (elf_link_sec_merge_syms): Likewise.
2768 (elf_link_output_extsym): Likewise.
2769 (elf_gc_sweep_symbol): Likewise.
2770 (elf_gc_propagate_vtable_entries_used): Likewise.
2771 (elf_gc_smash_unused_vtentry_relocs): Likewise.
2772 (elf_gc_allocate_got_offsets): Likewise.
2773 (elf_collect_hash_codes): Likewise.
2774 * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
2775 * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
2776 (elf_hppa_remark_useless_dynamic_symbols): Likewise.
2777 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
2778 * elf32-arm.h (elf32_arm_discard_copies): Likewise.
2779 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
2780 (elf_cris_discard_excess_dso_dynamics): Likewise.
2781 * elf32-hppa.c (clobber_millicode_symbols): Likewise.
2782 (mark_PIC_calls): Likewise.
2783 (allocate_plt_static): Likewise.
2784 (allocate_dynrelocs): Likewise.
2785 (readonly_dynrelocs): Likewise.
2786 * elf32-i386.c (allocate_dynrelocs): Likewise.
2787 (readonly_dynrelocs): Likewise.
2788 * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
2789 * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
2790 * elf32-mips.c (mips_elf_output_extsym): Likewise.
2791 (mips_elf_sort_hash_table_f): Likewise.
2792 (mips_elf_check_mips16_stubs): Likewise.
2793 * elf32-s390.c (allocate_dynrelocs): Likewise.
2794 (readonly_dynrelocs): Likewise.
2795 * elf32-sh.c (sh_elf_discard_copies): Likewise.
2796 * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
2797 (xstormy16_relax_plt_realloc): Likewise.
2798 * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
2799 (elf64_alpha_output_extsym): Likewise.
2800 * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
2801 * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
2802 (mips_elf64_check_mips16_stubs): Likewise.
2803 (mips_elf64_output_extsym): Likewise.
2804 * elf64-ppc.c (func_desc_adjust): Likewise.
2805 (allocate_dynrelocs): Likewise.
2806 (readonly_dynrelocs): Likewise.
2807 * elf64-s390.c (allocate_dynrelocs): Likewise.
2808 (readonly_dynrelocs): Likewise.
2809 * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
2810 * elf64-x86-64.c (allocate_dynrelocs): Likewise.
2811 (readonly_dynrelocs): Likewise.
2812 * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
2813 * aoutx.h (aout_link_write_other_symbol): Likewise.
2814 * cofflink.c (_bfd_coff_write_task_globals): Likewise.
2815 (_bfd_coff_write_global_sym): Likewise.
2816 * i386linux.c (linux_tally_symbols): Likewise.
2817 * m68klinux.c (linux_tally_symbols): Likewise.
2818 * sparclinux.c (linux_tally_symbols): Likewise.
2819 * pdp11.c (aout_link_write_other_symbol): Likewise.
2820 * sunos.c (sunos_scan_dynamic_symbol): Likewise.
2821 * xcofflink.c (xcoff_build_ldsyms): Likewise.
2822 (xcoff_write_global_symbol): Likewise.
2823
2824 * cofflink.c (_bfd_coff_final_link): Formatting.
2825 * cpu-mips.c (mips_compatible): Make static, prototype.
2826 * elf32-i386.c (elf_i386_check_relocs): Formatting.
2827 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
2828 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
2829 * elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
2830 (mips_elf64_final_link): Likewise.
2831 * elflink.h (elf_link_find_version_dependencies): Remove duplicate
2832 prototype.
2833
2106126f
NC
28342002-03-27 Nick Clifton <nickc@cambridge.redhat.com>
2835
2836 * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
2837 (SWAP_OUT_RELOC_OFFSET): Define.
2838
b99d1833
AM
28392002-03-27 Gregory Steuck <greg@nest.cx>
2840
2841 * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
2842 terminating NULL if empty symbol table.
2843 (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise.
2844
ad43ed4c
L
28452002-03-26 H.J. Lu (hjl@gnu.org)
2846
2847 * elflink.h (elf_link_input_bfd): Revert the last change since
2848 the gcc exception handling isn't fixed yet.
2849
3851fca4
L
28502002-03-26 H.J. Lu (hjl@gnu.org)
2851
2852 * elflink.h (elf_link_input_bfd): Complain about relocations
2853 against local symbols in discarded sections.
2854
b91afed7
AM
28552002-03-26 Alan Modra <amodra@bigpond.net.au>
2856
2857 * elflink.h (elf_gc_mark): Don't recurse into non-ELF sections.
2858
dba143ef
AM
28592002-03-23 Alan Modra <amodra@bigpond.net.au>
2860
2861 * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
2862 section file offset for !SEC_LOAD sections.
2863
ee29b9fb
RE
28642002-03-21 Richard Earnshaw <rearnsha@arm.com>
2865
830629ab
AM
2866 * elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>,
2867 <case R_ARM_GOT>): Handle relocations to Thumb functions.
ee29b9fb 2868
54327882
AM
28692002-03-21 Alan Modra <amodra@bigpond.net.au>
2870
2871 * coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype.
2872 Whitespace changes.
2873 * archive.c: Update copyright date.
2874 * bfd-in2.h: Regenerate.
2875 * libbfd.h: Regenerate.
2876 * Makefile.am: Run "make dep-am"
2877 * Makefile.in: Regenerate.
2878 * po/SRC-POTFILES.in: Regenerate.
2879
1ee24f27
DJ
28802002-03-20 Daniel Jacobowitz <drow@mvista.com>
2881
2882 * dwarf2.c (struct funcinfo): Move up.
2883 (lookup_address_in_function_table): New argument function_ptr.
2884 Set it.
2885 (lookup_address_in_line_table): New argument function. If function
2886 is non-NULL, use it to handle ``addr'' before the first line note of
2887 the function.
2888 (comp_unit_find_nearest_line): Update and swap calls to
2889 lookup_address_in_function_table and lookup_address_in_line_table.
2890 * syms.c (_bfd_stab_section_find_nearest_line): Use the first
2891 N_SLINE encountered if we see an N_FUN before any N_SLINE.
2892
51b9608c
TR
28932002-03-20 Tom Rix <trix@redhat.com>
2894
ea1e4b0d 2895 * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from
51b9608c 2896 _bfd_xcoff_generic_stat_arch_elt. Fix format check.
ea1e4b0d 2897 * coff64-rs6000.c : Use _bfd_xcoff_stat_arch_elt.
51b9608c 2898
789c90aa
TR
28992002-03-19 Tom Rix <trix@redhat.com>
2900
ea1e4b0d 2901 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all
789c90aa
TR
2902 dynamic objects in archives.
2903
1da54d81
HPN
29042002-03-19 Hans-Peter Nilsson <hp@bitrange.com>
2905
2906 * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
2907 STT_NOTYPE symbols to STT_OBJECT.
2908
7831a775 29092002-03-18 Jan Hubicka <jh@suse.cz>
beb43bb9
JH
2910
2911 * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
2912
eb1e0e80
NC
29132002-03-18 Tom Rix <trix@redhat.com>
2914
2915 * aix5ppc.core.c : New file for AIX 5 64 bit core support.
2916 * bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration.
2917 * coff-rs6000 (do_pad) : New function for archive padding.
2918 (do_copy) : New function for object file copying in archives.
2919 (do_shared_object_padding) : New function for padding shared
2920 objects to their text section alignment in archives.
2921 (bfd_xcoff_ar_achive_set_magic) : Stub.
2922 (xcoff_write_armap_big) : Use do_copy and do_pad.
2923 (xcoff_write_archive_contents_big) : Use do_shared_object_padding,
2924 do_copy and do_pad.
2925 * coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use
ea1e4b0d 2926 bfd_xcoff_magic_number.
eb1e0e80
NC
2927 (xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook
2928 fop.
2929 (xcoff_backend_data_r) : Use xcoff64_bad_format_hook.
2930 (bfd_xcoff_aix5_backend_data) : New Aix 5 backend data.
2931 (aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000.
2932 * rs6000-core.c : Update copyright date.
ea1e4b0d 2933 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL
eb1e0e80
NC
2934 csectpp.
2935 * coffcode.h (coff_new_section_hook) : Use new accessor macros.
2936 (coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #.
2937 (coff_set_flags) : Use bfd_xcoff_magic_number.
2938 * libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC.
2939 * configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support.
2940 * Makefile.am : Same.
2941 * config.bfd : Same.
2942 * targets.c : Same.
2943 * configure : Regnerate.
2944 * Makefile.in : Same.
2945 * bfd-in2.h : Same.
2946
a1c259a1
NC
29472002-03-18 Nick Clifton <nickc@cambridge.redhat.com>
2948
2949 * po/fr.po: Updated version.
2950
4dae1ae7
AM
29512002-03-18 Alan Modra <amodra@bigpond.net.au>
2952
2953 * libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success.
2954 * libbfd.h: Regenerate.
2955 * archive.c (coff_write_armap): Pass on failures from
2956 bfd_write_bigendian_4byte_int.
2957
36b4f6e7
L
29582002-03-14 H.J. Lu <hjl@gnu.org>
2959
2960 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD
2961 error to bfd_error_nonrepresentable_section for reinit_array
2962 section in DSO.
2963
a1aefc76
NC
29642002-03-14 Nick Clifton <nickc@cambridge.redhat.com>
2965
a181be0a
NC
2966 * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag,
2967 OR it in rather than replacing previously selected flags.
2968
a1aefc76
NC
2969 * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15.
2970 (TARGET_LITTLE_SYM): Set ar_max_namelen to 15.
2971
c119f9b8
AM
29722002-03-14 Alan Modra <amodra@bigpond.net.au>
2973
2974 * cpu-mips.c (mips_compatible): New. Don't check bits_per_word.
2975 (N): Use the above.
2976 * elflink.h (elf_bfd_final_link): Revert last change. Instead,
2977 ensure reloc size matches before calling elf_link_input_bfd.
2978 Add an assert to check reloc size when counting output relocs.
2979
c295a511
NC
29802002-03-14 Nick Clifton <nickc@cambridge.redhat.com>
2981
2982 * mmo.c (mmo_get_loc): Return NULL rather than false.
2983
9ce88e60
NC
29842002-03-13 Nick Clifton <nickc@cambridge.redhat.com>
2985
2986 * po/fr.po: Updated version.
2987
4ddafab0
AM
29882002-03-13 Alan Modra <amodra@bigpond.net.au>
2989
b74fa2cd
AM
2990 * archures.c (bfd_default_compatible): Test bits_per_word.
2991 * cpu-i386.c (i386_compatible): Remove. Replace occurrences with
2992 bfd_default_compatible.
2993 * cpu-i370.c (i370_compatible): Likewise.
2994 * cpu-sparc.c (sparc_compatible): Likewise.
2995 * cpu-h8300.c (compatible): Test in->arch == out->arch.
2996
40b829d4
AM
2997 * elflink.h: Formatting fixes.
2998 (elf_link_output_extsym): Merge undefined and undef weak cases.
2999
4ddafab0
AM
3000 * elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd
3001 when word size of input matches output word size.
3002
dd53c801
AJ
30032002-03-12 Andreas Jaeger <aj@suse.de>
3004
3005 * cpu-i386.c (i386_compatible): New. Use it instead of
3006 bfd_default_compatible.
3007
aa066ac8
L
30082002-03-07 H.J. Lu (hjl@gnu.org)
3009
3010 * coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type
3011 as the type for bfd_reloc_val.
3012
1bf42538
JL
30132002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
3014
3015 * elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
3016 (elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
3017 (elf_hppa_final_link_relocate): Correct relocations for indirect
3018 references to local data through the DLT. Fix .opd creation for
3019 local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
3020 relocations. Use e_lsel selector for R_PARISC_DLTIND21L,
3021 R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
3022 "Processor-Specific ELF for PA_RISC, Version 1.43" document.
3023 Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
3024 * elf32-hppa.c (final_link_relocate): Revise relocation selectors
3025 as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.
3026
86eaf01e
JJ
30272002-03-05 Jakub Jelinek <jakub@redhat.com>
3028
3029 * merge.c (_bfd_merge_sections): Don't segfault if there
3030 is nothing to merge due to GC.
3031
c44233aa
AM
30322002-03-05 Alan Modra <amodra@bigpond.net.au>
3033
039cc25f
AM
3034 * elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep
3035 symbols that have been forced local.
3036
c44233aa
AM
3037 * elflink.h (elf_bfd_final_link): Call elf_link_output_extsym
3038 to output forced local syms for non-shared link.
3039 (elf_link_output_extsym): Tweak condition for calling backend
3040 adjust_dynamic_symbol so that previous behaviour is kept.
3041 Whitespace changes throughout file.
3042
25e27870
L
30432002-03-04 H.J. Lu <hjl@gnu.org>
3044
3045 * elf.c (bfd_section_from_shdr): Handle special sections,
3046 .init_array, .fini_array and .preinit_array.
3047 (elf_fake_sections): Likewise.
3048
3049 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the
3050 DT entry only if the section is in output for .init_array,
3051 .fini_array and .preinit_array. Complain about .preinit_array
3052 section in DSO.
3053 (elf_bfd_final_link): Warn zero size for .init_array,
3054 .fini_array and .preinit_array sections.
3055
3056 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove
3057 SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
3058 (elfNN_ia64_fake_sections): Remove .init_array, .fini_array and
3059 .preinit_array.
3060
bb2a49f2
AM
30612002-03-04 Alan Modra <amodra@bigpond.net.au>
3062
3063 * configure.in (WIN32LIBADD): Don't eval PICFLAG assignment.
3064 * configure: Regenerate.
3065
38487e5e
TR
30662002-03-02 Tom Rix <trix@redhat.com>
3067
c44233aa
AM
3068 * coff64-rs6000.c (xcoff64_howto_table): Replace howto types with
3069 symbolic equiv.
38487e5e
TR
3070 * coff-rs6000.c (xcoff_howto_table): Same.
3071
30831527
RH
30722002-03-01 David Mosberger <davidm@hpl.hp.com>
3073
3074 * elflink.h (size_dynamic_sections): If section named
3075 ".preinit_array" exists, create DT_PREINIT_ARRAY and
3076 DT_PREINIT_ARRAYSZ entries in dynamic table. Analogously for
3077 ".init_array" and ".fini_array".
3078 (elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ,
3079 DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and
3080 DT_FINI_ARRAY.
3081
c8e5ddc8
AM
30822002-02-26 Andrew Macleod <amacleod@cygnus.com>
3083
3084 * elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
3085 dynsyms.
3086
96e0dda4
AM
30872002-02-25 Alan Modra <amodra@bigpond.net.au>
3088
1c5b6bf8
AM
3089 * elf64-hppa.h: Update copyright date.
3090
96e0dda4
AM
3091 * elf64-ppc.c (ppc64_elf_check_relocs): Warning fix.
3092 (ppc64_elf_relocate_section): Don't generate power4 style branch
3093 hints for *_BRTAKEN and *_BRNTAKEN relocs.
3094
0fb19cbc
JJ
30952002-02-22 Jakub Jelinek <jakub@redhat.com>
3096
3097 * elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my
3098 last patch.
3099 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
3100
c434dee6
AJ
31012002-02-21 Andreas Jaeger <aj@suse.de>
3102
3103 * elf64-x86-64.c: Major rework that introduces all recent changes
3104 to the x86-64 backend. Get a closer match to elf32-i386.
3105 (struct elf64_x86_64_dyn_relocs): Rename from
3106 elf64_x86_64_pcrel_relocs_copied, add additional fields. Change
3107 all users.
3108 (struct elf64_x86_64_link_hash_table): Add short cuts to some
3109 sections.
3110 (link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc,
3111 remove casts, initialize new hash members.
3112 (create_got_section): New.
3113 (elf64_x86_64_create_dynamic_sections): New.
3114 (elf64_x86_64_copy_indirect_symbol): New.
3115 (elf64_x86_64_check_relocs): Don't allocate space for dynamic
3116 relocs, .got or .relgot here but do it in allocate_dynrelocs.
3117 Reference count possible .plt and .got entries. Don't test input
3118 section SEC_READONLY here to try to avoid copy relocs, and keep
3119 dyn_relocs regardless of ELF_LINK_NON_GOT_REF. Don't set
3120 DF_TEXTREL here. Delay setting of variables until needed. Cache
3121 pointer to "sreloc" section in elf_section_data. Tweak condition
3122 under which .got created. Report files with bad relocation
3123 section names.
3124 (elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
3125 Reference count possible .plt entries. Don't deallocate .got and
3126 .relgot space here.
3127 (elf64_x86_64_adjust_dynamic_symbol): Handle nocopyreloc. Don't
3128 do copy reloc processing for weakdefs. Remove redundant casts and
3129 aborts. Delay setting of vars until needed. Move creation of
3130 dynamic symbols and allocation of .plt and .rela.plt to
3131 allocate_dynrelocs. Replace BFD_ASSERT with abort.
3132 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
3133 (allocate_dynrelocs): New.
3134 (readonly_dynrelocs): New.
3135 (elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs.
3136 Allocate space for dyn relocs. Replace BFD_ASSERT with abort.
3137 Zero out the dynamic allocated content space.
3138 (elf64_x86_64_discard_copies): Removed.
3139 (elf64_x86_64_relocate_section): Make use of dynamic section
3140 short-cuts. Localise vars, and delay setting. Better error
3141 reporting, replace BFD_ASSERT with abort. Check
3142 ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the
3143 regular object file and tread the weak definition as the normal
3144 one. Don't discard relocs for undefweak or undefined symbols and
3145 check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy
3146 relocs.
3147 (elf64_x86_64_finish_dynamic_symbol): Don't copy relocs for
3148 symbols that have been forced local. Use same test to decide if
3149 we can use a relative reloc for got as relocate_section. Expand
3150 SHN_UNDEF comment. Move expressions out of function calls.
3151 Replace BFD_ASSERT with abort.
3152 (bfd_elf64_bfd_final_link): Removed.
3153 (elf_backend_copy_indirect_symbol): Define.
3154
ff3a6ee3
TR
31552002-02-20 Tom Rix <trix@redhat.com>
3156
3157 * coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA.
3158 (_bfd_xcoff_reloc_type_lookup): Use it.
3159 * coff64-rs6000.c (xcoff64_howto_table): Same.
3160 (xcoff64_reloc_type_lookup): Same.
c434dee6 3161
a68d41fb
AM
31622002-02-20 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
3163
3164 * osf-core.c (osf_core_vec): OSF/1 (Digital Unix) core files are
3165 little endian.
3166
befc3abb
MS
31672002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
3168
3169 * archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31.
3170 (bfd_mach_s390_esame): Rename to bfd_mach_s390_64.
3171 * bfd-in2.h: Regenerate.
3172 * cpu-s390.c (arch_info_struct): Use renamed architecture defines.
3173 Replace architecture name "s390" with "s390:31-bit" and "s390:esame"
3174 with "s390:64-bit".
3175 * elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations.
3176 (elf_s390_reloc_type_lookup): Likewise.
3177 (elf_s390_check_relocs): Likewise.
3178 (elf_s390_gc_sweep_hook): Likewise.
3179 (elf_s390_relocate_section): Likewise.
3180 (elf_s390_object_p): Use renamed architecture define.
3181 * elf64-s390.c (elf_s390_object_p): Use renamed architecture define.
3182
6eeeec9b
FCE
31832002-02-19 Frank Ch. Eigler <fche@redhat.com>
3184
3185 * syms.c (stt[]): Sorted. Added .init/.fini -> "t" mapping.
3186
0bb2d96a
JJ
31872002-02-19 Jakub Jelinek <jakub@redhat.com>
3188
3189 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable
3190 absptr -> pcrel optimization for shared libs.
3191 Only create minimal .eh_frame_hdr if absptr FDE encoding in shared
3192 library cannot be converted to pcrel.
3193 (_bfd_elf_eh_frame_section_offset): Return -2 if making absptr
3194 relative.
3195 * elf32-i386.c (elf_i386_relocate_section): If
3196 _bfd_elf_section_offset returned -2, skip, but make sure the
3197 relocation is installed.
3198 * elf32-arm.h (elf32_arm_final_link_relocate): Likewise.
3199 * elf32-cris.c (cris_elf_relocate_section): Likewise.
3200 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
3201 * elf32-i370.c (i370_elf_relocate_section): Likewise.
3202 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
3203 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
3204 * elf32-s390.c (elf_s390_relocate_section): Likewise.
3205 * elf32-sh.c (sh_elf_relocate_section): Likewise.
3206 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
3207 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
3208 * elf64-s390.c (elf_s390_relocate_section): Likewise.
3209 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
3210 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
3211 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
3212 * elf64-alpha.c (elf64_alpha_relocate_section): Handle
3213 _bfd_elf_section_offset returning -2 the same way as -1.
3214 * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
3215 * elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME
3216 and BFD_ASSERT.
3217 * elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise.
3218
69f284c7
TR
32192002-02-18 Tom Rix <trix@redhat.com>
3220
3221 * xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support.
3222 (bfd_xcoff_size_dynamic_sections): Same.
3223 * bfd-in.h (bfd_xcoff_link_generate_rtinit): Same.
3224 (bfd_xcoff_size_dynamic_sections): Same.
3225 * coff-rs6000.c (xcoff_generate_rtinit): Same.
3226 * coff-rs646000.c (xcoff64_generate_rtinit): Same.
3227 * libxcoff.h (struct xcoff_backend_data_rec): Same.
3228 * xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean.
3229 * bfd-in2.h: Regenerate.
3230
82bd7b59
AM
32312002-02-18 Alan Modra <amodra@bigpond.net.au>
3232
3233 * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
3234 (struct ppc_link_hash_table): Add sfpr.
3235 (ppc64_elf_link_hash_table_create): Init it.
3236 (ppc64_elf_create_dynamic_sections): Split creation of .stub and
3237 .glink out to..
3238 (create_linkage_sections): ..here. Make .sfpr too.
3239 (ppc64_elf_check_relocs): Call create_linkage_sections, and set
3240 dynobj early.
3241 (MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
3242 (ppc64_elf_func_desc_adjust): Look for missing ._savef* and
3243 ._restf* functions, and create as needed.
3244 (func_desc_adjust): Only force_local for shared libs.
3245
ef1355e8
NC
32462002-02-18 David O'Brien <obrien@FreeBSD.org>
3247
3248 * configure.in: Bump version number post 2.12 branching.
3249 * configure: Regenerate.
3250
dfa36a69
HPN
32512002-02-17 Hans-Peter Nilsson <hp@bitrange.com>
3252
3253 * mmo.c: Correct and improve comments.
3254 (mmo_write_chunk): Store trailing byte in bfd buffer; don't
3255 zero-pad. Use input to fill up non-empty bfd buffer.
3256 (mmo_flush_chunk): New function.
3257 (mmo_write_loc_chunk): Add parameter last_vmap, all callers
3258 changed. Don't emit location specifier if VMA is same as
3259 *LAST_VMAP after omitting leading zero contents. Call
3260 mmo_flush_chunk before emitting location specifier.
3261 (mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished
3262 with mmo_write_loc_chunk calls.
3263 (mmo_internal_write_section): Call mmo_flush_chunk after
3264 mmo_write_chunk.
3265 (mmo_write_symbols_and_terminator): Move :Main to first position
3266 in symbol array. Add faked one if it does not exist if there are
3267 other symbols. Don't add it if there are no symbols at all. Move
3268 out test for value of :Main from symbol loop. Rename table
3269 fakemain to maintable and variable mainsym to fakemain.
3270
ccf00ab6
RH
32712002-02-15 Richard Henderson <rth@redhat.com>
3272
3273 * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target
3274 section with no got matches any got. Simplify error generaion.
3275
88eaccc2
AM
32762002-02-15 Alan Modra <amodra@bigpond.net.au>
3277
fd96f80f
AM
3278 Support arbitrary length fill patterns.
3279 * linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc.
3280 (_bfd_default_link_order): Remove bfd_fill_link_order code.
3281 Call default_data_link_order.
3282 (default_fill_link_order): Delete.
3283 (default_data_link_order): New function.
3284 * elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences
3285 of bfd_fill_link_order with bfd_data_link_order.
3286 * elf64-alpha.c (elf64_alpha_final_link): Likewise.
3287 * elf64-mips.c (mips_elf64_final_link): Likewise.
3288
88eaccc2
AM
3289 * bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value.
3290 Correct value returned in "end" for "0x<non-hex>".
3291
e2fd756b
NC
32922002-02-14 Nick Clifton <nickc@cambridge.redhat.com>
3293
3294 * cpu-arm.c (processors): Replace 'arch' field with 'mach'.
3295 (scan): Test against 'mach' field in info structure.
3296
edd29cf9
AM
32972002-02-14 Alan Modra <amodra@bigpond.net.au>
3298
3299 * elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD.
3300
1e30956e 33012002-02-14 Matt Fredette <fredette@netbsd.org>
76f57f3a
JT
3302
3303 * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
3304 EF_M68000.
3305
bf36db18
NC
33062002-02-13 Nick Clifton <nickc@cambridge.redhat.com>
3307
3308 * elf.c (_bfd_elf_make_section_from_shdr): Do not insist on
edd29cf9
AM
3309 non-zero physical addresses when adjusting the LMAs of new
3310 sections.
bf36db18 3311
189c6563
AM
33122002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca>
3313
3314 * elf-hppa.h (elf_hppa_reloc_final_type): New function stripped
3315 from _bfd_elf_hppa_gen_reloc_type.
3316 (_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype.
3317 * elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype.
3318 * elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h.
3319 * elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype.
3320
e948afaf
AO
33212002-02-12 Alexandre Oliva <aoliva@redhat.com>
3322
3323 * elf-m10300.c (mn10300_elf_relax_section): Skip section before
3324 loading its contents if there's nothing to do in it.
3325
19397422
AM
33262002-02-12 Alan Modra <amodra@bigpond.net.au>
3327
0ad3a73b
AM
3328 * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing
3329 64k boundary.
3330
19397422
AM
3331 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic
3332 DT_PPC64_OPD and DT_PPC64_OPDSZ tags.
3333 (ppc64_elf_finish_dynamic_sections): Set values for them.
3334
51316059
MS
33352002-02-11 Michael Snyder <msnyder@redhat.com>
3336
3337 * elf-bfd.h (elfcore_write_lwpstatus): Add prototype.
3338 * elf.c (elfcore_grok_pstatus): Add prototype.
3339 (elfcore_grok_lwpstatus): Add prototype.
3340 (elfcore_write_lwpstatus): New function.
3341 (elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy.
3342
518313c3
AO
33432002-02-11 Alexandre Oliva <aoliva@redhat.com>
3344
3345 * elf32-sh.c: Added missing prototypes.
3346 * elf32-sh64.c: Likewise.
3347 (sh_elf_align_loads): Mark unused args as such.
3348 * elf64-sh64.c: Added missing prototypes.
3349 (struct elf_sh64_link_hash_entry): Fix typo.
3350 (sh_elf64_relocate_section): Fix info argument passed to
3351 _bfd_elf_section_offset.
3352
2c73f9d8
AM
33532002-02-11 Alan Modra <amodra@bigpond.net.au>
3354
3355 * Makefile.am: "make dep-am".
3356 * Makefile.in: Regenerate.
3357 * aclocal.m4: Regenerate.
3358 * config.in: Regenerate.
3359 * configure: Regenerate.
3360
d426c6b0
DJ
33612002-02-10 Daniel Jacobowitz <drow@mvista.com>
3362
3363 * coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized
3364 variable warnings.
3365 * elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned
3366 comparison warning.
3367 * trad-core.c (trad_unix_core_file_p): Silence pointer/integer
3368 cast warnings for the common case.
3369
e58ee0cd
HPN
33702002-02-10 Hans-Peter Nilsson <hp@bitrange.com>
3371
3372 * config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64
3373 vectors.
3374 (sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64
3375 vectors.
3376
7793f4d0
RH
33772002-02-09 Richard Henderson <rth@redhat.com>
3378
3379 * elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP.
3380 (elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise.
3381 (elf64_alpha_relocate_section): Likewise.
3382 * reloc.c (BFD_RELOC_ALPHA_BRSGP): New.
3383 * bfd-in2.h, libbfd.h: Rebuild.
3384
7e799044
HPN
33852002-02-09 Hans-Peter Nilsson <hp@bitrange.com>
3386
3387 * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check
3388 that base-plus-offset reloc accounting is consistent.
3389 (mmix_elf_relax_section): Keep base-plus-offset reloc accounting
3390 up to date for undefined symbols.
3391
027d73eb
EC
33922002-02-08 Eric Christopher <echristo@redhat.com>
3393
3394 From Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3395
3396 * elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela
3397 sections for the O32 ABI.
3398
517662d4
CD
33992002-02-08 Chris Demetriou <cgd@broadcom.com>
3400
3401 * elf32-arm.h: Fix formatting of _("...").
3402 * elf32-d10v.c: Likewise.
3403 * elf32-m68k.c: Likewise.
3404 * elf32-mips.c: Likewise.
3405
5e37cc46
NC
34062002-02-08 Ivan Guzvinec <ivang@opencores.org>
3407
3408 * coff-or32.c: Fix compile time warning messages.
3409
fbca6ad9
AO
34102002-02-08 Alexandre Oliva <aoliva@redhat.com>
3411
3412 Contribute sh64-elf.
3413 2002-01-23 Alexandre Oliva <aoliva@redhat.com>
3414 * reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
3415 R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
3416 R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
3417 R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
3418 R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
3419 R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
3420 R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
3421 R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8,
3422 R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64):
3423 New relocs.
3424 * libbfd.h, bfd-in2.h: Rebuilt.
3425 * elf32-sh.c (sh_elf_howto_table): Define new relocs.
3426 (sh_reloc_map): Map them.
3427 (PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
3428 elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be,
3429 elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry,
3430 elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
3431 elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset,
3432 elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset,
3433 movi_shori_putval) [INCLUDE_SHMEDIA]: New.
3434 (elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add
3435 datalabel_got_offset.
3436 (sh_elf_link_hash_newfunc): Initialize it.
3437 (sh_elf_relocate_section): Augment the scope of
3438 seen_stt_datalabel. Introduce GOTPLT support. Extend GOTPC, PLT,
3439 GOT and GOTOFF handling to new SHmedia relocation types. Support
3440 GOT_BIAS.
3441 (sh_elf_check_relocs): Likewise.
3442 (sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in
3443 PLT entries using movi_shori_putval. Support GOT_BIAS.
3444 (sh_elf_finish_dynamic_sections): Likewise.
3445 * elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to
3446 relocation, it's now done by the caller.
3447 (GOT_BIAS): New.
3448 * elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt,
3449 elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset,
3450 elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset,
3451 elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER,
3452 elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry,
3453 elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse,
3454 sh64_elf64_hash_table): New.
3455 (sh_elf64_howto_table): Introduce new relocs.
3456 (sh_elf64_info_to_howto): Accept new PIC relocs.
3457 (sh_elf64_relocate_section): Augment the scope of
3458 seen_stt_datalabel. Support new PIC relocs.
3459 (sh_elf64_check_relocs): Support new PIC relocs.
3460 (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le,
3461 elf_sh64_plt_entry_be, elf_sh64_plt_entry_le,
3462 elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le,
3463 elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry,
3464 sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create,
3465 movi_shori_putval, movi_3shori_putval,
3466 sh64_elf64_create_dynamic_sections,
3467 sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies,
3468 sh64_elf64_size_dynamic_sections,
3469 sh64_elf64_finish_dynamic_symbol,
3470 sh64_elf64_finish_dynamic_sections): New.
3471 (elf_backend_create_dynamic-sections,
3472 bfd_elf64_bfd_link_hash_table_create,
3473 elf_backend_adjust_dynamic_symbol,
3474 elf_backend_size_dynamic_sections,
3475 elf_backend_finish_dynamic_symbol,
3476 elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
3477 elf_backend_plt_readonly, elf_backend_want_plt_sym,
3478 elf_backend_got_header_size, elf_backend_plt_header_size):
3479 Define.
3480 2001-05-16 Alexandre Oliva <aoliva@redhat.com>
3481 * elf32-sh.c: Renumbered and renamed some SH5 relocations to
3482 match official numbers and names; moved unmaching ones to the
3483 range 0xf2-0xff.
3484 * elf32-sh64.c, elf64-sh64.c: Likewise.
3485 2001-03-12 DJ Delorie <dj@redhat.com>
3486 * elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia
3487 sections.
3488 2001-03-12 DJ Delorie <dj@redhat.com>
3489 * elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must
3490 be aligned.
3491 * elf64-sh64.c (sh_elf64_relocate_section): Ditto.
3492 2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
3493 * elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define.
3494 (sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a
3495 .cranges section with SEC_SORT_ENTRIES set.
3496 (sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an
3497 incoming sorted .cranges section.
3498 (sh64_bfd_elf_copy_private_section_data): New.
3499 (sh64_elf_final_write_processing): Only sort .cranges and modify
3500 start address if called by linker.
3501 2001-01-08 Ben Elliston <bje@redhat.com>
3502 * elf32-sh64.c (sh64_elf_final_write_processing): Activate
3503 Hans-Peter Nilsson's set bit 0 patch from 2001-01-06.
3504 * elf64-sh64.c (sh64_elf64_final_write_processing): Ditto.
3505 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
3506 * elf64-sh64.c (sh_elf64_howto_table): No open brace at start of
3507 line. Add comments before all entries.
3508 <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct and clarify describing
3509 comment.
3510 (sh_elf64_reloc): Correct head comment.
3511 (sh_elf64_relocate_section): Correct spacing.
3512 <relocating for a local symbol>: Do not honour STO_SH5_ISA32;
3513 instead call reloc_dangerous callback.
3514 <case R_SH_SHMEDIA_CODE>: New case.
3515 (sh_elf64_gc_mark_hook): Correct spacing.
3516 (sh_elf64_check_relocs): Ditto.
3517 * elf32-sh64.c (shmedia_prepare_reloc) <case R_SH_SHMEDIA_CODE>:
3518 New case.
3519 * elf32-sh.c: Correct #endif comments for #ifndef-wrapped
3520 functions.
3521 (sh_elf_howto_table) <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct,
3522 clarify describing comment. Add comments before all entries.
3523 (sh_elf_relocate_section) <relocating for a local symbol>: Do not
3524 honour STO_SH5_ISA32; instead call reloc_dangerous callback.
3525 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
3526 Sort .cranges section in final link. Prepare to set bit 0 on
3527 entry address.
3528 * elf32-sh64.c (struct sh64_find_section_vma_data): New.
3529 (sh64_elf_link_output_symbol_hook): Fix typo in prototype.
3530 (sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming
3531 .cranges section.
3532 (sh64_backend_section_from_shdr): New, to recognize
3533 SHT_SH5_CR_SORTED on incoming .cranges section.
3534 (elf_backend_section_from_shdr): Define.
3535 (sh64_elf_final_write_processing): Sort outgoing .cranges
3536 section. (New, temporarily disabled:) Set bit 0 on entry address
3537 according to ISA type.
3538 (sh64_find_section_for_address): New.
3539 (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
3540 crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c.
3541 (sh64_address_in_cranges): Move here from opcodes/sh64-dis.c. Use
3542 bfd_malloc, not xmalloc.
3543 (sh64_get_contents_type): Move here from opcodes/sh64-dis.c. Make
3544 global.
3545 * elf32-sh64.c (sh64_elf64_final_write_processing): New, (but
3546 temporarily disabled) setting bit 0 on entry address.
3547 (elf_backend_final_write_processing): Define.
3548 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
3549 * elf32-sh.c (sh_elf_howto_table) <R_SH_PT_16>: Adjust fields to
3550 be a proper relocation for PTA and PTB rather than a marker.
3551 <R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2,
3552 R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
3553 R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
3554 R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
3555 R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>:
3556 Zero src_mask.
3557 * elf64-sh64.c: Ditto.
3558 (sh_elf64_relocate_section) <case R_SH_PT_16>: New case.
3559 * elf32-sh64.c: Include opcodes/sh64-opc.h
3560 (shmedia_prepare_reloc): Take a bfd_link_info pointer as first
3561 argument. Drop const qualifiers from "bfd *" and "bfd_byte *"
3562 parameters. No unused parameters. Caller changed.
3563 <case R_SH_PT_16>: New case.
3564 * Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h.
3565 * Makefile.in: Regenerate.
3566 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
3567 * elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for
3568 all code sections.
3569 (sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
3570 (sh64_elf_merge_private_data): Ditto.
3571 * elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data
3572 to access stored section flags.
3573 (sh64_elf_final_write_processing): Return immediately unless
3574 called by linker. Use sh64_elf_section_data (cranges) to get size
3575 of linker-generated cranges entries.
3576 (sh64_elf_copy_private_data): Add missing "return true".
3577 (sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
3578 (sh_elf64_merge_private_data): Ditto.
3579 2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
3580 * elf64-sh64.c (sh64_elf64_fake_sections): New, copy of
3581 elf64-sh64.c:sh64_elf_fake_sections.
3582 (elf_backend_fake_sections): Define as sh64_elf64_fake_sections.
3583 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
3584 * elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete.
3585 (sh64_elf_final_write_processing): New.
3586 (elf_backend_final_write_processing): Define.
3587 (sh64_elf_fake_sections): Get header flags from tdata field.
3588 (sh64_elf_copy_private_data): Do not call
3589 sh64_elf_copy_private_data_internal, just copy e_flags field.
3590 (sh64_elf_merge_private_data): Do not call
3591 sh64_elf_copy_private_data_internal.
3592 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
3593 Remove EF_SH64_ABI64, let ELF size make difference.
3594 Remove SH64-specific BFD section flag.
3595 * elf32-sh64.c (sh64_elf_fake_sections): Recognize section as
3596 containing SHmedia through elf_section_data (asect)->tdata
3597 non-zero, not using a BFD section flag.
3598 (sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64.
3599 (sh64_elf_merge_private_data): Similar.
3600 (elf_backend_section_flags): Don't define.
3601 (sh64_elf_backend_section_flags): Delete.
3602 * elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64,
3603 not EF_SH64_ABI64.
3604 (sh_elf64_merge_private_data): Similar.
3605 * section.c (Section flags definitions): Don't define
3606 SEC_SH_ISA_SHMEDIA.
3607 (bfd-in2.h): Regenerate.
3608 2000-12-09 Hans-Peter Nilsson <hpn@cygnus.com>
3609 Make DataLabel references work with partial linking.
3610 * elf32-sh64.c: Fix formatting.
3611 (sh64_elf_link_output_symbol_hook): New.
3612 (elf_backend_link_output_symbol_hook): Define to
3613 sh64_elf_link_output_symbol_hook.
3614 (sh64_elf_add_symbol_hook): Make DataLabel symbol just global
3615 undefined if partial linking. Adjust sanity check.
3616 * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New.
3617 (elf_backend_link_output_symbol_hook): Define to
3618 sh64_elf64_link_output_symbol_hook.
3619 (sh64_elf64_add_symbol_hook): Make DataLabel symbol just global
3620 undefined if partial linking. Adjust sanity check.
3621 2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com>
3622 Implement semantics for inter-file DataLabel references.
3623 * elf64-sh64.c (DATALABEL_SUFFIX): Define.
3624 (sh64_elf64_add_symbol_hook): New.
3625 (sh_elf64_relocate_section): If passing an indirect symbol with
3626 st_type STT_DATALABEL on the way to a symbol with st_other
3627 STO_SH5_ISA32, do not bitor 1 to the relocation.
3628 (elf_backend_add_symbol_hook): Define to
3629 sh64_elf64_add_symbol_hook.
3630 * elf64-sh32.c: Tweak comments.
3631 (DATALABEL_SUFFIX): Define.
3632 (sh64_elf_add_symbol_hook): New.
3633 (elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook.
3634 * elf32-sh.c (sh_elf_relocate_section): If passing an indirect
3635 symbol with st_type STT_DATALABEL on the way to a symbol with
3636 st_other STO_SH5_ISA32, do not bitor 1 to the relocation.
3637 2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com>
3638 Pass through STT_DATALABEL.
3639 * elf32-sh64.c (sh64_elf_get_symbol_type): New.
3640 (elf_backend_get_symbol_type): Define.
3641 * elf64-sh64.c (sh64_elf64_get_symbol_type): New.
3642 (elf_backend_get_symbol_type): Define.
3643 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
3644 * elf32-sh64.c: Tweak comments.
3645 (sh64_elf_copy_private_data_internal): Add prototype.
3646 (bfd_elf32_bfd_set_private_flags): Define.
3647 (sh64_elf_copy_private_data_internal): Compare machine name, not
3648 textual BFD target name, to check whether to copy section flag
3649 SHF_SH5_ISA32.
3650 (sh64_elf_merge_private_data): Validize bfd_get_arch_size.
3651 Tweak section-contents-type-mismatch message.
3652 (shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers.
3653 Validize reloc-types.
3654 * elf64-sh64.c: New file.
3655 * targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare.
3656 * Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo.
3657 (BFD64_BACKENDS_CFILES): Add elf64-sh64.c.
3658 Regenerate dependencies.
3659 * Makefile.in: Regenerate.
3660 * config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and
3661 bfd_elf64_sh64l_vec.
3662 * configure.in: Handle bfd_elf64_sh64_vec and
3663 bfd_elf64_sh64l_vec.
3664 * configure: Regenerate.
3665 * po/POTFILES.in: Regenerate.
3666 * po/bfd.pot: Regenerate.
3667 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
3668 * elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize
3669 anything else but EF_SH64 and EF_SH64_ABI64.
3670 (sh64_elf_merge_private_data): Emit error for anything else but
3671 EF_SH64 and EF_SH64_ABI64.
3672 * config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec
3673 from targ_selvecs.
3674 * configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and
3675 bfd_elf32_sh64l_vec as a temporary measure.
3676 * configure: Regenerate.
3677 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com>
3678 * cpu-sh.c (arch_info_struct): Include sh5 item
3679 unconditionalized.
3680 * config.bfd (sh64-*-elf*): Do not set targ_cflags.
3681 Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec,
3682 bfd_elf32_shblin_vec and bfd_elf32_shlin_vec.
3683 * elf32-sh64.c: Tweak comments.
3684 (sh64_elf_set_mach_from_flags): Recognize all machine flags that
3685 are proper subsets of SH64 as bfd_mach_sh5. Add EF_SH64_ABI64.
3686 (sh64_elf_copy_private_data_internal): Wrap long line.
3687 (sh64_elf_merge_private_data): Rewrite to allow objects from
3688 SH64 subsets to be linked together.
3689 (INCLUDE_SHMEDIA): Define.
3690 * elf32-sh.c (sh_elf_relocate_section) <local symbol>:
3691 Parenthesize plus-expression inside or-expression.
3692 <global symbol>: Ditto.
3693 (sh_elf_set_mach_from_flags): Remove code refusing
3694 deleted EF_SH64_32BIT_ABI flag.
3695 2000-11-26 Hans-Peter Nilsson <hpn@cygnus.com>
3696 * elf32-sh.c (sh_elf_howto_table) <R_SH_IMM_LOW16_PCREL,
3697 R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL,
3698 R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true.
3699 (sh_elf_relocate_section) <local symbol>: Or 1 in
3700 calculation of relocation if sym->st_other & STO_SH5_ISA32.
3701 <global symbol>: Ditto if h->other & STO_SH5_ISA32.
3702 * elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to
3703 relocation.
3704 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
3705 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo.
3706 (BFD32_BACKENDS_CFILES): Add elf32-sh64.c.
3707 Regenerate dependencies.
3708 * Makefile.in: Regenerate.
3709 * archures.c: Add bfd_mach_sh5.
3710 * config.bfd: Map targ_cpu sh* to bfd_sh_arch.
3711 Handle sh64-*-elf*. Set targ_cflags to -DINCLUDE_SHMEDIA.
3712 * configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec.
3713 * configure: Regenerate.
3714 * reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5,
3715 BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6,
3716 BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
3717 BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8,
3718 BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16,
3719 BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16,
3720 BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16,
3721 BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16,
3722 BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations.
3723 * cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link
3724 in item for SH5.
3725 * elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items
3726 for SHmedia relocs.
3727 [INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs.
3728 [INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call
3729 shmedia_prepare_reloc, goto final_link_relocate if it returns
3730 non-zero, else fail as before.
3731 (sh_elf_set_mach_from_flags): Provide function only if not defined
3732 as macro. Do not recognize objects with EF_SH64_32BIT_ABI set.
3733 (sh_elf_set_private_flags): Provide function only if not defined
3734 as a macro.
3735 (sh_elf_copy_private_data): Similar.
3736 (sh_elf_merge_private_data): Similar.
3737 * section.c (SEC_SH_ISA_SHMEDIA): New.
3738 * targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare.
3739 * elf32-sh64.c: New file.
3740 * libbfd.h: Regenerate.
3741 * bfd-in2.h: Regenerate.
3742 * po/POTFILES.in: Regenerate.
3743 * po/bfd.pot: Regenerate.
3744 * bfd-in2.h: Regenerate.
3745 * libbfd.h: Regenerate.
3746
e108f470
DJ
37472002-02-07 Daniel Jacobowitz <drow@mvista.com>
3748
3749 * bfd-in.h: Update <stdbool.h> check to only see if <stdbool.h> has
3750 been included, not drag it in.
3751 * bfd-in2.h: Regenerate.
3752
259d18a3
L
37532002-02-06 H.J. Lu (hjl@gnu.org)
3754
3755 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update
3756 the mach and ISA fields if necessary.
3757
f13b834e
NC
37582002-02-06 Nick Clifton <nickc@cambridge.redhat.com>
3759
3760 * coffcode.h (coff_set_arch_mach_hook): Select the highest known
3761 ARM architecture when an F_ARM_5 flag is detected, since we cannot
3762 be sure exactly which architecture this represents.
3763
82f6addb
NC
37642002-02-05 Nick Clifton <nickc@redhat.com>
3765
3766 * po/tr.po: Updated translation.
3767
899f54f5
AM
37682002-02-05 Alan Modra <amodra@bigpond.net.au>
3769
3770 From Jimi X <jimix@watson.ibm.com>
3771 * archures (bfd_mach_ppc64): Define.
3772 (bfd_powerpc_arch): Rename to bfd_powerpc_archs.
3773 (bfd_powerpc_arch): Define.
3774 * bfd-in2.h: Regenerate.
3775 * cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs.
3776 (bfd_powerpc_arch): Move to tail of bfd_powerpc_archs.
3777 (bfd_powerpc_archs): Add default powerpc64 arch.
3778
248866a8
AM
37792002-02-05 Alan Modra <amodra@bigpond.net.au>
3780
3781 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs
3782 against section syms in readonly sections. Don't do the global
3783 sym check if we find one.
3784 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
3785 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
0a6958db 3786 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
248866a8
AM
3787 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
3788 (elf_s390_grok_prstatus): Add missing prototype.
3789
4fa5c2a8
HPN
37902002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
3791
3792 * elf64-mmix.c (mmix_dump_bpo_gregs): New function.
3793 (mmix_elf_check_common_relocs) <case R_MMIX_BASE_PLUS_OFFSET>:
3794 Call bfd_get_section_by_name only once. Initialize
3795 bpodata->n_bpo_relocs_this_section.
3796 (_bfd_mmix_prepare_linker_allocated_gregs): Remove comment
3797 referring to DSOs.
3798 (bpo_reloc_request_sort_fn): Don't use difference of values as
3799 return-value.
3800
537c972e
DB
38012002-02-02 David O'Brien <obrien@FreeBSD>
3802
3803 * configure.in: Tweak the FreeBSD 4.x recognition more. Only treat
3804 version 4.5 and later the same as 5-CURRENT.
3805 * configure: Re-generate.
3806
006336b8
JT
38072002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
3808
3809 * config.bfd (hppa*-*-netbsd*): New target.
3810
6c571f00
PT
38112002-01-31 Philipp Thomas <pthomas@suse.de>
3812
19397422
AM
3813 * coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR
3814 to front of message. Unify messages with elf32-arm.h. Use
3815 commas where neccessary.
3816 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase
3817 ERROR in messages. Unify messages with coff-arm.c. Correct
3818 VFP/FPA error message.
3819 (elf32_arm_print_private_bfd_data): Don't mark APCS-26 and
3820 APCS-32 for translation.
6c571f00 3821
930b4cb2
HPN
38222002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
3823
3824 Perform on-demand global register allocation from
3825 R_MMIX_BASE_PLUS_OFFSET relocs.
3826 * elf64-mmix.c (struct bpo_reloc_section_info, struct
3827 bpo_reloc_request, struct bpo_greg_section_info): New.
3828 (mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook,
3829 bpo_reloc_request_sort_fn, mmix_elf_relax_section,
3830 _bfd_mmix_check_all_relocs,
3831 _bfd_mmix_prepare_linker_allocated_gregs,
3832 _bfd_mmix_finalize_linker_allocated_gregs): New functions.
3833 (elf_mmix_howto_table): Correct src_mask for most relocs.
3834 (mmix_elf_perform_relocation) <case R_MMIX_BASE_PLUS_OFFSET>: New
3835 case.
3836 (mmix_final_link_relocate) <case R_MMIX_BASE_PLUS_OFFSET>: New
3837 case. Fix typo in comment. New label do_mmix_reloc.
3838 (mmix_elf_check_relocs): Abuse bfd_link_info member base_file to
3839 store first object file with a base-plus-offset reloc. Call
3840 mmix_elf_check_common_relocs for the part common with mmo.
3841 (mmix_elf_final_link): Write out linker-allocated register
3842 contents section.
3843 (elf_backend_gc_sweep_hook): Define.
3844 (bfd_elf64_bfd_relax_section): Define.
3845
3846 * mmo.c: Don't include <ctype.h>
3847 (mmo_init): Correct init-once logic.
3848
3e36d993
TR
38492002-02-01 Tom Rix <trix@redhat.com>
3850
3851 * config.bfd: Conditionally support <aiaff> for pre AIX 4.3.
3852
ba323545
AM
38532002-02-01 Alan Modra <amodra@bigpond.net.au>
3854
3855 * Makefile.am: Run "make dep-am"
3856 * Makefile.in: Regenerate.
3857
012884d6
DB
38582002-01-31 David O'Brien <obrien@FreeBSD>
3859
3860 * configure.in: Recognize the differences in core files from FreeBSD
3861 4.{0,1} and later versions of 4.x. This treats 4.2+ the same as
3862 5-CURRENT.
3863 * configure: Regenerate.
3864
3b16e843
NC
38652002-01-31 Ivan Guzvinec <ivang@opencores.org>
3866
3867 * coff-or32.c: New file.
3868 * cpu-or32.c: New file.
3869 * elf32-or32.c: New file.
3870 * archures.c: Add support for or32.
3871 * targets.c: Add support for or32.
3872 * bfd-in2.h: Regenerate.
7dc0ab31 3873 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags,
3b16e843
NC
3874 coff_write_object_contents): Add support for or32.
3875 * config.bfd: Add target.
3876 * configure.in: Add support for or32.
3877 * configure: Regenerate.
3878 * Makefile.am: Add support for or32.
3879 * Makefile.in: Regenerate.
3b16e843
NC
3880 * po/SRC-POTFILES.in: Add or32 files.
3881 * po/bfd.pot: Regenerate.
7dc0ab31 3882
caf8ca8e
NC
38832002-01-31 Nick Clifton <nickc@cambridge.redhat.com>
3884 Don Lindsay <lindsayd@cisco.com>
3885
3886 * elf32-mips.c (mips_elf_calculate_relocation): Replace 'return
3887 false' with a return of a bfd_reloc_ error code.
3888
e5dfef09
HPN
38892002-01-31 Hans-Peter Nilsson <hp@axis.com>
3890
3891 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
3892 unexport unreferenced symbols when --export-dynamic. Call
3893 _bfd_elf_strtab_delref when unexporting.
3894
4e4770d0
DJ
38952002-01-30 Daniel Jacobowitz <drow@mvista.com>
3896
3897 * bfd-in.h: Include <stdbool.h> if it is available.
3898 * bfd-in2.h: Regenerated.
3899
e1fa50e7
AM
39002002-01-31 Alan Modra <amodra@bigpond.net.au>
3901
3902 * elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should
3903 not go via the plt.
3904
b5f79c76
NC
39052002-01-30 Nick Clifton <nickc@cambridge.redhat.com>
3906
b5f79c76
NC
3907 * archures.c: Tidy up formatting of embedded comments.
3908 * bfd.c: Tidy up formatting of embedded comments.
7dc0ab31 3909 * bfd-in.h: Fix formatting of comments.
b5f79c76
NC
3910 * reloc.c: Tidy up formatting of ordinary & embedded comments.
3911 * section.c: Tidy up formatting of embedded comments.
3912 * syms.c: Tidy up formatting of embedded comments.
3913 * targets.c: Tidy up formatting of embedded comments.
3914
3915 * bfd-in2.h: Regenerate.
3916
ca09e32b
NC
39172002-01-30 Nick Clifton <nickc@cambridge.redhat.com>
3918
3919 * vms-tir.c (cmd_name): New function.
3920 (tir_cmd_name): New function.
3921 (etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name().
3922 (tir_opr, tir_ctl, tir_cmd): use tir_cmd_name().
3923 Fix formatting.
7dc0ab31 3924
ca09e32b
NC
3925 * peXXigen.c (pe_print_idata): Rearrange message to aid in
3926 translation.
3927 (pe_print_pdata): Rearrange message to aid in translation.
3928
3929 * libbfd.c (warn_deprecated): Rearrange error message to aid in
3930 translation.
3931
3932 * ihex.c (ihex_write_object_contents): Fix spelling typo.
3933
3934 * ieee.c (ieee_slurp_external_symbols): Remove spurious space.
3935
3936 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error
3937 message to aid in translation.
3938
3939 * elf64-mmix.c (mmix_final_link_relocate): Rearrange error message
3940 to aid in translation.
3941
3942 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo.
3943
7dc0ab31 39442002-01-30 Philipp Thomas <pthomas@suse.de>
ae1a89b7
PT
3945
3946 * coff-arm.c, elf32-elf.h: Unify messages.
3947
05f64ac6
NC
39482002-01-30 Nick Clifton <nickc@redhat.com>
3949
3950 * po/sv.po: Updated translation.
3951
f5a3e38a
NC
39522002-01-30 Philipp Thomas <pthomas@suse.de>
3953
3954 * dwarf2.c (read_abbrev): Use full section name in error message.
3955 (decode_line_info): Likewise.
661a3fd4
NC
3956
3957 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging
3958 message.
3959
d926e03d
AM
39602002-01-30 Alan Modra <amodra@bigpond.net.au>
3961
3962 * elf64-ppc.c (func_desc_adjust): Only provide missing function
3963 descriptor symbols for undefined function code syms. Clear
3964 ELF_LINK_NON_ELF so that they can stay weak.
3965
030d18fb 39662002-01-29 Chris Demetriou <cgd@broadcom.com>
7dc0ab31 3967 Mitch Lichtenberg <mpl@broadcom.com>
030d18fb
CD
3968
3969 * bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype.
3970 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function
3971 to handle 32-bit ELF embedded reloc (ld --embedded-relocs)
3972 generation.
3973 * bfd-in2.h: Regenerate.
3974
fcc76bea
CD
39752002-01-29 Chris Demetriou <cgd@broadcom.com>
3976
3977 * elf32-mips.c: Add additional comments about HI16 relocation
3978 processing.
3979 (_bfd_mips_elf_hi16_reloc): Don't subtract address here for
3980 pc-relative relocations. (Reverts change made on 2001-10-31.)
3981 (_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here
3982 for pc-relative relocations.
3983 (mips_elf_calculate_relocation): Add a comment about a kludge
3984 in the R_MIPS_GNU_REL_HI16 handling.
3985 (_bfd_mips_elf_relocate_section): Implement that kludge;
3986 adjust pc-relative HI16 relocation for difference in HI16 and
3987 LO16 addresses, since it can't easily be done in
3988 mips_elf_calculate_relocation.
3989
f9cd9119
MS
39902002-01-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
3991
3992 * elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32
3993 relocations with PC32 relocations for undefined or weak symbols.
3994 * elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise.
3995 * elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise.
3996
702248bb
JT
39972002-01-28 Jason Thorpe <thorpej@wasabisystems.com>
3998
3999 * elfcore.h (elf_core_file_p): Improve comment for last change.
4000
4867be41
DJ
40012002-01-27 Daniel Jacobowitz <drow@mvista.com>
4002
4003 * configure: Regenerated.
4004
a94cef6a
JT
40052002-01-27 Jason Thorpe <thorpej@wasabisystems.com>
4006
4007 * elfcore.h (elf_core_file_p): Set the machine architecture
4008 before processing the program headers.
4009
7562a296
HPN
40102002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
4011
966abd70
HPN
4012 * configure.in <64-bit configuration>: If using gcc, check and
4013 emit error for egcs-1.1.2.
4014 * configure: Regenerate.
4015
e8eab623
NC
40162002-01-26 Egor Duda <deo@logos-m.ru>
4017
4018 * elf.c (elfcore_grok_win32pstatus): Copy only as much information
4019 as possible to avoid stack corruption.
4020
73896efb
RH
40212002-01-26 Richard Henderson <rth@redhat.com>
4022
4023 * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext
4024 for non-allocated sections.
4025
40262002-01-25 Mark Kettenis <kettenis@gnu.org>
c106e334
MK
4027
4028 * elf.c (elfcore_write_prstatus): Make sure we pass the address of
4029 prstat.pr_reg even if it is a struct.
4030
73896efb 40312002-01-25 Steve Ellcey <sje@cup.hp.com>
254ed743 4032
c5cd6d62 4033 * elfxx-ia64.c: Reset AIX vector function overrides for HP-UX.
254ed743 4034
3d66c4f7
NC
40352002-01-25 Philipp Thomas <pthomas@suse.de>
4036
4037 * coffgen.c (coff_print_symbol): Don't mark info message
4038 for translation.
4039
9460ecda
NC
40402002-01-25 Nick Clifton <nickc@redhat.com>
4041
4042 * po/fr.po: Updated translation.
4043 * po/es.po: Updated translation.
4044
cc9ff76a
AM
40452002-01-25 Philipp Thomas <pthomas@suse.de>
4046
4047 * coff-alpha.c (alpha_relocate_section): Unify warning message
4048 for GP relative relocations without GP defined.
4049 * coff-mips.c (mips_relocate_section): Likewise.
4050
c68836a9
AM
40512002-01-25 Alan Modra <amodra@bigpond.net.au>
4052
4053 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
4054 unsigned overflow when new_offset < old_offset.
4055
e8eab623 40562002-01-24 Philipp Thomas <pthomas@suse.de>
391154e9
NC
4057
4058 * bfd.c (_bfd_abort): Fix typo.
4059
8ba89f17
RH
40602002-01-23 Richard Henderson <rth@redhat.com>
4061
4062 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
4063 plt entries for undefweak symbols.
4064
c6953948
NC
40652002-01-23 Steve Ellcey <sje@cup.hp.com>
4066
c5cd6d62 4067 * targets.c (bfd_elf32_ia64_hpux_big_vec): Add to DEFAULT_VECTOR.
c6953948
NC
4068 (bfd_elf64_ia64_hpux_big_vec): Ditto.
4069 (bfd_elf32_h8300_vec): Ditto.
4070
41bd81ab
AM
40712002-01-23 Alan Modra <amodra@bigpond.net.au>
4072
4073 * elf64-ppc.c: Remove stale part of ABI comment.
4074 (NO_OPD_RELOCS): Define.
4075 (ppc64_elf_check_relocs): Use it.
4076 (ppc64_elf_relocate_section): Here too.
4077 (build_one_stub): Don't point function syms at the stub. Instead,
4078 hijack plt.offset.
4079 (ppc64_elf_relocate_section): Check whether REL24 relocs should
4080 really go to the stub. Make all dynamic relocs in opd against
4081 locals.
4082 (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
4083 plt.offset.
4084
f304919d
RH
40852002-01-22 Richard Henderson <rth@redhat.com>
4086
4087 * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.
4088
c0ef99a7
AM
40892002-01-22 Alan Modra <amodra@bigpond.net.au>
4090
60ee0d4a
AM
4091 * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
4092 TOC_BASE_OFF adjustment.
4093
c0ef99a7
AM
4094 * Makefile.am: Run "make dep-am".
4095 * Makefile.in: Regenerate.
4096 * po/SRC-POTFILES.in: Regenerate.
4097
64328b46
AM
40982002-01-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
4099
4100 * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
4101 host defines.
4102
59953665 41032002-01-21 Hans-Peter Nilsson <hp@axis.com>
58255df3
HPN
4104
4105 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>:
4106 Check for and emit error if sgot is NULL at this point.
4107
9596feea
JT
41082002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
4109
4110 * config.bfd (ia64*-*-netbsd*): New target.
4111
7b45c6e1
AM
41122002-01-21 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
4113
4114 * som.c (som_write_space_strings): Comment typo fix.
4115
e5094212
AM
41162002-01-21 Alan Modra <amodra@bigpond.net.au>
4117
e86ce104
AM
4118 * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
4119 is_func_descriptor fields.
4120 (link_hash_newfunc): Init them.
4121 (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
4122 dot are candidates for plt entries. When processing .opd relocs,
4123 set function descriptor strings to point inside function code
4124 string, and set new ppc_link_hash_entry fields.
4125 (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
4126 (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
4127 function descriptors. It's now done in..
4128 (func_desc_adjust): New.
4129 (ppc64_elf_func_desc_adjust): New.
4130 (define elf_backend_always_size_sections): Define.
4131 (ppc64_elf_hide_symbol): New.
4132 (define elf_backend_hide_symbol): Define.
4133 (allocate_dynrelocs): Remove code looking up function descriptors
4134 as that has been done earlier.
4135 (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
4136 table.
4137 (ppc64_elf_finish_dynamic_symbol): Likewise. Remove code looking
4138 up function descriptor.
4139 (build_one_stub): Look up the function code sym. Check for
4140 invalid plt offsets.
4141 (ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
4142 Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.
4143
e5094212
AM
4144 * elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add
4145 boolean param.
4146 (_bfd_elf_link_hash_hide_symbol): Likewise.
4147 * elflink.h (elf_link_add_object_symbols): Adjust call to
4148 elf_backend_hide_symbol.
4149 (elf_fix_symbol_flags): Likewise.
4150 (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
4151 than bfd_alloc.
4152 * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
4153 Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
4154 * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
4155 (clobber_millicode_symbols): Adjust to suit new hide_symbol.
4156 * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
4157 and adjust to suit.
4158 * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
4159 _bfd_elf_link_hash_hide_symbol rather than duplicating code.
4160 * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
4161
40b8271b
AM
41622002-01-18 Alan Modra <amodra@bigpond.net.au>
4163
4164 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
4165 dynamic function descriptor symbol, not the associated function
4166 symbol.
4167
55baa95b
EC
41682002-01-17 Eric Christopher <echristo@redhat.com>
4169
4170 * elf32-mips.c (mips_elf_calculate_relocation): Fix typo.
4171
328577ad
NC
41722002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
4173
4174 * po/bfd.pot: Regenerate.
4175 * po/fr.po: Regenerate.
4176
af746e92
AM
41772002-01-17 Alan Modra <amodra@bigpond.net.au>
4178
4179 * elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>):
4180 Remove "Elf_Internal_Shdr *" param.
4181 (_bfd_mips_elf_section_from_bfd_section): Ditto.
4182 * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
4183 * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
4184 * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
4185 * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
4186 * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
4187 * elf.c (_bfd_elf_section_from_bfd_section): Allow backend
4188 function to override special sections. Remove hdr arg from
4189 backend call, and don't loop.
4190
175e9962
EC
41912002-01-16 Eric Christopher <echristo@redhat.com>
4192
4193 * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
4194 on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
4195 relocations requiring gp0 and gp.
4196
96a846ea
RE
41972002-01-16 Richard Earnshaw <rearnsha@arm.com>
4198
175e9962 4199 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
96a846ea
RE
4200 EF_ARM_VFP_FLOAT.
4201 (elf32_arm_print_private_bfd_data): Likewise.
4202
af3ae48d
NC
42032002-01-16 Nick Clifton <nickc@cambridge.redhat.com>
4204
4205 * po/tr.po: Import new version.
4206
10ed1bba
AM
42072002-01-16 Alan Modra <amodra@bigpond.net.au>
4208
4209 * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
4210 (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
4211 (ORI_R0_R0_0): Correct.
4212
5d1634d7
AM
42132002-01-16 Alan Modra <amodra@bigpond.net.au>
4214
4215 * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
4216 when plt_not_loaded.
4217 * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
4218 clear .plt SEC_CODE here. Create .stub and correct .glink flags.
4219 (PLT_INITIAL_ENTRY_SIZE): Set to 24.
4220 (ppc64_elf_glink_code): Delete.
4221 (PPC64_ELF_GLINK_SIZE): Delete.
4222 (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
4223 BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
4224 ORI_R0_R0_0): Define.
4225 (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
4226 (struct ppc_link_hash_table): Add sstub and plt_overflow.
4227 (ppc64_elf_link_hash_table_create): Init them.
4228 (ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry.
4229 Don't copy to shared lib.
4230 (ppc64_elf_check_relocs): Call bfd_set_error on errors.
4231 (ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount.
4232 (allocate_dynrelocs <plt>): Don't change function sym here. Make
4233 room for .stub and .glink code.
4234 (ppc64_elf_size_dynamic_sections): Handle .stub. Make entry for
4235 DT_PPC64_GLINK.
4236 (ppc64_elf_final_link): Rename to ppc64_elf_set_toc. Don't call
4237 bfd_elf64_bfd_final_link.
4238 (bfd_elf64_bfd_final_link): Don't define.
4239 (ppc64_elf_size_stubs): New.
4240 (build_plt_stub): New.
4241 (build_one_stub): New.
4242 (ppc64_elf_build_stubs): New.
4243 (ppc64_elf_relocate_section <toc relocs>): Remove assert.
4244 (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
4245 (ppc64_elf_finish_dynamic_symbol): Don't build stubs here. Set
4246 DT_PPC64_GLINK entry. Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
4247 case output sections not separate. Adjust DT_RELASZ to not
4248 include plt relocs. Set reserved got entry. Set got and plt
4249 entry size.
4250 (elf_backend_got_header_size): Set to 8.
4251 * elf64-ppc.h: New file.
4252
c601ffdb
AM
42532002-01-16 Alan Modra <amodra@bigpond.net.au>
4254
4255 * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
4256 sections, use bfd_section_list_remove.
4257 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
4258 * elflink.h (elf_link_add_object_symbols): When removing all
4259 sections, use bfd_section_list_clear.
4260
8fb4cb7f
NC
42612002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
4262
4263 * po/sv.po: New file: Swedish translation.
4264 * configure.in (ALL_LINGUAS): Add sv.
4265 * configure: Regenerate.
4266
d3c456e9
JJ
42672002-01-15 Jakub Jelinek <jakub@redhat.com>
4268
4269 * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
4270 * elf.c (merge_sections_remove_hook): New function.
4271 (_bfd_elf_merge_sections): Pass it as 3rd argument to
4272 _bfd_merge_sections.
4273 * libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
4274 * libbfd.h: Rebuilt.
4275 * merge.c (_bfd_merge_sections): Add remove_hook argument.
4276 Call remove_hook if a SEC_EXCLUDE section is encountered.
4277
1f7fd478
NC
42782002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
4279
4280 * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
4281 (xstormy16_reloc_map): Initialise new field with correct howto
4282 table.
4283 (xstormy16_reloc_type_lookup): Use 'table' field to locate correct
4284 howto entry.
4285
b87011e9
MS
42862002-01-10 Michael Snyder <msnyder@redhat.com>
4287
4288 * elf.c (elfcore_write_prstatus): Use long instead of pid_t;
4289 (elfcore_write_pstatus): Use long instead of pid_t;
4290 * elf-bfd.h: Change prototypes to use long instead of pid_t;
4291
175e9962 42922002-01-09 Jason Thorpe <thorpej@wasabisystems.com>
b4db1224
JT
4293
4294 * elf.c: Update copyright years.
4295 (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
4296 and NT_NETBSDCORE_FIRSTMACH. Improve a comment.
4297
7c76fa91
MS
42982002-01-08 Michael Snyder <msnyder@redhat.com>
4299
4300 Add capability to write corefile note sections, for gdb.
4301 * elf.c (elfcore_write_note): New function.
4302 (elfcore_write_prpsinfo): New function.
4303 (elfcore_write_prstatus): New function.
4304 (elfcore_write_pstatus): New function.
4305 (elfcore_write_prfpreg): New function.
4306 (elfcore_write_prxfpreg): New function.
97996af6 4307 * elf-bfd.h: Add prototypes for above functions.
7c76fa91 4308
e1fddb6b
AO
43092002-01-08 Alexandre Oliva <aoliva@redhat.com>
4310
4311 * elf.c (elf_fake_sections): Propagate errors from
4312 elf_backend_fake_section.
4313
8d05742f
JT
43142002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
4315
4316 * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
4317 (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
4318 (elf32-sh-nbsd.lo): New rule.
4319 * Makefile.in: Regenerate.
4320 * config.bfd (sh*le-*-netbsdelf*): New target.
4321 (sh*-*-netbsdelf*): New target.
4322 * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
4323 (bfd_elf32_shnbsd_vec): New vector.
4324 (bfd_elf32_shlnbsd_vec): New vector.
4325 * configure: Regenerate.
4326 * elf32-sh-nbsd.c: New file.
4327 * targets.c: Update copyright years.
175e9962 4328 (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
8d05742f
JT
4329 bfd_elf32_shnbsd_vec.
4330
1dba4cb4
AH
43312002-01-07 Aldy Hernandez <aldyh@redhat.com>
4332
4333 * coff-rs6000.c (READ20): Use bfd_scan_vma.
4334
47b22aef
GK
43352002-01-07 Geoffrey Keating <geoffk@redhat.com>
4336
4337 * elflink.h (elf_link_input_bfd): Don't ask for the merged offset
4338 of a symbol in a section that will be deleted.
4339
be2d1673
NC
43402002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
4341
4342 * po/es.po: New file: Spanish translation.
4343 * configure.in (ALL_LINGUAS): Add es.
4344 * configure: Regenerate.
4345
d9cf1b54
AM
43462002-01-06 Steve Ellcey <sje@cup.hp.com>
4347
4348 * elfxx-ia64.c (is_unwind_section_name): Add target vector as
4349 argument so we can handle HP-UX specially.
4350 (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
4351 (elfNN_hpux_backend_section_from_bfd_section): New for support
4352 of SHN_IA_64_ANSI_COMMON.
4353 (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
4354 (is_unwind_section_name): Add special HP-UX support.
4355 (elfNN_ia64_section_from_shdr): Add support for more sections.
4356 (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
4357 add support for more sections.
4358 (elfNN_ia64_additional_program_headers): Modify
4359 is_unwind_section_name call.
4360 (elfNN_ia64_modify_segment_map): Remove assumption that there is
4361 only one unwind section in segment.
4362
3f3c5c34
AM
43632002-01-06 Alan Modra <amodra@bigpond.net.au>
4364
4365 * syms.c (_bfd_generic_make_empty_symbol): New function.
4366 * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
4367 _bfd_generic_make_empty_symbol.
4368 * libbfd.h: Regenerate.
4369 * bfd-in2.h: Regenerate.
4370 * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
4371 (hppabsd_core_get_symtab_upper_bound): Don't define.
4372 (hppabsd_core_get_symtab): Likewise.
4373 (hppabsd_core_print_symbol): Likewise.
4374 (hppabsd_core_get_symbol_info): Likewise.
4375 (hppabsd_core_bfd_is_local_label_name): Likewise.
4376 (hppabsd_core_get_lineno): Likewise.
4377 (hppabsd_core_find_nearest_line): Likewise.
4378 (hppabsd_core_bfd_make_debug_symbol): Likewise.
4379 (hppabsd_core_read_minisymbols): Likewise.
4380 (hppabsd_core_minisymbol_to_symbol): Likewise.
4381 (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
4382 Formatting fixes.
4383 * hpux-core.c: Similarly.
4384 * irix-core.c: Similarly.
4385 * osf-core.c: Similarly.
4386 * sco5-core.c: Similarly.
4387 * binary.c (binary_make_empty_symbol): Remove function, define as
4388 _bfd_generic_make_empty_symbol.
4389 * ihex.c (ihex_make_empty_symbol): Likewise.
4390 * mmo.c (mmo_make_empty_symbol): Likewise.
4391 * ppcboot.c (ppcboot_make_empty_symbol): Likewise.
4392 * srec.c (srec_make_empty_symbol): Likewise.
4393 * versados.c (versados_make_empty_symbol): Likewise.
4394 * vms.c (_bfd_vms_make_empty_symbol): Remove.
4395 (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
4396 * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
4397 rather than _bfd_vms_make_empty_symbol.
4398 * vms-misc.c (new_symbol): Likewise.
4399
3f0a7f7f
AM
44002002-01-05 Alan Modra <amodra@bigpond.net.au>
4401
9e7b37b3
AM
4402 * section.c (bfd_section_init): Remove unnecessary initialisations.
4403 (bfd_section_list_clear): New function.
4404 (bfd_section_list_remove, bfd_section_list_insert): New macros.
4405 (_bfd_strip_section_from_output): Use them.
4406 * coffcode.h (coff_set_alignment_hook): Likewise.
4407 * elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
4408 * elf64-mips.c (mips_elf64_final_link): Likewise.
4409 * elf64-mmix.c (mmix_elf_final_link): Likewise.
4410 * sunos.c (sunos_add_dynamic_symbols): Likewise.
4411 * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
4412 * bfd-in2.h: Regenerate.
4413
4414 * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
4415 rather than doing our own section handling. Clean up after errors
4416 with bfd_release and bfd_section_list_clear. Handle unexpected
4417 flags.
4418 * aoutf1.h (sunos4_core_file_p): Likewise.
4419 * aix386-core.c (aix386_core_file_p): Likewise.
4420 * cisco-core.c (cisco_core_file_validate): Likewise.
4421 * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
4422 * trad-core.c (trad_unix_core_file_p): Likewise.
4423
4424 * hppabsd-core.c (hppabsd_core_core_file_p): Clean up after errors
4425 with bfd_release and bfd_section_list_clear.
4426 * hpux-core.c (hpux_core_core_file_p): Likewise.
4427 * irix-core.c (irix_core_core_file_p): Likewise.
4428 * lynx-core.c (lynx_core_file_p): Likewise.
4429 * osf-core.c (osf_core_core_file_p): Likewise.
4430 * rs6000-core.c (rs6000coff_core_p): Likewise.
4431 * sco5-core.c (sco5_core_file_p): Likewise.
4432
3f0a7f7f
AM
4433 * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
4434 sign extension adjustments without conditionals.
4435
a3aa38ee
JJ
44362002-01-04 Jakub Jelinek <jakub@redhat.com>
4437
4438 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
4439 CIE at .eh_frame start is removed due to no FDEs referencing it.
4440
8a8b2d4b
AJ
44412002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
4442
4443 * config.bfd (x86_64-*-netbsd*): New target.
4444 * configure.in (x86_64-*-netbsd*): Set COREFILE
4445 to netbsd-core.lo.
4446 * configure: Regenerated.
4447
04b5af89
TR
44482002-01-03 Tom Rix <trix@redhat.com>
4449
4450 * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
4451 for recent bfd_make_section_anyway change.
4452
51c5503b
NC
44532002-01-03 Nick Clifton <nickc@cambridge.redhat.com>
4454
4455 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
4456 R_ARM_THM_PC11 reloc.
4457
07f7c046
NC
44582002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
4459
4460 * configure.in (LINGUAS): Add ja.
4461 * configure: Regenerate.
4462 * po/ja.po: Import from translation project's web site.
4463
5eefb65f
NC
44642002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
4465
4466 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
4467 messages to ease translation into other languages.
4468
39e90f10 4469For older changes see ChangeLog-0001
56882138
AM
4470\f
4471Local Variables:
4472mode: change-log
4473left-margin: 8
4474fill-column: 74
4475version-control: never
4476End: