]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
Add support for CRX co-processor opcodes
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
073a2dc3
RM
12004-10-04 Roland McGrath <roland@redhat.com>
2
3 * hash.c (bfd_hash_set_default_size): Use const for table.
4 Use size_t instead of int for variable compared to sizeof results.
5
7785be14
AM
62004-10-05 Alan Modra <amodra@bigpond.net.au>
7
8 PR 425
9 * syms.c (_bfd_stab_section_find_nearest_line): Ignore R_*_NONE relocs.
10
40a18ebd
NC
112004-10-01 Paul Brook <paul@codesourcery.com>
12
13 * elf32-arm.h (elf32_arm_fake_sections,
14 is_arm_elf_unwind_section_name, elf32_arm_section_from_shdr): New
15 functions.
16 (elf_backend_fake_sections, elf_backend_section_from_shdr): Define.
17
8935b81f
AM
182004-10-01 Alan Modra <amodra@bigpond.net.au>
19
20 * elf-bfd.h (struct eh_cie_fde): Add need_relative and
21 need_lsda_relative.
22 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Set
23 need_relative or need_lsda_relative if we are processing an
24 offset for a reloc on a FDE initial loc or LSDA field
25 respectively.
26 (_bfd_elf_write_section_eh_frame): Test need_relative and
27 need_lsda_relative in place of corresponding make_* field
28 when deciding to use pc-relative encodings.
29
eeac373a
PB
302004-09-30 Paul Brook <paul@codesourcery.com>
31
32 * elf32-arm.h (bfd_elf32_arm_set_target_relocs): Handle "abs"
33 target2 relocation type.
34
7479dfd4
L
352004-09-30 H.J. Lu <hongjiu.lu@intel.com>
36
37 PR 414
38 * elflink.c (_bfd_elf_merge_symbol): Check TLS symbol.
39
0dd132b6
NC
402004-09-30 Paul Brook <paul@codesourcery.com>
41
42 * reloc.c: Add BFD_RELOC_ARM_SMI.
43 * bfd-in2.h: Regenerate.
44 * libbfd.h: Ditto.
45
1ba54ee0
AM
462004-09-24 Alan Modra <amodra@bigpond.net.au>
47
48 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add output section
49 vma and output offset to address.
50 * simple.c (simple_save_output_info): Only set output section
51 and offset for debug sections, or those not already set up by
52 the linker.
53 (bfd_simple_get_relocated_section_contents): Update comment.
54
5efb6261
AM
552004-09-24 Alan Modra <amodra@bigpond.net.au>
56
57 * elf.c (IS_LOADED): Delete.
58 (assign_file_positions_for_segments): Just test SEC_LOAD instead.
59 Restore SEC_HAS_CONTENTS test to the one place it was used prior
60 to 2004-09-22.
61
fca870e4
AM
622004-09-23 Alan Modra <amodra@bigpond.net.au>
63
64 PR gas/396
65 * elf32-sparc.c (elf32_sparc_final_write_processing): Handle
66 bfd_mach_sparc_sparclet and bfd_mach_sparc_sparclite. Remove
67 redundant assignment of EM_SPARC.
68
c86696a3
BF
692004-09-22 Brian Ford <ford@vss.fsi.com>
70
71 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
72 alignment for .rdata sections so sse[2] code works with gcc >= 3.3.3
73 constants.
74 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
75
73adb214
AM
762004-09-22 Alan Modra <amodra@bigpond.net.au>
77
78 * elf32-ppc.c (ppc_elf_modify_segment_map): Delete.
79 (elf_backend_modify_segment_map): Don't define.
80
b301b248
AM
812004-09-22 Alan Modra <amodra@bigpond.net.au>
82
83 * elf.c (IS_LOADED): Define.
84 (assign_file_positions_for_segments): Don't round up file offset of
85 PT_LOAD segments containing no SEC_LOAD sections, instead round down.
86 Delete code handling link script adjustment of lma. Do the adjust
87 in later code handling similar ajustments. Remove dead code error
88 check. Warn if section lma would require a negative offset
89 adjustment. Tweak lma adjustment to use p_filesz rather than p_memsz.
90 Use p_vaddr + p_memsz inside section loop in place of voff. Don't
91 update voff in section loop. Change voff in segment loop to be an
92 adjustment on top of "off". Set sec->filepos and update "off" later.
93 Test for loadable sections consistently using IS_LOADED. Similarly,
073a2dc3 94 test for alloc-only sections other than .tbss consistently.
b301b248
AM
95 Don't bother checking SEC_ALLOC in PT_LOAD segments. Remove FIXME.
96 Tidy PT_NOTE handling. Use %B and %A in error messages.
97 (assign_file_positions_except_relocs): Use %B in error message.
98
3f85e526
L
992004-09-17 H.J. Lu <hongjiu.lu@intel.com>
100
101 * Makefile.am (AUTOMAKE_OPTIONS): Require 1.9.
102 (CONFIG_STATUS_DEPENDENCIES): New.
103 (Makefile): Removed.
104 (config.status): Likewise.
105 * Makefile.in: Regenerated.
106
eb043451
PB
1072004-09-17 Paul Brook <paul@codesourcery.com>
108
109 * bfd-in.h (bfd_elf32_arm_set_target_relocs): Add prototype.
110 (bfd_elf32_arm_process_before_allocation): Update prototype.
111 * bfd-in2.h: Regenerate.
112 * bfd/elf32-arm.h (elf32_arm_link_hash_table): Add target2_reloc.
113 (elf32_arm_link_hash_table_create): Set it.
114 (bfd_elf32_arm_process_before_allocation): Remove target1_is_rel.
115 (bfd_elf32_arm_set_target_relocs): New function.
116 (arm_real_reloc_type): New function.
117 (elf32_arm_final_link_relocate): Use it. Handle R_ARM_PREL31 and
118 R_ARM_GOT_PREL. Remove R_ARM_TARGET1.
119 (elf32_arm_gc_sweep_hook): Ditto.
120 (elf32_arm_check_relocs): Ditto.
121 (elf32_arm_relocate_section): Handle R_ARM_GOT_PREL.
122 * elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_PREL31 and
123 R_ARM_GOT_TARGET2.
124 (elf32_arm_got_prel): New variable.
125 (elf32_arm_howto_from_type): New function.
126 (elf32_arm_info_to_howto): Use it.
127 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PREL31 and
128 BFD_RELOC_ARM_TARGET2.
129 * libbfd.h: Regenerate.
130 * reloc.c: Add BFD_RELOC_ARM_TARGET2 and BFD_RELOC_ARM_PREL31.
131
f6e332e6
AM
1322004-09-17 Alan Modra <amodra@bigpond.net.au>
133
134 * ecoff.c: Update u.undef.next refs.
135 * elf64-ppc.c: Likewise.
136 * elflink.c: Likewise.
137 * linker.c: Likewise.
138 * xcofflink.c: Likewise.
139
140 * elf-bfd.h (struct elf_link_hash_entry): Rearrange. Add FIXME to
141 dynamic_def. Combine weakdef and elf_hash_value. Move vtable
142 fields to indirect struct.
143 * elf-m10300.c: Update u.weakdef refs.
144 * elf32-arm.h: Likewise.
145 * elf32-cris.c: Likewise.
146 * elf32-frv.c: Likewise.
147 * elf32-hppa.c: Likewise.
148 * elf32-i370.c: Likewise.
149 * elf32-i386.c: Likewise.
150 * elf32-m32r.c: Likewise.
151 * elf32-m68k.c: Likewise.
152 * elf32-ppc.c: Likewise.
153 * elf32-s390.c: Likewise.
154 * elf32-sh.c: Likewise.
155 * elf32-sparc.c: Likewise.
156 * elf32-vax.c: Likewise.
157 * elf32-xtensa.c: Likewise.
158 * elf64-alpha.c: Likewise.
159 * elf64-hppa.c: Likewise.
160 * elf64-ppc.c: Likewise.
161 * elf64-s390.c: Likewise.
162 * elf64-sh64.c: Likewise.
163 * elf64-sparc.c: Likewise.
164 * elf64-x86-64.c: Likewise.
165 * elfxx-ia64.c: Likewise.
166 * elfxx-mips.c: Likewise.
167 * elflink.c: Likewise. Also u.elf_hash_value.
168 (elf_gc_propagate_vtable_entries_used): Update for h->vtable
169 indirection.
170 (elf_gc_smash_unused_vtentry_relocs): Likewise.
171 (bfd_elf_gc_record_vtinherit): Alloc vtable.
172 (bfd_elf_gc_record_vtentry): Likewise.
173 * elf.c (_bfd_elf_link_hash_newfunc): Use memset.
174
90c0a373
AM
1752004-09-17 Alan Modra <amodra@bigpond.net.au>
176
177 * Makefile.am: Run "make dep-am".
178 * Makefile.in: Regenerate.
179 * bfd-in2.h: Regenerate.
180 * po/SRC-POTFILES.in: Regenerate.
181 * po/bfd.pot: Regenerate.
182
f5385ebf
AM
1832004-09-16 Alan Modra <amodra@bigpond.net.au>
184
185 * elf-bfd.h (struct elf_link_hash_entry): Replace elf_link_hash_flags
186 with bitfields. Make "type" and "other" bitfields too.
187 (ELF_LINK_HASH_REF_REGULAR, ELF_LINK_HASH_DEF_REGULAR,
188 ELF_LINK_HASH_REF_DYNAMIC, ELF_LINK_HASH_DEF_DYNAMIC,
189 ELF_LINK_HASH_REF_REGULAR_NONWEAK, ELF_LINK_HASH_DYNAMIC_ADJUSTED,
190 ELF_LINK_HASH_NEEDS_COPY, ELF_LINK_HASH_NEEDS_PLT, ELF_LINK_NON_ELF,
191 ELF_LINK_HIDDEN, ELF_LINK_FORCED_LOCAL, ELF_LINK_HASH_MARK,
192 ELF_LINK_NON_GOT_REF, ELF_LINK_DYNAMIC_DEF, ELF_LINK_DYNAMIC_WEAK,
193 ELF_LINK_POINTER_EQUALITY_NEEDED): Delete.
194 (ELF_COMMON_DEF_P, WILL_CALL_FINISH_DYNAMIC_SYMBOL): Update.
195 * elf-hppa.h: Update all uses of elf_link_hash_flags.
196 * elf-m10300.c: Likewise.
197 * elf.c: Likewise.
198 * elf32-arm.h: Likewise.
199 * elf32-cris.c: Likewise.
200 * elf32-frv.c: Likewise.
201 * elf32-hppa.c: Likewise.
202 * elf32-i370.c: Likewise.
203 * elf32-i386.c: Likewise.
204 * elf32-m32r.c: Likewise.
205 * elf32-m68k.c: Likewise.
206 * elf32-ppc.c: Likewise.
207 * elf32-s390.c: Likewise.
208 * elf32-sh-symbian.c: Likewise.
209 * elf32-sh.c: Likewise.
210 * elf32-sh64.c: Likewise.
211 * elf32-sparc.c: Likewise.
212 * elf32-vax.c: Likewise.
213 * elf32-xtensa.c: Likewise.
214 * elf64-alpha.c: Likewise.
215 * elf64-hppa.c: Likewise.
216 * elf64-ppc.c: Likewise.
217 * elf64-s390.c: Likewise.
218 * elf64-sh64.c: Likewise.
219 * elf64-sparc.c: Likewise.
220 * elf64-x86-64.c: Likewise.
221 * elflink.c: Likewise.
222 * elfxx-ia64.c: Likewise.
223 * elfxx-mips.c: Likewise.
224 * configure.in (AM_INIT_AUTOMAKE): Set version to 2.15.92.
225 * configure: Regenerate.
226 * aclocal.m4: Regenerate.
227
b6ee372a
AM
2282004-09-16 Alan Modra <amodra@bigpond.net.au>
229
230 * elf32-arm.h (elf32_arm_gc_sweep_hook): Add #ifndef OLD_ARM_ABI
231 around uses of R_ARM_TARGET1.
232 (elf32_arm_check_relocs): Likewise.
233
9c504268
PB
2342004-09-13 Paul Brook <paul@codesourcery.com>
235
236 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
237 prototype.
238 * bfd-in2.h: Regenerate.
239 * libbfd.h: Regenerate.
240 * elf32-arm.h (elf32_arm_link_hash_table): Add target1_is_rel.
241 (elf32_arm_link_hash_table_create): Set target1_is_rel.
242 (bfd_elf32_arm_process_before_allocation): Ditto.
243 (elf32_arm_final_link_relocate): Handle R_ARM_TARGET1.
244 (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto.
245 * elfarm-nabi.c (elf32_arm_howto_table): Rename RELABS to TARGET1.
246 * reloc.c: Ditto.
247
94ea025a
JB
2482004-09-10 Joel Brobecker <brobecker@gnat.com>
249
250 * hpux-core.c (thread_section_p): New function.
251 (hpux_core_core_file_p): Fix computation of offset in call
252 to bfd_seek. Create a ".reg" section from an arbitrary
253 ".reg/<id>" section if none was created after having read
254 all sections.
255
24443139
AS
2562004-09-11 Andreas Schwab <schwab@suse.de>
257
258 * acinclude.m4: Fix spelling of ACX_NONCANONICAL_*.
259 * aclocal.m4: Rebuild.
260 * configure: Rebuild.
261
f4eae89c
JB
2622004-09-10 Joel Brobecker <brobecker@gnat.com>
263
264 * section.c (bfd_sections_find_if): Fix parameter name in
265 comment to match code.
266
e0638f70
AM
2672004-09-10 Alan Modra <amodra@bigpond.net.au>
268
269 * elf.c (assign_file_positions_except_relocs): Assign relocs
270 stored in a bfd section.
271
5e0f5ae3
HPN
2722004-09-08 Hans-Peter Nilsson <hp@axis.com>
273
274 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Reset
275 h->gotplt_refcount to 0, not -1.
276
ada1953e
HPN
2772004-09-07 Hans-Peter Nilsson <hp@axis.com>
278
279 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT,
280 case R_CRIS_32_GOTPLT>: For internal error message, handle NULL
281 symname.
282 (cris_elf_check_relocs) <case R_CRIS_32_PLT_PCREL>: Don't try to
283 handle symbol visibility here.
284
ee75fd95
AM
2852004-09-07 Alan Modra <amodra@bigpond.net.au>
286
287 * elf64-ppc.c (struct ppc_link_hash_table): Add stub_globals.
288 (is_ppc64_elf_target): Rename from is_ppc64_target. Update all
289 callers.
290 (ppc_stub_name): Remove trailing "+0" on stub name.
291 (create_linkage_sections): Create relocations for
292 branch lookup table when --emit-relocs as well as when --shared.
293 (ppc_build_one_stub): Emit relocs for long branch stubs. Adjust
294 relbrlt test. For --emit-stub-syms, always output a sym even when
295 one already exists on a plt call stub. Put stub type in the stub
296 symbol name.
297 (ppc_size_one_stub): Size long branch stub relocs. Adjust relbrlt
298 test.
299 (ppc64_elf_size_stubs): Count global sym stubs added. Zero
300 reloc_count in stub sections. Adjust relbrlt test.
301 (ppc64_elf_build_stubs): Adjust relbrlt test. Tweak stats output.
302 * elflink.c (bfd_elf_size_dynamic_sections): Fix comment typo.
303 (elf_link_input_bfd): Ignore symbol index zero relocs when checking
304 for relocs against discarded symbols. Fix comments.
305
229fcec5
MM
3062004-09-06 Mark Mitchell <mark@codesourcery.com>
307
308 * elf-bfd.h (_bfd_elf_make_dynamic_segment): Declare it.
309 * elf.c (_bfd_elf_make_dynamic_segment): New function, split out
310 from ...
311 (map_sections_to_segments): ... here. Use it. Assign a file
312 position to the .dynamic section if it is not loadable, but part
313 of the PT_DYNAMIC segment.
314 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Use file
315 offsets, not VMAs, for the BPABI. Do not fill in the header in
316 the .got.plt section for the BPABI.
317 * elfarm-nabi.c (elf32_arm_symbian_modify_segment_map): Add a
318 PT_DYNAMIC segment.
319 (elf_backend_want_got_plt): Define to zero for Symbian OS.
073a2dc3 320
9a0789ec
NC
3212004-09-06 Nick Clifton <nickc@redhat.com>
322
323 * elflink.c (elf_link_add_object_symbols): Set the error code to
324 bfd_error_wrong_format when the input format does not match the
325 output format.
326
7b53ace3
AM
3272004-09-06 Alan Modra <amodra@bigpond.net.au>
328
329 * elf64-ppc.c (is_ppc64_target): New function, extracted from..
330 (ppc64_elf_check_directives): ..here.
331 (ppc64_elf_size_dynamic_sections): Use it here to check bfd type
332 before accessing ppc64_elf_tdata.
333 (ppc64_elf_finish_dynamic_sections): And here too.
334
3e540f25
AM
3352004-09-04 Alan Modra <amodra@bigpond.net.au>
336
337 * bfd.c (_bfd_default_error_handler): Correct loop exit.
338
e5a52504
MM
3392004-09-03 Mark Mitchell <mark@codesourcery.com>
340
341 * config.bfd (arm*-*-symbianelf*): Use OS-specific target vectors.
342 * configure.in (bfd_elf32_bigarm_symbian_vec): Add it.
343 (bfd_elf32_littlearm_symbian_vec): Likewise.
344 * configure: Regenerated.
345 * elf-bfd.h (elf_backend_data): Add dynamic_sec_flags.
346 * elf32-arm.h (PLT_HEADER_SIZE): Do not define.
347 (PLT_ENTRY_SIZE): Likewise.
348 (bfd_vma_elf32_arm_symbian_plt_entry): New
349 variable.
350 (elf32_arm_link_hash_table): Add plt_header_size, plt_entry_size,
351 and symbian_p.
352 (create_got_section): Don't create sections when generating BPABI
353 objects.
354 (elf32_arm_create_dynamic_sections): Tidy.
355 (elf32_arm_link_hash_table_create): Set plt_header_size,
356 plt_entry_size, and symbian_p.
357 (elf32_arm_check_relocs): Do not mark .rel.dyn as loadable when
358 generating BPABI objects.
359 (allocate_dynrelocs): Use htab->plt_header_size, not
360 PLT_HEADER_SIZE. Do not add to .got.plt when
361 generating BPABI objects.
362 (elf32_arm_finish_dynamic_symbol): Generate Symbian OS PLTs.
363 * elfarm-nabi.c: Add SymbianOS target vectors.
364 * elflink.c (_bfd_elf_create_got_section): Use dynamic_sec_flags.
365 (_bfd_elf_link_create_dynamic_sections): Likewise.
366 * elfxx-target.h (ELF_DYNAMIC_SEC_FLAGS): New macro.
367 (elfNN_bed): Use it.
368 * targets.c (bfd_elf32_bigarm_symbian_vec): New variable.
369 (bfd_elf32_littlearm_symbian_vec): Likewise.
370 (_bfd_target_vector): Add them.
371
6e3b6835
NC
3722004-09-03 Nick Clifton <nickc@redhat.com>
373
374 PR 360
375 * coffcode.h (handle_COMDAT): Replace abort with an warning
376 message and allow the scan to continue.
377
595da8c5
AM
3782004-09-02 Alan Modra <amodra@bigpond.net.au>
379
380 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Use static_syms passed
381 in when reading relocs, not our sorted syms. Remove unnecessary
382 var.
383
6723a9f4
EB
3842004-08-31 Eric Botcazou <ebotcazou@libertysurf.fr>
385
386 * elf.c (special_sections): Add .gnu.linkonce.b modelled on .bss.
387
5464f5a1
NN
3882004-08-30 Nathanael Nerode <neroden@gcc.gnu.org>
389
390 * acinclude.m4: Require AC_CANONICAL_TARGET, not AC_CANONICAL_SYSTEM.
391 Include ../config/acx.m4 and use ACX_NONCANONICAL_* where appropriate;
392 replace uses of *_alias with *_noncanonical.
393 * aclocal.m4: Rebuild with aclocal 1.4p6.
394 * Makefile.in: Rebuild with automake 1.4p6.
395 * doc/Makefile.in: Rebuild with automake 1.4p6.
396 * configure.in: Autoupdate with autoupdate 2.59.
397 * config.in: Regenerate with autoheader 2.59.
398 * configure: Regnerate with autoconf 2.59.
399
a7535cf3
AM
4002004-08-28 Alan Modra <amodra@bigpond.net.au>
401
402 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Copy input
403 symbol pointer arrays before modifying.
404
c9727e01
AM
4052004-08-28 Alan Modra <amodra@bigpond.net.au>
406
b91e2ae2 407 * bfd.c (bfd_get_synthetic_symtab): Pass counts and both symbol tables.
c9727e01
AM
408 * elf-bfd.h (_bfd_elf_get_synthetic_symtab): Adjust.
409 * elf.c (_bfd_elf_get_synthetic_symtab): Adjust.
410 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Adjust.
b91e2ae2
AM
411 * targets.c (struct bfd_target <_bfd_get_synthetic_symtab>): Adjust.
412 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't read symbols.
413 Use both symbol tables on non-relocatable objects. Use a common
414 error exit. Fix "mid" warning.
c9727e01
AM
415 * libbfd.h: Regenerate.
416 * bfd-in2.h: Regenerate.
417
699733f6
AM
4182004-08-28 Alan Modra <amodra@bigpond.net.au>
419
420 * elf64-ppc.c (ppc64_elf_branch_reloc): Check .opd is in a regular
421 object file.
422 (struct sfpr_def_parms): Save some space.
423 (sfpr_define): Here too.
424
425 * elf64-ppc.c (compare_symbols): Put section syms first.
426 (sym_exists_at): New function.
427 (ppc64_elf_get_synthetic_symtab): Use relocs to find code entry
428 points only for relocatable files. Use .opd section contents
429 otherwise. Generally clean up the code.
430
deb0e272
AM
4312004-08-27 Alan Modra <amodra@bigpond.net.au>
432
433 * elf64-ppc.c (STD_R0_0R1, STD_R0_0R12, LD_R0_0R1, LD_R0_0R12,
434 LI_R12_0, STVX_VR0_R12_R0, LVX_VR0_R12_R0, MTLR_R0, SFPR_MAX): Define.
435 (struct sfpr_def_parms): New.
436 (sfpr_define): New function.
437 (savegpr0, savegpr0_tail, restgpr0, restgpr0_tail): New functions.
438 (savegpr1, savegpr1_tail, restgpr1, restgpr1_tail): New functions.
439 (savefpr, savefpr0_tail, restfpr, restfpr0_tail): New functions.
440 (savefpr1_tail, restfpr1_tail): New functions.
441 (savevr, savevr_tail, restvr, restvr_tail): New functions.
442 (MIN_SAVE_FPR, MAX_SAVE_FPR): Don't define.
443 (ppc64_elf_func_desc_adjust): Use sfpr_define in place of existing
444 code. Define all ABI mandated _save and _rest functions.
445
85a84e7a
PB
4462004-08-26 Paul Brook <paul@codesourcery.com>
447
deb0e272 448 * elf32-arm.h (INTERWORK_FLAG): Return true for EABIv3 objects.
85a84e7a 449
688c58f3
AM
4502004-08-26 Alan Modra <amodra@bigpond.net.au>
451
452 * elf32-m32r.c (m32r_elf_relocate_section): Don't compare with
453 TRUE or FALSE.
454
3e95eabc
AM
4552004-08-26 Alan Modra <amodra@bigpond.net.au>
456
457 * elf32-i386.c (elf_i386_relocate_section): Tweak last change so
458 that pcrel correction is applied for R_386_PC32.
459
f855931b
AM
4602004-08-25 Alan Modra <amodra@bigpond.net.au>
461
462 * elf32-i386.c (elf_i386_relocate_section): Zero section contents
463 for R_386_32 and R_386_PC32 relocs against symbols defined in
464 discarded sections.
465
b18c562e
NC
4662004-08-25 Dmitry Diky <diwil@spec.ru>
467
468 * reloc.c (BFD_RELOC_MSP430_2X_PCREL,BFD_RELOC_MSP430_RL_PCREL):
469 Add new relocations.
470 * bfd-in2.h: Regenerate.
f855931b 471 * libbfd.h: Regenerate.
b18c562e
NC
472 * elf32-msp430.c: Clean-up code.
473 (elf_msp430_howto_table): Add new relocation entries.
474 (bfd_elf32_bfd_reloc_type_lookup): New relocation handlers.
475 (msp430_elf_relax_section): New function.
476 (msp430_elf_relax_delete_bytes): New function.
477 (msp430_elf_symbol_address_p): New function.
478
af705ba8
NC
4792004-08-24 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
480
481 * elf32-m32r.c (m32r_elf_relocate_section): Handle
482 R_M32R_SDA16_RELA in the same way as R_M32R_SDA16.
483
ea5158d8
DJ
4842004-08-20 Daniel Jacobowitz <dan@debian.org>
485
486 * elflink.c (_bfd_elf_section_already_linked): Handle
487 SEC_LINK_DUPLICATES_SAME_CONTENTS.
488
49d934f1
MM
4892004-08-19 Mark Mitchell <mark@codesourcery.com>
490
491 * config.bfd (arm*-*-symbianelf*): New target.
492 (arm*-*-eabi*): Likewise.
493
039b3fef
AM
4942004-08-19 Alan Modra <amodra@bigpond.net.au>
495
496 * elf64-ppc.c (ppc_get_stub_entry): Change third param to a
497 "struct ppc_link_hash_entry *".
498 (ppc64_elf_relocate_section): Ditto for type of h. Introduce h_elf
499 to satisfy RELOC_FOR_GLOBAL_SYMBOL.
500
3f764659
JJ
5012004-08-19 Jakub Jelinek <jakub@redhat.com>
502
503 * elf64-ppc.c (ppc64_elf_edit_opd): Support 16 byte long .opd
504 entries (where fd_aux overlaps next entry's fd_func).
505 Add non_overlapping argument, use it.
506 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, adjust_opd_syms,
507 ppc64_elf_size_stubs, ppc64_elf_relocate_section,
508 ppc64_elf_output_symbol_hook): Use address / 8 instead of address / 24
509 as indexes into opd_sym_map/opd_adjust array.
510 * elf64-ppc.h (ppc64_elf_edit_opd): Adjust prototype.
511
c09bdfe5
AM
5122004-08-18 Alan Modra <amodra@bigpond.net.au>
513
514 * elf64-ppc.c (func_desc_adjust): Give undefined dot-symbols a value
515 if we can look up their function descriptor in a regular file.
516
271d0fc3
NC
5172004-08-18 Nick Clifton <nickc@redhat.com>
518
519 PR 324
520 * cofflink.c (coff_link_add_symbols): Check that the comdat
521 pointer in the coff_section_data structure has been initialised
522 before using it.
523
a010d60f
AM
5242004-08-18 Alan Modra <amodra@bigpond.net.au>
525
526 PR 338
527 * elflink.c (bfd_elf_record_link_assignment): Add comment about
528 changing bfd_link_hash_undefined to bfd_link_hash_new.
529
90e3cdf2
JJ
5302004-08-17 Jakub Jelinek <jakub@redhat.com>
531
532 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Only define
533 if not yet defined.
534 * elf64-ppc.c (bfd_elf64_get_synthetic_symtab): Define.
535 (synthetic_opd, synthetic_relocatable): New variables.
536 (compare_symbols, compare_relocs): New helper routines.
537 (ppc64_elf_get_synthetic_symtab): New function.
538 * bfd.c (bfd_get_synthetic_symtab): Rename dynsyms argument
539 to relsyms.
540 * bfd-in2.h: Regenerated.
541 * elf.c (_bfd_elf_get_synthetic_symtab): Rename dynsyms argument
542 to relsyms. Return 0 if abfd is relocatable.
543
7c2c8505
AM
5442004-08-17 Alan Modra <amodra@bigpond.net.au>
545
546 * elflink.h (elf_gc_sweep): Keep non-alloc, non-load sections.
547
0367ecfb
NC
5482004-08-17 Nick Clifton <nickc@redhat.com>
549
550 * (is_arm_mapping_symbol_name): New function - return true
551 when a symbol name matches the requirements for an ARM mapping
552 symbol name.
553 (arm_elf_find_function): New function based on
554 elf_find_function in elf.c but skipping ARM mapping symbols
555 and including thumb function symbols.
556 (elf32_arm_find_nearest_line): Use arm_elf_find_function.
557 (elf32_arm_output_symbol_hook): Use is_arm_mapping_symbol_name.
558
2441e016
AM
5592004-08-17 Alan Modra <amodra@bigpond.net.au>
560
561 * elf64-ppc.c (ppc64_elf_branch_reloc): New function.
562 (ppc64_elf_howto_raw): Use ppc64_elf_branch_reloc.
563 (ppc64_elf_brtaken_reloc): Here too.
564
35b0ce59
AM
5652004-08-17 Alan Modra <amodra@bigpond.net.au>
566
567 * elf64-ppc.c (add_symbol_adjust): Correct mismatched function
568 symbol visibility.
569 (ppc64_elf_check_directives): Check that we have the right hash
570 table before proceeding.
571
81688140
AM
5722004-08-17 Alan Modra <amodra@bigpond.net.au>
573
574 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add "deleted_section".
575 (adjust_opd_syms): Attach opd syms for deleted entries to one of
576 the sections that will be discarded.
577
327c1315
AM
5782004-08-16 Alan Modra <amodra@bigpond.net.au>
579
580 * elflink.c (elf_section_complain_discarded): Ignore .fixup.
581
45fc9e4a
AM
5822004-08-16 Alan Modra <amodra@bigpond.net.au>
583
584 * bfd.c (_bfd_default_error_handler): Account for doubled '%' in
585 free space available.
586
9dadfa79
AM
5872004-08-16 Alan Modra <amodra@bigpond.net.au>
588
589 * pdp11.c (struct pdp11_aout_reloc_external): Delete. Replace
f89c4dec 590 occurrences with bfd_byte * thoughout file.
9dadfa79
AM
591
592 * coff-rs6000.c (do_shared_object_padding): Warning fix.
593 (xcoff_write_armap_big): Likewise.
594 (xcoff_write_archive_contents_old): Likewise.
595 (xcoff_write_archive_contents_big): Likewise.
596
597 * elf64-mmix.c (mmix_elf_get_section_contents): Delete declaration.
598
57e8b36a
NC
5992004-08-13 Nick Clifton <nickc@redhat.com>
600
601 * elf32-arm.h: Convert to ISO C90.
602
a005f94e
AM
6032004-08-13 Alan Modra <amodra@bigpond.net.au>
604
605 PR 293
606 * elf32-hppa.c (elf32_hppa_hide_symbol): Use init_refcount to
607 zero the plt field.
608
d003868e
AM
6092004-08-13 Alan Modra <amodra@bigpond.net.au>
610
611 * bfd.c (_bfd_default_error_handler): Handle %A and %B.
612 (bfd_archive_filename, bfd_get_section_ident): Delete.
613 * ecofflink.c (bfd_ecoff_debug_accumulate_other): Don't call
614 bfd_archive_filename.
615 * elflink.c (elf_link_input_bfd): Don't use callbacks->error_handler
616 to warn about symbols in discarded sections. Use _bfd_error_handler.
617 * aout-adobe.c (aout_adobe_callback): See below.
618 * aout-cris.c (swap_ext_reloc_in): ..
619 * coff-arm.c (find_thumb_glue, find_arm_glue,
620 coff_arm_relocate_section, bfd_arm_process_before_allocation,
621 coff_arm_merge_private_bfd_data, _bfd_coff_arm_set_private_flags,
622 coff_arm_copy_private_bfd_data): ..
623 * coff-i860.c (i860_reloc_processing): ..
624 * coff-mcore.c (mcore_coff_unsupported_reloc,
625 coff_mcore_relocate_section): ..
626 * coff-ppc.c (coff_ppc_relocate_section): ..
627 * coff-rs6000.c (xcoff_create_csect_from_smclas
628 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
629 sh_swap_insns, sh_relocate_section): ..
630 * coff-tic54x.c (tic54x_reloc_processing): ..
631 * coff-tic80.c (coff_tic80_relocate_section): ..
632 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): ..
633 * coffcode.h (styp_to_sec_flags, coff_slurp_line_table,
634 coff_slurp_symbol_table, coff_classify_symbol,
635 coff_slurp_reloc_table): ..
636 * coffgen.c (_bfd_coff_read_string_table): ..
637 * cofflink.c (coff_link_add_symbols, _bfd_coff_link_input_bfd,
638 _bfd_coff_generic_relocate_section): ..
639 * cpu-arm.c (bfd_arm_merge_machines): ..
640 * cpu-sh.c (sh_merge_bfd_arch): ..
641 * elf-hppa.h (elf_hppa_relocate_section): ..
642 * elf.c (bfd_elf_string_from_elf_section, setup_group,
643 _bfd_elf_setup_group_pointers, bfd_section_from_shdr,
644 assign_section_numbers, _bfd_elf_symbol_from_bfd_symbol,
645 copy_private_bfd_data, _bfd_elf_validate_reloc): ..
646 * elf32-arm.h (find_thumb_glue, find_arm_glue,
647 bfd_elf32_arm_process_before_allocation, elf32_thumb_to_arm_stub,
648 elf32_arm_to_thumb_stub, elf32_arm_final_link_relocate,
649 elf32_arm_relocate_section, elf32_arm_set_private_flags,
650 elf32_arm_copy_private_bfd_data, elf32_arm_merge_private_bfd_data): ..
651 * elf32-cris.c (cris_elf_relocate_section, cris_elf_check_relocs,
652 cris_elf_merge_private_bfd_data
653 * elf32-frv.c (elf32_frv_relocate_section, elf32_frv_check_relocs): ..
654 * elf32-gen.c (elf32_generic_link_add_symbols): ..
655 * elf32-hppa.c (hppa_add_stub, hppa_build_one_stub,
656 elf32_hppa_check_relocs, get_local_syms, final_link_relocate,
657 elf32_hppa_relocate_section): ..
658 * elf32-i370.c (i370_elf_merge_private_bfd_data,
659 i370_elf_check_relocs, i370_elf_relocate_section): ..
660 * elf32-i386.c (elf_i386_info_to_howto_rel, elf_i386_check_relocs,
661 elf_i386_relocate_section): ..
662 * elf32-m32r.c (m32r_elf_relocate_section,
663 m32r_elf_merge_private_bfd_data): ..
664 * elf32-m68hc1x.c (m68hc12_add_stub,
665 _bfd_m68hc11_elf_merge_private_bfd_data): ..
666 * elf32-m68k.c (elf_m68k_relocate_section): ..
667 * elf32-mcore.c (mcore_elf_unsupported_reloc,
668 mcore_elf_relocate_section): ..
669 * elf32-ppc.c (ppc_elf_merge_private_bfd_data, bad_shared_reloc,
670 ppc_elf_check_relocs, ppc_elf_relocate_section,
671 ppc_elf_begin_write_processing): ..
672 * elf32-s390.c (elf_s390_check_relocs, invalid_tls_insn,
673 elf_s390_relocate_section): ..
674 * elf32-sh-symbian.c (sh_symbian_import_as,
675 sh_symbian_process_embedded_commands,
676 sh_symbian_relocate_section): ..
677 * elf32-sh.c (sh_elf_relax_section, sh_elf_relax_delete_bytes,
678 sh_elf_swap_insns, sh_elf_relocate_section, sh_elf_check_relocs,
679 sh_elf_merge_private_data): ..
680 * elf32-sparc.c (elf32_sparc_check_relocs,
681 elf32_sparc_relocate_section,
682 elf32_sparc_merge_private_bfd_data): ..
683 * elf32-v850.c (v850_elf_check_relocs,
684 v850_elf_merge_private_bfd_data): ..
685 * elf32-xtensa.c (elf_xtensa_check_relocs,
686 elf_xtensa_relocate_section, elf_xtensa_merge_private_bfd_data): ..
687 * elf64-alpha.c (elf64_alpha_relax_with_lituse,
688 elf64_alpha_relax_got_load, elf64_alpha_size_got_sections,
689 elf64_alpha_relocate_section_r, elf64_alpha_relocate_section): ..
690 * elf64-gen.c (elf64_generic_link_add_symbols): ..
691 * elf64-ppc.c (ppc64_elf_merge_private_bfd_data, ppc_add_stub,
692 ppc64_elf_check_relocs, ppc64_elf_edit_opd,
693 ppc64_elf_relocate_section): ..
694 * elf64-s390.c (elf_s390_check_relocs, invalid_tls_insn,
695 elf_s390_relocate_section): ..
696 * elf64-sh64.c (sh_elf64_relocate_section): ..
697 * elf64-sparc.c (sparc64_elf_check_relocs,
698 sparc64_elf_add_symbol_hook, sparc64_elf_relocate_section,
699 sparc64_elf_merge_private_bfd_data): ..
700 * elf64-x86-64.c (elf64_x86_64_check_relocs,
701 elf64_x86_64_relocate_section): ..
702 * elflink.c (_bfd_elf_add_default_symbol,
703 _bfd_elf_link_assign_sym_version, elf_link_read_relocs_from_section,
704 _bfd_elf_link_output_relocs, elf_link_add_object_symbols,
705 bfd_elf_size_dynamic_sections, elf_link_output_extsym,
706 elf_get_linked_section_vma, elf_fixup_link_order,
707 bfd_elf_final_link, bfd_elf_gc_record_vtinherit,
708 bfd_elf_gc_record_vtinherit, _bfd_elf_section_already_linked): ..
709 * elfxx-ia64.c (elfNN_ia64_relax_section,
710 elfNN_ia64_relocate_section, elfNN_ia64_merge_private_bfd_data): ..
711 * elfxx-mips.c (mips_elf_perform_relocation,
712 _bfd_mips_elf_check_relocs,
713 _bfd_mips_elf_merge_private_bfd_data): ..
714 * ieee.c (ieee_slurp_external_symbols): ..
715 * ihex.c (ihex_bad_byte, ihex_scan, ihex_read_section): ..
716 * libbfd.c (_bfd_generic_verify_endian_match): ..
717 * linker.c (_bfd_generic_link_add_one_symbol,
718 _bfd_generic_section_already_linked): ..
719 * pdp11.c (translate_to_native_sym_flags): ..
720 * pe-mips.c (coff_pe_mips_relocate_section): ..
721 * peicode.h (pe_ILF_build_a_bfd): ..
722 * srec.c (srec_bad_byte): ..
723 * stabs.c (_bfd_link_section_stabs): ..
724 * xcofflink.c (xcoff_link_add_symbols, xcoff_link_input_bfd): ..
725 Replace all uses of bfd_archive_filename and bfd_get_section_ident
726 with corresponding %B and %A in _bfd_error_handler format string.
727 Replace occurrences of "fprintf (stderr," with _bfd_error_handler
728 calls to use %A and %B. Fix "against symbol .. from section" and
729 similar error messages. Combine multiple _bfd_error_handler calls
730 where they were separated due to bfd_archive_filename deficiencies.
731 * bfd-in2.h: Regenerate.
732
6ba842b6
L
7332004-08-12 H.J. Lu <hongjiu.lu@intel.com>
734
735 * elf32-i386.c (elf_i386_relocate_section): Report unrecognized
736 relocation.
737
99877b66
AM
7382004-08-10 Alan Modra <amodra@bigpond.net.au>
739
740 * elf64-ppc.c (struct ppc_link_hash_entry): Add was_undefined.
741 (struct ppc_link_hash_table): Remove no_multi_toc, multi_toc_needed.
742 Make emit_stub_syms, stub_error and has_14bit_branch bit-fields.
743 Add twiddled_syms.
744 (link_hash_newfunc): Init was_undefined.
745 (add_symbol_adjust): Don't set undefined dot symbols to defweak;
746 Use undefweak instead.
747 (ppc64_elf_check_directives): Fix undefs chain.
748 (ppc64_elf_next_toc_section): Remove no_multi_toc and multi_toc_needed
749 references.
750 (ppc64_elf_size_stubs): Adjust for add_symbol_adjust change.
751 (undo_symbol_twiddle, ppc64_elf_restore_symbols): New functions.
752 * elf64-ppc.h (ppc64_elf_restore_symbols): Declare.
753
ba3bee0b
JJ
7542004-08-09 Jakub Jelinek <jakub@redhat.com>
755
756 * elf64-x86-64.c (elf64_x86_64_relocate_section): For -fno-pic
757 error, test input_section flags rather than sec.
758
8387904d
AM
7592004-08-09 Alan Modra <amodra@bigpond.net.au>
760
761 * elf-bfd.h (struct elf_backend_data): Add
762 elf_backend_archive_symbol_lookup.
763 (_bfd_elf_archive_symbol_lookup): Declare.
764 * elflink.c (_bfd_elf_archive_symbol_lookup): New function..
765 (elf_link_add_archive_symbols): ..extracted from here. Call the
766 backend version.
767 * elfxx-target.h (elf_backend_archive_symbol_lookup): Provide default.
768 (elfNN_bed): Init new field.
769 * elf64-ppc.c (elf_backend_check_directives): Define.
770 (elf_backend_archive_symbol_lookup): Define.
771 (struct ppc_link_hash_table): Add tls_get_add_fd. Make tls_get_add
772 a ppc_link_hash_entry pointer.
773 (get_fdh): Move.
774 (ppc64_elf_archive_symbol_lookup, opd_entry_value): New functions.
775 (add_symbol_adjust, ppc64_elf_check_directives): New functions.
776 (ppc64_elf_check_relocs, ppc64_elf_gc_mark_hook, func_desc_adjust,
777 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup,
778 ppc64_elf_tls_optimize, allocate_dynrelocs, ppc_type_of_stub,
779 ppc_build_one_stub, ppc64_elf_size_stubs, ppc64_elf_relocate_section,
780 ppc64_elf_finish_dynamic_symbol): Handle branch relocs to function
781 descriptor symbols.
782
b25116a9
AM
7832004-08-09 Alan Modra <amodra@bigpond.net.au>
784
8843416a
AM
785 * elf64-ppc.c (struct ppc_link_hash_entry): Expand adjust_done comment.
786 (ppc64_elf_add_symbol_hook): Test for NULL section.
787 (get_sym_h): Formatting.
788 (ppc64_elf_size_stubs): Include reloc addend in value stored as
789 stub target_value.
790
b25116a9
AM
791 * elf64-ppc.c (ppc64_elf_relocate_section): Combine handling of
792 long branch stubs with code handling plt and r2off branch stubs.
793
ccfa59ea
AM
7942004-08-09 Alan Modra <amodra@bigpond.net.au>
795
796 * elf-bfd.h (_bfd_elf_gc_mark): Declare.
797 * elflink.c (elf_link_input_bfd): Formatting.
798 (_bfd_elf_gc_mark): Rename from elf_gc_mark and make global. Adjust
799 all callers.
800 * elf64-ppc.c (struct ppc_link_hash_entry): Remove is_entry.
801 (link_hash_newfunc): Don't set it.
802 (ppc64_elf_copy_indirect_symbol): Nor copy it.
803 (ppc64_elf_mark_entry_syms): Delete.
804 (ppc64_elf_gc_mark_hook): Mark entry syms here. Also mark opd
805 sections. Use get_opd_info.
806 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Delete.
807
4025353c
AM
8082004-08-09 Alan Modra <amodra@bigpond.net.au>
809
4f800a42
AM
810 * elf64-ppc.c (adjust_opd_syms): Fix merge error.
811
06da1e8e
AM
812 * elf64-ppc.c (struct ppc_link_hash_table): Remove have_undefweak.
813 (func_desc_adjust): Don't set have_undefweak.
814 (ppc64_elf_func_desc_adjust): Don't add an extr nop to sfpr.
815 (ppc64_elf_relocate_section): NOP out calls to undefweak functions.
816
34814b9f
AM
817 * elf64-ppc.c (struct ppc_link_hash_entry): Make "oh" a
818 "struct ppc_link_hash_entry *". Adjust all references.
819 (ppc64_elf_hide_symbol): Correct a comment.
820
4025353c
AM
821 * elf64-ppc.c (get_opd_info): New function.
822 (adjust_opd_syms): Use get_opd_info. Define removed symbols as zero.
823 (ppc64_elf_edit_opd): Use get_opd_info. Check that sym has a dot
824 before calling get_fdh. Test fdh rather than h before dereferencing
825 fdh. Mark removed symbols in opd_adjust.
826 (ppc64_elf_tls_optimize): Don't bother with opd adjustment here.
827 (ppc64_elf_relocate_section): Use get_opd_info, and handle removed
828 opd symbols.
829 (ppc64_elf_output_symbol_hook): Likewise.
830
db6579d4
PB
8312004-08-06 Paul Brook <paul@codesourcery.com>
832
833 * elfarm-nabi.c (elf32_arm_howto_table): Add new EABI relocations.
834 (elf32_arm_reloc_map): Add BFD_RELOC_ARM_RELABS32,
835 BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32.
836 * reloc.c: Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32
837 and BFD_RELOC_ARM_SBREL32.
838 * bfd-in2.h, bbfd.h: Regenerate.
839
a4d0f181
TS
8402004-08-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
841
842 * elfxx-mips.c (mips_elf_calculate_relocation): Test only for
843 the dynamic link symbol actually in use.
844
83774818
SC
8452004-08-01 Stephane Carrez <stcarrez@nerim.fr>
846
847 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Handle bfd_link_hash_new
848
a4d0f181 8492004-07-31 Joel Brobecker <brobecker@gnat.com>
00b4930b
TS
850 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
851
852 * elfxx-mips.c (_bfd_mips_elf_symbol_processing): Handle
853 SHN_MIPS_TEXT and SHN_MIPS_DATA.
854
185d09ad
L
8552004-07-30 H.J. Lu <hongjiu.lu@intel.com>
856 Nick Clifton <nickc@redhat.com>
857
858 PR 290
859 * bfd.c (_bfd_default_error_handler): Make it global.
860
861 * elf-bfd.h (elf_backend_data): Add link_order_error_handler.
862
863 * elf.c (assign_section_numbers): Cope gracefully with sections
864 which have SHF_LINK_ORDER set but no sh_link set up.
865 * elflink.c (elf_get_linked_section_vma): Likewise.
866
867 * elfxx-ia64.c (elf_backend_link_order_error_handler): New. Set
868 it to NULL.
869
870 * elfxx-target.h (elf_backend_link_order_error_handler): New.
871 Set it to _bfd_default_error_handler.
872 (elfNN_bed): Add elf_backend_link_order_error_handler.
873
874 * libbfd-in.h (_bfd_default_error_handler): New.
875
876 * libbfd.h: Regenerated.
877
7946e94a
JJ
8782004-07-30 Jakub Jelinek <jakub@redhat.com>
879
880 * archures.c (bfd_mach_sparc_64bit_p): Define.
881 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Use it.
882 * bfd-in2.h: Rebuilt.
883
1d70c7fb
AO
8842004-07-29 Alexandre Oliva <aoliva@redhat.com>
885
886 Introduce SH2a support.
887 2004-02-18 Corinna Vinschen <vinschen@redhat.com>
888 * archures.c (bfd_mach_sh2a_nofpu): New.
889 * bfd-in2.h: Rebuilt.
890 * cpu-sh.c (SH2A_NOFPU_NEXT): New.
891 (arch_info_struct): Add sh2a_nofpu.
892 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu.
893 2003-12-29 DJ Delorie <dj@redhat.com>
894 * reloc.c: Add relocs for sh2a.
895 * bfd-in2.h: Regenerate.
896 * libbfd.hh: Regenerate.
897 2003-12-01 Michael Snyder <msnyder@redhat.com>
898 * archures.c (bfd_mach_sh2a): New.
899 * bfd-in2.h: Rebuilt.
900 * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums.
901 (SH2A_NEXT): New.
902 (arch_info_struct): Add sh2a.
903 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a.
904
404ed0cf
DA
9052004-07-28 Nick Clifton <nickc@redhat.com>
906 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
907
908 PR 273
909 * som.c (setup_sections): Improve estimation of space sizes in
910 relocatable objects.
911
225247f0
JT
9122004-07-27 Jason Thorpe <thorpej@wasabisystems.com>
913 * config.bfd (hppa*-*-netbsd*): Set targ_defvec to
914 bfd_elf32_hppa_nbsd_vec. Add bfd_elf32_hppa_linux_vec
915 to targ_selvecs.
916 * configure.in (bfd_elf32_hppa_nbsd_vec): Add case.
917 * configure: Regenerate.
918 * elf32-hppa.c (elf32_hppa_object_p): Add "elf32-hppa-netbsd"
919 case that accepts OSABI=NetBSD and OSABI=SysV.
920 (elf32_hppa_set_gp): For "elf32-hppa-netbsd", set the GP to
921 the base of .got or .data (if .got does not exist).
922 (elf32_hppa_post_process_headers): For elf32-hppa-netbsd,
923 set OSABI=NetBSD.
924 (TARGET_BIG_SYM): Add bfd_elf32_hppa_nbsd_vec case.
925 (TARGET_BIG_NAME): Add "elf32-hppa-netbsd" case.
926 * targets.c (bfd_elf32_hppa_nbsd_vec): Add extern declaration.
927 (_bfd_target_vector): Add bfd_elf32_hppa_nbsd_vec.
928
3d7f7666
L
9292004-07-27 H.J. Lu <hongjiu.lu@intel.com>
930
931 PR 161/251
932 * elf-bfd.h (bfd_elf_section_data): Add sec_group.
933 (elf_sec_group): Defined.
934 (bfd_elf_match_symbols_in_sections): New prototype.
935 (_bfd_elf_setup_group_pointers): Likewise.
936
937 * elf.c (bfd_elf_discard_group): Abort.
938 (bfd_elf_set_group_contents): Also include relocation sections.
939 Remove zero-fill for ld -r.
940 (_bfd_elf_setup_group_pointers): New function.
941 (elf_sort_elf_symbol): Likewise.
942 (elf_sym_name_compare): Likewise.
943 (bfd_elf_match_symbols_in_sections): Likewise.
944
945 * elfcode.h (elf_object_p): Call _bfd_elf_setup_group_pointers.
946
947 * elflink.c (match_group_member): New.
948 (elf_link_input_bfd): Check group member for discarded section.
949 (try_match_symbols_in_sections): New function.
950 (already_linked): Likewise.
951 (_bfd_elf_section_already_linked): Support mixing comdat group
952 and linkonce section.
953
954 * libbfd-in.h (bfd_section_already_linked_table_traverse): New.
955 * linker.c (bfd_section_already_linked_table_traverse): New.
956
957 * libbfd.h: Regenerated.
958
670ec21d
NC
9592004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
960
961 * reloc.c: Add BFD_RELOC_CRX_SWITCH8, BFD_RELOC_CRX_SWITCH16,
962 BFD_RELOC_CRX_SWITCH32.
963 * bfd-in2.h: Regenerate.
6cd7f07e 964 * libbfd.h: Regenerate.
670ec21d
NC
965 * elf32-crx.c: Support relocation/relaxation of
966 BFD_RELOC_CRX_SWITCH* types.
967
2c66dc6c
AM
9682004-07-27 Alan Modra <amodra@bigpond.net.au>
969
970 * elf64-ppc.c: Correct "Linker stubs" comment.
971
38ce5b11
L
9722004-07-26 H.J. Lu <hongjiu.lu@intel.com>
973
974 * elf-bfd.h (bfd_elf_section_data): Add a pointer for the
975 linked-to section.
976 (elf_linked_to_section): New.
977
978 * elf.c (assign_section_numbers): Set up sh_link for
979 SHF_LINK_ORDER.
980
981 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set sh_info
982 to sh_link for SHT_IA_64_UNWIND sections.
983
65da361f
L
9842004-07-22 H.J. Lu <hongjiu.lu@intel.com>
985
986 * elflink.c (elf_fixup_link_order): Add _() to error message.
987
08ccf96b
L
9882004-07-22 H.J. Lu <hongjiu.lu@intel.com>
989
990 * elflink.c (elf_fixup_link_order): Issue a warning and flag
991 an error if failed.
992
082b7297
L
9932004-07-21 H.J. Lu <hongjiu.lu@intel.com>
994
995 * aout-adobe.c (aout_32_section_already_linked): Defined.
996 * aout-target.h (MY_section_already_linked): Likewise.
997 * aout-tic30.c (MY_section_already_linked): Likewise.
998 * binary.c (binary_section_already_linked): Likewise.
999 * bout.c (b_out_section_already_linked): Likewise.
1000 * coff-alpha.c (_bfd_ecoff_section_already_linked): Likewise.
1001 * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
1002 * coffcode.h (coff_section_already_linked): Likewise.
1003 * i386msdos.c (msdos_section_already_linked): Likewise.
1004 * i386os9k.c (os9k_section_already_linked): Likewise.
1005 * ieee.c (ieee_section_already_linked): Likewise.
1006 * ihex.c (ihex_section_already_linked): Likewise.
1007 * mach-o.c (bfd_mach_o_section_already_linked): Likewise.
1008 * mmo.c (mmo_section_already_linked): Likewise.
1009 * nlm-target.h (nlm_section_already_linked): Likewise.
1010 * oasys.c (oasys_section_already_linked): Likewise.
1011 * pef.c (bfd_pef_section_already_linked): Likewise.
1012 * ppcboot.c (ppcboot_section_already_linked): Likewise.
1013 * som.c (som_bfd_discard_group): Likewise.
1014 * srec.c (srec_section_already_linked): Likewise.
1015 * tekhex.c (tekhex_section_already_linked): Likewise.
1016 * versados.c (versados_section_already_linked): Likewise.
1017 * vms.c (vms_section_already_linked): Likewise.
1018 * coff-target.h (_bfd_xcoff_section_already_linked): Likewise.
1019 * xsym.c (bfd_sym_section_already_linked): Likewise.
1020
1021 * bfd-in.h (bfd_section_already_linked_table_init): New.
1022 (bfd_section_already_linked_table_free): Likewise.
1023
1024 * coff-rs6000.c (rs6000coff_vec): Add
1025 _bfd_generic_section_already_linked.
1026 (pmac_xcoff_vec): Likewise.
1027 * coff64-rs6000.c (rs6000coff64_vec): Likewise.
1028 (aix5coff64_vec): Likewise.
1029
1030 * elf-bfd.h (_bfd_elf_section_already_linked): New prototype.
1031 * elflink.c (_bfd_elf_section_already_linked): New function.
1032
1033 * elfxx-target.h (bfd_elfNN_section_already_linked): Defined.
1034
1035 * libbfd-in.h (_bfd_nolink_section_already_linked): Defined.
1036 (_bfd_generic_section_already_linked): New.
1037 (bfd_section_already_linked_hash_entry): Likewise.
1038 (bfd_section_already_linked): Likewise.
1039 (bfd_section_already_linked_table_lookup): Likewise.
1040 (bfd_section_already_linked_table_insert): Likewise.
1041
1042 * linker.c (bfd_section_already_linked): New.
1043 (_bfd_section_already_linked_table): Likewise.
1044 (bfd_section_already_linked_table_lookup): Likewise.
1045 (bfd_section_already_linked_table_insert): Likewise.
1046 (already_linked_newfunc): Likewise.
1047 (bfd_section_already_linked_table_init): Likewise.
1048 (bfd_section_already_linked_table_free): Likewise.
1049 (_bfd_generic_section_already_linked): Likewise.
1050
1051 * section.c (bfd_section): Remove comdat.
1052 (bfd_comdat_info): Moved to ...
1053 * bfd-in.h (coff_comdat_info): Here.
1054 (bfd_coff_get_comdat_section): New.
1055 * coffgen.c (bfd_coff_get_comdat_section): Likewise.
1056 * libcoff-in.h (coff_section_tdata): Add comdat.
1057 * coffcode.h (handle_COMDAT): Updated.
1058 * cofflink.c (coff_link_add_symbols): Likewise.
1059 * ecoff.c (bfd_debug_section): Likewise.
1060
1061 * targets.c (bfd_target): Add _section_already_linked.
1062 (BFD_JUMP_TABLE_LINK): Updated.
1063
1064 * bfd-in2.h: Regenerated.
1065 * libbfd.h: Likewise.
1066 * libcoff.h: Likewise.
1067
0b52efa6
PB
10682003-07-21 Paul Brook <paul@codesourcery.com>
1069
1070 * elflink.c (elf_get_linked_section_vma, compare_link_order,
1071 elf_fixup_link_order): New functions.
1072 (bfd_elf_final_link): Call elf_fixup_link_order.
1073
7e2294f9
AO
10742004-07-21 Alexandre Oliva <aoliva@redhat.com>
1075
1076 * elf-bfd.h (ELF_COMMON_DEF_P): New.
1077 * elflink.c (_bfd_elf_symbol_refs_local_p): Use it to handle
1078 common definitions.
1079 * elf-m10300.c: Use SYMBOL_REFERENCES_LOCAL instead of
1080 _bfd_elf_symbol_refs_local_p.
1081 * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove hack for common
1082 symbols.
1083
e56f61be
L
10842004-07-19 H.J. Lu <hongjiu.lu@intel.com>
1085
1086 * bfd-in.h (dynamic_lib_link_class): Add DYN_NO_ADD_NEEDED and
1087 DYN_NO_NEEDED.
1088 (bfd_elf_get_dyn_lib_class): New prototype.
1089 * elf.c (bfd_elf_get_dyn_lib_class): New function.
1090
1091 * elflink.c (elf_link_add_object_symbols): Check DYN_AS_NEEDED,
1092 DYN_DT_NEEDED and DYN_NO_NEEDED bits to see if a DT_NEEDED
1093 entry is needed. Issue an error if a DT_NEEDED entry is needed
1094 for a file marked DYN_NO_NEEDED.
1095 (elf_link_check_versioned_symbol): Check the DYN_DT_NEEDED bit
1096 for DT_NEEDED tags.
1097
1098 * bfd-in2.h: Regenerated.
1099
27b56da8
DA
11002004-07-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1101
1102 * elflink.c (elf_section_complain_discarded): Don't complain in
1103 .PARISC.unwind.
1104
bbb268c3
JW
11052004-07-10 James E Wilson <wilson@specifixinc.com>
1106
1107 * elfxx-ia64.c (elfNN_ia64_relax_ldxmov): Remove abfd parameter.
1108 (elfNN_ia64_install_value, elfNN_ia64_relax_brl): Likewise.
1109 (elfNN_ia64_relax_section, elfNN_ia64_relocate_section,
1110 elfNN_ia64_finish_dynamic_symbol, elfNN_ia64_finish_dynamic_sections):
1111 Fix callers.
1112 (elfNN_ia64_relax_brl): Change bfd_get_64 to bfd_getl64. Change
1113 bfd_put_64 to bfd_putl64.
1114 (elfNN_ia64_relax_ldxmov, elfNN_ia64_install_value): Likewise.
2c66dc6c 1115
e525914f
L
11162004-07-09 H.J. Lu <hongjiu.lu@intel.com>
1117
1118 PR 240
1119 * elfxx-ia64.c (elfNN_ia64_relax_section): Only warn br in
1120 .init/.fini sections when trying to relax it.
1121
b1a6d0b1
NC
11222004-07-09 Jie Zhang <zhangjie@magima.com.cn>
1123
1124 * elf.c (assign_file_positions_for_segments): Make sure the
1125 .dynamic section is the first section in the PT_DYNAMIC segment.
1126
1a320fbb
NC
11272004-07-09 Nick Clifton <nickc@redhat.com>
1128
1129 * config.bfd: Change sh-sybmian-elf to sh-*-symbianelf.
1130 * elf32-sh-symbian.c: Rename the sh_find_elf_flags and
1131 sh_elf_get_flags_from_mach functions so that they do not conflict
1132 when this target is built with other sh-elf targets.
1133 * elf32-sh.c (sh_elf_get_flags_from_mach): Remove bogus
1134 suppression of this function.
1135 (sh_elf_find_flags): Likewise.
1136
1fe1f39c
NC
11372004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
1138
1139 * Makefile.am (ALL_MACHINES): Add cpu-crx.lo.
1140 (ALL_MACHINES_CFILES): Add cpu-crx.c.
1141 (BFD32_BACKENDS): Add elf32-crx.lo.
1142 (BFD32_BACKENDS_CFILES): Add elf32-crx.c.
1143 (cpu-crx.lo): New target.
1144 (elf32-crx.lo): New target.
1145 * Makefile.in: Regenerate.
1146 * archures.c (bfd_architecture): Add bfd_{arch,mach}_crx.
1147 (bfd_archures_list): Add bfd_crx_arch.
1148 * bfd-in2.h: Regenerate.
1149 * config.bfd: Handle crx-*-elf*, crx*.
1150 * configure.in: Handle bfd_elf32_crx_vec.
1151 * configure: Regenerate.
1152 * cpu-crx.c: New file.
1153 * elf32-crx.c: Likewise.
1154 * libbfd.h: Regenerate.
1155 * reloc.c: Add BFD_RELOC_CRX_REL4, BFD_RELOC_CRX_REL8,
1156 BFD_RELOC_CRX_REL8_CMP, BFD_RELOC_CRX_REL16, BFD_RELOC_CRX_REL24,
1157 BFD_RELOC_CRX_REL32, BFD_RELOC_CRX_REGREL12, BFD_RELOC_CRX_REGREL22,
1158 BFD_RELOC_CRX_REGREL28, BFD_RELOC_CRX_REGREL32, BFD_RELOC_CRX_ABS16,
1159 BFD_RELOC_CRX_ABS32, BFD_RELOC_CRX_NUM8, BFD_RELOC_CRX_NUM16,
1160 BFD_RELOC_CRX_NUM32, BFD_RELOC_CRX_IMM16 and BFD_RELOC_CRX_IMM32
1161 * targets.c (bfd_elf32_crx_vec): Declare.
1162 (bfd_target_vector): Add bfd_elf32_crx_vec.
1163
85fbca6a
NC
11642004-07-06 Nick Clifton <nickc@redhat.com>
1165
1166 * config.bfd: Add sh-symbian-elf target.
1167 * configure.in: Add bfd_elf32_shl_symbian_vec.
1168 * configure: Regenerate.
1169 * elf-bfd.h (struct elf_backend_data): Add new field
1170 'check_directives'.
1fe1f39c 1171 * elflink.c (elf_link_add_object_symbols): Invoke the
85fbca6a 1172 check_directives function, if defined.
1fe1f39c 1173 * elfxx-target.h: Provide a default, NULL definition for
85fbca6a 1174 check_directives.
1fe1f39c
NC
1175 * targets.c: Add bfd_elf32_shl_symbian_vec.
1176 * elf32-sh.c (sh_elf_swap_insns): Protect against unnecessary
85fbca6a 1177 definition.
1fe1f39c 1178 (elf32_shlin_grok_prstatus, elf32_shlib_grok_psinfo,
85fbca6a 1179 * sh_elf_get_flags_from_mach, sh_elf_find_flags): Likewise.
1fe1f39c 1180 (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Only define if they have
85fbca6a 1181 not already been defined.
1fe1f39c
NC
1182 * elf32-sh64.c: Use SH_TARGET_ALREADY_DEFINED.
1183 * sh-symbian.c: New file. Provide functions to support the
85fbca6a
NC
1184 * sh-symbian-elf target.
1185 * Makefile.am: Add elf32-sh-symbian.c
1186 * Makefile.in: Regenerate.
1fe1f39c 1187
871ec896
JR
11882004-07-05 Andrew Stubbs <andrew.stubbs@superh.com>
1189
1fe1f39c
NC
1190 * elf32-sh.c: Include ../opcodes/sh-opc.h.
1191 * Makefile.am: Ran make dep-am.
1192 * Makefile.in: Ran make dep-in.
871ec896 1193
c87db184
CF
11942004-07-03 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com>
1195
1196 * cofflink.c (_bfd_coff_generic_relocate_section): Resolve PE weak
1197 externals properly.
1198
06f2f6af
MS
11992004-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com>
1200
1201 * config.bfd: Add want64 to configuration target s390-*-linux*.
1202
b602c853
L
12032004-07-01 H.J. Lu <hongjiu.lu@intel.com>
1204
1205 * bfd.c (bfd_get_section_ident): New.
1206
1207 * elflink.c (elf_link_read_relocs_from_section): Call
1208 bfd_get_section_ident to identify the section when reporting
1209 error.
1210 (_bfd_elf_link_output_relocs): Likewise.
1211 (elf_link_output_extsym): Likewise.
1212 (elf_link_input_bfd): Likewise.
1213 (bfd_elf_gc_record_vtinherit): Likewise.
1214
1215 * bfd-in2.h: Regenerated.
1216
7a2a6943
NC
12172004-07-01 Jie Zhang <zhangjie@magima.com.cn>
1218 Nick Clifton <nickc@redhat.com>
1219
1220 PR 204
1221 * elfxx-mips.c (_bfd_mips_elf_final_link): Pass the correct number
1222 of section symbols to mips_elf_sort_hash_table ().
1223
cdd3575c
AM
12242004-07-01 Alan Modra <amodra@bigpond.net.au>
1225
1226 * elflink.c (elf_section_ignore_discarded_relocs): Revert last
1227 change. Comment.
1228 (elf_section_complain_discarded): New function. Handle
1229 .gcc_except_table too.
1230 (elf_link_input_bfd): Rewrite handling of relocs against symbols
1231 in discarded sections.
1232 * elf-bfd.h (elf_discarded_section): Protect macro arg.
1233
21a8f7fa
JW
12342004-06-30 James E Wilson <wilson@specifixinc.com>
1235
1236 * elfxx-ia64.c (elfNN_ia64_check_relocs): New local pltoff. Initialize
1237 to NULL. Call get_pltoff if NULL and NEED_PLTOFF is true.
1238
2de26f35
L
12392004-06-30 H.J. Lu <hongjiu.lu@intel.com>
1240
1241 PR 233
1242 * elflink.c (elf_link_input_bfd): Issue an error for non-debug
1243 local references to discarded sections and report their
1244 locations.
1245
72d7a15c
AM
12462004-06-30 Alan Modra <amodra@bigpond.net.au>
1247
1248 * elflink.c (elf_section_ignore_discarded_relocs): Don't test
1249 sec_info_type, test section name instead.
1250
e7f0a167
L
12512004-06-29 H.J. Lu <hongjiu.lu@intel.com>
1252
1253 PR 240
1254 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't relax branch
1255 in .init/.fini sections.
1256
bff5f93a
BW
12572004-06-29 Bob Wilson <bob.wilson@acm.org>
1258
1259 * elf32-xtensa.c (elf_xtensa_relocate_section): Use
1260 bfd_get_section_limit.
1261
b54d4b07
BW
12622004-06-29 Bob Wilson <bob.wilson@acm.org>
1263
1264 * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Don't change the
1265 output section size.
1266
e87a64e1
AM
12672004-06-29 Alan Modra <amodra@bigpond.net.au>
1268
1a23a9e6
AM
1269 * elf64-mmix.c (mmix_set_relaxable_size): Save original size in
1270 rawsize.
1271 (mmix_elf_perform_relocation): Adjust for above change.
1272 (mmix_elf_relocate_section): Likewise.
1273 (mmix_elf_relax_section): Likewise. Use output_section->rawsize.
1274 (mmix_elf_get_section_contents): Delete.
1275 (bfd_elf64_get_section_contents): Delete.
1276 (mmix_elf_relocate_section): Zero stub area.
1277 * linker.c (default_indirect_link_order): Alloc max of section size
1278 and rawsize.
1279 * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
1280 * section.c (bfd_malloc_and_get_section): Likewise.
1281 (struct bfd_section): Update rawsize comment.
1282 * bfd-in2.h: Regenerate.
1283
e87a64e1
AM
1284 * reloc16.c (bfd_coff_reloc16_relax_section): Set rawsize.
1285
07515404
AM
12862004-06-29 Alan Modra <amodra@bigpond.net.au>
1287
1288 * bfd-in.h (bfd_get_section_limit): Define.
1fe1f39c 1289 * reloc.c (bfd_perform_relocation, bfd_install_relocation)
07515404
AM
1290 (_bfd_final_link_relocate): Use bfd_get_section_limit.
1291 * aout-tic30.c (tic30_aout_final_link_relocate): Likewise.
1292 * coff-arm.c (coff_arm_relocate_section): Likewise.
1293 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): Likewise.
1294 * cpu-ns32k.c (do_ns32k_reloc): Likewise.
1295 (bfd_ns32k_final_link_relocate): Likewise.
1296 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): Likwise.
1297 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): Likewise.
1fe1f39c 1298 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc)
07515404 1299 (i860_howto_highadj_reloc, i860_howto_splitn_reloc): Likewise.
1fe1f39c 1300 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc)
07515404
AM
1301 (m32r_elf_generic_reloc, m32r_elf_relocate_section): Likewise.
1302 * elf32-m68hc1x.c (m68hc11_elf_special_reloc): Likewise.
1303 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1304 * elf32-or32.c (or32_elf_consth_reloc): Likewise.
1305 * elf32-ppc.c (ppc_elf_addr16_ha_reloc): Likewise.
1306 * elf32-s390.c (s390_elf_ldisp_reloc): Likewise.
1307 * elf32-sh.c (sh_elf_reloc_loop): Likewise.
1308 * elf32-sparc.c (sparc_elf_wdisp16_reloc): Likewise.
1309 (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc): Likwise.
1310 * elf32-v850.c (v850_elf_reloc): Likewise.
1311 * elf32-xstormy16.c (xstormy16_elf_24_reloc): Likewise.
1312 * elf32-xtensa.c (bfd_elf_xtensa_reloc): Likewise.
1313 * elf64-alpha.c (elf64_alpha_reloc_gpdisp): Likewise.
1314 * elf64-mips.c (mips_elf64_gprel32_reloc)
1315 (mips16_gprel_reloc): Likewise.
1316 * elf64-mmix.c (mmix_elf_reloc): Likewise.
1317 * elf64-s390.c (s390_elf_ldisp_reloc): Likewise.
1318 * elf64-sparc.c (init_insn_reloc): Likewise.
1319 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc): Likewise.
1fe1f39c
NC
1320 * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp)
1321 (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_lo16_reloc)
07515404
AM
1322 (_bfd_mips_elf_generic_reloc): Likewise.
1323 * bfd-in2.h: Regenerate.
1324
3722b82f
AM
13252004-06-28 Alan Modra <amodra@bigpond.net.au>
1326
1327 * bfd-in.h (struct stab_info): Move from stabs.c.
1328 * stabs.c (struct stab_link_includes_table): Delete.
1329 (stab_link_includes_lookup): Delete.
1330 (_bfd_write_section_stabs, _bfd_write_stab_strings): Remove one
1331 level of indirection from sinfo parm.
1332 (_bfd_link_section_stabs): Likewise. Set SEC_LINKER_CREATED on
1333 stabstr section. Adjust hash table accesses.
1334 * coff-ppc.c (ppc_bfd_coff_final_link): Do include rawsize in contents
1335 alloc. Adjust stab_info test.
1336 * cofflink.c (_bfd_coff_link_hash_table_init): Clear stab_info.
1337 (_bfd_coff_final_link): Adjust stab_info test.
1338 (_bfd_coff_link_input_bfd): Ignore SEC_LINKER_CREATED sections.
1339 * elf-bfd.h (struct elf_link_hash_table): Include struct stab_info
1340 in place.
1341 * libcoff-in.h (struct coff_link_hash_table): Likewise.
1342 * elf.c (_bfd_elf_link_hash_table_init): Clear stab_info.
1343 * elflink.c (bfd_elf_final_link): Don't attempt to link linker created
1344 stabstr section. Adjust stab_info test.
1345 * libbfd-in.h (_bfd_link_section_stabs, _bfd_write_section_stabs)
1346 (_bfd_write_stab_strings): Adjust prototypes.
1347 * libbfd.h: Regenerate.
1348 * libcoff.h: Regenerate.
1349 * bfd-in2.h: Regenerate.
1350
727e493d
MK
13512004-06-27 Mark Kettenis <kettenis@gnu.org>
1352
1353 From Miod Vallat <miod@online.fr>:
1354 * aoutx.h (NAME(aout,machine_type)): Handle bfd_arch_m88k.
1355
146ccdbb
AO
13562004-06-26 Alexandre Oliva <aoliva@redhat.com>
1357
1358 * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): Delete.
1359 (struct elf32_mn10300_link_hash_entry): Remove
1360 pcrel_relocs_copied.
1361 (mn10300_elf_check_relocs): Only reserve dynamic relocations for
1362 R_MN10300_32. Don't adjust pcrel_relocs_copied.
1363 (mn10300_elf_final_link_relocate): Fail for direct, pc-relative
1364 and gotoff relocations if the symbol doesn't bind locally. Use
1365 _bfd_elf_symbol_refs_local_p to test. Don't create dynamic
1366 relocation for PCREL32.
1367 (mn10300_elf_relocate_section): Use _bfd_elf_symbol_refs_local_p
1368 to test whether a symbol binds locally.
1369 (elf32_mn10300_link_hash_newfunc): Don't initialize
1370 pcrel_relocs_copied.
1371 (_bfd_mn10300_elf_discard_copies): Delete.
1372 (_bfd_mn10300_elf_size_dynamic_sections): Don't call it.
1373
a5fd0812
MK
13742004-06-26 Mark Kettenis <kettenis@gnu.org>
1375
1376 * config.bfd: Replace m88k-*-openbsd* with m88*-*-openbsd*.
1377
22bfad37
JB
13782004-06-25 Joel Brobecker <brobecker@gnat.com>
1379
1380 * som.c (som_set_reloc_info): Correct small typo.
1381
097f809a
NC
13822004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
1383
1384 * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_GOTOFF.
1385 (m32r_elf_relocate_section): Changed for R_M32R_GOTOFF.
1386 (m32r_elf_gcsweep_hook): Likewise.
1387 (m32r_elf_check_relocs): Likewise.
1388 (m32r_elf_howto_table): Added R_M32R_GOTOFF_HI_ULO,
1389 R_M32R_GOTOFF_HI_SLO and R_M32R_GOTOFF_LO.
1390 * reloc.c: Added BFD_RELOC_M32R_GOTOFF_HI_ULO,
1391 BFD_RELOC_M32R_GOTOFF_HI_SLO and BFD_RELOC_M32R_GOTOFF_LO.
f9f2cf5d
NC
1392 * bfd-in2.h: Regenerated.
1393 * libbfd.h: Regenerated.
097f809a 1394
6610a52d
L
13952004-06-24 H.J. Lu <hongjiu.lu@intel.com>
1396
1397 * elf64-x86-64.c (elf64_x86_64_check_relocs): Warn overflow
1398 relocation symbol.
1399 (elf64_x86_64_relocate_section): Issue an error for
1400 R_X86_64_PC8, R_X86_64_PC16 and R_X86_64_PC32 relocations
1401 against global symbols when building shared library.
1402
eea6121a
AM
14032004-06-24 Alan Modra <amodra@bigpond.net.au>
1404
1405 * section.c (struct sec): Rename "_cooked_size" to "size".
1406 Rename "_raw_size" to "rawsize".
1407 (STD_SECTION): Adjust comments.
1408 (bfd_set_section_size, bfd_get_section_contents): Use size.
1409 (bfd_malloc_and_get_section): New function.
1410 * bfd-in.h (bfd_section_size, bfd_get_section_size): Use size.
1411 * coff-sh.c (sh_relax_section): Alloc coff_section_data struct early.
1412 Correctly free reloc and contents memory.
1413 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Delete FIXME
1414 and fake CIE now that we can shink section size to zero.
1415 (_bfd_elf_write_section_eh_frame): Likewise..
1416 * elf32-ppc.c (ppc_elf_relax_section): Delay reading section contents.
1417 * elf-m10300.c (mn10300_elf_final_link_relocate): Don't use
1418 _bfd_stab_section_offset. Use _bfd_elf_section_offset.
1419 * stabs.c (_bfd_stab_section_offset_): Remove unused args and
1420 unneeded indirection.
1421 * elf.c (_bfd_elf_section_offset): .. and update call.
1422 * libbfd-in.h (_bfd_stab_section_offset): Update prototype.
1423 * libbfd.h: Regenerate.
1424 * bfd-in2.h: Regenerate.
1425
1426 Replace occurrences of "_raw_size" and "_cooked_size" in most places
1427 with "size". Set new "rawsize" for stabs, eh_frame, and SEC_MERGE
1428 sections. Use "rawsize", if non-zero, for bfd_get_section_contents
1429 calls if the section might be a stabs, eh_frame, or SEC_MERGE section.
1430 Similarly use "rawsize", if non-zero, in reloc functions to validate
1431 reloc addresses. Use new bfd_malloc_and_get_section in most places
1432 where bfd_get_section_contents was called. Expand all occurrences of
1433 bfd_section_size and bfd_get_section_size. Rename "raw_size" var in
1434 grok_prstatus and similar functions to "size".
1435 * aix386-core.c (aix386_core_file_p): ..
1436 * aix5ppc-core.c (xcoff64_core_p): ..
1437 * aout-adobe.c (aout_adobe_callback, aout_adobe_write_object_contents,
1438 aout_adobe_set_section_contents): ..
1439 * aout-target.h (callback): ..
1440 * aout-tic30.c (tic30_aout_callback, tic30_aout_final_link_relocate,
1441 MY_bfd_final_link): ..
1442 * aoutf1.h (sunos4_core_file_p): ..
1443 * aoutx.h (some_aout_object_p, adjust_o_magic, adjust_z_magic,
1444 adjust_n_magic, adjust_sizes_and_vmas, translate_from_native_sym_flags,
1445 final_link, aout_link_input_section): ..
1446 * binary.c (binary_object_p, binary_canonicalize_symtab,
1447 binary_set_section_contents): ..
1448 * bout.c (b_out_callback, b_out_write_object_contents,
1449 b_out_set_section_contents, b_out_bfd_relax_section,
1450 b_out_bfd_get_relocated_section_contents): ..
1451 * cisco-core.c (cisco_core_file_validate): ..
1452 * coff-alpha.c (alpha_ecoff_object_p,
1453 alpha_ecoff_get_relocated_section_conten, alpha_relocate_section): ..
1454 * coff-arm.c (coff_arm_relocate_section,
1455 bfd_arm_allocate_interworking_sections): ..
1456 * coff-h8300.c (h8300_reloc16_extra_cases,
1457 h8300_bfd_link_add_symbols): ..
1458 * coff-mips.c (mips_refhi_reloc, mips_gprel_reloc): ..
1459 * coff-ppc.c (coff_ppc_relocate_section, ppc_allocate_toc_section,
1460 ppc_bfd_coff_final_link): ..
1461 * coff-rs6000.c (xcoff_reloc_type_br, xcoff_ppc_relocate_section): ..
1462 * coff-sh.c (sh_relax_section, sh_relax_delete_bytes,
1463 sh_align_loads, sh_coff_get_relocated_section_contents): ..
1464 * coff64-rs6000.c (xcoff64_write_object_contents,
1465 xcoff64_reloc_type_br, xcoff64_ppc_relocate_section): ..
1466 * coffcode.h (coff_compute_section_file_positions,
1467 coff_write_object_contents): ..
1468 * coffgen.c (make_a_section_from_file, coff_write_symbols,
1469 coff_section_symbol, build_debug_section): ..
1470 * cofflink.c (coff_link_add_symbols, _bfd_coff_final_link,
1471 process_embedded_commands, _bfd_coff_link_input_bfd,
1472 _bfd_coff_write_global_sym): ..
1473 * cpu-arm.c (bfd_arm_update_notes, bfd_arm_get_mach_from_notes): ..
1474 * cpu-ns32k.c (do_ns32k_reloc, _bfd_ns32k_final_link_relocate): ..
1475 * dwarf1.c (parse_line_table, _bfd_dwarf1_find_nearest_line): ..
1476 * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
1477 _bfd_dwarf2_find_nearest_line): ..
1478 * ecoff.c (bfd_debug_section, ecoff_set_symbol_info,
1479 ecoff_compute_section_file_positions,
1480 _bfd_ecoff_write_object_contents, ecoff_indirect_link_order): ..
1481 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame,
1482 _bfd_elf_discard_section_eh_frame_hdr,
1483 _bfd_elf_maybe_strip_eh_frame_hdr, _bfd_elf_eh_frame_section_offset,
1484 _bfd_elf_write_section_eh_frame,
1485 _bfd_elf_write_section_eh_frame_hdr): ..
1486 * elf-hppa.h (elf_hppa_sort_unwind): ..
1487 * elf-m10200.c (mn10200_elf_relax_section,
1488 mn10200_elf_relax_delete_bytes,
1489 mn10200_elf_get_relocated_section_contents): ..
1490 * elf-m10300.c (_bfd_mn10300_elf_create_got_section,
1491 mn10300_elf_check_relocs, mn10300_elf_relax_section,
1492 mn10300_elf_relax_delete_bytes,
1493 mn10300_elf_get_relocated_section_contents,
1494 _bfd_mn10300_elf_adjust_dynamic_symbol,
1495 _bfd_mn10300_elf_discard_copies,
1496 _bfd_mn10300_elf_size_dynamic_sections,
1497 _bfd_mn10300_elf_finish_dynamic_sections): ..
1498 * elf.c (_bfd_elf_print_private_bfd_data, bfd_elf_get_bfd_needed_list,
1499 _bfd_elf_make_section_from_phdr, elf_fake_sections,
1500 bfd_elf_set_group_contents, map_sections_to_segments,
1501 elf_sort_sections, assign_file_positions_for_segments,
1502 SECTION_SIZE, copy_private_bfd_data,
1503 _bfd_elf_get_dynamic_reloc_upper_bound,
1504 _bfd_elf_canonicalize_dynamic_reloc, elfcore_maybe_make_sect,
1505 _bfd_elfcore_make_pseudosection, elfcore_grok_prstatus,
1506 elfcore_grok_lwpstatus, elfcore_grok_win32pstatus,
1507 elfcore_grok_note, elfcore_grok_nto_status, elfcore_grok_nto_gregs,
1508 _bfd_elf_rel_local_sym, _bfd_elf_get_synthetic_symtab): ..
1509 * elf32-arm.h (bfd_elf32_arm_allocate_interworking_sect,
1510 bfd_elf32_arm_process_before_allocation,
1511 elf32_arm_adjust_dynamic_symbol, allocate_dynrelocs,
1512 elf32_arm_size_dynamic_sections, elf32_arm_finish_dynamic_sections,
1513 elf32_arm_write_section): ..
1514 * elf32-cris.c (cris_elf_grok_prstatus,
1515 elf_cris_finish_dynamic_sections, cris_elf_gc_sweep_hook,
1516 elf_cris_adjust_gotplt_to_got, elf_cris_adjust_dynamic_symbol,
1517 cris_elf_check_relocs, elf_cris_size_dynamic_sections,
1518 elf_cris_discard_excess_dso_dynamics,
1519 elf_cris_discard_excess_program_dynamics): ..
1520 * elf32-d30v.c (bfd_elf_d30v_reloc, bfd_elf_d30v_reloc_21): ..
1521 * elf32-dlx.c (_bfd_dlx_elf_hi16_reloc): ..
1522 * elf32-frv.c (_frvfdpic_add_dyn_reloc, _frvfdpic_add_rofixup,
1523 _frv_create_got_section, _frvfdpic_assign_plt_entries,
1524 elf32_frvfdpic_size_dynamic_sections,
1525 elf32_frvfdpic_modify_segment_map,
1526 elf32_frvfdpic_finish_dynamic_sections): ..
1527 * elf32-h8300.c (elf32_h8_relax_section, elf32_h8_relax_delete_bytes,
1528 elf32_h8_get_relocated_section_contents): ..
1529 * elf32-hppa.c (hppa_build_one_stub, hppa_size_one_stub,
1530 elf32_hppa_adjust_dynamic_symbol, allocate_plt_static,
1531 allocate_dynrelocs, elf32_hppa_size_dynamic_sections, group_sections,
1532 elf32_hppa_size_stubs, elf32_hppa_set_gp, elf32_hppa_build_stubs,
1533 elf32_hppa_finish_dynamic_sections): ..
1534 * elf32-i370.c (i370_elf_adjust_dynamic_symbol,
1535 i370_elf_size_dynamic_sections, i370_elf_check_relocs,
1536 i370_elf_finish_dynamic_sections): ..
1537 * elf32-i386.c (elf_i386_grok_prstatus, elf_i386_adjust_dynamic_symbol,
1538 allocate_dynrelocs, elf_i386_size_dynamic_sections,
1539 elf_i386_relocate_section, elf_i386_finish_dynamic_sections): ..
1540 * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc,
1541 i860_howto_highadj_reloc, i860_howto_splitn_reloc): ..
1542 * elf32-ip2k.c (ip2k_is_switch_table_128,
1543 ip2k_relax_switch_table_128, ip2k_is_switch_table_256,
1544 ip2k_relax_switch_table_256, ip2k_elf_relax_section,
1545 adjust_all_relocations, ip2k_elf_relax_delete_bytes): ..
1546 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc, m32r_elf_hi16_reloc,
1547 m32r_elf_generic_reloc, m32r_elf_adjust_dynamic_symbol,
1548 allocate_dynrelocs, m32r_elf_size_dynamic_sections,
1549 m32r_elf_relocate_section, m32r_elf_finish_dynamic_sections,
1550 m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
1551 m32r_elf_get_relocated_section_contents): ..
1552 * elf32-m68hc11.c (m68hc11_elf_build_one_stub,
1553 m68hc11_elf_size_one_stub, m68hc11_elf_relax_section,
1554 m68hc11_elf_relax_delete_bytes): ..
1555 * elf32-m68hc12.c (m68hc12_elf_build_one_stub,
1556 m68hc12_elf_size_one_stub): ..
1557 * elf32-m68hc1x.c (elf32_m68hc11_size_stubs,
1558 elf32_m68hc11_build_stubs, m68hc11_elf_special_reloc): ..
1559 * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_gc_sweep_hook,
1560 elf_m68k_adjust_dynamic_symbol, elf_m68k_size_dynamic_sections,
1561 elf_m68k_discard_copies, elf_m68k_finish_dynamic_sections): ..
1562 * elf32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
1563 elf32_mips_grok_prstatus): ..
1564 * elf32-or32.c (or32_elf_consth_reloc): ..
1565 * elf32-ppc.c (ppc_elf_relax_section, ppc_elf_addr16_ha_reloc,
1566 elf_create_pointer_linker_section, ppc_elf_create_linker_section,
1567 ppc_elf_additional_program_headers, ppc_elf_adjust_dynamic_symbol,
1568 allocate_dynrelocs, ppc_elf_size_dynamic_sections,
1569 ppc_elf_finish_dynamic_sections, ppc_elf_grok_prstatus,
1570 ppc_elf_final_write_processing): ..
1571 * elf32-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
1572 allocate_dynrelocs, elf_s390_size_dynamic_sections,
1573 elf_s390_finish_dynamic_sections, elf_s390_grok_prstatus): ..
1574 * elf32-sh.c (sh_elf_reloc_loop, sh_elf_relax_section,
1575 sh_elf_relax_delete_bytes, sh_elf_align_loads,
1576 sh_elf_adjust_dynamic_symbol, allocate_dynrelocs,
1577 sh_elf_size_dynamic_sections, sh_elf_get_relocated_section_contents,
1578 sh_elf_finish_dynamic_sections, elf32_shlin_grok_prstatus): ..
1579 * elf32-sh64-com.c (sh64_address_in_cranges,
1580 sh64_get_contents_type): ..
1581 * elf32-sh64.c (sh64_find_section_for_address,
1582 sh64_elf_final_write_processing): ..
1583 * elf32-sparc.c (sparc_elf_wdisp16_reloc, sparc_elf_hix22_reloc,
1584 sparc_elf_lox10_reloc, elf32_sparc_adjust_dynamic_symbol,
1585 allocate_dynrelocs, elf32_sparc_size_dynamic_sections,
1586 elf32_sparc_relocate_section, elf32_sparc_finish_dynamic_sections): ..
1587 * elf32-v850.c (v850_elf_reloc, v850_elf_relax_section): ..
1588 * elf32-vax.c (elf_vax_check_relocs, elf_vax_adjust_dynamic_symbol,
1589 elf_vax_size_dynamic_sections, elf_vax_discard_copies,
1590 elf_vax_instantiate_got_entries, elf_vax_relocate_section,
1591 elf_vax_finish_dynamic_sections): ..
1592 * elf32-xstormy16.c (xstormy16_elf_24_reloc,
1593 xstormy16_elf_check_relocs, xstormy16_relax_plt_check,
1594 xstormy16_elf_relax_section, xstormy16_elf_always_size_sections,
1595 xstormy16_elf_finish_dynamic_sections): ..
1596 * elf32-xtensa.c (xtensa_read_table_entries,
1597 elf_xtensa_allocate_got_size, elf_xtensa_allocate_local_got_size,
1598 elf_xtensa_size_dynamic_sections, elf_xtensa_do_reloc,
1599 bfd_elf_xtensa_reloc, elf_xtensa_relocate_section,
1600 elf_xtensa_combine_prop_entries, elf_xtensa_finish_dynamic_sections,
1601 elf_xtensa_discard_info_for_section, elf_xtensa_grok_prstatus,
1602 get_relocation_opcode, retrieve_contents, find_relaxable_sections,
1603 collect_source_relocs, is_resolvable_asm_expansion, remove_literals,
1604 relax_section, shrink_dynamic_reloc_sections, relax_property_section,
1605 xtensa_callback_required_dependence): ..
1606 * elf64-alpha.c (elf64_alpha_reloc_gpdisp, elf64_alpha_relax_section,
1607 elf64_alpha_check_relocs, elf64_alpha_adjust_dynamic_symbol,
1608 elf64_alpha_calc_got_offsets_for_symbol, elf64_alpha_calc_got_offsets,
1609 elf64_alpha_size_plt_section, elf64_alpha_size_plt_section_1,
1610 elf64_alpha_always_size_sections, elf64_alpha_calc_dynrel_sizes,
1611 elf64_alpha_size_rela_got_section, elf64_alpha_size_rela_got_1,
1612 elf64_alpha_size_dynamic_sections, elf64_alpha_emit_dynrel,
1613 elf64_alpha_finish_dynamic_sections, elf64_alpha_final_link): ..
1614 * elf64-hppa.c (allocate_dynrel_entries,
1615 elf64_hppa_size_dynamic_sections,
1616 elf64_hppa_finish_dynamic_sections): ..
1617 * elf64-mips.c (mips_elf64_gprel32_reloc, mips16_gprel_reloc,
1618 mips_elf64_canonicalize_dynamic_reloc, mips_elf64_slurp_reloc_table,
1619 elf64_mips_grok_prstatus): ..
1620 * elf64-mmix.c (mmix_elf_perform_relocation, mmix_elf_reloc,
1621 mmix_elf_relocate_section, mmix_elf_final_link,
1622 mmix_set_relaxable_size, _bfd_mmix_after_linker_allocation,
1623 mmix_elf_relax_section, mmix_elf_get_section_contents): ..
1624 * elf64-ppc.c (ppc64_elf_object_p, ppc64_elf_grok_prstatus,
1625 ppc64_elf_check_relocs, ppc64_elf_func_desc_adjust,
1626 ppc64_elf_adjust_dynamic_symbol, ppc64_elf_edit_opd,
1627 allocate_dynrelocs, ppc64_elf_size_dynamic_sections,
1628 ppc_build_one_stub, ppc_size_one_stub, ppc64_elf_next_toc_section,
1629 toc_adjusting_stub_needed, group_sections, ppc64_elf_size_stubs,
1630 ppc64_elf_build_stubs, ppc64_elf_relocate_section,
1631 ppc64_elf_finish_dynamic_sections): ..
1632 * elf64-s390.c (s390_elf_ldisp_reloc, elf_s390_adjust_dynamic_symbol,
1633 allocate_dynrelocs, elf_s390_size_dynamic_sections,
1634 elf_s390_finish_dynamic_sections): ..
1635 * elf64-sh64.c (sh_elf64_get_relocated_section_contents,
1636 sh_elf64_check_relocs, sh64_elf64_adjust_dynamic_symbol,
1637 sh64_elf64_discard_copies, sh64_elf64_size_dynamic_sections,
1638 sh64_elf64_finish_dynamic_sections): ..
1639 * elf64-sparc.c (sparc64_elf_slurp_reloc_table, init_insn_reloc,
1640 sparc64_elf_check_relocs, sparc64_elf_adjust_dynamic_symbol,
1641 sparc64_elf_size_dynamic_sections, sparc64_elf_relocate_section,
1642 sparc64_elf_finish_dynamic_symbol,
1643 sparc64_elf_finish_dynamic_sections): ..
1644 * elf64-x86-64.c (elf64_x86_64_grok_prstatus,
1645 elf64_x86_64_adjust_dynamic_symbol, allocate_dynrelocs,
1646 elf64_x86_64_size_dynamic_sections, elf64_x86_64_relocate_section,
1647 elf64_x86_64_finish_dynamic_sections): ..
1648 * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): ..
1649 * elfcode.h (elf_slurp_reloc_table): ..
1650 * elflink.c (_bfd_elf_create_got_section, elf_add_dt_needed_tag,
1651 elf_finalize_dynstr, elf_link_add_object_symbols,
1652 bfd_elf_size_dynamic_sections, elf_link_sort_relocs,
1653 elf_link_input_bfd, bfd_elf_final_link, bfd_elf_discard_info): ..
1654 * elfn32-mips.c (gprel32_with_gp, mips16_gprel_reloc,
1655 elf32_mips_grok_prstatus): ..
1656 * elfxx-ia64.c (elfNN_ia64_relax_section, allocate_dynrel_entries,
1657 elfNN_ia64_size_dynamic_sections, elfNN_ia64_install_dyn_reloc,
1658 elfNN_ia64_choose_gp, elfNN_ia64_final_link,
1659 elfNN_ia64_finish_dynamic_sections): ..
1660 * elfxx-mips.c (mips_elf_create_procedure_table,
1661 mips_elf_check_mips16_stubs, _bfd_mips_elf_gprel16_with_gp,
1662 _bfd_mips_elf_hi16_reloc, _bfd_mips_elf_generic_reloc,
1663 mips_elf_global_got_index, mips_elf_multi_got,
1664 mips_elf_create_compact_rel_section, mips_elf_calculate_relocation,
1665 mips_elf_allocate_dynamic_relocations,
1666 mips_elf_create_dynamic_relocation, _bfd_mips_elf_fake_sections,
1667 _bfd_mips_relax_section, _bfd_mips_elf_adjust_dynamic_symbol,
1668 _bfd_mips_elf_always_size_sections,
1669 _bfd_mips_elf_size_dynamic_sections,
1670 _bfd_mips_elf_finish_dynamic_symbol,
1671 _bfd_mips_elf_finish_dynamic_sections,
1672 _bfd_mips_elf_modify_segment_map, _bfd_mips_elf_discard_info,
1673 _bfd_mips_elf_write_section, _bfd_mips_elf_set_section_contents,
1674 _bfd_elf_mips_get_relocated_section_contents,
1675 _bfd_mips_elf_final_link, _bfd_mips_elf_merge_private_bfd_data): ..
1676 * hp300hpux.c (callback): ..
1677 * hppabsd-core.c (make_bfd_asection): ..
1678 * hpux-core.c (make_bfd_asection): ..
1679 * i386linux.c (linux_link_create_dynamic_sections,
1680 bfd_i386linux_size_dynamic_sections, linux_finish_dynamic_link): ..
1681 * i386msdos.c (msdos_write_object_contents): ..
1682 * i386os9k.c (os9k_callback, os9k_write_object_contents,
1683 os9k_set_section_contents): ..
1684 * ieee.c (parse_expression, ieee_slurp_external_symbols,
1685 ieee_slurp_sections, ieee_slurp_debug, ieee_slurp_section_data,
1686 ieee_write_section_part, do_with_relocs, do_as_repeat,
1687 do_without_relocs, ieee_write_debug_part, init_for_output,
1688 ieee_set_section_contents): ..
1689 * ihex.c (ihex_scan, ihex_read_section, ihex_get_section_contents): ..
1690 * irix-core.c (do_sections, make_bfd_asection): ..
1691 * libaout.h (aout_section_merge_with_text_p): ..
1692 * libbfd.c (_bfd_generic_get_section_contents,
1693 _bfd_generic_get_section_contents_in_window): ..
1694 * linker.c (default_indirect_link_order): ..
1695 * lynx-core.c (make_bfd_asection): ..
1696 * m68klinux.c (linux_link_create_dynamic_sections,
1697 bfd_m68klinux_size_dynamic_sections, linux_finish_dynamic_link): ..
1698 * mach-o.c (bfd_mach_o_make_bfd_section,
1699 bfd_mach_o_scan_read_dylinker, bfd_mach_o_scan_read_dylib,
1700 bfd_mach_o_scan_read_thread, bfd_mach_o_scan_read_symtab,
1701 bfd_mach_o_scan_read_segment): ..
1702 * merge.c (_bfd_add_merge_section, record_section, merge_strings,
1703 _bfd_merge_sections): ..
1704 * mmo.c (mmo_find_sec_w_addr, mmo_get_spec_section, mmo_get_loc,
1705 mmo_map_set_sizes, mmo_canonicalize_symtab,
1706 mmo_internal_write_section, mmo_write_object_contents): ..
1707 * netbsd-core.c (netbsd_core_file_p): ..
1708 * nlm32-alpha.c (nlm_alpha_read_reloc, nlm_alpha_write_import,
1709 nlm_alpha_set_public_section): ..
1710 * nlm32-ppc.c (nlm_powerpc_read_reloc, nlm_powerpc_write_reloc): ..
1711 * nlm32-sparc.c (nlm_sparc_write_import): ..
1712 * nlmcode.h (add_bfd_section, nlm_swap_auxiliary_headers_in,
1713 nlm_compute_section_file_positions): ..
1714 * oasys.c (oasys_object_p, oasys_slurp_section_data,
1715 oasys_write_sections, oasys_write_data, oasys_set_section_contents): ..
1716 * opncls.c (get_debug_link_info): ..
1717 * osf-core.c (make_bfd_asection): ..
1718 * pdp11.c (some_aout_object_p, adjust_o_magic, adjust_z_magic,
1719 adjust_n_magic, adjust_sizes_and_vmas, squirt_out_relocs,
1720 final_link, aout_link_input_section): ..
1721 * peXXigen.c (_bfd_XXi_swap_sym_in, _bfd_XXi_swap_aouthdr_out,
1722 pe_print_idata, pe_print_edata, pe_print_pdata, pe_print_reloc): ..
1723 * pef.c (bfd_pef_make_bfd_section, bfd_pef_print_loader_section,
1724 bfd_pef_scan_start_address, bfd_pef_parse_symbols): ..
1725 * ppcboot.c (ppcboot_object_p, ppcboot_canonicalize_symtab): ..
1726 * ptrace-core.c (ptrace_unix_core_file_p): ..
1727 * reloc.c (bfd_perform_relocation, bfd_install_relocation,
1728 _bfd_final_link_relocate, bfd_generic_relax_section,
1729 bfd_generic_get_relocated_section_contents): ..
1730 * reloc16.c (bfd_coff_reloc16_relax_section,
1731 bfd_coff_reloc16_get_relocated_section_c): ..
1732 * riscix.c (riscix_some_aout_object_p): ..
1733 * rs6000-core.c (read_hdr, make_bfd_asection): ..
1734 * sco5-core.c (make_bfd_asection): ..
1735 * simple.c (bfd_simple_get_relocated_section_contents): ..
1736 * som.c (som_object_setup, setup_sections, som_prep_headers,
1737 som_write_fixups, som_begin_writing, bfd_section_from_som_symbol,
1738 som_set_reloc_info, som_get_section_contents,
1739 som_bfd_link_split_section): ..
1740 * sparclinux.c (linux_link_create_dynamic_sections,
1741 bfd_sparclinux_size_dynamic_sections, linux_finish_dynamic_link): ..
1742 * srec.c (srec_scan, srec_read_section, srec_get_section_contents): ..
1743 * stabs.c (_bfd_link_section_stabs, _bfd_discard_section_stabs,
1744 _bfd_write_stab_strings, _bfd_stab_section_offset): ..
1745 * sunos.c (sunos_read_dynamic_info, sunos_create_dynamic_sections,
1746 bfd_sunos_size_dynamic_sections, sunos_scan_std_relocs,
1747 sunos_scan_ext_relocs, sunos_scan_dynamic_symbol,
1748 sunos_write_dynamic_symbol, sunos_check_dynamic_reloc,
1749 sunos_finish_dynamic_link): ..
1750 * syms.c (_bfd_stab_section_find_nearest_line): ..
1751 * tekhex.c (first_phase, tekhex_set_section_contents,
1752 tekhex_write_object_contents): ..
1753 * trad-core.c (trad_unix_core_file_p): ..
1754 * versados.c (process_esd, process_otr, process_otr): ..
1755 * vms-gsd.c (_bfd_vms_slurp_gsd, _bfd_vms_write_gsd): ..
1756 * vms-misc.c (add_new_contents): ..
1757 * vms-tir.c (check_section, new_section, _bfd_vms_write_tir): ..
1758 * vms.c (vms_set_section_contents): ..
1759 * xcofflink.c (xcoff_get_section_contents, xcoff_link_add_symbols,
1760 xcoff_sweep, bfd_xcoff_size_dynamic_sections, xcoff_build_ldsyms,
1761 _bfd_xcoff_bfd_final_link, xcoff_link_input_bfd): ..
1762 * xsym.c (bfd_sym_scan): .. See above.
1763
bf8b15af
L
17642004-06-21 H.J. Lu <hongjiu.lu@intel.com>
1765
1766 * elfxx-ia64.c (elfNN_ia64_relax_section): Add addend when
1767 calling _bfd_merged_section_offset only for section symbols.
1768
d1c6de6f
AM
17692004-06-22 Alan Modra <amodra@bigpond.net.au>
1770
1771 * elf32-ppc.c (ppc_elf_relax_section): Implement reference code
1772 for handling SEC_MERGE symbols in relax_section.
1773
aa02cc63
AO
17742004-06-21 Alexandre Oliva <aoliva@redhat.com>
1775
1776 2003-05-15 Richard Sandiford <rsandifo@redhat.com>
1777 * cpu-h8300.c (compatible): Allow h8300s and h8300sx code to be
1778 linked together. Mark the result as h8300sx code.
1779
aee6f5b4
AO
17802004-06-21 Alexandre Oliva <aoliva@redhat.com>
1781
1782 * elf-bfd.h (struct elf_backend_data): Added
1783 elf_backend_omit_section_dynsym.
1784 (_bfd_elf_link_omit_section_dynsym): Declare.
1785 * elf32-frv.c (_frvfdpic_link_omit_section_dynsym): New.
1786 (elf_backend_omit_section_dynsym): Use it for frvfdpic.
1787 * elflink.c (_bfd_elf_link_omit_section_dynsym): Split out of...
1788 (_bfd_elf_link_renumber_dynsyms): ... this function.
1789 * elfxx-target.h (elf_backend_omit_section_dynsym): Default to
1790 _bfd_elf_link_omit_section_dynsym).
1791 (elfNN_bed): Added elf_backend_omit_section_dynsym.
1792
05576f10
NC
17932004-06-21 Nick Clifton <nickc@redhat.com>
1794
1795 * coffcode.h (styp_to_sec_flags): Ignore IMAGE_SCN_MEM_NOT_PAGED
1796 flags.
1797
02d5a37b
JG
17982004-06-17 Jerome Guitton <guitton@gnat.com>
1799
1800 * bfd-in.h (bfd_cache_close_all): New function declaration.
1801 * bfd-in2.h: Regenerate.
1802 * cache.c (bfd_cache_close_all): New function definition.
1803
d2bef492
MK
18042004-06-16 Mark Kettenis <kettenis@gnu.org>
1805
1806 * configure.in: Don't set COREFILE to trad-core.lo for FreeBSD
1807 4.10 and beyond.
1808 * configure: Regenerate.
1809
8528d62e
DJ
18102004-06-16 Daniel Jacobowitz <dan@debian.org>
1811
1812 * elf32-ppc.c (ppc_elf_create_linker_section): Create symbols in
1813 the pre-existing section.
1814
911d08a7
AM
18152004-06-15 Alan Modra <amodra@bigpond.net.au>
1816
1817 * section.c (struct sec): Remove usused flags. Reorganize a little.
1818 (bfd_get_section_size_before_reloc): Delete.
1819 (bfd_get_section_size_after_reloc): Delete.
1820 (STD_SECTION): Update.
1821 (bfd_get_section_size_now): Delete.
1822 (bfd_set_section_contents): Don't referece reloc_done.
1823 (bfd_get_section_contents): Remove reloc_done comment.
1824 * bout.c (b_out_bfd_get_relocated_section_contents): Don't set
1825 reloc_done.
1826 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Likewise.
1827 * ecoff.c (bfd_debug_section): Update initializer.
1828 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Ditto.
1829 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
1830 * bfd-in.h (bfd_section_size): Expand.
1831 (bfd_get_section_size): New macro.
1832 * bfd-in2.h: Regenerate.
1833 * coff64-rs6000.c (xcoff64_write_object_contents): Replace
1834 bfd_get_section_size_before_reloc with bfd_get_section_size.
1835 * coffcode.h (coff_write_object_contents): Likewise.
1836 * coffgen.c (build_debug_section): Likewise.
1837 * dwarf1.c (parse_line_table): Likewise.
1838 (_bfd_dwarf1_find_nearest_line): Likewise.
1839 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
1840 * i386msdos.c (msdos_write_object_contents): Likewise.
1841 * pdp11.c (squirt_out_relocs): Likewise.
1842 * elf32-sh64.c (sh64_find_section_for_address): Remove comment.
1843 * elf64-mmix.c (mmix_elf_final_link): Update comment.
1844
092dcd75
CD
18452004-06-14 Chris Demetriou <cgd@broadcom.com>
1846
1847 * elf32-mips.c (elf_mips_gnu_pcrel32): Add (undoing 2004-04-24
1848 removal) with updated comment.
1849 (bfd_elf32_bfd_reloc_type_lookup): Add back case for
1850 BFD_RELOC_32_PCREL.
1851 (mips_elf32_rtype_to_howto): Add back case for R_MIPS_PC32.
1852 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
1853
3ffa5234
AM
18542004-06-12 Alan Modra <amodra@bigpond.net.au>
1855
1856 * elf64-x86-64.c (elf64_x86_64_relocate_section): Ignore reloc
1857 overflow on branches to undefweaks.
1858
e9edc808
MR
18592004-06-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
1860
1861 * coff-alpha.c (alpha_relocate_section): Set used_by_bfd directly
1862 as ecoff_section_data() does not return a valid lvalue.
1863
a873f25a
AO
18642004-06-09 Alexandre Oliva <aoliva@redhat.com>
1865
a9b881be
AO
1866 * elflink.c (elf_sort_symbol): Compare section id, not pointers.
1867 (elf_link_add_object_symbols): Likewise.
1868
a873f25a
AO
1869 * elf-m10300.c (_bfd_mn10300_elf_reloc_type_class): New.
1870 (elf_backend_reloc_type_class): New.
1871
eef0f186
MK
18722004-06-08 Mark Kettenis <kettenis@gnu.org>
1873
1874 * configure.in (hppa*-*-netbsd*, hppa*-*-openbsd): Set COREFILE to
1875 netbsd-core.lo.
1876 * configure: Regenerate.
1877
822392ce
DJ
18782004-06-07 Daniel Jacobowitz <dan@debian.org>
1879
1880 From: Albert Chin-A-Young <china@thewrittenword.com>
1881 * bfd/elf-bfd.h (struct eh_cie_fde): Convert unsigned char bitfields
1882 to unsigned int.
1883
9f2e92c5
L
18842004-05-29 H.J. Lu <hongjiu.lu@intel.com>
1885
1886 * elfxx-ia64.c (elfNN_ia64_relax_section): Undo the last
1887 change.
1888
dd90f1b2
DD
18892004-05-28 DJ Delorie <dj@redhat.com>
1890
1891 * elf-m10300.c (mn10300_elf_relax_section): Preserve reloc addend
1892 for linking, but otherwise adjust reloc for merged sections.
1893
5dd23ec1
L
18942004-05-28 H.J. Lu <hongjiu.lu@intel.com>
1895
1896 * elfxx-ia64.c (elfNN_ia64_relax_section): Properly call
1897 _bfd_merged_section_offset for local symbols.
1898
f6f9408f
JR
18992004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
1900
1901 * Makefile.am: Regenerate dependencies.
1902 * Makefile.in: Regenerate.
1903 * archures.c: Add bfd_mach_sh3_nommu .
1904 * bfd-in2.h: Regenerate.
1905 * cpu-sh.c: Add sh3-nommu architecture.
1906 (bfd_to_arch_table): Create new table.
1907 (sh_get_arch_from_bfd_mach): Create new function.
1908 (sh_get_arch_up_from_bfd_mach): Create new function.
1909 (sh_merge_bfd_arch): Create new function.
1910 * elf32-sh.c (sh_ef_bfd_table): Add table.
1911 (sh_elf_check_relocs): Replace switch statement with
1912 use of sh_ef_bfd_table .
1913 (sh_elf_get_flags_from_mach): Add new function.
1914 (sh_find_elf_flags): Likewise.
1915 (sh_elf_copy_private_data): Replace most of non-elf contents
1916 with a call to sh_merge_bfd_arch() .
1917
d866f350
MC
19182004-05-27 Michael Chastain <mec.gnu@mindspring.com>
1919
1920 * Makefile.am (bfdver.h): Use explicit filename, not $< .
1921 * Makefile.in: Regenerate.
1922
1055df0f
AO
19232004-05-27 Alexandre Oliva <aoliva@redhat.com>
1924
1925 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Avoid
1926 custom calling conventions for dynamic symbols.
1927 (mn10300_elf_relax_section): Avoid relaxing a function as a local
1928 symbol if it's an alias to a global one.
1929
b3096250
L
19302004-05-26 H.J. Lu <hongjiu.lu@intel.com>
1931
1932 * elf.c (_bfd_elf_make_section_from_shdr): Undo the last
1933 change.
1934
9bb351fd
AO
19352004-05-27 Alexandre Oliva <aoliva@redhat.com>
1936
1937 * elf-m10300.c (mn10300_elf_relax_section): Don't test isym within
1938 loop over hashes.
1939
e49f5022
AM
19402004-05-26 Alan Modra <amodra@bigpond.net.au>
1941
1942 * elf.c (_bfd_elf_make_section_from_shdr): Don't set SEC_EXCLUDE
1943 for SHT_GROUP sections.
1944
57ceae94
AM
19452004-05-25 Alan Modra <amodra@bigpond.net.au>
1946
1947 * elflink.c (elf_link_add_object_symbols): Don't set up merge
1948 section data here..
1949 * elf.c (_bfd_elf_merge_sections): .. Do it here instead.
1950 * merge.c: Formatting. Remove unnecessary casts. Expand
1951 bfd_get_section_alignment macro.
1952 (struct sec_merge_sec_info): Rename "first" to "first_str". Update
1953 use throughout file.
1954 (_bfd_add_merge_section): Rename from _bfd_merge_section. Update
1955 comment. Abort on dynamic or non-SEC_MERGE input. Don't test
1956 section name to determine sinfo group, instead test output section
1957 and alignment.
1958 (_bfd_merge_sections): Add struct bfd_link_info param. Call
1959 _bfd_strip_section_from_output rather than just twiddling flags.
1960 * libbfd-in.h (_bfd_add_merge_section): Rename, update comment.
1961 (_bfd_merge_sections): Update prototype.
1962 * libbfd.h: Regenerate.
1963
c6f8758f 19642004-05-24 Mark Kettenis <kettenis@gnu.org>
d34436e8
MK
1965
1966 * netbsd-core.c: Correctly indent section that sets architecture
1967 from machine ID.
1968
c6f8758f
NC
1969 From Miod Vallat <miod@online.fr>:
1970 * m88kopenbsd.c: New file.
1971 * targets.c (m88k_openbsd_vec): New.
1972 * config.bfd: Add m88k-*-openbsd*.
1973 * configure.in (m88k-*-openbsd*): Set COREFILE to netbsd-core.lo.
1974 (m88kopenbsd_vec): New.
1975 * configure: Regenerate.
1976 * Makefile.am (BFD32_BACKENDS): Add m88kopenbsd.lo.
1977 (BFD32_BACKENDS_CFILES): Add m88kopenbsd.c.
1978 Run "make dep-am".
1979 * Makefile.in: Regenerate.
1980 * po/SRC-POTFILES.in: Regenerate.
1981
7d7e6bc4
NC
19822004-05-24 Nick Clifton <nickc@redhat.com>
1983
1984 * hash.c: Remove bogus node "Changing the default Hash Table Size"
1985 introduced by hash table size patch.
1986
bc286f95
BE
19872004-05-22 Ben Elliston <bje@au.ibm.com>
1988
1989 * configure.in (is_release): Remove.
1990 (bfd_version_date, bfd_version, bfd_version_string): Likewise.
1991 (AC_OUTPUT): Don't output bfdver.h from version.h.
1992 * configure: Regenerate.
1993 * Makefile.am (RELEASE): New variable.
1994 (bfdver.h): New target.
1995 * Makefile.in: Regenerate.
1996 * doc/Makefile.in: Likewise.
1997
8b89a4eb
BE
19982004-05-22 Ben Elliston <bje@au.ibm.com>
1999
2000 * Makefile.am (config.status): Don't depend on version.h.
2001 * Makefile.in: Regenerate.
2002
753731ee
AM
20032004-05-22 Alan Modra <amodra@bigpond.net.au>
2004
2005 * merge.c (_bfd_merged_section_offset): Remove "addend" param.
2006 * libbfd-in.h (_bfd_merged_section_offset): Adjust prototype.
2007 * libbfd.h: Regenerate.
2008 * elf.c (_bfd_elf_rela_local_sym): Adjust call.
2009 (_bfd_elf_rel_local_sym): Likewise.
2010 * elflink.c (_bfd_elf_link_sec_merge_syms): Likewise.
2011 (elf_link_input_bfd): Likewise.
2012 * elf32-ppc.c (ppc_elf_relax_section): Likewise.
2013 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
2014 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
2015 (elfNN_ia64_relocate_section): Likewise.
2016
2d643429
NC
20172004-05-21 Andy Chittenden <achittenden@bluearc.com>
2018
2019 * hash.c (bfd_default_hash_table_size): New variable.
2020 (bfd_hash_table_init): Use new variable instead of DEFAULT_SIZE.
2021 (bfd_hash_set_default_size): New function. Set the default size
2022 to a selected prime number close to the argument. Document new
2023 function.
2024 * bfd-in.h: Add prototype for bfd_hash_set_default_size.
2025 * bfd-in2.h: Regenerate.
2026 * Makefile.am (hash.lo): Add dependency upon libiberty.h.
2027 * Makefile.in: Regenerate.
2028
8377c19c
MK
20292004-05-21 Mark Kettenis <kettenis@gnu.org>
2030
2031 * libaout.h (machine_type): Add M_88K_OPENBSD and M_HPPA_OPENBSD.
2032 * netbsd-core.c (netbsd_core_file_p): Set architecture for alpha,
2033 arm, m68k, m88k and hppa core files.
2034
69fd4758
NC
20352004-05-21 Nick Clifton <nickc@redhat.com>
2036
2037 * bfdio.c (bfd_bread): Do not use iovec if it is NULL.
2038 (bfd_bwrite): Likewise.
2039 (bfd_tell): Likewise.
2040 (bfd_flush): Likewise.
2041 (bfd_stat): Likewise.
2042 (bfd_seek): Likewise.
2043 (bfd_get_mtime): Likewise.
2044 (bfd_get_size): Likewise.
2045
cd917290
BE
20462004-05-19 Ben Elliston <bje@au.ibm.com>
2047
2048 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Comment correction.
2049
1b09e940
NC
20502004-05-19 Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
2051
2052 * archive.c (_bfd_get_elt_at_filepos): Cope with a nested archives.
2053 (bfd_generic_openr_next_archived_file): Likewise.
2054
096c35a7
BW
20552004-05-17 Bob Wilson <bob.wilson@acm.org>
2056
2057 * elf32-xtensa.c (xtensa_get_property_section_name): Determine linkonce
2058 section names by inserting a new substring after .gnu.linkonce, except
2059 for .gnu.linkonce.t.* where the "t." is replaced.
2060
eea6121a 20612004-05-17 Adam Nemet <anemet@lnxw.com>
b2d65c0b
NC
2062
2063 * config.bfd (sparc-*-lynxos* case): Add to obsolete list.
2064 (m68-*-lynxos* case): Likewise.
2065 (powerpc-*-lyxnos* case): New case.
2066 (i[3-7]86-*-lynxos* case): Update to LynxOS 4.0 ELF.
2067
80fccad2
BW
20682004-05-17 David Heine <dlheine@tensilica.com>
2069
2070 * aout-target.h (MY_bfd_copy_private_header_data): Define.
2071 * aout-tic30.c (MY_bfd_copy_private_header_data): Define.
2072 * bfd.c (bfd_copy_private_header_data): Define.
2073 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Add entries for new
2074 interface.
2075 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
2076 * coffcode.h (coff_bfd_copy_private_header_data): Define.
2077 * elf-bfd.h (_bfd_elf_copy_private_header_data): Declare.
2078 * elf.c (_bfd_elf_copy_private_section_data): Remove code to set up
2079 segments by calling copy_private_bfd_data.
2080 (_bfd_elf_copy_private_header_data): Define.
2081 * elfxx-target.h (bfd_elfNN_bfd_copy_private_header_data): Define.
2082 * libbfd-in.h (_bfd_generic_bfd_copy_private_header_data): Define.
2083 * libecoff.h (_bfd_ecoff_bfd_copy_private_header_data): Define.
2084 * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Define.
2085 * mmo.c (mmo_bfd_copy_private_header_data): Define.
2086 * ppcboot.c (ppcboot_bfd_copy_private_header_data): Define.
2087 * som.c (som_bfd_copy_private_header_data): Define.
2088 * targets.c (BFD_JUMP_TABLE_COPY): Add _bfd_copy_private_header_data.
2089 * vms.c (vms_bfd_copy_private_header_data): Define.
2090 * bfd-in2.h: Regenerate.
2091 * libbfd.h: Regenerate.
2092
c5ae1840
TS
20932004-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2094
2095 * elfxx-mips.c (MINUS_TWO): Define.
2096 (mips_elf_higher, mips_elf_highest,
2097 mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for
2098 some bfd_vma values.
2099 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup.
2100
a99cf92b
DA
21012004-05-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2102
2103 * som.c (log2): Rename to exact_log2. Adjust all callers.
2104
0da76f83
NC
21052004-05-13 Paul Brook <paul@codesourcery.com>
2106
c273895f 2107 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle
336b9722
NC
2108 dwarf3 format CIE entries. Remove comment about the size of the
2109 ra_column field. It is now correctly deduced.
0da76f83 2110
4b363073
NC
21112004-05-13 Joel Sherrill <joel@oarcorp.com>
2112
2113 * config.bfd (or32-*-rtems*): Switch to elf.
2114
9598fbe5
NC
21152004-05-13 Nick Clifton <nickc@redhat.com>
2116
2117 * po/fr.po: Updated French translation.
2118
8c37241b
JJ
21192004-05-11 Jakub Jelinek <jakub@redhat.com>
2120
2121 * elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol
2122 into .dynsym if elf_section_data (sec)->dynindx <= 0.
2123 Adjust counting of last_local.
2124 (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
2125 other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
2126 created by the linker nor !SHF_ALLOC.
2127
2128 * elf32-i386.c (elf_i386_finish_dynamic_sections): Point
2129 DT_PLTGOT to the start of the .got.plt section instead of the
2130 .got output section. Set sh_entsize for .got section in addition
2131 to .got.plt.
2132 (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
2133 is at sgot->output_section->vma.
2134 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
2135 DT_PLTGOT to the start of the .got.plt section instead of the
2136 .got output section.
2137 (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
2138 is at sgot->output_section->vma. Set sh_entsize for .got section
2139 in addition to .got.plt.
2140 * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
2141 (bfd_section_from_phdr): Likewise.
2142 (map_sections_to_segments): Likewise.
2143 (assign_file_positions_for_segments): Likewise.
2144 (get_program_header_size): Likewise.
2145 * elflink.c (bfd_elf_size_dynamic_sections): Set
2146 elf_tdata (output_bfd)->relro from info->relro.
2147 * elf-bfd.h (struct elf_obj_tdata): Add relro field.
2148
3f980e41
AO
21492004-05-08 Alexandre Oliva <aoliva@redhat.com>
2150
2151 * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get
2152 a zero symndx for which we hadn't accounted a dynamic relocation.
2153 (_frvfdpic_add_rofixup): Likewise.
2154
d70270c5 21552004-05-07 Brian Ford <ford@vss.fsi.com>
eea6121a 2156 DJ Delorie <dj@redhat.com>
d70270c5
BF
2157
2158 * coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]:
2159 Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE.
2160 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize
2161 IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines.
2162
7e9f3bd6
AO
21632004-05-07 Alexandre Oliva <aoliva@redhat.com>
2164
2165 * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Return
2166 immediately if there's no link info.
2167 (elf32_frvfdpic_copy_private_bfd_data): New.
2168 (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic.
2169
eb61d2d6
ZW
21702004-05-06 Zack Weinberg <zack@codesourcery.com>
2171
2172 * dwarf2.c (add_line_info): Also set info->filename to NULL if
2173 filename argument is null; do not call strlen on a null pointer.
2174
ecb2d096
DJ
21752004-05-06 Daniel Jacobowitz <drow@mvista.com>
2176
2177 * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32
2178 special case.
2179
43850d5b
AO
21802004-05-05 Alexandre Oliva <aoliva@redhat.com>
2181
2182 * configure.in (bfd_elf32_frvfdpic_vec): New.
2183 * configure: Rebuilt.
2184 * targets.c (bfd_elf32_frvfdpic_vec): New.
2185 * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default
2186 on the latter.
2187 * elf32-frv.c: Prefix all identifiers added for FDPIC support with
2188 frvfdpic instead of frv. Rearrange elf-target macros such that
2189 the FDPIC-specific ones are only defined for this new target
2190 vector.
2191 (bfd_elf32_frvfdpic_vec): Declare.
2192 (IS_FDPIC): New.
2193 (elf32_frv_relocate_section): Use it to enable segment checking
2194 and to control rofixup emission. Add output section vma to
2195 applied relocation in non-LOAD non-ALLOC sections. Use
2196 _bfd_error_handler for errors.
2197 (_frv_create_got_section): Create .rel.got and .rofixup only in
2198 FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the
2199 linker script.
2200 (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC.
2201 (elf32_frvfdpic_modify_segment_map): Likewise.
2202 (elf32_frv_finish_dynamic_sections): New, do-nothing.
2203 (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve
2204 error message if we miscompute the rofixup size.
2205 (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC.
2206 (frvfdpic_elf_encode_eh_address): Likewise.
2207 (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC.
2208 Record relocs only in FDPIC. Make sure _gp is defined for GPREL
2209 relocs. Reject unknown relocation types.
2210 (elf32_frv_object_p): Make sure target vector matches FDPIC bits.
2211 (frv_elf_merge_private_bfd_data): Likewise.
2212 (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as
2213 0x4000 for newly-added elf32-frvfdpic.
2214
06fc8a8c
NC
22152004-05-05 Nick Clifton <nickc@redhat.com>
2216
2217 PR/136
2218 * cache.c (bfd_cache_lookup_worker): Call abort() rather than
2219 returning NULL as most users of this function do not check its
2220 return value.
33216455
NC
2221 * hppabsd-core.c (hppabsd_core_core_file_p): Do not check result
2222 of bfd_cache_lookup().
2223 * sco5-core.c (sco5_core_file_p): Likewise.
2224 * trad-core.c (trad_unix_core_file_p): Likewise.
06fc8a8c
NC
2225
22262004-05-05 Nick Clifton <nickc@redhat.com>
2227
2228 * cache.c (bfd_cache_lookup): Improve formatting.
2229 * archive.c: Fix formatting.
2230
6b6e92f4
NC
22312004-05-05 Peter Barada <peter@the-baradas.com>
2232
2233 * bfd_archures.c(bfd_architecture): Add 521x,5249,547x,548x.
2234 * cpu-m68k.c(bfd_m68k_arch): Likewise.
2235 * bfd-in2.h(bfd_architecture): Regenerate.
2236
6a8d1586
AM
22372004-05-03 Alan Modra <amodra@bigpond.net.au>
2238
2239 * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excluded
2240 SEC_MERGE sections.
2241 * elflink.c (elf_link_input_bfd): Adjust output reloc index for
2242 those against discarded link-once and SEC_MERGE section symbols.
2243
fafe6678
L
22442004-05-02 H.J. Lu <hongjiu.lu@intel.com>
2245
2246 * section.c (bfd_get_section_by_name_if): New.
2247 * bfd-in2.h: Regenerated.
2248
ad7b9a36
AM
22492004-05-02 Alan Modra <amodra@bigpond.net.au>
2250
2251 * som.c (som_bfd_is_group_section): Define.
2252
73499ab8
AM
22532004-05-01 Alan Modra <amodra@bigpond.net.au>
2254
2255 * section.c (bfd_make_section_anyway): Copy the whole
2256 bfd_hash_entry, not just "next" from existing entry.
2257
45c5e9ed
L
22582004-04-30 H.J. Lu <hongjiu.lu@intel.com>
2259
2260 * elf.c (bfd_section_from_shdr): Maintain the section order in
2261 a section group.
2262 (special_sections): Add ".note.GNU-stack".
2263 (elf_fake_sections): Handle section group for relocatable
2264 link..
2265
bc87dd2e
L
22662004-04-30 H.J. Lu <hongjiu.lu@intel.com>
2267
2268 * section.c (bfd_sections_find_if): New.
2269 * bfd-in2.h: Regenerated.
2270
72adc230
AM
22712004-04-30 Alan Modra <amodra@bigpond.net.au>
2272
2273 * section.c (bfd_make_section_anyway): Add all sections to hash tab.
2274
2275 * elf-bfd.h (bfd_elf_is_group_section): Declare.
2276 * elf.c (bfd_elf_is_group_section): New function.
2277 * elfxx-target.h (bfd_elfNN_bfd_is_group_section
2278 * section.c (bfd_generic_is_group_section): New function.
2279 * targets.c (struct bfd_target): Add _bfd_is_group_section field.
2280 (BFD_JUMP_TABLE_LINK): Adjust.
2281 * aout-adobe.c (aout_32_bfd_is_group_section): Define.
2282 * aout-target.h (MY_bfd_is_group_section): Define.
2283 * aout-tic30.c (MY_bfd_is_group_section): Define.
2284 * bfd.c (bfd_is_group_section): Define.
2285 * binary.c (binary_bfd_is_group_section): Define.
2286 * bout.c (b_out_bfd_is_group_section): Define.
2287 * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define.
2288 * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define.
2289 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust.
2290 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust.
2291 * coffcode.h (coff_bfd_is_group_section): Define.
2292 * i386msdos.c (msdos_bfd_is_group_section): Define.
2293 * i386os9k.c (os9k_bfd_is_group_section): Define.
2294 * ieee.c (ieee_bfd_is_group_section): Define.
2295 * ihex.c (ihex_bfd_is_group_section): Define.
2296 * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define.
2297 * mach-o.c (bfd_mach_o_bfd_is_group_section): Define.
2298 * mmo.c (mmo_bfd_is_group_section): Define.
2299 * nlm-target.h (nlm_bfd_is_group_section): Define.
2300 * oasys.c (oasys_bfd_is_group_section): Define.
2301 * pef.c (bfd_pef_bfd_is_group_section): Define.
2302 * ppcboot.c (ppcboot_bfd_is_group_section): Define.
2303 * srec.c (srec_bfd_is_group_section): Define.
2304 * tekhex.c (tekhex_bfd_is_group_section): Define.
2305 * versados.c (versados_bfd_is_group_section): Define.
2306 * vms.c (vms_bfd_is_group_section): Define.
2307 * xsym.c (bfd_sym_bfd_is_group_section): Define.
2308 * bfd-in2.h: Regenerate.
2309 * libbfd.h: Regenerate.
2310
20f0a1ad
AM
23112004-04-30 Alan Modra <amodra@bigpond.net.au>
2312
2313 * elflink.c (elf_gc_mark): Follow indirect and warning syms.
2314
f7458fc9 23152004-04-30 Hans-Peter Nilsson <hp@axis.com>
7dfb3b6b
HPN
2316
2317 * configure.in: Update version to 2.15.91.
2318 * configure: Regenerate.
2319
8a7140c3
NC
23202004-04-29 Brian Ford <ford@vss.fsi.com>
2321
2322 * bfd.c (bfd_get_sign_extend_vma): Add pe[i]-i386 case to DJGPP hack.
2323 * coffcode.h (DOT_DEBUG, GNU_LINKONCE_WI): Define.
2324 [!COFF_WITH_PE] (sec_to_styp_flags, styp_to_sec_flags): Use them.
2325 (coff_compute_section_file_positions) [RS6000COFF_C]: Likewise.
2326 [COFF_WITH_PE] (sec_to_styp_flags): Handle DWARF 2/3 .debug* and
2327 .gnu.linkonce.wi. sections.
2328 * pe-i386.c (COFF_SUPPORT_GNU_LINKONCE): Define.
2329 (COFF_SECTION_ALIGNMENT_ENTRIES): Add entries for .debug and
2330 .gnu.linkonce.wi..
2331 * pei-i386.c (COFF_SUPPORT_GNU_LINKONCE): Likewise.
2332 (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
2333
3e722fb5
CD
23342004-04-28 Chris Demetriou <cgd@broadcom.com>
2335
2336 * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16.
2337 * bfd-in2.h: Regenerate.
2338 * libbfd.h: Likewise.
2339
351e2b5a
DA
23402004-04-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2341
2342 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and
2343 dup_common fields.
2344 (setup_sections): Use som_subspace_dictionary_record struct instead
2345 subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is
2346 is_comdat, is_common or dup_common.
2347 (som_prep_headers): Use som_subspace_dictionary_record struct. Set
2348 is_comdat, is_common and dup_common in section subspace_dict from
2349 copy_data.
2350 (som_begin_writing): Use som_subspace_dictionary_record struct.
2351 (som_finish_writing): Likewise.
2352 (som_bfd_derive_misc_symbol_info): Add support to set is_comdat,
2353 is_common and dup_common flags in info for symbol. Add comment
2354 regarding linker support for these fields. Slightly reorganize
2355 function.
2356 (som_build_and_write_symbol_table): Set is_comdat, is_common and
2357 dup_common fields in symbol table from symbol info.
2358 (bfd_som_set_subsection_attributes): Add comdat, common and dup_common
2359 arguments. Set corresponding fields in copy_data. Change all callers.
2360 (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library
2361 symbol table.
2362 (som_vec): Add SEC_LINK_ONCE to applicable section flags.
2363 * som.h (som_subspace_dictionary_record): Define.
2364 (som_copyable_section_data_struct): Add is_comdat, is_common and
2365 dup_common fields.
2366 (som_section_data_struct): Use som_subspace_dictionary_record struct
2367 instead of subspace_dictionary_record.
2368 (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype.
2369
3ba3bc8c
BW
23702004-04-27 Bob Wilson <bob.wilson@acm.org>
2371
2372 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size
2373 if set. Check reloc_done flag before applying relocations. Use
2374 output addresses, both when applying relocations and when comparing
2375 against the specified section.
2376 (elf_xtensa_relocate_section): Use output address to check if dynamic
2377 reloc is in a literal pool. Set section's reloc_done flag.
2378
beb8df56
L
23792004-04-27 H.J. Lu <hongjiu.lu@intel.com>
2380
2381 * elf32-sh64.c (elf_backend_section_flags): New. Defined.
2382 (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges
2383 section.
2384 (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges
2385 section.
2386
1829f4b2
AM
23872004-04-27 Alan Modra <amodra@bigpond.net.au>
2388
2389 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign
2390 structure field removed in 2004-04-24 patch.
2391 * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix.
2392
2393 * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>):
2394 Constify hdr arg.
2395 * elf32-arm.h (elf32_arm_section_flags): Likewise.
2396 * elf64-alpha.c (elf64_alpha_section_flags): Likewise.
2397 * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise.
2398 * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section
2399 field before calling elf_backend_section_flags.
2400
4030e8f6
CD
24012004-04-24 Chris Demetriou <cgd@broadcom.com>
2402
2403 * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16)
2404 (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove.
2405 (bfd_elf32_bfd_reloc_type_lookup): Remove cases for
2406 BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL,
2407 and BFD_RELOC_32_PCREL.
2408 (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16,
2409 R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32.
2410 * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
2411 (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16.
2412 (mips_elf_next_relocation): Move comment about matching HI/LO
2413 relocations to...
2414 (_bfd_mips_elf_relocate_section): Here. Remove handling for
2415 R_MIPS_GNU_REL_HI16.
2416
3e27568f
CD
24172004-04-23 Chris Demetriou <cgd@broadcom.com>
2418
2419 * coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
2420 (mips_switch_reloc, mips_read_relocs, mips_relax_section)
2421 (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
2422 (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
2423 and update comments to reflect current usage.
2424 (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
2425 and MIPS_R_SWITCH, as well as several empty entries. Update comment
2426 for MIPS_R_PCREL16.
2427 (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
2428 (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
2429 for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
2430 (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
2431 type number to be MIPS_R_PCREL16.
2432 (mips_relocate_section): Remove support for link-time relaxation
2433 of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
2434 MIPS_R_RELLO, and MIPS_R_RELHI relocations.
2435 (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
2436 * ecoff.c (ecoff_indirect_link_order): Remove support for link-time
2437 relaxation of branches used by embedded-PIC.
2438 * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
2439 * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
2440 related members, update comment.
2441 * pe-mips.c: Remove disabled (commented-out and #if 0'd)
2442 code related to embedded-PIC.
2443 * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
2444 initialization of now-removed 'adjust' member of
2445 'struct ecoff_debug_info'.
2446
b32de0bc 24472004-04-23 Chris Demetriou <cgd@broadcom.com>
8472310d
CD
2448
2449 * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove.
2450
955af222
PB
24512004-04-21 Philip Blundell <pb@nexus.co.uk>
2452
2453 * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32
2454 relocs for locally defined symbols during -shared final link.
2455 (elf32_arm_final_link_relocate): Likewise.
2456
47a9f7b3
JJ
24572004-04-22 Jakub Jelinek <jakub@redhat.com>
2458
2459 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also
2460 ELF_LINK_POINTER_EQUALITY_NEEDED.
2461 (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED
2462 if r_type is not R_X86_64_PC32.
2463 (elf64_x86_64_finish_dynamic_symbol): If
2464 ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of
2465 SHN_UNDEF symbols.
2466
1f1799d5
KK
24672004-04-22 Kaz Kojima <kkojima@rr.iij4u.or.jp>
2468
2469 * elf32-sh.c (sh_elf_plt_sym_val): New function.
2470 (elf_backend_plt_sym_val): Define.
2471
0fdea5ce
AC
24722004-04-22 Andrew Cagney <cagney@redhat.com>
2473
2474 * opncls.c (bfd_alloc): Fix type of "wanted" in doco.
2475
5198ba8b
DA
24762004-04-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2477
eb61d2d6 2478 * hpux-core.c (hpux_core_core_file_p): Add cast in call to
5198ba8b
DA
2479 make_bfd_asection.
2480 * som.c (som_set_section_contents): Constantify second argument.
2481 (hppa_som_gen_reloc_type): Abort for unsupported selectors.
2482 (som_object_setup): Rework to avoid warning.
2483 (setup_sections, som_write_fixups, bfd_section_from_som_symbol):
2484 Likewise.
2485
fe2e161a
AC
24862004-04-22 Andrew Cagney <cagney@redhat.com>
2487
2488 * cache.c (bfd_cache_close): Check for a previously closed file.
2489
4c45e5c9
JJ
24902004-04-22 Jakub Jelinek <jakub@redhat.com>
2491
2492 * bfd.c (bfd_get_synthetic_symtab): Define.
2493 * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
2494 NAME##_get_synthetic_symtab.
2495 (struct bfd_target): Add _bfd_get_synthetic_symtab.
2496 * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
2497 * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
2498 relplt_name fields.
2499 (_bfd_elf_get_synthetic_symtab): New prototype.
2500 * elfcode.h (elf_get_synthetic_symtab): Define.
2501 * elf.c (_bfd_elf_get_synthetic_symtab): New function.
2502 * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
2503 (elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
2504 (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
2505 * bfd-in2.h: Rebuilt.
2506 * libbfd.h: Rebuilt.
2507 * elf32-i386.c (elf_i386_plt_sym_val): New function.
2508 (elf_backend_plt_sym_val): Define.
2509 * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
2510 (elf_backend_plt_sym_val): Define.
2511 * elf32-s390.c (elf_s390_plt_sym_val): New function.
2512 (elf_backend_plt_sym_val): Define.
2513 * elf64-s390.c (elf_s390_plt_sym_val): New function.
2514 (elf_backend_plt_sym_val): Define.
2515 * elf32-sparc (elf32_sparc_plt_sym_val): New function.
2516 (elf_backend_plt_sym_val): Define.
2517 * elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
2518 (elf_backend_plt_sym_val): Define.
2519 * elf32-ppc.c (ppc_elf_plt_sym_val): New function.
2520 (elf_backend_plt_sym_val): Define.
2521 * aout-target.h (MY_get_synthetic_symtab): Define.
2522 * aout-tic30.c (MY_get_synthetic_symtab): Define.
2523 * coff-rs6000.c (rs6000coff_vec): Add
2524 _bfd_nodynamic_get_synthetic_symtab.
2525 (pmac_xcoff_vec): Likewise.
2526 * coff64-rs6000.c (rs6000coff64_vec): Add
2527 _bfd_nodynamic_get_synthetic_symtab.
2528 (aix5coff64_vec): Likewise.
2529 * sunos.c (MY_get_synthetic_symtab): Define.
2530 * vms.c (vms_get_synthetic_symtab): Define.
2531
d2f7ecac
NC
25322004-04-22 Nick Clifton <nickc@redhat.com>
2533
2534 * bfd.c (bfd_archive_filename): Return NULL on NULL input.
2535
fd99574b
NC
25362004-04-22 Peter Barada <peter@the-baradas.com>
2537
2538 * archures.c: Add bfd_mach_mcfv4e to bfd_architecture.
2539 * bfd2-in.h: Regenerate.
2540 * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[].
2541
23867d67
CD
25422004-04-21 Chris Demetriou <cgd@broadcom.com>
2543
2544 * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove.
2545 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove.
2546 * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs)
2547 (bfd_mips_elf32_create_embedded_relocs): Remove prototypes
2548 * bfd-in2.h: Regenerate.
2549
2c8c90bc
BW
25502004-04-21 Bob Wilson <bob.wilson@acm.org>
2551
2552 * elf32-xtensa.c (is_same_value): Add final_static_link argument and
2553 require relocations against a weak symbol to reference the same
2554 symbol hash entry if not a final, static link.
2555 (get_cached_value, add_value_map): Add final_static_link argument.
2556 (remove_literals): Pass final_static_link argument as needed.
2557
40838a72
AC
25582004-04-21 Andrew Cagney <cagney@redhat.com>
2559
2560 * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec".
2561 (struct opncls, opncls_btell, opncls_bseek, opncls_bread)
2562 (opncls_bwrite, opncls_bclose, opncls_bflush)
2563 (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a
2564 bfd iovec that uses function callbacks.
2565 (bfd_close): Use the iovec's bclose.
2566 * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite)
2567 (cache_bclose, cache_bflush, cache_bstat)
2568 (cache_iovec): New functions and global variable, implement a
2569 cache "iovec", where applicable set bfd_error.
2570 (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec.
2571 * bfdio.c (struct bfd_iovec): Define.
2572 (real_read): Delete function.
2573 (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat)
2574 (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec",
2575 assume that bread and bwrite set bfd_error.
2576 * bfd.c (struct bfd): Add "iovec", update comments.
2577 * bfd-in2.h, libbfd.h: Re-generate.
2578
7f919c84
AC
25792004-04-21 Andrew Cagney <cagney@redhat.com>
2580
2581 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
2582
715df9b8
EB
25832004-04-21 Eric Botcazou <ebotcazou@act-europe.fr>
2584
2585 * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function.
2586 (bfd_elf_gc_sections): Fail if a shared object is being created.
2587 Do not fail if dynamic sections have been created. Instead call
2588 elf_gc_mark_dynamic_ref_symbol to mark sections that contain
2589 dynamically referenced symbols. Do not mark the whole graph
2590 rooted at .eh_frame, only the section proper.
2591
6482c264
NC
25922004-04-20 DJ Delorie <dj@redhat.com>
2593
2594 * reloc.c: Add BFD_RELOC_32_SECREL.
2595 * bfd-in2.h: Regenerate.
2596 * libbfd.h: Likewise.
2597 * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32.
2598 (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it.
2599 (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise.
2600
4dc570c2
JJ
26012004-04-19 Jakub Jelinek <jakub@redhat.com>
2602
2603 * elf32-sparc.c (elf32_sparc_relocate_section): Handle
2604 relocs against hidden/protected undefweak symbols properly.
2605 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2606
0b60d5d3
MK
26072004-04-18 Mark Kettenis <kettenis@gnu.org>
2608
2609 * libaout.h (enum machine_type): Add M_POWERPC_NETBSD.
2610 * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC
2611 core files.
2612
d48bdb99
AM
26132004-04-17 Brian Ford <ford@vss.fsi.com>
2614
2615 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero
2616 filepos for the SizeOfHeaders field.
2617 (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc
2618 overflow.
2619 (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment.
2620
57a1784e
AM
26212004-04-16 Alan Modra <amodra@bigpond.net.au>
2622
2623 * simple.c (bfd_simple_get_relocated_section_contents): Don't
2624 change reloc_done. Set and restore _cooked_size.
2625 (RETURN): Delete.
2626
d1ad3f6f
MK
26272004-04-15 Mark Kettenis <kettenis@gnu.org>
2628
2629 * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX
2630 core files.
2631
3d1bca9d
NC
26322004-04-15 Nick Clifton <nickc@redhat.com>
2633
2634 * bfd.c (bfd_archive_filename): Catch NULL bfd pointers.
2635
019b892f
AM
26362004-04-15 Alan Modra <amodra@bigpond.net.au>
2637
2638 * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change.
2639
15b43f48
AM
26402004-04-15 H.J. Lu <hongjiu.lu@intel.com>
2641
2642 * elflink.c (_bfd_elf_merge_symbol): Treat weak as strong only
2643 when it is a definition.
2644
6de00a78
AM
26452004-04-14 Alan Modra <amodra@bigpond.net.au>
2646
2647 * elf32-sparc.c (elf32_sparc_relocate_section): Don't abort
2648 when statically linking PIC code.
2649 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2650
279500de
TS
26512004-04-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2652
2653 * config.bfd: Remove mips*-*-mach3* and mips*-dec-mach3* targets.
2654 * configure.in: Remove mips-dec-bsd*, mips-dec-mach3*, mips-*-mach3*
2655 targets amd aout_mips_big_vec, aout_mips_little_vec target vectors.
2656 * configure: Regenerate.
2657
ccf2f652
RS
26582004-04-08 Richard Sandiford <rsandifo@redhat.com>
2659
2660 * elflink.c: Include libiberty.h.
2661 * Makefile.am (elflink.lo): Depend on libiberty.h.
2662 * Makefile.in: Regenerate.
2663
ca07892d
DJ
26642004-04-06 Daniel Jacobowitz <drow@mvista.com>
2665
2666 * elfxx-mips.c (MIPS_ELF_STUB_SECTION_NAME): Always use
2667 ".MIPS.stubs".
2668
a5a58ba4
L
26692004-04-05 H.J. Lu <hongjiu.lu@intel.com>
2670
2671 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Always
2672 reserve the memory for dynamic linker
2673
24d18d30
MK
26742004-04-05 Mark Kettenis <kettenis@gnu.org>
2675
2676 * netbsd-core.c (CORE_WCOOKIE_OFFSET): New define.
2677 (netbsd_core_file_p): Create a .wcookie section for OpenBSD/sparc.
2678
a4d7b4b5
L
26792004-04-02 H.J. Lu <hongjiu.lu@intel.com>
2680
2681 * elf32-cr16c.c (elf32_cr16c_relocate_section): Use
2682 RELOC_FOR_GLOBAL_SYMBOL.
2683 (elf32_cr16c_add_symbol_hook): Remove const from Elf_Internal_Sym.
2684
1f433d93
L
26852004-04-02 H.J. Lu <hongjiu.lu@intel.com>
2686
2687 * elf32-arm.h (elf32_arm_final_link_relocate): Handle
2688 R_ARM_ALU* only if OLD_ARM_ABI is not defined.
2689
e489d0ae
PB
26902004-04-01 Paul Brook <paul@codesourcery.com>
2691
2692 * bfd-in.h (bfd_elf32_arm_process_before_allocation): Update.
2693 * elf32-arm.h (struct elf32_elf_section_map): New.
2694 (struct _arm_elf_section_data): New.
2695 (elf32_arm_section_data): Define.
2696 (struct elf32_arm_link_hash_table): Add byteswap_code.
2697 (elf32_arm_link_hash_table_create): Initialize byteswap_code.
2698 (bfd_elf32_arm_process_before_allocation): Add byteswap_code.
2699 (elf32_arm_post_process_headers): Set EF_ARM_BE8.
2700 (elf32_arm_output_symbol_hook, elf32_arm_new_section_hook,
2701 elf32_arm_compare_mapping, elf32_arm_write_section): New functions.
2702 (bfd_elf32_new_section_hook, elf_backend_write_section,
2703 elf_backend_link_output_symbol_hook): Define.
2704
66a695f0
NC
27052004-04-01 Andy Chittenden <achittenden@bluearc.com>
2706
2707 * stabs.c (struct stab_link_includes_totals): Add field 'symb'
2708 that keeps the characters in a B_INCL..B_EINCL range.
2709 (_bfd_link_section_stabs): When computing the sum of the
2710 characters in a B_INCL..B_EINCL range also keep a copy of those
2711 characters. Use this information to distinguish between
2712 include sections that have the same sum and the same length
2713 but which are nevertheless unique.
2714
8375c36b
PB
27152004-03-31 Paul Brook <paul@codesourcery.com>
2716
2717 * elf32-arm.h (elf32_arm_final_link_relocate): Add R_ARM_ALU*.
2718 * elfarm-nabi.c (elf32_arm_howto_table): Ditto.
2719
a56b48eb
NC
27202004-03-31 Andy Chittenden <achittenden@bluearc.com>
2721
2722 * stabs.c (struct stab_link_includes_totals): Rename field 'total'
2723 to 'sum_chars' and add field 'num_chars'.
2724 (_bfd_link_section_stabs): When computing the sum of the
2725 characters in a B_INCL..B_EINCL range also keep a count of the
2726 number of characters. Use this information to help distinguish
2727 between include sections when have the same sum but which
2728 nevertheless are still unique.
2729
3d456464
NC
2730