]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Do not include empty sections in loadable segments.
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
1ed89aa9
NC
12002-06-06 David Heine <dlheine@tensilica.com>
2
3 * elf.c (assign_file_positions_for_segments): Remove unallocated
4 sections from the section to segment mapping for PT_LOAD segments.
5 Update comment about empty loadable segments.
6
644c4c80
RS
72002-06-06 Richard Sandiford <rsandifo@redhat.com>
8
9 * stabs.c (_bfd_link_section_stabs): Check that the symbol offset
10 is within the .stabstr section.
11
f8ecb12b
AM
122002-06-06 Alan Modra <amodra@bigpond.net.au>
13
14 * elf-bfd.h (struct elf_size_info <swap_symbol_in>): Function args
15 are "const PTR", not "const PTR *".
16 (bfd_elf32_swap_symbol_in): Likewise.
17 (bfd_elf64_swap_symbol_in): Likewise.
18 * elfcode.h (elf_swap_symbol_in): Change input args to const PTR.
19 (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
20 * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
21 (elf_link_add_object_symbols): Likewise.
22 (elf_link_record_local_dynamic_symbol): Likewise.
23 (elf_link_input_bfd): Likewise.
24 (elf_gc_mark): Likewise.
25 (elf_reloc_symbol_deleted_p): Likewise.
26 * elf-m10200.c (mn10200_elf_relax_section): Likewise.
27 (mn10200_elf_relax_delete_bytes): Likewise.
28 (mn10200_elf_symbol_address_p): Likewise.
29 (mn10200_elf_get_relocated_section_contents): Likewise.
30 * elf-m10300.c (mn10300_elf_relax_section): Likewise.
31 (mn10300_elf_relax_section): Likewise.
32 (mn10300_elf_relax_delete_bytes): Likewise.
33 (mn10300_elf_symbol_address_p): Likewise.
34 (mn10300_elf_get_relocated_section_contents): Likewise.
35 * elf32-h8300.c (elf32_h8_relax_section): Likewise.
36 (elf32_h8_relax_delete_bytes): Likewise.
37 (elf32_h8_symbol_address_p): Likewise.
38 (elf32_h8_get_relocated_section_contents): Likewise.
39 * elf32-hppa.c (get_local_syms): Likewise.
40 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
41 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
42 * elf32-sh.c (sh_elf_relax_section): Likewise.
43 (sh_elf_relax_delete_bytes): Likewise.
44 (sh_elf_get_relocated_section_contents): Likewise.
45 * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
46 * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
47 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
48 * elf64-mmix.c (mmix_elf_relax_section): Likewise.
49 * elf64-ppc.c (get_local_syms): Likewise.
50 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
51 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
52
1ed89aa9 532002-06-05 J"orn Rennecke <joern.rennecke@superh.com>
7a33bc10
JR
54
55 * config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations.
56
73ff0d56
AM
572002-06-05 Alan Modra <amodra@bigpond.net.au>
58
9dce4196
AM
59 * elf.c (group_signature): Swap in the whole symbol, and handle
60 extracting section symbol names.
61 (setup_group): Add comment.
62 (set_group_contents): When called from objcopy or ld, arrange for
63 section contents to be written. Write group member output section
64 indices to allow objcopy to reorganize sections.
65 (_bfd_elf_copy_private_section_data): Copy group info.
66
73ff0d56
AM
67 * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field.
68 (bfd_elf32_swap_symbol_in): Update prototype.
69 (bfd_elf64_swap_symbol_in): Likewise.
70 * elfcode.h (elf_swap_symbol_in): Change input args to const PTR *.
71 (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
72 * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
73 (elf_link_add_object_symbols): Likewise.
74 (elf_link_record_local_dynamic_symbol): Likewise.
75 (elf_link_input_bfd): Likewise.
76 (elf_gc_mark): Likewise.
77 (elf_reloc_symbol_deleted_p): Likewise.
78 * elf-m10200.c (mn10200_elf_relax_section): Likewise.
79 (mn10200_elf_relax_delete_bytes): Likewise.
80 (mn10200_elf_symbol_address_p): Likewise.
81 (mn10200_elf_get_relocated_section_contents): Likewise.
82 * elf-m10300.c (mn10300_elf_relax_section): Likewise.
83 (mn10300_elf_relax_section): Likewise.
84 (mn10300_elf_relax_delete_bytes): Likewise.
85 (mn10300_elf_symbol_address_p): Likewise.
86 (mn10300_elf_get_relocated_section_contents): Likewise.
87 * elf32-h8300.c (elf32_h8_relax_section): Likewise.
88 (elf32_h8_relax_delete_bytes): Likewise.
89 (elf32_h8_symbol_address_p): Likewise.
90 (elf32_h8_get_relocated_section_contents): Likewise.
91 * elf32-hppa.c (get_local_syms): Likewise.
92 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
93 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
94 * elf32-sh.c (sh_elf_relax_section): Likewise.
95 (sh_elf_relax_delete_bytes): Likewise.
96 (sh_elf_get_relocated_section_contents): Likewise.
97 * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
98 * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
99 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
100 * elf64-mmix.c (mmix_elf_relax_section): Likewise.
101 * elf64-ppc.c (get_local_syms): Likewise.
102 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
103 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
104 * elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser.
105 * elf64-alpha.c (alpha_elf_size_info): Likewise.
106 * elf64-hppa.c (hppa64_elf_size_info): Likewise.
107 * elf64-mips.c (mips_elf64_size_info): Likewise.
108 * elf64-s390.c (s390_elf64_size_info): Likewise.
109 * elf64-sparc.c (sparc64_elf_size_info): Likewise.
110
53bfd6b4
MR
1112002-06-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
112
113 * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to...
114 elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here.
115 elf64-mips.c (elf_backend_ignore_discarded_relocs): Use
116 _bfd_mips_elf_ignore_discarded_relocs.
117 elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare.
118
d4df96e6
L
1192002-06-05 H.J. Lu <hjl@gnu.org>
120
121 * elfxx-mips.c (mips_elf_calculate_relocation): Call
122 _bfd_elf_rel_local_sym for STT_SECTION relocations against
123 the SEC_MERGE section.
124
e61463e1
AM
1252002-06-05 Alan Modra <amodra@bigpond.net.au>
126
3cac74d0
AM
127 * coff-alpha.c: Update copyright date.
128 * coff-mips.c: Likewise.
129 * xcoff-target.h: Likewise.
130
e61463e1
AM
131 * bfd-in.h: Remove "taken from the source" comment.
132 * libbfd-in.h: Likewise.
133 * libcoff-in.h: Likewise.
134 * bfd-in2.h: Regenerate.
135 * libbfd.h: Regenerate.
136 * libcoff.h: Regenerate.
137
138 * elf.c (bfd_elf_discard_group): Return true.
139 * elf-bfd.h (bfd_elf_discard_group): Declare.
140 * bfd-in.h (bfd_elf_discard_group): Don't declare here.
141 * section.c (bfd_discard_group): Rename to bfd_generic_discard_group.
142 * bfd.c (bfd_discard_group): Define.
143 * targets.c (struct bfd_target): Add _bfd_discard_group.
144 (BFD_JUMP_TABLE_LINK): Here too.
145 * libbfd-in.h (_bfd_nolink_bfd_discard_group): Define.
146 * aout-adobe.c (aout_32_bfd_discard_group): Define.
147 * aout-target.h (MY_bfd_discard_group): Define.
148 * aout-tic30.c (MY_bfd_discard_group): Define.
149 * binary.c (binary_bfd_discard_group): Define.
150 * bout.c (b_out_bfd_discard_group): Define.
151 * coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define.
152 * coffcode.h (coff_bfd_discard_group): Define.
153 * coff-mips.c (_bfd_ecoff_bfd_discard_group): Define.
154 * elfxx-target.h (bfd_elfNN_bfd_discard_group): Define.
155 * i386msdos.c (msdos_bfd_discard_group): Define.
156 * i386os9k.c (os9k_bfd_discard_group): Define.
157 * ieee.c (ieee_bfd_discard_group): Define.
158 * ihex.c (ihex_bfd_discard_group): Define.
159 * mmo.c (mmo_bfd_discard_group): Define.
160 * nlm-target.h (nlm_bfd_discard_group): Define.
161 * oasys.c (oasys_bfd_discard_group): Define.
162 * ppcboot.c (ppcboot_bfd_discard_group): Define.
163 * som.c (som_bfd_discard_group): Define.
164 * srec.c (srec_bfd_discard_group): Define.
165 * tekhex.c (tekhex_bfd_discard_group): Define.
166 * versados.c (versados_bfd_discard_group): Define.
167 * vms.c (vms_bfd_discard_group): Define.
168 * xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define.
169 * coff64-rs6000.c (rs6000coff64_vec): Update initialiser.
170 (aix5coff64_vec): Likewise.
171 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
172
9cba27b2
JT
1732002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
174
175 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo.
176 (BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c.
177 (elf32-sh64-com.lo): New dependency list.
178 * Makefile.in: Regenerate.
179 * configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec)
180 (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add
181 elf32-sh64-com.lo.
182 * configure: Regenerate.
183 * elf32-sh64.c (sh64_address_in_cranges)
184 (sh64_get_contents_type, sh64_address_is_shmedia): Move to...
185 (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb):
186 (crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to...
187 * elf32-sh64-com.c: ...here. New file.
188
8d2c33be
AM
1892002-06-04 Alan Modra <amodra@bigpond.net.au>
190
191 * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove
192 ATTRIBUTE_UNUSED on used params.
193 * elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks
194 before calling bfd_section_from_elf_index on local syms.
195 * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
196
5b0e55b6
JT
1972002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
198
199 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
200 (BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
201 (BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
202 (BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
203 (elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
204 * Makefile.in: Regenerate.
205 * config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
206 (sh64-*-netbsd*): New targets.
207 * configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
208 bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
209 * configure: Regenerate.
210 * elf32-sh64-nbsd.c: New file.
211 * elf64-sh64-nbsd.c: New file.
212 * targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
213 bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
214 bfd_elf64_sh64lnbsd_vec.
215
b885599b
AM
2162002-06-04 Alan Modra <amodra@bigpond.net.au>
217
218 * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups.
219 (bfd_section_from_shdr): Likewise. Set section name of group
220 sections from signature.
221 (group_signature): Split out from setup_group. Ensure symbol table
222 is available.
223 (bfd_elf_discard_group): New function.
224 (_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on
225 .gnu.linkonce* sections if they are members of a group.
226 (set_group_contents): Set GRP_COMDAT flag.
227 * section.c (bfd_discard_group): New function.
228 * bfd-in.h (bfd_elf_discard_group): Declare.
229 * bfd-in2.h: Regenerate.
230 * elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field.
231 (elf_linkonce_p): Define.
232
90937f86
AM
2332002-06-04 Alan Modra <amodra@bigpond.net.au>
234
235 * elf.c (bfd_section_from_shdr): Make "name" const.
236 * elf-bfd.h (elf_backend_section_from_shdr): Likewise.
237 * elf32-i370.c (i370_elf_section_from_shdr): Likewise.
238 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
239 * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
240 * elf32-v850.c (v850_elf_section_from_shdr): Likewise.
241 * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
242 * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
243 * elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise.
244 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
245 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
246 * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
247
cf6fb9ce
MR
2482002-06-03 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
249
250 * elfxx-mips.c (ABI_64_P): Use backend's data to determine the
251 ABI.
252
cedb70c5
KH
2532002-06-02 Kazu Hirata <kazu@cs.umass.edu>
254
255 * elf32-arc.c: Fix formatting.
256 * elf32-arm.h: Likewise.
257 * elf32-cris.c: Likewise.
258 * elf32-dlx.c: Likewise.
259 * elf32-hppa.c: Likewise.
260 * elf32-i386.c: Likewise.
261 * elf32-i386qnx.c: Likewise.
262 * elf32-or32.c: Likewise.
263 * elf32-s390.c: Likewise.
264 * elf32-sh64.c: Likewise.
265 * elf32-vax.c: Likewise.
266 * elf32-xstormy16.c: Likewise.
267 * elf64-alpha.c: Likewise.
268 * elf64-mmix.c: Likewise.
269 * elf64-ppc.c: Likewise.
270 * elf64-s390.c: Likewise.
271 * elf64-sh64.c: Likewise.
272 * elf64-x86-64.c: Likewise.
273
048d873d
RH
2742002-06-02 Richard Henderson <rth@redhat.com>
275
276 * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference
277 null when there are no got entries for a symbol.
278 (elf64_alpha_relax_find_tls_segment): Rearrange to avoid
279 uninitialized variable warning.
280
4a67a098
RH
2812002-06-01 Richard Henderson <rth@redhat.com>
282
283 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for
284 undefined symbols here.
285 (elf64_alpha_relax_section): Do it here. Also test for not
286 defined in the current module.
287 (elf64_alpha_relocate_section_r): Split out of ...
288 (elf64_alpha_relocate_section): ... here. Don't dereference
289 NULL when looking up local got entries.
290
f44f99a5
RH
2912002-06-01 Richard Henderson <rth@redhat.com>
292
293 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined
294 symbols from JSR relaxation.
295 (elf64_alpha_size_plt_section_1): New.
296 (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ...
297 (elf64_alpha_size_rela_got_1): ... here.
298 (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ...
299 (elf64_alpha_size_rela_got_section): ... here.
300 (elf64_alpha_size_plt_section): New.
301 (elf64_alpha_relax_section): Call them.
302 (elf64_alpha_size_got_sections): Remove output_bfd arg.
303 (elf64_alpha_finish_dynamic_symbol): Check gotent use_count.
304
9e756d64
RH
3052002-06-01 Richard Henderson <rth@redhat.com>
306
307 * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New.
308 (elf64_alpha_relocate_section): Use them. Reject LE TLS relocs
309 in shared libraries. Fix DTPRELHI and TPRELHI value.
310 (INSN_ADDQ, INSN_RDUNIQ): New.
311 (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent.
312 (elf64_alpha_relax_with_lituse): Return boolean. Remove irelend
313 argument. Reject dynamic symbols. Use LITUSE symbolic constants.
314 (elf64_alpha_relax_got_load): Rename from relax_without_lituse.
315 Handle GOTDTPREL and GOTTPREL relocations.
316 (elf64_alpha_relax_gprelhilo): New.
317 (elf64_alpha_relax_tls_get_addr): New.
318 (elf64_alpha_relax_find_tls_segment): New.
319 (elf64_alpha_relax_section): Handle TLS relocations.
320 (ALPHA_ELF_LINK_HASH_TLS_IE): New.
321 (elf64_alpha_check_relocs): Set it.
322
c853d7f6
RH
3232002-06-01 Richard Henderson <rth@redhat.com>
324
b646261c
RH
325 * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp.
326
c853d7f6
RH
327 * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
328 check; don't suppress dynamic relocs for non-allocated sections.
329
d7e41a96
RH
330 * elf64-alpha.c: Remove dead code.
331
5f333394
AM
3322002-05-31 Alan Modra <amodra@bigpond.net.au>
333
08e0ee05
AM
334 * bfd-in2.h: Regenerate.
335 * libbfd.h: Regenerate.
336 * po/SRC-POTFILES.in: Regenerate.
337
5f333394
AM
338 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate
339 space for bss .plt.
340
caf47ea6
AM
3412002-05-31 Graeme Peterson <gp@qnx.com>
342
343 * Makefile.am (BFD32_BACKENDS): Add elf32-i386qnx.lo.
344 (BFD32_BACKENDS_CFILES): Add elf32-i386qnx.c.
345 Run "make dep-am".
346 * Makefile.in: Regenerate.
347 * config.bfd: Add i[3456]86-*-nto-qnx* support.
348 * configure.in: Add bfd_elf32_i386qnx_vec support.
349 * configure: Regenerate.
350 * elf-bfd.h (struct elf_backend_data): Add set_nonloadable_filepos,
351 is_contained_by_filepos, and copy_private_bfd_data_p.
352 * elf.c (assign_file_positions_for_segments): Call backend
353 set_nonloadable_filepos. Fix non-K&R call to _bfd_error_handler.
354 (IS_CONTAINED_BY_FILEPOS): Define.
355 (INCLUDE_SECTION_IN_SEGMENT): Also test IS_CONTAINED_BY_FILEPOS.
356 (copy_private_bfd_data): Use IS_CONTAINED_BY_FILEPOS. Typo fix.
357 Fix non-K&R call to _bfd_error_handler.
358 (_bfd_elf_copy_private_section_data): Use backend
359 copy_private_bfd_data_p.
360 * elf32-i386.c: Don't include elfxx-target.h when
361 ELF32_I386_C_INCLUDED is defined.
362 * elf32-i386qnx.c: New QNX elf backend file.
363 * elfxx-target.h: Add elf_backend_set_nonloadable_filepos,
364 elf_backend_is_contained_by_filepos, and
365 elf_backend_do_copy_private_bfd_data.
366 * targets.c: Add bfd_target bfd_elf32_i386qnx_vec.
367
5bc56484
AM
3682002-05-31 Alan Modra <amodra@bigpond.net.au>
369
370 * elfarm-oabi.c (bfd_elf32_arm_add_glue_sections_to_bfd): Define.
371 Move other similar defines to start of file.
372
1b164155
TR
3732002-05-30 Tom Rix <trix@redhat.com>
374
375 * coff-rs6000.c (xcoff_rtype2howto): Handle 16 bit R_RBA.
376 * coff64-rs6000.c (xcoff64_rtype2howto): Same.
377
3765b1be
RH
3782002-05-30 Richard Henderson <rth@redhat.com>
379
380 * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD,
381 ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New.
382 (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove.
383 (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove.
384 (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated.
385 (struct alpha_elf_obj_tdata): Rename total_got_entries and
386 n_local_got_entries to total_got_size and local_got_size.
387 (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs.
388 (alpha_got_entry_size): New.
389 (elf64_alpha_relax_with_lituse): Use it.
390 (elf64_alpha_relax_without_lituse): Likewise.
391 (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES.
392 (get_got_entry): New.
393 (elf64_alpha_check_relocs): Handle TLS relocs. Reorganize.
394 (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask.
395 (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type.
396 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise.
397 (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size.
398 (elf64_alpha_calc_got_offsets): Likewise.
399 (alpha_dynamic_entries_for_reloc): New.
400 (elf64_alpha_calc_dynrel_sizes): Use it.
401 (elf64_alpha_size_dynamic_sections): Likewise.
402 (elf64_alpha_relocate_section): Handle TLS relocations.
403 * reloc.c: Add Alpha TLS relocations.
404 * bfd-in2.h, libbfd.h: Rebuild.
405
5e226794
NC
4062002-05-29 Ralf Habacker <ralf.habacker@freenet.de>
407
408 * peXXigen.c (pe_print_idata): Remove double printed
409 import table lines; add Bound-To comment.
410
90ace9e9
JT
4112002-05-29 Matt Thomas <matt@3am-software.com>
412
413 * Makefile.am (BFD32_BACKENDS): Add elf32-vax.lo.
414 (BFD32_BACKENDS_CFILES): Add elf32-vax.c.
415 (elf32-vax.lo): New rule.
416 * Makefile.in: Regenerate.
417 * configure.in (bfd_elf32_vax_vec)
418 (vaxnetbsd_vec): New vectors.
419 * configure: Regenerate.
420 * config.bfd (vax-*-netbsdelf*)
421 (vax-*-netbsdaout*)
422 (vax-*-netbsd*): New targets.
423 * elf32-vax.c: New file.
424 * reloc.c: Add VAX relocations.
425 * bfd-in2.h: Regenerate.
426 * targets.c (_bfd_target_vector): Add bfd_elf32_vax_vec.
427
4a253e81
JT
4282002-05-29 Jason Thorpe <thorpej@wasabisystems.com>
429
430 * config.bfd (arm-*-netbsd*): Add bfd_elf32_littlearm_vec
431 and bfd_elf32_bigarm_vec to targ_selvecs.
432
6e7c73dd
CF
4332002-05-29 Ralf Habacker <ralf.habacker@freenet.de>
434
435 * peXXigen.c (pe_print_idata): Fix seg faults on printing import tables
436 with auto-imported symbols.
437
8afb0e02
NC
4382002-05-29 Adam Nemet <anemet@lnxw.com>
439
440 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Don't add glue
441 sections only record bfd.
442 (bfd_elf32_arm_add_glue_sections_to_bfd): New function.
443 * bfd-in.h (bfd_elf32_arm_add_glue_sections_to_bfd): Declare it.
444 * bfd-in2.h: Regenerate.
445
a95653f5
NC
4462002-05-28 Nick Clifton <nickc@cambridge.redhat.com>
447
448 * syms.c (_bfd_stab_section_find_nearest_line): Move
449 declaration and initialisation of saw_line and saw_func out of
450 for loop.
451
7cdc5bba
AM
4522002-05-29 Alan Modra <amodra@bigpond.net.au>
453
454 * elf64-ppc.c (ppc64_elf_get_symbol_info): New function.
455 (bfd_elf64_get_symbol_info): Define.
456 * elfxx-target.h (bfd_elfNN_get_symbol_info): Only define if undef.
457
4c7aad1c
AM
4582002-05-29 Andrey Volkov <avolkov@transas.com>
459
460 * cpu-h8300.c: Make default h8300 machine first in machine list.
461
d172d4ba
NC
4622002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
463
464 * config.bfd: Added DLX configuraton.
465 * Makefile.am: Added DLX configuraton.
466 * configure.in: Added DLX configuraton.
467 * archures.c: Add DLX architecure.
468 * reloc.c: Add DLX relocs.
469 * targets.c: Added DLX target vector.
470 * configure: Regenerate.
471 * Makefile.in: Regenreate.
472 * bfd-in2.h: Regenreate.
473 * elf32-dlx.c: New file: Support DLX target.
474 * cpu-dlx.c: New file: Support DLX target.
475
d1329ca3
AM
4762002-05-25 Alan Modra <amodra@bigpond.net.au>
477
428d0de3
AM
478 * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Formatting.
479
d1329ca3
AM
480 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Revert last change.
481 (ppc64_elf_check_relocs): Don't set up function descriptor symbol
482 strings to point inside function code sym string.
483 (func_desc_adjust): Likewise.
484 (ppc64_elf_hide_symbol): Rewrite code to look up function code sym.
485
3bab7989
ML
4862002-05-24 Michal Ludvig <mludvig@suse.cz>
487
488 * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Added.
489 (elf64_x86_64_grok_psinfo): Added.
490
436e8db0
NC
4912002-05-24 TAMURA Kent <kent@netbsd.org>
492
493 * config.bfd: Add a target for i386-netbsdpe.
494
ea1e4b0d
AM
4952002-05-24 Alan Modra <amodra@bigpond.net.au>
496
497 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy is_func
498 and is_func_descriptor.
499 (func_desc_adjust): Hide function code sym in shared libs unless
500 there is a matching exported function descriptor sym.
501
13ae64f3
JJ
5022002-05-23 Jakub Jelinek <jakub@redhat.com>
503
504 * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL
505 for symbols from SHF_TLS section.
506 (_bfd_elf_print_private_bfd_data): Add PT_TLS.
507 (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections.
508 (map_sections_to_segments): Build PT_TLS segment if necessary.
509 (assign_file_positions_for_segments): Likewise.
510 (get_program_header_size): Account for PT_TLS segment.
511 (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from
512 SEC_THREAD_LOCAL sections to STT_TLS.
513 * reloc.c: Add 386 and IA-64 TLS relocs.
514 * section.c (SEC_THREAD_LOCAL): Define.
515 (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS):
516 Remove.
517 * elflink.h (elf_link_add_object_symbols): Support .tcommon.
518 (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS
519 unconditionally.
520 (struct elf_final_link_info): Add first_tls_sec.
521 (elf_bfd_final_link): Set first_tls_sec.
522 Compute elf_hash_table (info)->tls_segment.
523 (elf_link_output_extsym): Handle STT_TLS symbols.
524 (elf_link_input_bfd): Likewise.
525 * syms.c (BSF_THREAD_LOCAL): Define.
526 * bfd-in2.h: Rebuilt.
527 * libbfd.h: Rebuilt.
528 * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff,
529 elf_i386_mkobject, elf_i386_object_p): New functions.
530 (elf_howto_table): Add TLS relocs.
531 (elf_i386_reloc_type_lookup): Support TLS relocs.
532 (elf_i386_info_to_howto_rel): Likewise.
533 (struct elf_i386_link_hash_entry): Add tls_type.
534 (struct elf_i386_obj_tdata): New.
535 (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type):
536 New macros.
537 (struct elf_i386_link_hash_table): Add tls_ldm_got.
538 (link_hash_newfunc): Clear tls_type.
539 (elf_i386_check_relocs): Support TLS relocs.
540 (elf_i386_gc_sweep_hook): Likewise.
541 (allocate_dynrelocs): Likewise.
542 (elf_i386_size_dynamic_sections): Likewise.
543 (elf_i386_relocate_section): Likewise.
544 (elf_i386_finish_dynamic_symbol): Likewise.
545 (bfd_elf32_mkobject, elf_backend_object_p): Define.
546 * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset,
547 dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done,
548 want_tprel, want_dtpmod, want_dtprel.
549 (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions.
550 (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to
551 R_IA64_LTOFF_TPREL22.
552 (elf_code_to_howto_index): Add TLS relocs.
553 (elfNN_ia64_check_relocs): Support TLS relocs.
554 (allocate_global_data_got): Account for TLS .got data.
555 (allocate_dynrel_entries): Account for TLS dynamic relocations.
556 (elfNN_ia64_install_value): Supprt TLS relocs.
557 (set_got_entry): Support TLS relocs.
558 (elfNN_ia64_relocate_section): Likewise.
559
c62e1cc3
NC
5602002-05-23 Nick Clifton <nickc@cambridge.redhat.com>
561
562 * elf32-arm.h (elf32_arm_final_link_relocate): For the Thumb
563 BLX reloc round the relocation up rather than down.
564 * coff-arm.c (coff_arm_relocate_section): Likewise.
565
c5a43a5d
L
5662002-05-21 H.J. Lu (hjl@gnu.org)
567
568 * linker.c (_bfd_generic_link_add_one_symbol): Allow multiple
569 definition.
570
afbe61cf
AM
5712002-05-22 Alan Modra <amodra@bigpond.net.au>
572
573 * elf64-ppc.c (ppc64_elf_size_stubs): Don't strip .branch_lt.
574 (ppc64_elf_relocate_section): Handle unresolved relocs in opd.
575
9c07fe7c
AM
5762002-05-22 Alan Modra <amodra@bigpond.net.au>
577
578 * elf64-ppc.c (ppc64_elf_relocate_section): Return false for
579 unresolved relocs.
580 (ppc64_elf_size_dynamic_sections): Check for splt NULL.
581
21611032
TS
5822002-05-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
583
584 * bfd/bfd.c (bfd_get_arch_size): Remove bfd_set_error call for
585 non-ELF targets.
586
41241523
TS
5872002-05-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
588
589 * elf-bfd.h (elf_backend_emit_relocs): Change prototype to return
590 an error value.
591 * elflink.h (elf_link_output_relocs): Likewise. Improve error message.
592 return with false on error.
593 (elf_link_input_bfd): Check reloc_emitter return value.
594
658f2588
JT
5952002-05-21 Jason Thorpe <thorpej@wasabisystems.com>
596
597 * config.bfd (armeb-*-netbsdelf*): New target.
598
c862ae31
AM
5992002-05-20 Alan Modra <amodra@bigpond.net.au>
600
601 * elf64-ppc.c (ppc_build_one_stub): Point undefined function syms
602 at the plt call stub.
603
6dd14845
TS
6042002-05-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
605
606 * cpu-mips.c (mips_compatible): Don't try to check machine
607 compatibility.
608
a58d9c34
TR
6092002-05-18 Tom Rix <trix@redhat.com>
610
611 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_out): Fix C_FILE auxent.
612
ef60b7ff
AM
6132002-05-17 Alan Modra <amodra@bigpond.net.au>
614
615 * elf64-ppc.c (ppc64_elf_info_to_howto): Formatting.
616 (ppc64_elf_relocate_section): Don't warn about reloc overflow when
617 we've already warned about an undefined symbol. Report more
618 detail on reloc errors.
619
a703a6ea
AM
6202002-05-17 Alan Modra <amodra@bigpond.net.au>
621
622 * acinclude.m4 (AM_INSTALL_LIBBFD): New.
623 * configure.in: Invoke AM_INSTALL_LIBBFD.
624 * Makefile.am (install-data-local): Revert 2002-05-13. Move to..
625 (install_libbfd): .. New target.
626 (uninstall_libbfd): Likewise.
627 (install-bfdlibLTLIBRARIES): Likewise.
628 (uninstall-bfdlibLTLIBRARIES): Likewise.
629 (bfdlibdir): New.
630 (bfdincludedir): New.
631 (lib_LTLIBRARIES): Rename to bfdlib_LTLIBRARIES.
632 * aclocal.m4: Regenerate.
633 * configure: Regenerate.
634 * Makefile.in: Regenerate.
635
2c13d98b
NC
6362002-05-17 Stuart Balfour <sbalfour@cisco.com>
637
638 * hash.c (bfd_hash_lookup): Remove computation of len from inside
639 hash loop.
640
629936c5
NC
6412002-05-16 Nick Clifton <nickc@cambridge.redhat.com>
642
643 * config.bfd: Add targets for sh64-linux (little endian and
644 big endian).
645
e4cf60a8
NC
6462002-05-15 Laurent Pinchart <laurent.pinchart@skynet.be>
647
648 * peXXigen.c (pe_print_idata): Do not assume that the first thunk
649 is located in the same section as the import table. Instead
650 check, and if necessary load the section containing the thunk.
651
d1e66cd4
NC
6522002-05-15 Nick Clifton <nickc@cambridge.redhat.com>
653
654 * aix5ppc-core.c (xcoff64_core_p): Replace bfd_read with
ea1e4b0d
AM
655 bfd_bread.
656 (xcoff64_core_file_matches_executable_p): Replace bfd_read
657 with bfd_bread.
d1e66cd4 658
2d653fc7
AM
6592002-05-15 Alan Modra <amodra@bigpond.net.au>
660
661 * aix5ppc-core.c: Warning fixes.
662 * aout-adobe.c (aout_32_bfd_link_just_syms): Define.
663 * aout-target.h (MY_bfd_link_just_syms): Define.
664 * aout-tic30.c (MY_bfd_link_just_syms): Define.
665 * bfd.c (bfd_link_just_syms): Define.
666 * binary.c (binary_bfd_link_just_syms): Define.
667 * bout.c (b_out_bfd_link_just_syms): Define.
668 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update initializer.
669 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
670 * coffcode.h (coff_bfd_link_just_syms): Define.
671 * elf-bfd.h (enum elf_link_info_type): Add ELF_INFO_TYPE_JUST_SYMS.
672 (elf_discarded_section): Check for ELF_INFO_TYPE_JUST_SYMS.
673 (_bfd_elf_link_just_syms): Declare.
674 * elf.c (_bfd_elf_link_just_syms): New function.
675 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Check that
676 sections haven't already been discarded by the linker.
677 * elflink.h (elf_link_add_object_symbols): Likewise for stab
678 sections and SEC_MERGE sections.
679 (elf_bfd_discard_info): Similarly here.
680 * elfxx-target.h (bfd_elfNN_bfd_link_just_syms): Define.
681 * i386msdos.c (msdos_bfd_link_just_syms): Define.
682 * i386os9k.c (os9k_bfd_link_just_syms): Define.
683 * ieee.c (ieee_bfd_link_just_syms): Define.
684 * ihex.c (ihex_bfd_link_just_syms): Define.
685 * libbfd-in.h (_bfd_nolink_bfd_link_just_syms): Define.
686 (_bfd_generic_link_just_syms): Declare.
687 * libecoff.h (_bfd_ecoff_bfd_link_just_syms): Define.
688 * linker.c (_bfd_generic_link_just_syms): New function.
689 * mmo.c (mmo_bfd_link_just_syms): Define.
690 * nlm-target.h (nlm_bfd_link_just_syms): Define.
691 * oasys.c (oasys_bfd_link_just_syms): Define.
692 * ppcboot.c (ppcboot_bfd_link_just_syms): Define.
693 * som.c (som_bfd_link_just_syms): Define.
694 * srec.c (srec_bfd_link_just_syms): Define.
695 * targets.c (struct bfd_target): Add _bfd_link_just_syms.
696 (BFD_JUMP_TABLE_LINK): And here.
697 * tekhex.c (tekhex_bfd_link_just_syms): Define.
698 * versados.c (versados_bfd_link_just_syms): Define.
699 * vms.c (vms_bfd_link_just_syms): Define.
700 * libbfd.h: Regenerate.
701 * bfd-in2.h: Regenerate.
702
cb7394f2
TS
7032002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
704
705 * elf32-mips.c: Remove superfluous definitions copied from
706 elfxx-mips.c.
707 (bfd_elf32_bigmips_vec,bfd_elf32_littlemips_vec): Use the
708 SGIish vectors to check the special case.
709 (mips_elf_hi16_reloc): Fix comment.
710 (mips_elf_got16_reloc): Likewise.
711 (_bfd_mips_elf32_gprel16_reloc): Likewise.
712 (elf_reloc_map): Code cleanup.
713 (mips_reloc_map): Add comment.
714 (bfd_elf23_bfd_reloc_type_lookup): Code cleanup.
715 (mips_elf32_rtype_to_howto): Likewise.
716 (mips_elf32_discard_info): Likewise.
717 (elf32_mips_irix_compat): Invert logic: Only SGIish vectors
718 lead to IRIX compatibility now.
719
8dc1a139
TS
7202002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
721
722 * elfxx-mips.c: Call it IRIX, not Irix in comments.
723
2051e1b5
JT
7242002-05-13 Jason Thorpe <thorpej@wasabisystems.com>
725
726 * config.bfd (shle-*-netbsdelf*): Add target which includes
727 sh64 support.
728
83954261
AM
7292002-05-13 David Edelsohn <edelsohn@gnu.org>
730
731 * configure.in: Revert 2002-04-07. Instead, auto-configure
732 HAVE_ST_C_IMPL.
733 * configure: Regenerate.
734 * config.in: Regenerate.
735 * rs6000-core.c (CNEW_IMPL): Guard use of c_impl with HAVE_ST_C_IMPL
736 or AIX_5_CORE.
737
a9bf1154
NC
7382002-05-11 Federico G. Schwindt <fgsch@olimpo.com.br>
739
740 * configure.in (sparc*-*-openbsd*): Support sparc64-openbsd
741 corefiles as well.2
742 * configure: Regenerate.
743
3129eb7a
AM
7442002-05-13 Alan Modra <amodra@bigpond.net.au>
745
746 * Makefile.am (install-data-local): Install headers to
747 $(exec_prefix)/include.
748 * Makefile.in: Regenerate.
749
a9a32010
DJ
7502002-05-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
751 Daniel Jacobowitz <drow@mvista.com>
752
753 * coff-sh.c (sh_reloc_map): Map to R_SH_IMM32 for non-PE. Don't
754 map BFD_RELOC_RVA.
755
7562002-05-11 Federico G. Schwindt <fgsch@olimpo.com.br>
690cc98b
NC
757
758 * config.bfd (alpha*-*-openbsd*, sparc64*-*-openbsd*,
759 hppa*-*-openbsd*): New targets.
760 * configure.in (alpha*-*-openbsd*): Set COREFILE.
761 * configure: Regenerate.
762
f1f0d9ab
TR
7632002-05-10 Tom Rix <trix@redhat.com>
764
ea1e4b0d 765 * coff64-rs6000.c (xcoff64_reloc_type_br): New function for
f1f0d9ab
TR
766 xcoff64_ppc_relocate_section.
767 * coff-rs6000.c : Extern common xcoff_reloc_type functions.
768 * libxcoff.h: Common xcoff_reloc_type function declaration.
769
c432ba1a
AM
7702002-05-10 Alan Modra <amodra@bigpond.net.au>
771
16a10388 772 * elf32-i386.c (elf_i386_relocate_section): Remove overflow checks
90937f86 773 added in 2002-05-09 commit.
16a10388 774
c432ba1a
AM
775 * elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04,
776 don't look for stubs on all undefined syms.
777
4a335f3d
AM
7782002-05-09 Alan Modra <amodra@bigpond.net.au>
779
8fc39d5d
AM
780 * elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete.
781 (ppc64_elf_howto_raw <R_PPC64_RELATIVE>): Not pc_relative or
782 pcrel_offset.
783
4a335f3d
AM
784 * elf32-i386.c (elf_howto_table): Comments.
785 (elf_i386_relocate_section): Handle more relocs for relocatable
786 linking and against SEC_MERGE sections.
787
41fcb14e
AM
7882002-05-08 Alan Modra <amodra@bigpond.net.au>
789
790 * elf32-ppc.c (ppc_elf_create_got): New function.
791 (ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before
ea1e4b0d 792 _bfd_elf_create_dynamic_sections. Correct .plt flags.
41fcb14e
AM
793 (ppc_elf_check_relocs): Use ppc_elf_create_got in place of
794 _bfd_elf_create_got_section.
795
b491616a
AM
7962002-05-07 Alan Modra <amodra@bigpond.net.au>
797
798 * elf-bfd.h (struct elf_backend_data): Add rela_normal.
799 * elfxx-target.h (elf_backend_rela_normal): Define.
800 (elfNN_bed): Init rela_normal.
801 * elflink.h (elf_link_input_bfd <emit_relocs>): Handle adjustment
802 for section symbols here if rela_normal. Simplify abs section test.
803 * elf-m10200.c (mn10200_elf_relocate_section): If relocatable,
804 return immediately. Remove code handling relocatable linking.
805 * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
806 * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
807 * elf32-i370.c (i370_elf_relocate_section): Likewise.
808 * elf32-i860.c (elf32_i860_relocate_section): Likewise.
809 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
810 * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
811 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
812 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
813 * elf32-s390.c (elf_s390_relocate_section): Likewise.
814 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
815 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
816 * elf64-s390.c (elf_s390_relocate_section): Likewise.
817 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
818 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
819 * elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL.
820 * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
821 * elf-m10200.c (elf_backend_rela_normal): Define.
822 * elf-m10300.c (elf_backend_rela_normal): Define.
823 * elf32-fr30.c (elf_backend_rela_normal): Define.
824 * elf32-i370.c (elf_backend_rela_normal): Define.
825 * elf32-i860.c (elf_backend_rela_normal): Define.
826 * elf32-m68k.c (elf_backend_rela_normal): Define.
827 * elf32-mcore.c (elf_backend_rela_normal): Define.
828 * elf32-openrisc.c (elf_backend_rela_normal): Define.
829 * elf32-ppc.c (elf_backend_rela_normal): Define.
830 * elf32-s390.c (elf_backend_rela_normal): Define.
831 * elf32-xstormy16.c (elf_backend_rela_normal): Define.
832 * elf64-ppc.c (elf_backend_rela_normal): Define.
833 * elf64-s390.c (elf_backend_rela_normal): Define.
834 * elf64-x86-64.c (elf_backend_rela_normal): Define.
835 * elfxx-ia64.c (elf_backend_rela_normal): Define.
836 * elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL.
837 * elf32-m32r.c (elf_backend_rela_normal): Likewise.
838
df212a7e
NC
8392002-05-06 Nick Clifton <nickc@cambridge.redhat.com>
840
841 * elf32-arm.h (elf32_arm_final_link_relocate): Convert
842 'reloc_signed_max' and 'reloc_signed_min' into half-word offsets.
843
3decf53c
AM
8442002-05-06 Alan Modra <amodra@bigpond.net.au>
845
846 * elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset
847 when not relocatable. Fix reloc_emitter call for K&R.
848
f46c2da6
AM
8492002-05-04 Alan Modra <amodra@bigpond.net.au>
850
851 * elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code
852 reloading local sym addend mistakenly removed in 2002-05-01 change.
853
854 * dwarf2.c (struct line_head): Make prologue_length a bfd_vma.
855 (read_abbrevs): Change "offset" param to bfd_vma.
856 (parse_comp_unit): Change "version" and addr_size to unsigned ints.
857 Change "abbrev_offset" to bfd_vma.
858 (read_indirect_string): Use correct conversion chars in error
859 message format string, cast bfd_vma's to unsigned long.
860 (read_abbrevs): Likewise.
861 (read_attribute_value): Likewise.
862 (decode_line_info): Likewise.
863 (scan_unit_for_functions): Likewise.
864 (parse_comp_unit): Likewise.
865
59862849
TR
8662002-05-04 Tom Rix <trix@redhat.com>
867
868 * coffswap.h (coff_swap_reloc_in): Remove XCOFF support.
869 (coff_swap_reloc_out): Same.
870 * coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h.
871 (xcoff_swap_reloc_out): Same.
872 (xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special
873 case some 16 bit relocs. Add reloc value to output.
874 (xcoff_howto_table): Remove 64 bit R_POS, add 16 bit
ea1e4b0d 875 R_RBR. Improve names.
59862849
TR
876 (_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS.
877 (bfd_xcoff_backend_data): Update with new reloc swap names.
878 (bfd_pmac_xcoff_backend_data) : Same.
879 * coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h.
880 (xcoff64_swap_reloc_out): Same.
ea1e4b0d 881 (xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit
59862849 882 R_POS. Add reloc value to output.
ea1e4b0d
AM
883 (xcoff64_howto_table): Move 64 bit R_POS to first entry. Add 16
884 bit R_RBR. Improve names, masks.
59862849
TR
885 (xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS.
886 (bfd_xcoff_backend_data): Update with new reloc swap names.
887 (bfd_xcoff_aix5_backend_data) : Same.
888
b4655ea9
AM
8892002-05-04 Alan Modra <amodra@bigpond.net.au>
890
891 * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add
892 bfd_count top_index, input_list, all_local_syms.
893 (elf32_hppa_setup_section_lists): New function, split from
894 elf32_hppa_size_stubs.
895 (elf32_hppa_next_input_section): Likewise.
896 (group_sections): Likewise.
897 (get_local_syms): Likewise.
898 (elf32_hppa_size_stubs): Adjust for split out functions. Look for
899 stubs on undefined syms too.
900 (elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*.
8fc39d5d 901 Only access htab elf fields when we have an elf hash table.
b4655ea9
AM
902 * elf32-hppa.h (elf32_hppa_setup_section_lists): Declare.
903 (elf32_hppa_next_input_section): Declare.
904
301e3139
AM
9052002-05-04 Bob Byrnes <byrnes@curl.com>
906
907 * opncls.c (_bfd_new_bfd_contained_in): Check return value of
908 _bfd_new_bfd.
909
7c5fcef7
L
9102002-05-03 H.J. Lu (hjl@gnu.org)
911
912 * elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local.
913 (mips_elf_link_hash_newfunc): Initialize forced_local to false.
914 (mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol
915 to hide a global symbol.
916 (_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set
ea1e4b0d 917 forced_local to true.
7c5fcef7 918
84de6048
RH
9192002-05-02 Richard Henderson <rth@redhat.com>
920
921 * elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs
922 vs SHN_UNDEF to zero.
923
805fc799
AM
9242002-05-02 Alan Modra <amodra@bigpond.net.au>
925
c061c2d8
AM
926 * elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_SECTOFF>): Change to a
927 16 bit reloc.
928 <R_PPC64_SECTOFF_DS>: Likewise.
929 (ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
930 SECTOFF reloc.
931 * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_SECTOFF>): Correct.
932 (ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
933 SECTOFF reloc.
934
805fc799
AM
935 * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
936 (ppc64_elf_ha_reloc): New function.
937 (ppc64_elf_brtaken_reloc): New function.
938 (ppc64_elf_sectoff_reloc): New function.
939 (ppc64_elf_sectoff_ha_reloc): New function.
940 (ppc64_elf_toc_reloc): New function.
941 (ppc64_elf_toc_ha_reloc): New function.
942 (ppc64_elf_toc64_reloc): New function.
943 (ppc64_elf_unhandled_reloc): New function.
944 (ppc64_elf_howto_raw): Use the above.
945 <R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset.
946 <R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset. Fix dst_mask.
947 <R_PPC64_SECTOFF_DS>: Likewise.
948 (IS_ABSOLUTE_RELOC): Update.
949 (struct ppc_link_hash_table): Add have_undefweak.
950 (ppc64_elf_link_hash_table_create): Init.
951 (func_desc_adjust): Set have_undefweak.
952 (ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier. Only
953 add the .sfpr blr when have_undefweak.
954 (ppc64_elf_setup_section_lists): Check hash table flavour.
955 (ppc64_elf_next_input_section): Move output_section->owner test to
956 ppc64elf.em.
957 (ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
958 and relocatable test. Return TOCstart and don't set elf_gp.
959 (ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
960 offset calculation. Add assert on weak sym branch tweaks.
961 * elf64-ppc.h (ppc64_elf_set_toc): Delete.
962 (ppc64_elf_toc): Declare.
963 (ppc64_elf_next_input_section): Update.
ea1e4b0d 964
818c39a3
AM
9652002-05-01 Alan Modra <amodra@bigpond.net.au>
966
967 * syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL
968 file_name.
969
721956f4
AM
9702002-05-01 Alan Modra <amodra@bigpond.net.au>
971
972 * elf64-ppc.c (CROR_151515, CROR_313131): Define.
973 (ppc64_elf_relocate_section): Use them. Don't look for plt calls
974 on R_PPC64_ADDR24 relocs. Require a nop or no link reg on plt
975 call branches. Correct undefined weak destination.
976 (ppc64_elf_func_desc_adjust): Always create at least one blr in
977 .sfpr, and correct case where either only savef* or restf* is
978 needed.
979
980 Long branch stubs, multiple stub sections.
981 * elf64-ppc.h (ppc64_elf_setup_section_lists): Declare.
982 (ppc64_elf_next_input_section): Declare.
983 * elf64-ppc.c: Move linker-only prototypes.
984 (STUB_SUFFIX): Define.
985 (enum ppc_stub_type): New.
986 (struct ppc_stub_hash_entry): New.
987 (struct ppc_branch_hash_entry): New.
988 (struct ppc_link_hash_entry): Add stub_cache, oh.
989 (struct ppc_link_hash_table): Add stub_hash_table etc. Remove
990 sstub. Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration.
991 Rename plt_overflow to stub_error.
992 (ppc_stub_hash_lookup): Define.
993 (ppc_branch_hash_lookup): Define.
994 (stub_hash_newfunc): New function.
995 (branch_hash_newfunc): New function.
996 (link_hash_newfunc): Init new fields.
997 (ppc64_elf_link_hash_table_create): Likewise.
998 (ppc64_elf_link_hash_table_free): New function.
999 (ppc_stub_name): New function.
1000 (ppc_get_stub_entry): New function.
1001 (ppc_add_stub): New function.
1002 (create_linkage_sections): Use bfd_make_section_anyway. Create
1003 .branch_lt and .rela.branch_lt sections. Don't create .stub.
1004 (ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*,
1005 and set up for plt call stubs. Link func and func desc syms.
1006 (ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24.
1007 (func_desc_adjust): Avoid hash lookup when func desc sym available
1008 via shortcut, and set links when processing.
1009 (ppc64_elf_hide_symbol): Likewise.
1010 (allocate_dynrelocs): Don't allocate stub section here.
1011 (ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt.
1012 Remove sstub code.
1013 (ppc_type_of_stub): New function.
1014 (build_one_stub): Delete.
1015 (ppc_build_one_stub): New function.
1016 (ppc_size_one_stub): New function.
1017 (ppc64_elf_setup_section_lists): New function.
1018 (ppc64_elf_next_input_section): New function.
1019 (group_sections): New function.
1020 (get_local_syms): New function.
1021 (ppc64_elf_size_stubs): Rewrite.
1022 (ppc64_elf_build_stubs): Rewrite.
1023 (ppc64_elf_relocate_section): Look up stub entry for REL24
1024 relocs. Don't propagate REL14* to dynamic objects. Look for long
1025 branch stubs if REL14* or REL24 relocs won't reach.
1026 (bfd_elf64_bfd_link_hash_table_free): Define.
1027
09c2219b
MM
10282002-04-30 Mark Mitchell <mark@codesourcery.com>
1029
1030 * bfd/config.bfd: Add support for powerpc-*-windiss.
1031
07b678c0
TR
10322002-04-30 Tom Rix <trix@redhat.com>
1033
1034 * xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT
1035 symbol names into the hash table.
1036
dbe341c6
TR
10372002-04-28 Tom Rix <trix@redhat.com>
1038
1039 * coff-rs6000.c (xcoff_calculate_relocation) : Function table for
ea1e4b0d 1040 calulating relocations.
dbe341c6 1041 (xcoff_complain_overflow) : Function table for relocation errors.
ea1e4b0d
AM
1042 (xcoff_ppc_relocate_section): Use relocation and complain function
1043 tables.
1044 (xcoff_complain_overflow_unsigned_func): New complain function.
dbe341c6
TR
1045 (xcoff_complain_overflow_signed_func): Same.
1046 (xcoff_complain_overflow_bitfield_func): Same.
1047 (xcoff_complain_overflow_dont_func): Same.
1048 (xcoff_reloc_type_crel): New recot function.
1049 (xcoff_reloc_type_br): Same.
1050 (xcoff_reloc_type_ba): Same.
1051 (xcoff_reloc_type_toc): Same.
1052 (xcoff_reloc_type_rel): Same.
1053 (xcoff_reloc_type_neg): Same.
1054 (xcoff_reloc_type_pos): Same.
1055 (xcoff_reloc_type_fail): Same.
1056 (xcoff_reloc_type_noop): Same.
1057 * libxcoff.h : Declare common parts for xcoff64.
1058 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation
ea1e4b0d 1059 and complain function tables.
dbe341c6 1060
985142a4
AM
10612002-04-28 Alan Modra <amodra@bigpond.net.au>
1062
1063 * elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo.
1064 * elf32-hppa.c (elf32_hppa_final_link): Formatting.
1065
eba91044
AM
10662002-04-26 Alan Modra <amodra@bigpond.net.au>
1067
e54fdaa5
AM
1068 * opncls.c (bfd_make_readable): Call bfd_section_list_clear.
1069 * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.
1070
a50c1845
AM
1071 * elflink.h (elf_bfd_final_link): Ensure input bfd class is the
1072 same as the output before calling elf_link_input_bfd.
1073
eba91044
AM
1074 * coffcode.h (coff_compute_section_file_positions): Set
1075 section_tail after shuffling section list.
1076
3c25c5f6
NC
10772002-04-24 Christian Groessler <chris@groessler.org>
1078
1079 * coff-z8k.c (extra_case): Fix R_IMM32 relocations: The
1080 addresses are 23bit with a special layout, not plain 32bit
1081 values. Prevent relocation of immediate values.
1082
40d32fc6
CD
10832002-04-24 Chris G. Demetriou <cgd@broadcom.com>
1084
1085 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or
1086 MIPS-16 ASE flags are set, print something to indicate that.
1087
067fa4a6
AM
10882002-04-23 Alan Modra <amodra@bigpond.net.au>
1089
1090 * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
1091 under which a plt call stub is used.
1092 (final_link_relocate): Similarly.
1093 (allocate_plt_static): Clear h-plabel except when plt entry is
1094 exclusively used for a plabel.
1095 (allocate_dynrelocs): Use the above to simplify plt sizing.
1096 (struct elf32_hppa_link_hash_table): Add has_22bit_branch.
1097 (elf32_hppa_link_hash_table_create): Init.
1098 (BL22_RP): Define.
1099 (hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
1100 (elf32_hppa_check_relocs): Set has_22bit_branch.
1101
1102 * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
1103 (final_link_relocate): Likewise.
1104
af40ce3c
JJ
11052002-04-22 Jakub Jelinek <jakub@redhat.com>
1106
1107 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
1108 search table if some FDE is DW_EH_PE_aligned encoded either.
1109 (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.
1110
09ae86c2
JJ
11112002-04-22 Richard Smith <richard@ex-parrot.com>
1112 Jakub Jelinek <jakub@redhat.com>
1113
1114 * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
1115 (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
1116 encoded personality.
1117 (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
1118 for CIE/FDE removal.
1119
deeb2cd7
TR
11202002-04-20 Tom Rix <trix@redhat.com>
1121
1122 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.
1123
99dc0092
AM
11242002-04-20 Alan Modra <amodra@bigpond.net.au>
1125
aa3d5824
AM
1126 * archures.c (bfd_lookup_arch): Move the list order comment..
1127 (struct bfd_arch_info): ..to where it belongs.
1128 * bfd-in2.h: Regenerate.
1129
99dc0092
AM
1130 * archures.c (bfd_lookup_arch): Add comment on list order.
1131 (bfd_default_set_arch_mach): Use bfd_lookup_arch.
1132 * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
1133 is always at head of list.
1134
7831a775
NC
11352002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
1136
1137 * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
1138 insert_thumb_branch, record_thumb_to_arm_glue): Suppress
1139 definition of these functions for ARM_WINCE builds as they are
1140 not used.
ea1e4b0d 1141 (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
7831a775
NC
1142 for ARM_WINCE builds.
1143
11442002-04-18 Nick Clifton <nickc@cambridge.redhat.com>
1145
ea1e4b0d 1146 * coff-arm.c (bfd_arm_process_before_allocation):
7831a775
NC
1147
11482002-04-17 J"orn Rennecke <joern.rennecke@superh.com>
a44d7f9c
JR
1149
1150 * cpu-sh.c (scan_mach): Delete.
1151 (arch_info_struct): Replace scan_mach with bfd_default_scan.
1152 (bfd_sh_arch): Likewise.
1153
3d8dbe36
NC
11542002-04-16 Nick Clifton <nickc@cambridge.redhat.com>
1155
1156 * ihex.c (ihex_write_object_contents): Fix check for records
1157 crossing 64K boundaries.
1158
4ab82700
AM
11592002-04-16 Alan Modra <amodra@bigpond.net.au>
1160
1161 * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
1162 type rather than just assuming entries are ELF.
1163 * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
1164 * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
1165 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
1166 * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
1167 rather than elf_link_hash_entry.
1168
036fe0fe
RH
11692002-04-15 Richard Henderson <rth@redhat.com>
1170
1171 * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
1172 n32 binaries.
1173
c4f3d130
NC
11742002-04-15 Michael Snyder <msnyder@redhat.com>
1175
1176 * opncls.c (bfd_close): Write contents if writeable.
1177 Minor formatting tidy-ups.
1178
4ab82700 11792002-04-15 Alan Modra <amodra@bigpond.net.au>
27242387
AM
1180
1181 * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.
1182
0c04d169
MS
11832002-04-12 Michael Snyder <msnyder@redhat.com>
1184
1185 * bfd-in.h (bfd_get_section_lma): New access macro.
1186 Minor white-space fix-up.
1187
89d4966f
AM
11882002-04-12 Alan Modra <amodra@bigpond.net.au>
1189
1190 * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
1191 header pad.
1192
8d0da3c2
DD
11932002-04-09 DJ Delorie <dj@redhat.com>
1194
1195 * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.
1196
05793179
NC
11972002-04-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
1198
1199 * coffcode.h (coff_read_word): New.
1200 (coff_compute_checksum): New.
1201 (coff_apply_checksum): New.
1202 (coff_write_object_contents): Call coff_apply_checksum () to
1203 apply checksum to PE image.
1204
46fe4e66
AM
12052002-04-08 Randolph Chung <tausq@debian.org>
1206
1207 * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
1208 (elf32_hppa_final_link): Split out sorting logic to..
1209 * elf-hppa.h (elf_hppa_sort_unwind): ..here.
1210 (elf_hppa_final_link): Call elf_hppa_sort_unwind.
1211
3b5b409c
AC
12122002-04-07 Andrew Cagney <ac131313@redhat.com>
1213
1214 * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
1215 pattern.
1216 * configure: Re-generate.
1217
ac7b6ceb
AC
12182002-04-07 Andrew Cagney <ac131313@redhat.com>
1219
1220 * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
1221 is greater or equal to 4.3.3.
1222 * configure: Regenerate.
1223 Fix PR gdb/344.
1224
44aa49bb
HPN
12252002-04-05 Hans-Peter Nilsson <hp@axis.com>
1226
1227 * elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL,
1228 R_CRIS_32_PCREL>: Fix typo in name.
1229 (cris_elf_check_relocs): Always create .rela.got here when
1230 R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
1231 (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
1232 assume it's created.
1233
e2d34d7d
DJ
12342002-04-04 Daniel Jacobowitz <drow@mvista.com>
1235
1236 * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
1237 * aout-target.h (MY_bfd_link_hash_table_free): Conditionally
1238 define.
1239 * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
1240 * bfd.c (bfd_link_hash_table_free): Define.
1241 * binary.c (binary_bfd_link_hash_table_free): Define.
1242 * bout.c (b_out_bfd_link_hash_table_free): Define.
1243 * coff-rs6000.c (rs6000coff_vec): Include
1244 _bfd_generic_link_hash_table_free.
1245 (pmac_xcoff_vec): Likewise.
1246 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
1247 (aix5coff64_vec): Likewise.
1248 * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
1249 * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
1250 (bfd_elf32_bfd_link_hash_table_free): Define.
1251 * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
1252 (bfd_elf32_bfd_link_hash_table_free): Define.
1253 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
1254 define.
1255 * i386msdos.c (msdos_bfd_link_hash_table_free): Define.
1256 * i386os9k.c (os9k_bfd_link_hash_table_free): Define.
1257 * ieee.c (ieee_bfd_link_hash_table_free): Define.
1258 * ihex.c (ihex_bfd_link_hash_table_free): Define.
1259 * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
1260 (_bfd_generic_link_hash_table_free): Add prototype.
1261 * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
1262 * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
1263 * linker.c (_bfd_generic_link_hash_table_free): New function.
1264 * mmo.c (mmo_bfd_link_hash_table_free): Define.
1265 * nlm-target.h (nlm_bfd_link_hash_table_free): Define.
1266 * oasys.c (oasys_bfd_link_hash_table_free): Define.
1267 * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
1268 * som.c (som_bfd_link_hash_table_free): Define.
1269 * srec.c (srec_bfd_link_hash_table_free): Define.
1270 * tekhex.c (tekhex_bfd_link_hash_table_free): Define.
1271 * versados.c (versados_bfd_link_hash_table_free): Define.
1272 * vms.c (vms_bfd_link_hash_table_free): New function.
1273 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.
1274
1275 * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
1276 instead of bfd_alloc.
1277 * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
1278 * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
1279 * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
1280 * cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
1281 * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
1282 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
1283 * elf.c (_bfd_elf_link_hash_table_create): Likewise.
1284 * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
1285 * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
1286 * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
1287 * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
1288 * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
1289 * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
1290 * elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
1291 * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
1292 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
1293 * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
1294 * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
1295 * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
1296 * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
1297 * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
1298 * linker.c (_bfd_generic_link_hash_table_create): Likewise.
1299 * m68klinux.c (linux_link_hash_table_create): Likewise.
1300 * sparclinux.c (linux_link_hash_table_create): Likewise.
1301 * sunos.c (sunos_link_hash_table_create): Likewise.
1302 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
1303
1304 * targets.c: Add _bfd_link_hash_table_free to xvec.
1305
1306 * bfd-in2.h: Regenerate.
1307 * libbfd.h: Regenerate.
1308 * libcoff.h: Regenerate.
1309
830629ab
AM
13102002-04-04 Alan Modra <amodra@bigpond.net.au>
1311
1312 * dep-in.sed: Cope with absolute paths.
1313 * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
1314 Run "make dep-am".
1315 * Makefile.in: Regenerate.
1316 * coff-arm.c: Fix copyright date.
1317 * cpu-h8300.c: Likewise.
1318 * cpu-i370.c: Likewise.
1319 * cpu-s390.c: Likewise.
1320 * cpu-mips.c: Likewise.
1321 * po/SRC-POTFILES.in: Regenerate.
1322
c6e90b02
TS
13232002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1324
1325 * Makefile.am: Add elfxx-mips.c to the known backends.
1326 (elf32-mips.lo): remove dependency to coff/external.h.
1327 * Makefile.in: Regenerate.
1328 * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
1329 Remove elf32-mips.lo from 64 bit vectors. Update dependencies
1330 accordingly.
1331 * configure: Regenerate.
1332 * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
1333 (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
1334 (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
1335 MIPS specific backend functions.
1336 * elf32-mips.c: Moved most code to elfxx-mips.c.
1337 (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
1338 static.
1339 (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
1340 (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
1341 (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
1342 (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
1343 interface to allow selection of the right REL or RELA howto table.
1344 (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
1345 static. Let it refuse n32 objects.
1346 (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
1347 (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
1348 (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
1349 (elf32_mips_ignore_discarded_relocs): Rename from
1350 _bfd_elf32_mips_ignore_discarded_relocs.
1351 (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
1352 (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
1353 (elf_mips_howto_table_rela): Remove.
1354 * elf64-mips.c: Moved most code to elfxx-mips.c.
1355 (bfd_elf64_bfd_reloc_type_lookup): Make static.
1356 (mips_elf64_rtype_to_howto): New function.
1357 (mips_elf64_object_p): Likewise.
1358 (elf64_mips_irix_compat): Likewise.
1359 * elfxx-mips.c: New file containing common code merged together from
1360 elf32-mips.c and elf64-mips.c.
1361 * elfxx-mips.h: New file containing MIPS specific prototypes from
1362 elf-bfd.h.
1363 * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
1364 elf_backend_mips_rtype_to_howto.
1365
d8dce692
AM
13662002-04-04 Alan Modra <amodra@bigpond.net.au>
1367
1368 * srec.c (MAXCHUNK, Chunk): Revise comments.
1369 (srec_write_record): Correct buffer size.
1370 (srec_write_header): Do without intermediate buffer.
1371 (srec_write_section): Validate Chunk.
1372 (srec_write_terminator): Pass NULL instead of dummy buffer.
1373 (srec_write_symbols): Pass file and symbol names directly to
1374 bfd_bwrite so sprintf won't overflow buffer.
1375
b88a866a
JJ
13762002-04-03 Jakub Jelinek <jakub@redhat.com>
1377
1378 * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
1379 PC relative relocs against hidden symbols.
1380 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1381
d7866f04
AM
13822002-04-03 Alan Modra <amodra@bigpond.net.au>
1383
1384 * elf.c (_bfd_elf_make_section_from_shdr): When setting section
1385 LMAs, loop over segments until p_vaddr and p_memsz specify an
1386 extent enclosing the section.
1387
9e81ee67
NC
13882002-04-02 Nick Clifton <nickc@cambridge.redhat.com>
1389
1390 * ihex.c (ihex_write_object_contents): Do not allow records to
1391 cross a 64K boundary - wrap if necessary.
1392
d2b64500
JT
13932002-04-01 Nathan Williams <nathanw@wasabisystems.com>
1394
1395 * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
1396 which caused the returned LWP ID to always be 0.
1397
e36f7d53
RH
13982002-04-01 Richard Henderson <rth@redhat.com>
1399
1400 * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
1401 (elf32_sparc_relocate_section): Use it to figure out when to
1402 initialize .got entries.
1403 * elf64-sparc.c: Similarly.
1404
e92d460e
AM
14052002-03-28 Alan Modra <amodra@bigpond.net.au>
1406
1407 * linker.c (link_action): Ignore duplicate warning syms.
1408 (_bfd_generic_link_write_global_symbol): Follow warning symbol link.
1409 * elflink.h (elf_adjust_dynstr_offsets): Likewise.
1410 (elf_adjust_dynamic_symbol): Likewise.
1411 (elf_export_symbol): Likewise.
1412 (elf_link_find_version_dependencies): Likewise.
1413 (elf_link_assign_sym_version): Likewise.
1414 (elf_link_sec_merge_syms): Likewise.
1415 (elf_link_output_extsym): Likewise.
1416 (elf_gc_sweep_symbol): Likewise.
1417 (elf_gc_propagate_vtable_entries_used): Likewise.
1418 (elf_gc_smash_unused_vtentry_relocs): Likewise.
1419 (elf_gc_allocate_got_offsets): Likewise.
1420 (elf_collect_hash_codes): Likewise.
1421 * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
1422 * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
1423 (elf_hppa_remark_useless_dynamic_symbols): Likewise.
1424 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
1425 * elf32-arm.h (elf32_arm_discard_copies): Likewise.
1426 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
1427 (elf_cris_discard_excess_dso_dynamics): Likewise.
1428 * elf32-hppa.c (clobber_millicode_symbols): Likewise.
1429 (mark_PIC_calls): Likewise.
1430 (allocate_plt_static): Likewise.
1431 (allocate_dynrelocs): Likewise.
1432 (readonly_dynrelocs): Likewise.
1433 * elf32-i386.c (allocate_dynrelocs): Likewise.
1434 (readonly_dynrelocs): Likewise.
1435 * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
1436 * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
1437 * elf32-mips.c (mips_elf_output_extsym): Likewise.
1438 (mips_elf_sort_hash_table_f): Likewise.
1439 (mips_elf_check_mips16_stubs): Likewise.
1440 * elf32-s390.c (allocate_dynrelocs): Likewise.
1441 (readonly_dynrelocs): Likewise.
1442 * elf32-sh.c (sh_elf_discard_copies): Likewise.
1443 * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
1444 (xstormy16_relax_plt_realloc): Likewise.
1445 * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
1446 (elf64_alpha_output_extsym): Likewise.
1447 * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
1448 * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
1449 (mips_elf64_check_mips16_stubs): Likewise.
1450 (mips_elf64_output_extsym): Likewise.
1451 * elf64-ppc.c (func_desc_adjust): Likewise.
1452 (allocate_dynrelocs): Likewise.
1453 (readonly_dynrelocs): Likewise.
1454 * elf64-s390.c (allocate_dynrelocs): Likewise.
1455 (readonly_dynrelocs): Likewise.
1456 * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
1457 * elf64-x86-64.c (allocate_dynrelocs): Likewise.
1458 (readonly_dynrelocs): Likewise.
1459 * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
1460 * aoutx.h (aout_link_write_other_symbol): Likewise.
1461 * cofflink.c (_bfd_coff_write_task_globals): Likewise.
1462 (_bfd_coff_write_global_sym): Likewise.
1463 * i386linux.c (linux_tally_symbols): Likewise.
1464 * m68klinux.c (linux_tally_symbols): Likewise.
1465 * sparclinux.c (linux_tally_symbols): Likewise.
1466 * pdp11.c (aout_link_write_other_symbol): Likewise.
1467 * sunos.c (sunos_scan_dynamic_symbol): Likewise.
1468 * xcofflink.c (xcoff_build_ldsyms): Likewise.
1469 (xcoff_write_global_symbol): Likewise.
1470
1471 * cofflink.c (_bfd_coff_final_link): Formatting.
1472 * cpu-mips.c (mips_compatible): Make static, prototype.
1473 * elf32-i386.c (elf_i386_check_relocs): Formatting.
1474 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
1475 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
1476 * elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
1477 (mips_elf64_final_link): Likewise.
1478 * elflink.h (elf_link_find_version_dependencies): Remove duplicate
1479 prototype.
1480
2106126f
NC
14812002-03-27 Nick Clifton <nickc@cambridge.redhat.com>
1482
1483 * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
1484 (SWAP_OUT_RELOC_OFFSET): Define.
1485
b99d1833
AM
14862002-03-27 Gregory Steuck <greg@nest.cx>
1487
1488 * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
1489 terminating NULL if empty symbol table.
1490 (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise.
1491
ad43ed4c
L
14922002-03-26 H.J. Lu (hjl@gnu.org)
1493
1494 * elflink.h (elf_link_input_bfd): Revert the last change since
1495 the gcc exception handling isn't fixed yet.
1496
3851fca4
L
14972002-03-26 H.J. Lu (hjl@gnu.org)
1498
1499 * elflink.h (elf_link_input_bfd): Complain about relocations
1500 against local symbols in discarded sections.
1501
b91afed7
AM
15022002-03-26 Alan Modra <amodra@bigpond.net.au>
1503
1504 * elflink.h (elf_gc_mark): Don't recurse into non-ELF sections.
1505
dba143ef
AM
15062002-03-23 Alan Modra <amodra@bigpond.net.au>
1507
1508 * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
1509 section file offset for !SEC_LOAD sections.
1510
ee29b9fb
RE
15112002-03-21 Richard Earnshaw <rearnsha@arm.com>
1512
830629ab
AM
1513 * elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>,
1514 <case R_ARM_GOT>): Handle relocations to Thumb functions.
ee29b9fb 1515
54327882
AM
15162002-03-21 Alan Modra <amodra@bigpond.net.au>
1517
1518 * coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype.
1519 Whitespace changes.
1520 * archive.c: Update copyright date.
1521 * bfd-in2.h: Regenerate.
1522 * libbfd.h: Regenerate.
1523 * Makefile.am: Run "make dep-am"
1524 * Makefile.in: Regenerate.
1525 * po/SRC-POTFILES.in: Regenerate.
1526
1ee24f27
DJ
15272002-03-20 Daniel Jacobowitz <drow@mvista.com>
1528
1529 * dwarf2.c (struct funcinfo): Move up.
1530 (lookup_address_in_function_table): New argument function_ptr.
1531 Set it.
1532 (lookup_address_in_line_table): New argument function. If function
1533 is non-NULL, use it to handle ``addr'' before the first line note of
1534 the function.
1535 (comp_unit_find_nearest_line): Update and swap calls to
1536 lookup_address_in_function_table and lookup_address_in_line_table.
1537 * syms.c (_bfd_stab_section_find_nearest_line): Use the first
1538 N_SLINE encountered if we see an N_FUN before any N_SLINE.
1539
51b9608c
TR
15402002-03-20 Tom Rix <trix@redhat.com>
1541
ea1e4b0d 1542 * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from
51b9608c 1543 _bfd_xcoff_generic_stat_arch_elt. Fix format check.
ea1e4b0d 1544 * coff64-rs6000.c : Use _bfd_xcoff_stat_arch_elt.
51b9608c 1545
789c90aa
TR
15462002-03-19 Tom Rix <trix@redhat.com>
1547
ea1e4b0d 1548 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all
789c90aa
TR
1549 dynamic objects in archives.
1550
1da54d81
HPN
15512002-03-19 Hans-Peter Nilsson <hp@bitrange.com>
1552
1553 * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
1554 STT_NOTYPE symbols to STT_OBJECT.
1555
7831a775 15562002-03-18 Jan Hubicka <jh@suse.cz>
beb43bb9
JH
1557
1558 * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
1559
eb1e0e80
NC
15602002-03-18 Tom Rix <trix@redhat.com>
1561
1562 * aix5ppc.core.c : New file for AIX 5 64 bit core support.
1563 * bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration.
1564 * coff-rs6000 (do_pad) : New function for archive padding.
1565 (do_copy) : New function for object file copying in archives.
1566 (do_shared_object_padding) : New function for padding shared
1567 objects to their text section alignment in archives.
1568 (bfd_xcoff_ar_achive_set_magic) : Stub.
1569 (xcoff_write_armap_big) : Use do_copy and do_pad.
1570 (xcoff_write_archive_contents_big) : Use do_shared_object_padding,
1571 do_copy and do_pad.
1572 * coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use
ea1e4b0d 1573 bfd_xcoff_magic_number.
eb1e0e80
NC
1574 (xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook
1575 fop.
1576 (xcoff_backend_data_r) : Use xcoff64_bad_format_hook.
1577 (bfd_xcoff_aix5_backend_data) : New Aix 5 backend data.
1578 (aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000.
1579 * rs6000-core.c : Update copyright date.
ea1e4b0d 1580 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL
eb1e0e80
NC
1581 csectpp.
1582 * coffcode.h (coff_new_section_hook) : Use new accessor macros.
1583 (coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #.
1584 (coff_set_flags) : Use bfd_xcoff_magic_number.
1585 * libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC.
1586 * configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support.
1587 * Makefile.am : Same.
1588 * config.bfd : Same.
1589 * targets.c : Same.
1590 * configure : Regnerate.
1591 * Makefile.in : Same.
1592 * bfd-in2.h : Same.
1593
a1c259a1
NC
15942002-03-18 Nick Clifton <nickc@cambridge.redhat.com>
1595
1596 * po/fr.po: Updated version.
1597
4dae1ae7
AM
15982002-03-18 Alan Modra <amodra@bigpond.net.au>
1599
1600 * libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success.
1601 * libbfd.h: Regenerate.
1602 * archive.c (coff_write_armap): Pass on failures from
1603 bfd_write_bigendian_4byte_int.
1604
36b4f6e7
L
16052002-03-14 H.J. Lu <hjl@gnu.org>
1606
1607 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD
1608 error to bfd_error_nonrepresentable_section for reinit_array
1609 section in DSO.
1610
a1aefc76
NC
16112002-03-14 Nick Clifton <nickc@cambridge.redhat.com>
1612
a181be0a
NC
1613 * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag,
1614 OR it in rather than replacing previously selected flags.
1615
a1aefc76
NC
1616 * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15.
1617 (TARGET_LITTLE_SYM): Set ar_max_namelen to 15.
1618
c119f9b8
AM
16192002-03-14 Alan Modra <amodra@bigpond.net.au>
1620
1621 * cpu-mips.c (mips_compatible): New. Don't check bits_per_word.
1622 (N): Use the above.
1623 * elflink.h (elf_bfd_final_link): Revert last change. Instead,
1624 ensure reloc size matches before calling elf_link_input_bfd.
1625 Add an assert to check reloc size when counting output relocs.
1626
c295a511
NC
16272002-03-14 Nick Clifton <nickc@cambridge.redhat.com>
1628
1629 * mmo.c (mmo_get_loc): Return NULL rather than false.
1630
9ce88e60
NC
16312002-03-13 Nick Clifton <nickc@cambridge.redhat.com>
1632
1633 * po/fr.po: Updated version.
1634
4ddafab0
AM
16352002-03-13 Alan Modra <amodra@bigpond.net.au>
1636
b74fa2cd
AM
1637 * archures.c (bfd_default_compatible): Test bits_per_word.
1638 * cpu-i386.c (i386_compatible): Remove. Replace occurrences with
1639 bfd_default_compatible.
1640 * cpu-i370.c (i370_compatible): Likewise.
1641 * cpu-sparc.c (sparc_compatible): Likewise.
1642 * cpu-h8300.c (compatible): Test in->arch == out->arch.
1643
40b829d4
AM
1644 * elflink.h: Formatting fixes.
1645 (elf_link_output_extsym): Merge undefined and undef weak cases.
1646
4ddafab0
AM
1647 * elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd
1648 when word size of input matches output word size.
1649
dd53c801
AJ
16502002-03-12 Andreas Jaeger <aj@suse.de>
1651
1652 * cpu-i386.c (i386_compatible): New. Use it instead of
1653 bfd_default_compatible.
1654
aa066ac8
L
16552002-03-07 H.J. Lu (hjl@gnu.org)
1656
1657 * coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type
1658 as the type for bfd_reloc_val.
1659
1bf42538
JL
16602002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
1661
1662 * elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
1663 (elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
1664 (elf_hppa_final_link_relocate): Correct relocations for indirect
1665 references to local data through the DLT. Fix .opd creation for
1666 local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
1667 relocations. Use e_lsel selector for R_PARISC_DLTIND21L,
1668 R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
1669 "Processor-Specific ELF for PA_RISC, Version 1.43" document.
1670 Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
1671 * elf32-hppa.c (final_link_relocate): Revise relocation selectors
1672 as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.
1673
86eaf01e
JJ
16742002-03-05 Jakub Jelinek <jakub@redhat.com>
1675
1676 * merge.c (_bfd_merge_sections): Don't segfault if there
1677 is nothing to merge due to GC.
1678
c44233aa
AM
16792002-03-05 Alan Modra <amodra@bigpond.net.au>
1680
039cc25f
AM
1681 * elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep
1682 symbols that have been forced local.
1683
c44233aa
AM
1684 * elflink.h (elf_bfd_final_link): Call elf_link_output_extsym
1685 to output forced local syms for non-shared link.
1686 (elf_link_output_extsym): Tweak condition for calling backend
1687 adjust_dynamic_symbol so that previous behaviour is kept.
1688 Whitespace changes throughout file.
1689
25e27870
L
16902002-03-04 H.J. Lu <hjl@gnu.org>
1691
1692 * elf.c (bfd_section_from_shdr): Handle special sections,
1693 .init_array, .fini_array and .preinit_array.
1694 (elf_fake_sections): Likewise.
1695
1696 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the
1697 DT entry only if the section is in output for .init_array,
1698 .fini_array and .preinit_array. Complain about .preinit_array
1699 section in DSO.
1700 (elf_bfd_final_link): Warn zero size for .init_array,
1701 .fini_array and .preinit_array sections.
1702
1703 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove
1704 SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
1705 (elfNN_ia64_fake_sections): Remove .init_array, .fini_array and
1706 .preinit_array.
1707
bb2a49f2
AM
17082002-03-04 Alan Modra <amodra@bigpond.net.au>
1709
1710 * configure.in (WIN32LIBADD): Don't eval PICFLAG assignment.
1711 * configure: Regenerate.
1712
38487e5e
TR
17132002-03-02 Tom Rix <trix@redhat.com>
1714
c44233aa
AM
1715 * coff64-rs6000.c (xcoff64_howto_table): Replace howto types with
1716 symbolic equiv.
38487e5e
TR
1717 * coff-rs6000.c (xcoff_howto_table): Same.
1718
30831527
RH
17192002-03-01 David Mosberger <davidm@hpl.hp.com>
1720
1721 * elflink.h (size_dynamic_sections): If section named
1722 ".preinit_array" exists, create DT_PREINIT_ARRAY and
1723 DT_PREINIT_ARRAYSZ entries in dynamic table. Analogously for
1724 ".init_array" and ".fini_array".
1725 (elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ,
1726 DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and
1727 DT_FINI_ARRAY.
1728
c8e5ddc8
AM
17292002-02-26 Andrew Macleod <amacleod@cygnus.com>
1730
1731 * elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
1732 dynsyms.
1733
96e0dda4
AM
17342002-02-25 Alan Modra <amodra@bigpond.net.au>
1735
1c5b6bf8
AM
1736 * elf64-hppa.h: Update copyright date.
1737
96e0dda4
AM
1738 * elf64-ppc.c (ppc64_elf_check_relocs): Warning fix.
1739 (ppc64_elf_relocate_section): Don't generate power4 style branch
1740 hints for *_BRTAKEN and *_BRNTAKEN relocs.
1741
0fb19cbc
JJ
17422002-02-22 Jakub Jelinek <jakub@redhat.com>
1743
1744 * elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my
1745 last patch.
1746 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1747
c434dee6
AJ
17482002-02-21 Andreas Jaeger <aj@suse.de>
1749
1750 * elf64-x86-64.c: Major rework that introduces all recent changes
1751 to the x86-64 backend. Get a closer match to elf32-i386.
1752 (struct elf64_x86_64_dyn_relocs): Rename from
1753 elf64_x86_64_pcrel_relocs_copied, add additional fields. Change
1754 all users.
1755 (struct elf64_x86_64_link_hash_table): Add short cuts to some
1756 sections.
1757 (link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc,
1758 remove casts, initialize new hash members.
1759 (create_got_section): New.
1760 (elf64_x86_64_create_dynamic_sections): New.
1761 (elf64_x86_64_copy_indirect_symbol): New.
1762 (elf64_x86_64_check_relocs): Don't allocate space for dynamic
1763 relocs, .got or .relgot here but do it in allocate_dynrelocs.
1764 Reference count possible .plt and .got entries. Don't test input
1765 section SEC_READONLY here to try to avoid copy relocs, and keep
1766 dyn_relocs regardless of ELF_LINK_NON_GOT_REF. Don't set
1767 DF_TEXTREL here. Delay setting of variables until needed. Cache
1768 pointer to "sreloc" section in elf_section_data. Tweak condition
1769 under which .got created. Report files with bad relocation
1770 section names.
1771 (elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
1772 Reference count possible .plt entries. Don't deallocate .got and
1773 .relgot space here.
1774 (elf64_x86_64_adjust_dynamic_symbol): Handle nocopyreloc. Don't
1775 do copy reloc processing for weakdefs. Remove redundant casts and
1776 aborts. Delay setting of vars until needed. Move creation of
1777 dynamic symbols and allocation of .plt and .rela.plt to
1778 allocate_dynrelocs. Replace BFD_ASSERT with abort.
1779 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
1780 (allocate_dynrelocs): New.
1781 (readonly_dynrelocs): New.
1782 (elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs.
1783 Allocate space for dyn relocs. Replace BFD_ASSERT with abort.
1784 Zero out the dynamic allocated content space.
1785 (elf64_x86_64_discard_copies): Removed.
1786 (elf64_x86_64_relocate_section): Make use of dynamic section
1787 short-cuts. Localise vars, and delay setting. Better error
1788 reporting, replace BFD_ASSERT with abort. Check
1789 ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the
1790 regular object file and tread the weak definition as the normal
1791 one. Don't discard relocs for undefweak or undefined symbols and
1792 check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy
1793 relocs.
1794 (elf64_x86_64_finish_dynamic_symbol): Don't copy relocs for
1795 symbols that have been forced local. Use same test to decide if
1796 we can use a relative reloc for got as relocate_section. Expand
1797 SHN_UNDEF comment. Move expressions out of function calls.
1798 Replace BFD_ASSERT with abort.
1799 (bfd_elf64_bfd_final_link): Removed.
1800 (elf_backend_copy_indirect_symbol): Define.
1801
ff3a6ee3
TR
18022002-02-20 Tom Rix <trix@redhat.com>
1803
1804 * coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA.
1805 (_bfd_xcoff_reloc_type_lookup): Use it.
1806 * coff64-rs6000.c (xcoff64_howto_table): Same.
1807 (xcoff64_reloc_type_lookup): Same.
c434dee6 1808
a68d41fb
AM
18092002-02-20 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
1810
1811 * osf-core.c (osf_core_vec): OSF/1 (Digital Unix) core files are
1812 little endian.
1813
befc3abb
MS
18142002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
1815
1816 * archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31.
1817 (bfd_mach_s390_esame): Rename to bfd_mach_s390_64.
1818 * bfd-in2.h: Regenerate.
1819 * cpu-s390.c (arch_info_struct): Use renamed architecture defines.
1820 Replace architecture name "s390" with "s390:31-bit" and "s390:esame"
1821 with "s390:64-bit".
1822 * elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations.
1823 (elf_s390_reloc_type_lookup): Likewise.
1824 (elf_s390_check_relocs): Likewise.
1825 (elf_s390_gc_sweep_hook): Likewise.
1826 (elf_s390_relocate_section): Likewise.
1827 (elf_s390_object_p): Use renamed architecture define.
1828 * elf64-s390.c (elf_s390_object_p): Use renamed architecture define.
1829
6eeeec9b
FCE
18302002-02-19 Frank Ch. Eigler <fche@redhat.com>
1831
1832 * syms.c (stt[]): Sorted. Added .init/.fini -> "t" mapping.
1833
0bb2d96a
JJ
18342002-02-19 Jakub Jelinek <jakub@redhat.com>
1835
1836 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable
1837 absptr -> pcrel optimization for shared libs.
1838 Only create minimal .eh_frame_hdr if absptr FDE encoding in shared
1839 library cannot be converted to pcrel.
1840 (_bfd_elf_eh_frame_section_offset): Return -2 if making absptr
1841 relative.
1842 * elf32-i386.c (elf_i386_relocate_section): If
1843 _bfd_elf_section_offset returned -2, skip, but make sure the
1844 relocation is installed.
1845 * elf32-arm.h (elf32_arm_final_link_relocate): Likewise.
1846 * elf32-cris.c (cris_elf_relocate_section): Likewise.
1847 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
1848 * elf32-i370.c (i370_elf_relocate_section): Likewise.
1849 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1850 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1851 * elf32-s390.c (elf_s390_relocate_section): Likewise.
1852 * elf32-sh.c (sh_elf_relocate_section): Likewise.
1853 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1854 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
1855 * elf64-s390.c (elf_s390_relocate_section): Likewise.
1856 * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
1857 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1858 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
1859 * elf64-alpha.c (elf64_alpha_relocate_section): Handle
1860 _bfd_elf_section_offset returning -2 the same way as -1.
1861 * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
1862 * elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME
1863 and BFD_ASSERT.
1864 * elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise.
1865
69f284c7
TR
18662002-02-18 Tom Rix <trix@redhat.com>
1867
1868 * xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support.
1869 (bfd_xcoff_size_dynamic_sections): Same.
1870 * bfd-in.h (bfd_xcoff_link_generate_rtinit): Same.
1871 (bfd_xcoff_size_dynamic_sections): Same.
1872 * coff-rs6000.c (xcoff_generate_rtinit): Same.
1873 * coff-rs646000.c (xcoff64_generate_rtinit): Same.
1874 * libxcoff.h (struct xcoff_backend_data_rec): Same.
1875 * xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean.
1876 * bfd-in2.h: Regenerate.
1877
82bd7b59
AM
18782002-02-18 Alan Modra <amodra@bigpond.net.au>
1879
1880 * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
1881 (struct ppc_link_hash_table): Add sfpr.
1882 (ppc64_elf_link_hash_table_create): Init it.
1883 (ppc64_elf_create_dynamic_sections): Split creation of .stub and
1884 .glink out to..
1885 (create_linkage_sections): ..here. Make .sfpr too.
1886 (ppc64_elf_check_relocs): Call create_linkage_sections, and set
1887 dynobj early.
1888 (MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
1889 (ppc64_elf_func_desc_adjust): Look for missing ._savef* and
1890 ._restf* functions, and create as needed.
1891 (func_desc_adjust): Only force_local for shared libs.
1892
ef1355e8
NC
18932002-02-18 David O'Brien <obrien@FreeBSD.org>
1894
1895 * configure.in: Bump version number post 2.12 branching.
1896 * configure: Regenerate.
1897
dfa36a69
HPN
18982002-02-17 Hans-Peter Nilsson <hp@bitrange.com>
1899
1900 * mmo.c: Correct and improve comments.
1901 (mmo_write_chunk): Store trailing byte in bfd buffer; don't
1902 zero-pad. Use input to fill up non-empty bfd buffer.
1903 (mmo_flush_chunk): New function.
1904 (mmo_write_loc_chunk): Add parameter last_vmap, all callers
1905 changed. Don't emit location specifier if VMA is same as
1906 *LAST_VMAP after omitting leading zero contents. Call
1907 mmo_flush_chunk before emitting location specifier.
1908 (mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished
1909 with mmo_write_loc_chunk calls.
1910 (mmo_internal_write_section): Call mmo_flush_chunk after
1911 mmo_write_chunk.
1912 (mmo_write_symbols_and_terminator): Move :Main to first position
1913 in symbol array. Add faked one if it does not exist if there are
1914 other symbols. Don't add it if there are no symbols at all. Move
1915 out test for value of :Main from symbol loop. Rename table
1916 fakemain to maintable and variable mainsym to fakemain.
1917
ccf00ab6
RH
19182002-02-15 Richard Henderson <rth@redhat.com>
1919
1920 * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target
1921 section with no got matches any got. Simplify error generaion.
1922
88eaccc2
AM
19232002-02-15 Alan Modra <amodra@bigpond.net.au>
1924
fd96f80f
AM
1925 Support arbitrary length fill patterns.
1926 * linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc.
1927 (_bfd_default_link_order): Remove bfd_fill_link_order code.
1928 Call default_data_link_order.
1929 (default_fill_link_order): Delete.
1930 (default_data_link_order): New function.
1931 * elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences
1932 of bfd_fill_link_order with bfd_data_link_order.
1933 * elf64-alpha.c (elf64_alpha_final_link): Likewise.
1934 * elf64-mips.c (mips_elf64_final_link): Likewise.
1935
88eaccc2
AM
1936 * bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value.
1937 Correct value returned in "end" for "0x<non-hex>".
1938
e2fd756b
NC
19392002-02-14 Nick Clifton <nickc@cambridge.redhat.com>
1940
1941 * cpu-arm.c (processors): Replace 'arch' field with 'mach'.
1942 (scan): Test against 'mach' field in info structure.
1943
edd29cf9
AM
19442002-02-14 Alan Modra <amodra@bigpond.net.au>
1945
1946 * elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD.
1947
1e30956e 19482002-02-14 Matt Fredette <fredette@netbsd.org>
76f57f3a
JT
1949
1950 * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
1951 EF_M68000.
1952
bf36db18
NC
19532002-02-13 Nick Clifton <nickc@cambridge.redhat.com>
1954
1955 * elf.c (_bfd_elf_make_section_from_shdr): Do not insist on
edd29cf9
AM
1956 non-zero physical addresses when adjusting the LMAs of new
1957 sections.
bf36db18 1958
189c6563
AM
19592002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca>
1960
1961 * elf-hppa.h (elf_hppa_reloc_final_type): New function stripped
1962 from _bfd_elf_hppa_gen_reloc_type.
1963 (_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype.
1964 * elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype.
1965 * elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h.
1966 * elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype.
1967
e948afaf
AO
19682002-02-12 Alexandre Oliva <aoliva@redhat.com>
1969
1970 * elf-m10300.c (mn10300_elf_relax_section): Skip section before
1971 loading its contents if there's nothing to do in it.
1972
19397422
AM
19732002-02-12 Alan Modra <amodra@bigpond.net.au>
1974
0ad3a73b
AM
1975 * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing
1976 64k boundary.
1977
19397422
AM
1978 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic
1979 DT_PPC64_OPD and DT_PPC64_OPDSZ tags.
1980 (ppc64_elf_finish_dynamic_sections): Set values for them.
1981
51316059
MS
19822002-02-11 Michael Snyder <msnyder@redhat.com>
1983
1984 * elf-bfd.h (elfcore_write_lwpstatus): Add prototype.
1985 * elf.c (elfcore_grok_pstatus): Add prototype.
1986 (elfcore_grok_lwpstatus): Add prototype.
1987 (elfcore_write_lwpstatus): New function.
1988 (elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy.
1989
518313c3
AO
19902002-02-11 Alexandre Oliva <aoliva@redhat.com>
1991
1992 * elf32-sh.c: Added missing prototypes.
1993 * elf32-sh64.c: Likewise.
1994 (sh_elf_align_loads): Mark unused args as such.
1995 * elf64-sh64.c: Added missing prototypes.
1996 (struct elf_sh64_link_hash_entry): Fix typo.
1997 (sh_elf64_relocate_section): Fix info argument passed to
1998 _bfd_elf_section_offset.
1999
2c73f9d8
AM
20002002-02-11 Alan Modra <amodra@bigpond.net.au>
2001
2002 * Makefile.am: "make dep-am".
2003 * Makefile.in: Regenerate.
2004 * aclocal.m4: Regenerate.
2005 * config.in: Regenerate.
2006 * configure: Regenerate.
2007
d426c6b0
DJ
20082002-02-10 Daniel Jacobowitz <drow@mvista.com>
2009
2010 * coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized
2011 variable warnings.
2012 * elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned
2013 comparison warning.
2014 * trad-core.c (trad_unix_core_file_p): Silence pointer/integer
2015 cast warnings for the common case.
2016
e58ee0cd
HPN
20172002-02-10 Hans-Peter Nilsson <hp@bitrange.com>
2018
2019 * config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64
2020 vectors.
2021 (sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64
2022 vectors.
2023
7793f4d0
RH
20242002-02-09 Richard Henderson <rth@redhat.com>
2025
2026 * elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP.
2027 (elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise.
2028 (elf64_alpha_relocate_section): Likewise.
2029 * reloc.c (BFD_RELOC_ALPHA_BRSGP): New.
2030 * bfd-in2.h, libbfd.h: Rebuild.
2031
7e799044
HPN
20322002-02-09 Hans-Peter Nilsson <hp@bitrange.com>
2033
2034 * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check
2035 that base-plus-offset reloc accounting is consistent.
2036 (mmix_elf_relax_section): Keep base-plus-offset reloc accounting
2037 up to date for undefined symbols.
2038
027d73eb
EC
20392002-02-08 Eric Christopher <echristo@redhat.com>
2040
2041 From Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2042
2043 * elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela
2044 sections for the O32 ABI.
2045
517662d4
CD
20462002-02-08 Chris Demetriou <cgd@broadcom.com>
2047
2048 * elf32-arm.h: Fix formatting of _("...").
2049 * elf32-d10v.c: Likewise.
2050 * elf32-m68k.c: Likewise.
2051 * elf32-mips.c: Likewise.
2052
5e37cc46
NC
20532002-02-08 Ivan Guzvinec <ivang@opencores.org>
2054
2055 * coff-or32.c: Fix compile time warning messages.
2056
fbca6ad9
AO
20572002-02-08 Alexandre Oliva <aoliva@redhat.com>
2058
2059 Contribute sh64-elf.
2060 2002-01-23 Alexandre Oliva <aoliva@redhat.com>
2061 * reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
2062 R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
2063 R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
2064 R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
2065 R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
2066 R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
2067 R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
2068 R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8,
2069 R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64):
2070 New relocs.
2071 * libbfd.h, bfd-in2.h: Rebuilt.
2072 * elf32-sh.c (sh_elf_howto_table): Define new relocs.
2073 (sh_reloc_map): Map them.
2074 (PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
2075 elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be,
2076 elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry,
2077 elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
2078 elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset,
2079 elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset,
2080 movi_shori_putval) [INCLUDE_SHMEDIA]: New.
2081 (elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add
2082 datalabel_got_offset.
2083 (sh_elf_link_hash_newfunc): Initialize it.
2084 (sh_elf_relocate_section): Augment the scope of
2085 seen_stt_datalabel. Introduce GOTPLT support. Extend GOTPC, PLT,
2086 GOT and GOTOFF handling to new SHmedia relocation types. Support
2087 GOT_BIAS.
2088 (sh_elf_check_relocs): Likewise.
2089 (sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in
2090 PLT entries using movi_shori_putval. Support GOT_BIAS.
2091 (sh_elf_finish_dynamic_sections): Likewise.
2092 * elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to
2093 relocation, it's now done by the caller.
2094 (GOT_BIAS): New.
2095 * elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt,
2096 elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset,
2097 elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset,
2098 elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER,
2099 elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry,
2100 elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse,
2101 sh64_elf64_hash_table): New.
2102 (sh_elf64_howto_table): Introduce new relocs.
2103 (sh_elf64_info_to_howto): Accept new PIC relocs.
2104 (sh_elf64_relocate_section): Augment the scope of
2105 seen_stt_datalabel. Support new PIC relocs.
2106 (sh_elf64_check_relocs): Support new PIC relocs.
2107 (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le,
2108 elf_sh64_plt_entry_be, elf_sh64_plt_entry_le,
2109 elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le,
2110 elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry,
2111 sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create,
2112 movi_shori_putval, movi_3shori_putval,
2113 sh64_elf64_create_dynamic_sections,
2114 sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies,
2115 sh64_elf64_size_dynamic_sections,
2116 sh64_elf64_finish_dynamic_symbol,
2117 sh64_elf64_finish_dynamic_sections): New.
2118 (elf_backend_create_dynamic-sections,
2119 bfd_elf64_bfd_link_hash_table_create,
2120 elf_backend_adjust_dynamic_symbol,
2121 elf_backend_size_dynamic_sections,
2122 elf_backend_finish_dynamic_symbol,
2123 elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
2124 elf_backend_plt_readonly, elf_backend_want_plt_sym,
2125 elf_backend_got_header_size, elf_backend_plt_header_size):
2126 Define.
2127 2001-05-16 Alexandre Oliva <aoliva@redhat.com>
2128 * elf32-sh.c: Renumbered and renamed some SH5 relocations to
2129 match official numbers and names; moved unmaching ones to the
2130 range 0xf2-0xff.
2131 * elf32-sh64.c, elf64-sh64.c: Likewise.
2132 2001-03-12 DJ Delorie <dj@redhat.com>
2133 * elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia
2134 sections.
2135 2001-03-12 DJ Delorie <dj@redhat.com>
2136 * elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must
2137 be aligned.
2138 * elf64-sh64.c (sh_elf64_relocate_section): Ditto.
2139 2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
2140 * elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define.
2141 (sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a
2142 .cranges section with SEC_SORT_ENTRIES set.
2143 (sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an
2144 incoming sorted .cranges section.
2145 (sh64_bfd_elf_copy_private_section_data): New.
2146 (sh64_elf_final_write_processing): Only sort .cranges and modify
2147 start address if called by linker.
2148 2001-01-08 Ben Elliston <bje@redhat.com>
2149 * elf32-sh64.c (sh64_elf_final_write_processing): Activate
2150 Hans-Peter Nilsson's set bit 0 patch from 2001-01-06.
2151 * elf64-sh64.c (sh64_elf64_final_write_processing): Ditto.
2152 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
2153 * elf64-sh64.c (sh_elf64_howto_table): No open brace at start of
2154 line. Add comments before all entries.
2155 <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct and clarify describing
2156 comment.
2157 (sh_elf64_reloc): Correct head comment.
2158 (sh_elf64_relocate_section): Correct spacing.
2159 <relocating for a local symbol>: Do not honour STO_SH5_ISA32;
2160 instead call reloc_dangerous callback.
2161 <case R_SH_SHMEDIA_CODE>: New case.
2162 (sh_elf64_gc_mark_hook): Correct spacing.
2163 (sh_elf64_check_relocs): Ditto.
2164 * elf32-sh64.c (shmedia_prepare_reloc) <case R_SH_SHMEDIA_CODE>:
2165 New case.
2166 * elf32-sh.c: Correct #endif comments for #ifndef-wrapped
2167 functions.
2168 (sh_elf_howto_table) <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct,
2169 clarify describing comment. Add comments before all entries.
2170 (sh_elf_relocate_section) <relocating for a local symbol>: Do not
2171 honour STO_SH5_ISA32; instead call reloc_dangerous callback.
2172 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
2173 Sort .cranges section in final link. Prepare to set bit 0 on
2174 entry address.
2175 * elf32-sh64.c (struct sh64_find_section_vma_data): New.
2176 (sh64_elf_link_output_symbol_hook): Fix typo in prototype.
2177 (sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming
2178 .cranges section.
2179 (sh64_backend_section_from_shdr): New, to recognize
2180 SHT_SH5_CR_SORTED on incoming .cranges section.
2181 (elf_backend_section_from_shdr): Define.
2182 (sh64_elf_final_write_processing): Sort outgoing .cranges
2183 section. (New, temporarily disabled:) Set bit 0 on entry address
2184 according to ISA type.
2185 (sh64_find_section_for_address): New.
2186 (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
2187 crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c.
2188 (sh64_address_in_cranges): Move here from opcodes/sh64-dis.c. Use
2189 bfd_malloc, not xmalloc.
2190 (sh64_get_contents_type): Move here from opcodes/sh64-dis.c. Make
2191 global.
2192 * elf32-sh64.c (sh64_elf64_final_write_processing): New, (but
2193 temporarily disabled) setting bit 0 on entry address.
2194 (elf_backend_final_write_processing): Define.
2195 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
2196 * elf32-sh.c (sh_elf_howto_table) <R_SH_PT_16>: Adjust fields to
2197 be a proper relocation for PTA and PTB rather than a marker.
2198 <R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2,
2199 R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
2200 R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
2201 R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
2202 R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>:
2203 Zero src_mask.
2204 * elf64-sh64.c: Ditto.
2205 (sh_elf64_relocate_section) <case R_SH_PT_16>: New case.
2206 * elf32-sh64.c: Include opcodes/sh64-opc.h
2207 (shmedia_prepare_reloc): Take a bfd_link_info pointer as first
2208 argument. Drop const qualifiers from "bfd *" and "bfd_byte *"
2209 parameters. No unused parameters. Caller changed.
2210 <case R_SH_PT_16>: New case.
2211 * Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h.
2212 * Makefile.in: Regenerate.
2213 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
2214 * elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for
2215 all code sections.
2216 (sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
2217 (sh64_elf_merge_private_data): Ditto.
2218 * elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data
2219 to access stored section flags.
2220 (sh64_elf_final_write_processing): Return immediately unless
2221 called by linker. Use sh64_elf_section_data (cranges) to get size
2222 of linker-generated cranges entries.
2223 (sh64_elf_copy_private_data): Add missing "return true".
2224 (sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
2225 (sh_elf64_merge_private_data): Ditto.
2226 2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
2227 * elf64-sh64.c (sh64_elf64_fake_sections): New, copy of
2228 elf64-sh64.c:sh64_elf_fake_sections.
2229 (elf_backend_fake_sections): Define as sh64_elf64_fake_sections.
2230 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
2231 * elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete.
2232 (sh64_elf_final_write_processing): New.
2233 (elf_backend_final_write_processing): Define.
2234 (sh64_elf_fake_sections): Get header flags from tdata field.
2235 (sh64_elf_copy_private_data): Do not call
2236 sh64_elf_copy_private_data_internal, just copy e_flags field.
2237 (sh64_elf_merge_private_data): Do not call
2238 sh64_elf_copy_private_data_internal.
2239 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
2240 Remove EF_SH64_ABI64, let ELF size make difference.
2241 Remove SH64-specific BFD section flag.
2242 * elf32-sh64.c (sh64_elf_fake_sections): Recognize section as
2243 containing SHmedia through elf_section_data (asect)->tdata
2244 non-zero, not using a BFD section flag.
2245 (sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64.
2246 (sh64_elf_merge_private_data): Similar.
2247 (elf_backend_section_flags): Don't define.
2248 (sh64_elf_backend_section_flags): Delete.
2249 * elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64,
2250 not EF_SH64_ABI64.
2251 (sh_elf64_merge_private_data): Similar.
2252 * section.c (Section flags definitions): Don't define
2253 SEC_SH_ISA_SHMEDIA.
2254 (bfd-in2.h): Regenerate.
2255 2000-12-09 Hans-Peter Nilsson <hpn@cygnus.com>
2256 Make DataLabel references work with partial linking.
2257 * elf32-sh64.c: Fix formatting.
2258 (sh64_elf_link_output_symbol_hook): New.
2259 (elf_backend_link_output_symbol_hook): Define to
2260 sh64_elf_link_output_symbol_hook.
2261 (sh64_elf_add_symbol_hook): Make DataLabel symbol just global
2262 undefined if partial linking. Adjust sanity check.
2263 * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New.
2264 (elf_backend_link_output_symbol_hook): Define to
2265 sh64_elf64_link_output_symbol_hook.
2266 (sh64_elf64_add_symbol_hook): Make DataLabel symbol just global
2267 undefined if partial linking. Adjust sanity check.
2268 2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com>
2269 Implement semantics for inter-file DataLabel references.
2270 * elf64-sh64.c (DATALABEL_SUFFIX): Define.
2271 (sh64_elf64_add_symbol_hook): New.
2272 (sh_elf64_relocate_section): If passing an indirect symbol with
2273 st_type STT_DATALABEL on the way to a symbol with st_other
2274 STO_SH5_ISA32, do not bitor 1 to the relocation.
2275 (elf_backend_add_symbol_hook): Define to
2276 sh64_elf64_add_symbol_hook.
2277 * elf64-sh32.c: Tweak comments.
2278 (DATALABEL_SUFFIX): Define.
2279 (sh64_elf_add_symbol_hook): New.
2280 (elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook.
2281 * elf32-sh.c (sh_elf_relocate_section): If passing an indirect
2282 symbol with st_type STT_DATALABEL on the way to a symbol with
2283 st_other STO_SH5_ISA32, do not bitor 1 to the relocation.
2284 2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com>
2285 Pass through STT_DATALABEL.
2286 * elf32-sh64.c (sh64_elf_get_symbol_type): New.
2287 (elf_backend_get_symbol_type): Define.
2288 * elf64-sh64.c (sh64_elf64_get_symbol_type): New.
2289 (elf_backend_get_symbol_type): Define.
2290 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
2291 * elf32-sh64.c: Tweak comments.
2292 (sh64_elf_copy_private_data_internal): Add prototype.
2293 (bfd_elf32_bfd_set_private_flags): Define.
2294 (sh64_elf_copy_private_data_internal): Compare machine name, not
2295 textual BFD target name, to check whether to copy section flag
2296 SHF_SH5_ISA32.
2297 (sh64_elf_merge_private_data): Validize bfd_get_arch_size.
2298 Tweak section-contents-type-mismatch message.
2299 (shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers.
2300 Validize reloc-types.
2301 * elf64-sh64.c: New file.
2302 * targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare.
2303 * Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo.
2304 (BFD64_BACKENDS_CFILES): Add elf64-sh64.c.
2305 Regenerate dependencies.
2306 * Makefile.in: Regenerate.
2307 * config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and
2308 bfd_elf64_sh64l_vec.
2309 * configure.in: Handle bfd_elf64_sh64_vec and
2310 bfd_elf64_sh64l_vec.
2311 * configure: Regenerate.
2312 * po/POTFILES.in: Regenerate.
2313 * po/bfd.pot: Regenerate.
2314 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
2315 * elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize
2316 anything else but EF_SH64 and EF_SH64_ABI64.
2317 (sh64_elf_merge_private_data): Emit error for anything else but
2318 EF_SH64 and EF_SH64_ABI64.
2319 * config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec
2320 from targ_selvecs.
2321 * configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and
2322 bfd_elf32_sh64l_vec as a temporary measure.
2323 * configure: Regenerate.
2324 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com>
2325 * cpu-sh.c (arch_info_struct): Include sh5 item
2326 unconditionalized.
2327 * config.bfd (sh64-*-elf*): Do not set targ_cflags.
2328 Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec,
2329 bfd_elf32_shblin_vec and bfd_elf32_shlin_vec.
2330 * elf32-sh64.c: Tweak comments.
2331 (sh64_elf_set_mach_from_flags): Recognize all machine flags that
2332 are proper subsets of SH64 as bfd_mach_sh5. Add EF_SH64_ABI64.
2333 (sh64_elf_copy_private_data_internal): Wrap long line.
2334 (sh64_elf_merge_private_data): Rewrite to allow objects from
2335 SH64 subsets to be linked together.
2336 (INCLUDE_SHMEDIA): Define.
2337 * elf32-sh.c (sh_elf_relocate_section) <local symbol>:
2338 Parenthesize plus-expression inside or-expression.
2339 <global symbol>: Ditto.
2340 (sh_elf_set_mach_from_flags): Remove code refusing
2341 deleted EF_SH64_32BIT_ABI flag.
2342 2000-11-26 Hans-Peter Nilsson <hpn@cygnus.com>
2343 * elf32-sh.c (sh_elf_howto_table) <R_SH_IMM_LOW16_PCREL,
2344 R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL,
2345 R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true.
2346 (sh_elf_relocate_section) <local symbol>: Or 1 in
2347 calculation of relocation if sym->st_other & STO_SH5_ISA32.
2348 <global symbol>: Ditto if h->other & STO_SH5_ISA32.
2349 * elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to
2350 relocation.
2351 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
2352 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo.
2353 (BFD32_BACKENDS_CFILES): Add elf32-sh64.c.
2354 Regenerate dependencies.
2355 * Makefile.in: Regenerate.
2356 * archures.c: Add bfd_mach_sh5.
2357 * config.bfd: Map targ_cpu sh* to bfd_sh_arch.
2358 Handle sh64-*-elf*. Set targ_cflags to -DINCLUDE_SHMEDIA.
2359 * configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec.
2360 * configure: Regenerate.
2361 * reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5,
2362 BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6,
2363 BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
2364 BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8,
2365 BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16,
2366 BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16,
2367 BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16,
2368 BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16,
2369 BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations.
2370 * cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link
2371 in item for SH5.
2372 * elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items
2373 for SHmedia relocs.
2374 [INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs.
2375 [INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call
2376 shmedia_prepare_reloc, goto final_link_relocate if it returns
2377 non-zero, else fail as before.
2378 (sh_elf_set_mach_from_flags): Provide function only if not defined
2379 as macro. Do not recognize objects with EF_SH64_32BIT_ABI set.
2380 (sh_elf_set_private_flags): Provide function only if not defined
2381 as a macro.
2382 (sh_elf_copy_private_data): Similar.
2383 (sh_elf_merge_private_data): Similar.
2384 * section.c (SEC_SH_ISA_SHMEDIA): New.
2385 * targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare.
2386 * elf32-sh64.c: New file.
2387 * libbfd.h: Regenerate.
2388 * bfd-in2.h: Regenerate.
2389 * po/POTFILES.in: Regenerate.
2390 * po/bfd.pot: Regenerate.
2391 * bfd-in2.h: Regenerate.
2392 * libbfd.h: Regenerate.
2393
e108f470
DJ
23942002-02-07 Daniel Jacobowitz <drow@mvista.com>
2395
2396 * bfd-in.h: Update <stdbool.h> check to only see if <stdbool.h> has
2397 been included, not drag it in.
2398 * bfd-in2.h: Regenerate.
2399
259d18a3
L
24002002-02-06 H.J. Lu (hjl@gnu.org)
2401
2402 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update
2403 the mach and ISA fields if necessary.
2404
f13b834e
NC
24052002-02-06 Nick Clifton <nickc@cambridge.redhat.com>
2406
2407 * coffcode.h (coff_set_arch_mach_hook): Select the highest known
2408 ARM architecture when an F_ARM_5 flag is detected, since we cannot
2409 be sure exactly which architecture this represents.
2410
82f6addb
NC
24112002-02-05 Nick Clifton <nickc@redhat.com>
2412
2413 * po/tr.po: Updated translation.
2414
899f54f5
AM
24152002-02-05 Alan Modra <amodra@bigpond.net.au>
2416
2417 From Jimi X <jimix@watson.ibm.com>
2418 * archures (bfd_mach_ppc64): Define.
2419 (bfd_powerpc_arch): Rename to bfd_powerpc_archs.
2420 (bfd_powerpc_arch): Define.
2421 * bfd-in2.h: Regenerate.
2422 * cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs.
2423 (bfd_powerpc_arch): Move to tail of bfd_powerpc_archs.
2424 (bfd_powerpc_archs): Add default powerpc64 arch.
2425
248866a8
AM
24262002-02-05 Alan Modra <amodra@bigpond.net.au>
2427
2428 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs
2429 against section syms in readonly sections. Don't do the global
2430 sym check if we find one.
2431 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
2432 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
0a6958db 2433 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
248866a8
AM
2434 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
2435 (elf_s390_grok_prstatus): Add missing prototype.
2436
4fa5c2a8
HPN
24372002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
2438
2439 * elf64-mmix.c (mmix_dump_bpo_gregs): New function.
2440 (mmix_elf_check_common_relocs) <case R_MMIX_BASE_PLUS_OFFSET>:
2441 Call bfd_get_section_by_name only once. Initialize
2442 bpodata->n_bpo_relocs_this_section.
2443 (_bfd_mmix_prepare_linker_allocated_gregs): Remove comment
2444 referring to DSOs.
2445 (bpo_reloc_request_sort_fn): Don't use difference of values as
2446 return-value.
2447
537c972e
DB
24482002-02-02 David O'Brien <obrien@FreeBSD>
2449
2450 * configure.in: Tweak the FreeBSD 4.x recognition more. Only treat
2451 version 4.5 and later the same as 5-CURRENT.
2452 * configure: Re-generate.
2453
006336b8
JT
24542002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
2455
2456 * config.bfd (hppa*-*-netbsd*): New target.
2457
6c571f00
PT
24582002-01-31 Philipp Thomas <pthomas@suse.de>
2459
19397422
AM
2460 * coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR
2461 to front of message. Unify messages with elf32-arm.h. Use
2462 commas where neccessary.
2463 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase
2464 ERROR in messages. Unify messages with coff-arm.c. Correct
2465 VFP/FPA error message.
2466 (elf32_arm_print_private_bfd_data): Don't mark APCS-26 and
2467 APCS-32 for translation.
6c571f00 2468
930b4cb2
HPN
24692002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
2470
2471 Perform on-demand global register allocation from
2472 R_MMIX_BASE_PLUS_OFFSET relocs.
2473 * elf64-mmix.c (struct bpo_reloc_section_info, struct
2474 bpo_reloc_request, struct bpo_greg_section_info): New.
2475 (mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook,
2476 bpo_reloc_request_sort_fn, mmix_elf_relax_section,
2477 _bfd_mmix_check_all_relocs,
2478 _bfd_mmix_prepare_linker_allocated_gregs,
2479 _bfd_mmix_finalize_linker_allocated_gregs): New functions.
2480 (elf_mmix_howto_table): Correct src_mask for most relocs.
2481 (mmix_elf_perform_relocation) <case R_MMIX_BASE_PLUS_OFFSET>: New
2482 case.
2483 (mmix_final_link_relocate) <case R_MMIX_BASE_PLUS_OFFSET>: New
2484 case. Fix typo in comment. New label do_mmix_reloc.
2485 (mmix_elf_check_relocs): Abuse bfd_link_info member base_file to
2486 store first object file with a base-plus-offset reloc. Call
2487 mmix_elf_check_common_relocs for the part common with mmo.
2488 (mmix_elf_final_link): Write out linker-allocated register
2489 contents section.
2490 (elf_backend_gc_sweep_hook): Define.
2491 (bfd_elf64_bfd_relax_section): Define.
2492
2493 * mmo.c: Don't include <ctype.h>
2494 (mmo_init): Correct init-once logic.
2495
3e36d993
TR
24962002-02-01 Tom Rix <trix@redhat.com>
2497
2498 * config.bfd: Conditionally support <aiaff> for pre AIX 4.3.
2499
ba323545
AM
25002002-02-01 Alan Modra <amodra@bigpond.net.au>
2501
2502 * Makefile.am: Run "make dep-am"
2503 * Makefile.in: Regenerate.
2504
012884d6
DB
25052002-01-31 David O'Brien <obrien@FreeBSD>
2506
2507 * configure.in: Recognize the differences in core files from FreeBSD
2508 4.{0,1} and later versions of 4.x. This treats 4.2+ the same as
2509 5-CURRENT.
2510 * configure: Regenerate.
2511
3b16e843
NC
25122002-01-31 Ivan Guzvinec <ivang@opencores.org>
2513
2514 * coff-or32.c: New file.
2515 * cpu-or32.c: New file.
2516 * elf32-or32.c: New file.
2517 * archures.c: Add support for or32.
2518 * targets.c: Add support for or32.
2519 * bfd-in2.h: Regenerate.
7dc0ab31 2520 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags,
3b16e843
NC
2521 coff_write_object_contents): Add support for or32.
2522 * config.bfd: Add target.
2523 * configure.in: Add support for or32.
2524 * configure: Regenerate.
2525 * Makefile.am: Add support for or32.
2526 * Makefile.in: Regenerate.
3b16e843
NC
2527 * po/SRC-POTFILES.in: Add or32 files.
2528 * po/bfd.pot: Regenerate.
7dc0ab31 2529
caf8ca8e
NC
25302002-01-31 Nick Clifton <nickc@cambridge.redhat.com>
2531 Don Lindsay <lindsayd@cisco.com>
2532
2533 * elf32-mips.c (mips_elf_calculate_relocation): Replace 'return
2534 false' with a return of a bfd_reloc_ error code.
2535
e5dfef09
HPN
25362002-01-31 Hans-Peter Nilsson <hp@axis.com>
2537
2538 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
2539 unexport unreferenced symbols when --export-dynamic. Call
2540 _bfd_elf_strtab_delref when unexporting.
2541
4e4770d0
DJ
25422002-01-30 Daniel Jacobowitz <drow@mvista.com>
2543
2544 * bfd-in.h: Include <stdbool.h> if it is available.
2545 * bfd-in2.h: Regenerated.
2546
e1fa50e7
AM
25472002-01-31 Alan Modra <amodra@bigpond.net.au>
2548
2549 * elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should
2550 not go via the plt.
2551
b5f79c76
NC
25522002-01-30 Nick Clifton <nickc@cambridge.redhat.com>
2553
b5f79c76
NC
2554 * archures.c: Tidy up formatting of embedded comments.
2555 * bfd.c: Tidy up formatting of embedded comments.
7dc0ab31 2556 * bfd-in.h: Fix formatting of comments.
b5f79c76
NC
2557 * reloc.c: Tidy up formatting of ordinary & embedded comments.
2558 * section.c: Tidy up formatting of embedded comments.
2559 * syms.c: Tidy up formatting of embedded comments.
2560 * targets.c: Tidy up formatting of embedded comments.
2561
2562 * bfd-in2.h: Regenerate.
2563
ca09e32b
NC
25642002-01-30 Nick Clifton <nickc@cambridge.redhat.com>
2565
2566 * vms-tir.c (cmd_name): New function.
2567 (tir_cmd_name): New function.
2568 (etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name().
2569 (tir_opr, tir_ctl, tir_cmd): use tir_cmd_name().
2570 Fix formatting.
7dc0ab31 2571
ca09e32b
NC
2572 * peXXigen.c (pe_print_idata): Rearrange message to aid in
2573 translation.
2574 (pe_print_pdata): Rearrange message to aid in translation.
2575
2576 * libbfd.c (warn_deprecated): Rearrange error message to aid in
2577 translation.
2578
2579 * ihex.c (ihex_write_object_contents): Fix spelling typo.
2580
2581 * ieee.c (ieee_slurp_external_symbols): Remove spurious space.
2582
2583 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error
2584 message to aid in translation.
2585
2586 * elf64-mmix.c (mmix_final_link_relocate): Rearrange error message
2587 to aid in translation.
2588
2589 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo.
2590
7dc0ab31 25912002-01-30 Philipp Thomas <pthomas@suse.de>
ae1a89b7
PT
2592
2593 * coff-arm.c, elf32-elf.h: Unify messages.
2594
05f64ac6
NC
25952002-01-30 Nick Clifton <nickc@redhat.com>
2596
2597 * po/sv.po: Updated translation.
2598
f5a3e38a
NC
25992002-01-30 Philipp Thomas <pthomas@suse.de>
2600
2601 * dwarf2.c (read_abbrev): Use full section name in error message.
2602 (decode_line_info): Likewise.
661a3fd4
NC
2603
2604 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging
2605 message.
2606
d926e03d
AM
26072002-01-30 Alan Modra <amodra@bigpond.net.au>
2608
2609 * elf64-ppc.c (func_desc_adjust): Only provide missing function
2610 descriptor symbols for undefined function code syms. Clear
2611 ELF_LINK_NON_ELF so that they can stay weak.
2612
030d18fb 26132002-01-29 Chris Demetriou <cgd@broadcom.com>
7dc0ab31 2614 Mitch Lichtenberg <mpl@broadcom.com>
030d18fb
CD
2615
2616 * bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype.
2617 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function
2618 to handle 32-bit ELF embedded reloc (ld --embedded-relocs)
2619 generation.
2620 * bfd-in2.h: Regenerate.
2621
fcc76bea
CD
26222002-01-29 Chris Demetriou <cgd@broadcom.com>
2623
2624 * elf32-mips.c: Add additional comments about HI16 relocation
2625 processing.
2626 (_bfd_mips_elf_hi16_reloc): Don't subtract address here for
2627 pc-relative relocations. (Reverts change made on 2001-10-31.)
2628 (_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here
2629 for pc-relative relocations.
2630 (mips_elf_calculate_relocation): Add a comment about a kludge
2631 in the R_MIPS_GNU_REL_HI16 handling.
2632 (_bfd_mips_elf_relocate_section): Implement that kludge;
2633 adjust pc-relative HI16 relocation for difference in HI16 and
2634 LO16 addresses, since it can't easily be done in
2635 mips_elf_calculate_relocation.
2636
f9cd9119
MS
26372002-01-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
2638
2639 * elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32
2640 relocations with PC32 relocations for undefined or weak symbols.
2641 * elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise.
2642 * elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise.
2643
702248bb
JT
26442002-01-28 Jason Thorpe <thorpej@wasabisystems.com>
2645
2646 * elfcore.h (elf_core_file_p): Improve comment for last change.
2647
4867be41
DJ
26482002-01-27 Daniel Jacobowitz <drow@mvista.com>
2649
2650 * configure: Regenerated.
2651
a94cef6a
JT
26522002-01-27 Jason Thorpe <thorpej@wasabisystems.com>
2653
2654 * elfcore.h (elf_core_file_p): Set the machine architecture
2655 before processing the program headers.
2656
7562a296
HPN
26572002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
2658
966abd70
HPN
2659 * configure.in <64-bit configuration>: If using gcc, check and
2660 emit error for egcs-1.1.2.
2661 * configure: Regenerate.
2662
e8eab623
NC
26632002-01-26 Egor Duda <deo@logos-m.ru>
2664
2665 * elf.c (elfcore_grok_win32pstatus): Copy only as much information
2666 as possible to avoid stack corruption.
2667
73896efb
RH
26682002-01-26 Richard Henderson <rth@redhat.com>
2669
2670 * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext
2671 for non-allocated sections.
2672
26732002-01-25 Mark Kettenis <kettenis@gnu.org>
c106e334
MK
2674
2675 * elf.c (elfcore_write_prstatus): Make sure we pass the address of
2676 prstat.pr_reg even if it is a struct.
2677
73896efb 26782002-01-25 Steve Ellcey <sje@cup.hp.com>
254ed743
NC
2679
2680 * bfd/elfxx-ia64.c: Reset AIX vector function overrides for HP-UX.
2681
3d66c4f7
NC
26822002-01-25 Philipp Thomas <pthomas@suse.de>
2683
2684 * coffgen.c (coff_print_symbol): Don't mark info message
2685 for translation.
2686
9460ecda
NC
26872002-01-25 Nick Clifton <nickc@redhat.com>
2688
2689 * po/fr.po: Updated translation.
2690 * po/es.po: Updated translation.
2691
cc9ff76a
AM
26922002-01-25 Philipp Thomas <pthomas@suse.de>
2693
2694 * coff-alpha.c (alpha_relocate_section): Unify warning message
2695 for GP relative relocations without GP defined.
2696 * coff-mips.c (mips_relocate_section): Likewise.
2697
c68836a9
AM
26982002-01-25 Alan Modra <amodra@bigpond.net.au>
2699
2700 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
2701 unsigned overflow when new_offset < old_offset.
2702
e8eab623 27032002-01-24 Philipp Thomas <pthomas@suse.de>
391154e9
NC
2704
2705 * bfd.c (_bfd_abort): Fix typo.
2706
8ba89f17
RH
27072002-01-23 Richard Henderson <rth@redhat.com>
2708
2709 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
2710 plt entries for undefweak symbols.
2711
c6953948
NC
27122002-01-23 Steve Ellcey <sje@cup.hp.com>
2713
2714 * bfd/targets.c (bfd_elf32_ia64_hpux_big_vec): Add to
2715 DEFAULT_VECTOR.
2716 (bfd_elf64_ia64_hpux_big_vec): Ditto.
2717 (bfd_elf32_h8300_vec): Ditto.
2718
41bd81ab
AM
27192002-01-23 Alan Modra <amodra@bigpond.net.au>
2720
2721 * elf64-ppc.c: Remove stale part of ABI comment.
2722 (NO_OPD_RELOCS): Define.
2723 (ppc64_elf_check_relocs): Use it.
2724 (ppc64_elf_relocate_section): Here too.
2725 (build_one_stub): Don't point function syms at the stub. Instead,
2726 hijack plt.offset.
2727 (ppc64_elf_relocate_section): Check whether REL24 relocs should
2728 really go to the stub. Make all dynamic relocs in opd against
2729 locals.
2730 (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
2731 plt.offset.
2732
f304919d
RH
27332002-01-22 Richard Henderson <rth@redhat.com>
2734
2735 * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.
2736
c0ef99a7
AM
27372002-01-22 Alan Modra <amodra@bigpond.net.au>
2738
60ee0d4a
AM
2739 * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
2740 TOC_BASE_OFF adjustment.
2741
c0ef99a7
AM
2742 * Makefile.am: Run "make dep-am".
2743 * Makefile.in: Regenerate.
2744 * po/SRC-POTFILES.in: Regenerate.
2745
64328b46
AM
27462002-01-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
2747
2748 * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
2749 host defines.
2750
59953665 27512002-01-21 Hans-Peter Nilsson <hp@axis.com>
58255df3
HPN
2752
2753 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>:
2754 Check for and emit error if sgot is NULL at this point.
2755
9596feea
JT
27562002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
2757
2758 * config.bfd (ia64*-*-netbsd*): New target.
2759
7b45c6e1
AM
27602002-01-21 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
2761
2762 * som.c (som_write_space_strings): Comment typo fix.
2763
e5094212
AM
27642002-01-21 Alan Modra <amodra@bigpond.net.au>
2765
e86ce104
AM
2766 * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
2767 is_func_descriptor fields.
2768 (link_hash_newfunc): Init them.
2769 (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
2770 dot are candidates for plt entries. When processing .opd relocs,
2771 set function descriptor strings to point inside function code
2772 string, and set new ppc_link_hash_entry fields.
2773 (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
2774 (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
2775 function descriptors. It's now done in..
2776 (func_desc_adjust): New.
2777 (ppc64_elf_func_desc_adjust): New.
2778 (define elf_backend_always_size_sections): Define.
2779 (ppc64_elf_hide_symbol): New.
2780 (define elf_backend_hide_symbol): Define.
2781 (allocate_dynrelocs): Remove code looking up function descriptors
2782 as that has been done earlier.
2783 (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
2784 table.
2785 (ppc64_elf_finish_dynamic_symbol): Likewise. Remove code looking
2786 up function descriptor.
2787 (build_one_stub): Look up the function code sym. Check for
2788 invalid plt offsets.
2789 (ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
2790 Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.
2791
e5094212
AM
2792 * elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add
2793 boolean param.
2794 (_bfd_elf_link_hash_hide_symbol): Likewise.
2795 * elflink.h (elf_link_add_object_symbols): Adjust call to
2796 elf_backend_hide_symbol.
2797 (elf_fix_symbol_flags): Likewise.
2798 (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
2799 than bfd_alloc.
2800 * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
2801 Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
2802 * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
2803 (clobber_millicode_symbols): Adjust to suit new hide_symbol.
2804 * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
2805 and adjust to suit.
2806 * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
2807 _bfd_elf_link_hash_hide_symbol rather than duplicating code.
2808 * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
2809
40b8271b
AM
28102002-01-18 Alan Modra <amodra@bigpond.net.au>
2811
2812 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
2813 dynamic function descriptor symbol, not the associated function
2814 symbol.
2815
55baa95b
EC
28162002-01-17 Eric Christopher <echristo@redhat.com>
2817
2818 * elf32-mips.c (mips_elf_calculate_relocation): Fix typo.
2819
328577ad
NC
28202002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
2821
2822 * po/bfd.pot: Regenerate.
2823 * po/fr.po: Regenerate.
2824
af746e92
AM
28252002-01-17 Alan Modra <amodra@bigpond.net.au>
2826
2827 * elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>):
2828 Remove "Elf_Internal_Shdr *" param.
2829 (_bfd_mips_elf_section_from_bfd_section): Ditto.
2830 * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
2831 * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
2832 * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
2833 * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
2834 * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
2835 * elf.c (_bfd_elf_section_from_bfd_section): Allow backend
2836 function to override special sections. Remove hdr arg from
2837 backend call, and don't loop.
2838
175e9962
EC
28392002-01-16 Eric Christopher <echristo@redhat.com>
2840
2841 * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
2842 on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
2843 relocations requiring gp0 and gp.
2844
96a846ea
RE
28452002-01-16 Richard Earnshaw <rearnsha@arm.com>
2846
175e9962 2847 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
96a846ea
RE
2848 EF_ARM_VFP_FLOAT.
2849 (elf32_arm_print_private_bfd_data): Likewise.
2850
af3ae48d
NC
28512002-01-16 Nick Clifton <nickc@cambridge.redhat.com>
2852
2853 * po/tr.po: Import new version.
2854
10ed1bba
AM
28552002-01-16 Alan Modra <amodra@bigpond.net.au>
2856
2857 * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
2858 (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
2859 (ORI_R0_R0_0): Correct.
2860
5d1634d7
AM
28612002-01-16 Alan Modra <amodra@bigpond.net.au>
2862
2863 * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
2864 when plt_not_loaded.
2865 * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
2866 clear .plt SEC_CODE here. Create .stub and correct .glink flags.
2867 (PLT_INITIAL_ENTRY_SIZE): Set to 24.
2868 (ppc64_elf_glink_code): Delete.
2869 (PPC64_ELF_GLINK_SIZE): Delete.
2870 (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
2871 BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
2872 ORI_R0_R0_0): Define.
2873 (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
2874 (struct ppc_link_hash_table): Add sstub and plt_overflow.
2875 (ppc64_elf_link_hash_table_create): Init them.
2876 (ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry.
2877 Don't copy to shared lib.
2878 (ppc64_elf_check_relocs): Call bfd_set_error on errors.
2879 (ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount.
2880 (allocate_dynrelocs <plt>): Don't change function sym here. Make
2881 room for .stub and .glink code.
2882 (ppc64_elf_size_dynamic_sections): Handle .stub. Make entry for
2883 DT_PPC64_GLINK.
2884 (ppc64_elf_final_link): Rename to ppc64_elf_set_toc. Don't call
2885 bfd_elf64_bfd_final_link.
2886 (bfd_elf64_bfd_final_link): Don't define.
2887 (ppc64_elf_size_stubs): New.
2888 (build_plt_stub): New.
2889 (build_one_stub): New.
2890 (ppc64_elf_build_stubs): New.
2891 (ppc64_elf_relocate_section <toc relocs>): Remove assert.
2892 (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
2893 (ppc64_elf_finish_dynamic_symbol): Don't build stubs here. Set
2894 DT_PPC64_GLINK entry. Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
2895 case output sections not separate. Adjust DT_RELASZ to not
2896 include plt relocs. Set reserved got entry. Set got and plt
2897 entry size.
2898 (elf_backend_got_header_size): Set to 8.
2899 * elf64-ppc.h: New file.
2900
c601ffdb
AM
29012002-01-16 Alan Modra <amodra@bigpond.net.au>
2902
2903 * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
2904 sections, use bfd_section_list_remove.
2905 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
2906 * elflink.h (elf_link_add_object_symbols): When removing all
2907 sections, use bfd_section_list_clear.
2908
8fb4cb7f
NC
29092002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
2910
2911 * po/sv.po: New file: Swedish translation.
2912 * configure.in (ALL_LINGUAS): Add sv.
2913 * configure: Regenerate.
2914
d3c456e9
JJ
29152002-01-15 Jakub Jelinek <jakub@redhat.com>
2916
2917 * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
2918 * elf.c (merge_sections_remove_hook): New function.
2919 (_bfd_elf_merge_sections): Pass it as 3rd argument to
2920 _bfd_merge_sections.
2921 * libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
2922 * libbfd.h: Rebuilt.
2923 * merge.c (_bfd_merge_sections): Add remove_hook argument.
2924 Call remove_hook if a SEC_EXCLUDE section is encountered.
2925
1f7fd478
NC
29262002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
2927
2928 * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
2929 (xstormy16_reloc_map): Initialise new field with correct howto
2930 table.
2931 (xstormy16_reloc_type_lookup): Use 'table' field to locate correct
2932 howto entry.
2933
b87011e9
MS
29342002-01-10 Michael Snyder <msnyder@redhat.com>
2935
2936 * elf.c (elfcore_write_prstatus): Use long instead of pid_t;
2937 (elfcore_write_pstatus): Use long instead of pid_t;
2938 * elf-bfd.h: Change prototypes to use long instead of pid_t;
2939
175e9962 29402002-01-09 Jason Thorpe <thorpej@wasabisystems.com>
b4db1224
JT
2941
2942 * elf.c: Update copyright years.
2943 (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
2944 and NT_NETBSDCORE_FIRSTMACH. Improve a comment.
2945
7c76fa91
MS
29462002-01-08 Michael Snyder <msnyder@redhat.com>
2947
2948 Add capability to write corefile note sections, for gdb.
2949 * elf.c (elfcore_write_note): New function.
2950 (elfcore_write_prpsinfo): New function.
2951 (elfcore_write_prstatus): New function.
2952 (elfcore_write_pstatus): New function.
2953 (elfcore_write_prfpreg): New function.
2954 (elfcore_write_prxfpreg): New function.
97996af6 2955 * elf-bfd.h: Add prototypes for above functions.
7c76fa91 2956
e1fddb6b
AO
29572002-01-08 Alexandre Oliva <aoliva@redhat.com>
2958
2959 * elf.c (elf_fake_sections): Propagate errors from
2960 elf_backend_fake_section.
2961
8d05742f
JT
29622002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
2963
2964 * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
2965 (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
2966 (elf32-sh-nbsd.lo): New rule.
2967 * Makefile.in: Regenerate.
2968 * config.bfd (sh*le-*-netbsdelf*): New target.
2969 (sh*-*-netbsdelf*): New target.
2970 * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
2971 (bfd_elf32_shnbsd_vec): New vector.
2972 (bfd_elf32_shlnbsd_vec): New vector.
2973 * configure: Regenerate.
2974 * elf32-sh-nbsd.c: New file.
2975 * targets.c: Update copyright years.
175e9962 2976 (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
8d05742f
JT
2977 bfd_elf32_shnbsd_vec.
2978
1dba4cb4
AH
29792002-01-07 Aldy Hernandez <aldyh@redhat.com>
2980
2981 * coff-rs6000.c (READ20): Use bfd_scan_vma.
2982
47b22aef
GK
29832002-01-07 Geoffrey Keating <geoffk@redhat.com>
2984
2985 * elflink.h (elf_link_input_bfd): Don't ask for the merged offset
2986 of a symbol in a section that will be deleted.
2987
be2d1673
NC
29882002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
2989
2990 * po/es.po: New file: Spanish translation.
2991 * configure.in (ALL_LINGUAS): Add es.
2992 * configure: Regenerate.
2993
d9cf1b54
AM
29942002-01-06 Steve Ellcey <sje@cup.hp.com>
2995
2996 * elfxx-ia64.c (is_unwind_section_name): Add target vector as
2997 argument so we can handle HP-UX specially.
2998 (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
2999 (elfNN_hpux_backend_section_from_bfd_section): New for support
3000 of SHN_IA_64_ANSI_COMMON.
3001 (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
3002 (is_unwind_section_name): Add special HP-UX support.
3003 (elfNN_ia64_section_from_shdr): Add support for more sections.
3004 (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
3005 add support for more sections.
3006 (elfNN_ia64_additional_program_headers): Modify
3007 is_unwind_section_name call.
3008 (elfNN_ia64_modify_segment_map): Remove assumption that there is
3009 only one unwind section in segment.
3010
3f3c5c34
AM
30112002-01-06 Alan Modra <amodra@bigpond.net.au>
3012
3013 * syms.c (_bfd_generic_make_empty_symbol): New function.
3014 * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
3015 _bfd_generic_make_empty_symbol.
3016 * libbfd.h: Regenerate.
3017 * bfd-in2.h: Regenerate.
3018 * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
3019 (hppabsd_core_get_symtab_upper_bound): Don't define.
3020 (hppabsd_core_get_symtab): Likewise.
3021 (hppabsd_core_print_symbol): Likewise.
3022 (hppabsd_core_get_symbol_info): Likewise.
3023 (hppabsd_core_bfd_is_local_label_name): Likewise.
3024 (hppabsd_core_get_lineno): Likewise.
3025 (hppabsd_core_find_nearest_line): Likewise.
3026 (hppabsd_core_bfd_make_debug_symbol): Likewise.
3027 (hppabsd_core_read_minisymbols): Likewise.
3028 (hppabsd_core_minisymbol_to_symbol): Likewise.
3029 (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
3030 Formatting fixes.
3031 * hpux-core.c: Similarly.
3032 * irix-core.c: Similarly.
3033 * osf-core.c: Similarly.
3034 * sco5-core.c: Similarly.
3035 * binary.c (binary_make_empty_symbol): Remove function, define as
3036 _bfd_generic_make_empty_symbol.
3037 * ihex.c (ihex_make_empty_symbol): Likewise.
3038 * mmo.c (mmo_make_empty_symbol): Likewise.
3039 * ppcboot.c (ppcboot_make_empty_symbol): Likewise.
3040 * srec.c (srec_make_empty_symbol): Likewise.
3041 * versados.c (versados_make_empty_symbol): Likewise.
3042 * vms.c (_bfd_vms_make_empty_symbol): Remove.
3043 (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
3044 * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
3045 rather than _bfd_vms_make_empty_symbol.
3046 * vms-misc.c (new_symbol): Likewise.
3047
3f0a7f7f
AM
30482002-01-05 Alan Modra <amodra@bigpond.net.au>
3049
9e7b37b3
AM
3050 * section.c (bfd_section_init): Remove unnecessary initialisations.
3051 (bfd_section_list_clear): New function.
3052 (bfd_section_list_remove, bfd_section_list_insert): New macros.
3053 (_bfd_strip_section_from_output): Use them.
3054 * coffcode.h (coff_set_alignment_hook): Likewise.
3055 * elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
3056 * elf64-mips.c (mips_elf64_final_link): Likewise.
3057 * elf64-mmix.c (mmix_elf_final_link): Likewise.
3058 * sunos.c (sunos_add_dynamic_symbols): Likewise.
3059 * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
3060 * bfd-in2.h: Regenerate.
3061
3062 * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
3063 rather than doing our own section handling. Clean up after errors
3064 with bfd_release and bfd_section_list_clear. Handle unexpected
3065 flags.
3066 * aoutf1.h (sunos4_core_file_p): Likewise.
3067 * aix386-core.c (aix386_core_file_p): Likewise.
3068 * cisco-core.c (cisco_core_file_validate): Likewise.
3069 * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
3070 * trad-core.c (trad_unix_core_file_p): Likewise.
3071
3072 * hppabsd-core.c (hppabsd_core_core_file_p): Clean up after errors
3073 with bfd_release and bfd_section_list_clear.
3074 * hpux-core.c (hpux_core_core_file_p): Likewise.
3075 * irix-core.c (irix_core_core_file_p): Likewise.
3076 * lynx-core.c (lynx_core_file_p): Likewise.
3077 * osf-core.c (osf_core_core_file_p): Likewise.
3078 * rs6000-core.c (rs6000coff_core_p): Likewise.
3079 * sco5-core.c (sco5_core_file_p): Likewise.
3080
3f0a7f7f
AM
3081 * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
3082 sign extension adjustments without conditionals.
3083
a3aa38ee
JJ
30842002-01-04 Jakub Jelinek <jakub@redhat.com>
3085
3086 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
3087 CIE at .eh_frame start is removed due to no FDEs referencing it.
3088
8a8b2d4b
AJ
30892002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
3090
3091 * config.bfd (x86_64-*-netbsd*): New target.
3092 * configure.in (x86_64-*-netbsd*): Set COREFILE
3093 to netbsd-core.lo.
3094 * configure: Regenerated.
3095
04b5af89
TR
30962002-01-03 Tom Rix <trix@redhat.com>
3097
3098 * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
3099 for recent bfd_make_section_anyway change.
3100
51c5503b
NC
31012002-01-03 Nick Clifton <nickc@cambridge.redhat.com>
3102
3103 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
3104 R_ARM_THM_PC11 reloc.
3105
07f7c046
NC
31062002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
3107
3108 * configure.in (LINGUAS): Add ja.
3109 * configure: Regenerate.
3110 * po/ja.po: Import from translation project's web site.
3111
5eefb65f
NC
31122002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
3113
3114 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
3115 messages to ease translation into other languages.
3116
39e90f10 3117For older changes see ChangeLog-0001
56882138
AM
3118\f
3119Local Variables:
3120mode: change-log
3121left-margin: 8
3122fill-column: 74
3123version-control: never
3124End: