Mark Kettenis <kettenis@gnu.org>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
3e722fb5
CD
12004-04-28 Chris Demetriou <cgd@broadcom.com>
2
3 * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
4 * bfd-in2.h: Regenerate.
5 * libbfd.h: Likewise.
6
351e2b5a
DA
72004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
8
9 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and
10 dup_common fields.
11 (setup_sections): Use som_subspace_dictionary_record struct instead
12 subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is
13 is_comdat, is_common or dup_common.
14 (som_prep_headers): Use som_subspace_dictionary_record struct. Set
15 is_comdat, is_common and dup_common in section subspace_dict from
16 copy_data.
17 (som_begin_writing): Use som_subspace_dictionary_record struct.
18 (som_finish_writing): Likewise.
19 (som_bfd_derive_misc_symbol_info): Add support to set is_comdat,
20 is_common and dup_common flags in info for symbol. Add comment
21 regarding linker support for these fields. Slightly reorganize
22 function.
23 (som_build_and_write_symbol_table): Set is_comdat, is_common and
24 dup_common fields in symbol table from symbol info.
25 (bfd_som_set_subsection_attributes): Add comdat, common and dup_common
26 arguments. Set corresponding fields in copy_data. Change all callers.
27 (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library
28 symbol table.
29 (som_vec): Add SEC_LINK_ONCE to applicable section flags.
30 * som.h (som_subspace_dictionary_record): Define.
31 (som_copyable_section_data_struct): Add is_comdat, is_common and
32 dup_common fields.
33 (som_section_data_struct): Use som_subspace_dictionary_record struct
34 instead of subspace_dictionary_record.
35 (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype.
36
3ba3bc8c
BW
372004-04-27 Bob Wilson <bob.wilson@acm.org>
38
39 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size
40 if set. Check reloc_done flag before applying relocations. Use
41 output addresses, both when applying relocations and when comparing
42 against the specified section.
43 (elf_xtensa_relocate_section): Use output address to check if dynamic
44 reloc is in a literal pool. Set section's reloc_done flag.
45
beb8df56
L
462004-04-27 H.J. Lu <hongjiu.lu@intel.com>
47
48 * elf32-sh64.c (elf_backend_section_flags): New. Defined.
49 (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges
50 section.
51 (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges
52 section.
53
1829f4b2
AM
542004-04-27 Alan Modra <amodra@bigpond.net.au>
55
56 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign
57 structure field removed in 2004-04-24 patch.
58 * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix.
59
60 * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>):
61 Constify hdr arg.
62 * elf32-arm.h (elf32_arm_section_flags): Likewise.
63 * elf64-alpha.c (elf64_alpha_section_flags): Likewise.
64 * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise.
65 * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section
66 field before calling elf_backend_section_flags.
67
4030e8f6
CD
682004-04-24 Chris Demetriou <cgd@broadcom.com>
69
70 * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16)
71 (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove.
72 (bfd_elf32_bfd_reloc_type_lookup): Remove cases for
73 BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL,
74 and BFD_RELOC_32_PCREL.
75 (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16,
76 R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32.
77 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
78 (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16.
79 (mips_elf_next_relocation): Move comment about matching HI/LO
80 relocations to...
81 (_bfd_mips_elf_relocate_section): Here. Remove handling for
82 R_MIPS_GNU_REL_HI16.
83
3e27568f
CD
842004-04-23 Chris Demetriou <cgd@broadcom.com>
85
86 * coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
87 (mips_switch_reloc, mips_read_relocs, mips_relax_section)
88 (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
89 (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
90 and update comments to reflect current usage.
91 (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
92 and MIPS_R_SWITCH, as well as several empty entries. Update comment
93 for MIPS_R_PCREL16.
94 (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
95 (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
96 for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
97 (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
98 type number to be MIPS_R_PCREL16.
99 (mips_relocate_section): Remove support for link-time relaxation
100 of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
101 MIPS_R_RELLO, and MIPS_R_RELHI relocations.
102 (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
103 * ecoff.c (ecoff_indirect_link_order): Remove support for link-time
104 relaxation of branches used by embedded-PIC.
105 * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
106 * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
107 related members, update comment.
108 * pe-mips.c: Remove disabled (commented-out and #if 0'd)
109 code related to embedded-PIC.
110 * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
111 initialization of now-removed 'adjust' member of
112 'struct ecoff_debug_info'.
113
b32de0bc 1142004-04-23 Chris Demetriou <cgd@broadcom.com>
8472310d
CD
115
116 * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove.
117
955af222
PB
1182004-04-21 Philip Blundell <pb@nexus.co.uk>
119
120 * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32
121 relocs for locally defined symbols during -shared final link.
122 (elf32_arm_final_link_relocate): Likewise.
123
47a9f7b3
JJ
1242004-04-22 Jakub Jelinek <jakub@redhat.com>
125
126 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also
127 ELF_LINK_POINTER_EQUALITY_NEEDED.
128 (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED
129 if r_type is not R_X86_64_PC32.
130 (elf64_x86_64_finish_dynamic_symbol): If
131 ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of
132 SHN_UNDEF symbols.
133
1f1799d5
KK
1342004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
135
136 * elf32-sh.c (sh_elf_plt_sym_val): New function.
137 (elf_backend_plt_sym_val): Define.
138
0fdea5ce
AC
1392004-04-22 Andrew Cagney <cagney@redhat.com>
140
141 * opncls.c (bfd_alloc): Fix type of "wanted" in doco.
142
5198ba8b
DA
1432004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
144
145 * hpux-core.c (hpux_core_core_file_p): Add cast in call to
146 make_bfd_asection.
147 * som.c (som_set_section_contents): Constantify second argument.
148 (hppa_som_gen_reloc_type): Abort for unsupported selectors.
149 (som_object_setup): Rework to avoid warning.
150 (setup_sections, som_write_fixups, bfd_section_from_som_symbol):
151 Likewise.
152
fe2e161a
AC
1532004-04-22 Andrew Cagney <cagney@redhat.com>
154
155 * cache.c (bfd_cache_close): Check for a previously closed file.
156
4c45e5c9
JJ
1572004-04-22 Jakub Jelinek <jakub@redhat.com>
158
159 * bfd.c (bfd_get_synthetic_symtab): Define.
160 * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
161 NAME##_get_synthetic_symtab.
162 (struct bfd_target): Add _bfd_get_synthetic_symtab.
163 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
164 * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
165 relplt_name fields.
166 (_bfd_elf_get_synthetic_symtab): New prototype.
167 * elfcode.h (elf_get_synthetic_symtab): Define.
168 * elf.c (_bfd_elf_get_synthetic_symtab): New function.
169 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
170 (elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
171 (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
172 * bfd-in2.h: Rebuilt.
173 * libbfd.h: Rebuilt.
174 * elf32-i386.c (elf_i386_plt_sym_val): New function.
175 (elf_backend_plt_sym_val): Define.
176 * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
177 (elf_backend_plt_sym_val): Define.
178 * elf32-s390.c (elf_s390_plt_sym_val): New function.
179 (elf_backend_plt_sym_val): Define.
180 * elf64-s390.c (elf_s390_plt_sym_val): New function.
181 (elf_backend_plt_sym_val): Define.
182 * elf32-sparc (elf32_sparc_plt_sym_val): New function.
183 (elf_backend_plt_sym_val): Define.
184 * elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
185 (elf_backend_plt_sym_val): Define.
186 * elf32-ppc.c (ppc_elf_plt_sym_val): New function.
187 (elf_backend_plt_sym_val): Define.
188 * aout-target.h (MY_get_synthetic_symtab): Define.
189 * aout-tic30.c (MY_get_synthetic_symtab): Define.
190 * coff-rs6000.c (rs6000coff_vec): Add
191 _bfd_nodynamic_get_synthetic_symtab.
192 (pmac_xcoff_vec): Likewise.
193 * coff64-rs6000.c (rs6000coff64_vec): Add
194 _bfd_nodynamic_get_synthetic_symtab.
195 (aix5coff64_vec): Likewise.
196 * sunos.c (MY_get_synthetic_symtab): Define.
197 * vms.c (vms_get_synthetic_symtab): Define.
198
d2f7ecac
NC
1992004-04-22 Nick Clifton <nickc@redhat.com>
200
201 * bfd.c (bfd_archive_filename): Return NULL on NULL input.
202
fd99574b
NC
2032004-04-22 Peter Barada <peter@the-baradas.com>
204
205 * archures.c: Add bfd_mach_mcfv4e to bfd_architecture.
206 * bfd2-in.h: Regenerate.
207 * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[].
208
23867d67
CD
2092004-04-21 Chris Demetriou <cgd@broadcom.com>
210
211 * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove.
212 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove.
213 * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs)
214 (bfd_mips_elf32_create_embedded_relocs): Remove prototypes
215 * bfd-in2.h: Regenerate.
216
2c8c90bc
BW
2172004-04-21 Bob Wilson <bob.wilson@acm.org>
218
219 * elf32-xtensa.c (is_same_value): Add final_static_link argument and
220 require relocations against a weak symbol to reference the same
221 symbol hash entry if not a final, static link.
222 (get_cached_value, add_value_map): Add final_static_link argument.
223 (remove_literals): Pass final_static_link argument as needed.
224
40838a72
AC
2252004-04-21 Andrew Cagney <cagney@redhat.com>
226
227 * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
228 (struct opncls, opncls_btell, opncls_bseek, opncls_bread)
229 (opncls_bwrite, opncls_bclose, opncls_bflush)
230 (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
231 bfd iovec that uses function callbacks.
232 (bfd_close): Use the iovec's bclose.
233 * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
234 (cache_bclose, cache_bflush, cache_bstat)
235 (cache_iovec): New functions and global variable, implement a
236 cache "iovec", where applicable set bfd_error.
237 (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
238 * bfdio.c (struct bfd_iovec): Define.
239 (real_read): Delete function.
240 (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
241 (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
242 assume that bread and bwrite set bfd_error.
243 * bfd.c (struct bfd): Add "iovec", update comments.
244 * bfd-in2.h, libbfd.h: Re-generate.
245
7f919c84
AC
2462004-04-21 Andrew Cagney <cagney@redhat.com>
247
248 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
249
715df9b8
EB
2502004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
251
252 * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function.
253 (bfd_elf_gc_sections): Fail if a shared object is being created.
254 Do not fail if dynamic sections have been created. Instead call
255 elf_gc_mark_dynamic_ref_symbol to mark sections that contain
256 dynamically referenced symbols. Do not mark the whole graph
257 rooted at .eh_frame, only the section proper.
258
6482c264
NC
2592004-04-20 DJ Delorie <dj@redhat.com>
260
261 * reloc.c: Add BFD_RELOC_32_SECREL.
262 * bfd-in2.h: Regenerate.
263 * libbfd.h: Likewise.
264 * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32.
265 (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it.
266 (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise.
267
4dc570c2
JJ
2682004-04-19 Jakub Jelinek <jakub@redhat.com>
269
270 * elf32-sparc.c (elf32_sparc_relocate_section): Handle
271 relocs against hidden/protected undefweak symbols properly.
272 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
273
0b60d5d3
MK
2742004-04-18 Mark Kettenis <kettenis@gnu.org>
275
276 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
277 * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC
278 core files.
279
d48bdb99
AM
2802004-04-17 Brian Ford <ford@vss.fsi.com>
281
282 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero
283 filepos for the SizeOfHeaders field.
284 (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc
285 overflow.
286 (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment.
287
57a1784e
AM
2882004-04-16 Alan Modra <amodra@bigpond.net.au>
289
290 * simple.c (bfd_simple_get_relocated_section_contents): Don't
291 change reloc_done. Set and restore _cooked_size.
292 (RETURN): Delete.
293
d1ad3f6f
MK
2942004-04-15 Mark Kettenis <kettenis@gnu.org>
295
296 * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX
297 core files.
298
3d1bca9d
NC
2992004-04-15 Nick Clifton <nickc@redhat.com>
300
301 * bfd.c (bfd_archive_filename): Catch NULL bfd pointers.
302
019b892f
AM
3032004-04-15 Alan Modra <amodra@bigpond.net.au>
304
305 * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change.
306
15b43f48
AM
3072004-04-15 H.J. Lu <hongjiu.lu@intel.com>
308
309 * elflink.c (_bfd_elf_merge_symbol): Treat weak as strong only
310 when it is a definition.
311
6de00a78
AM
3122004-04-14 Alan Modra <amodra@bigpond.net.au>
313
314 * elf32-sparc.c (elf32_sparc_relocate_section): Don't abort
315 when statically linking PIC code.
316 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
317
279500de
TS
3182004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
319
320 * config.bfd: Remove mips*-*-mach3* and mips*-dec-mach3* targets.
321 * configure.in: Remove mips-dec-bsd*, mips-dec-mach3*, mips-*-mach3*
322 targets amd aout_mips_big_vec, aout_mips_little_vec target vectors.
323 * configure: Regenerate.
324
ccf2f652
RS
3252004-04-08 Richard Sandiford <rsandifo@redhat.com>
326
327 * elflink.c: Include libiberty.h.
328 * Makefile.am (elflink.lo): Depend on libiberty.h.
329 * Makefile.in: Regenerate.
330
ca07892d
DJ
3312004-04-06 Daniel Jacobowitz <drow@mvista.com>
332
333 * elfxx-mips.c (MIPS_ELF_STUB_SECTION_NAME): Always use
334 ".MIPS.stubs".
335
a5a58ba4
L
3362004-04-05 H.J. Lu <hongjiu.lu@intel.com>
337
338 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Always
339 reserve the memory for dynamic linker
340
24d18d30
MK
3412004-04-05 Mark Kettenis <kettenis@gnu.org>
342
343 * netbsd-core.c (CORE_WCOOKIE_OFFSET): New define.
344 (netbsd_core_file_p): Create a .wcookie section for OpenBSD/sparc.
345
a4d7b4b5
L
3462004-04-02 H.J. Lu <hongjiu.lu@intel.com>
347
348 * elf32-cr16c.c (elf32_cr16c_relocate_section): Use
349 RELOC_FOR_GLOBAL_SYMBOL.
350 (elf32_cr16c_add_symbol_hook): Remove const from Elf_Internal_Sym.
351
1f433d93
L
3522004-04-02 H.J. Lu <hongjiu.lu@intel.com>
353
354 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
355 R_ARM_ALU* only if OLD_ARM_ABI is not defined.
356
e489d0ae
PB
3572004-04-01 Paul Brook <paul@codesourcery.com>
358
359 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.
360 * elf32-arm.h (struct elf32_elf_section_map): New.
361 (struct _arm_elf_section_data): New.
362 (elf32_arm_section_data): Define.
363 (struct elf32_arm_link_hash_table): Add byteswap_code.
364 (elf32_arm_link_hash_table_create): Initialize byteswap_code.
365 (bfd_elf32_arm_process_before_allocation): Add byteswap_code.
366 (elf32_arm_post_process_headers): Set EF_ARM_BE8.
367 (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook,
368 elf32_arm_compare_mapping, elf32_arm_write_section): New functions.
369 (bfd_elf32_new_section_hook, elf_backend_write_section,
370 elf_backend_link_output_symbol_hook): Define.
371
66a695f0
NC
3722004-04-01 Andy Chittenden <achittenden@bluearc.com>
373
374 * stabs.c (struct stab_link_includes_totals): Add field 'symb'
375 that keeps the characters in a B_INCL..B_EINCL range.
376 (_bfd_link_section_stabs): When computing the sum of the
377 characters in a B_INCL..B_EINCL range also keep a copy of those
378 characters. Use this information to distinguish between
379 include sections that have the same sum and the same length
380 but which are nevertheless unique.
381
8375c36b
PB
3822004-03-31 Paul Brook <paul@codesourcery.com>
383
384 * elf32-arm.h (elf32_arm_final_link_relocate): Add R_ARM_ALU*.
385 * elfarm-nabi.c (elf32_arm_howto_table): Ditto.
386
a56b48eb
NC
3872004-03-31 Andy Chittenden <achittenden@bluearc.com>
388
389 * stabs.c (struct stab_link_includes_totals): Rename field 'total'
390 to 'sum_chars' and add field 'num_chars'.
391 (_bfd_link_section_stabs): When computing the sum of the
392 characters in a B_INCL..B_EINCL range also keep a count of the
393 number of characters. Use this information to help distinguish
394 between include sections when have the same sum but which
395 nevertheless are still unique.
396