Replaced fixed size array for hi16 relocations with a linked list.
[binutils-gdb.git] / bfd / ChangeLog
1 Mon Nov 16 10:57:06 1998 Nick Clifton <nickc@cygnus.com>
2
3 * elf32-v850.c (hi16s_location): Replaced fixed size array with
4 linked list.
5
6 Sun Nov 15 20:28:25 1998 Richard Henderson <rth@cygnus.com>
7
8 * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper
9 element of the gotentry list for local symbols too.
10 (elf64_alpha_relocate_section): Unify local and global handling.
11 Assert that gotent->use_count > 0.
12
13 Sat Nov 14 15:16:01 1998 Ian Lance Taylor <ian@cygnus.com>
14
15 * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and
16 update for file name changes of July 2, 1998.
17 (vms_vax_vec): New.
18 * configure: Rebuild.
19
20 Thu Nov 12 19:19:54 1998 Dave Brolley <brolley@cygnus.com>
21
22 * po/bfd.pot: Regenerated.
23
24 Tue Nov 10 16:17:06 1998 Geoffrey Noer <noer@cygnus.com>
25
26 * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*.
27 * aclocal.m4, configure: regenerate
28
29 Tue Nov 10 15:13:59 1998 Nick Clifton <nickc@cygnus.com>
30
31 * elf.c (prep_headers): Add support for bfd_arch_fr30.
32
33 Tue Nov 10 13:37:36 1998 Felix Lee <flee@cygnus.com>
34
35 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE,
36 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value
37 was cached.
38 * aclocal.m4, configure: regenerated.
39
40 Tue Nov 10 14:31:01 1998 Catherine Moore <clm@cygnus.com>
41
42 * elf32-d10v.c (reloc_type): Add R_D10V_GNU_VTINHERIT and
43 R_D10V_GNU_VTENTRY relocs.
44 (elf_d10v_howto_table): Likewise.
45 (d10v_reloc_map d10v_reloc_map): Likewise.
46 (elf32_d10v_gc_mark_hook): New.
47 (elf32_d10v_gc_sweep_hook): New.
48 (elf32_d10v_check_relocs): New.
49 (elf32_d10v_relocate_section): New.
50 (elf_backend_relocate_section): Define.
51 (elf_backend_can_gc_sections): Define.
52
53 Sat Nov 7 18:07:51 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de>
54
55 * Makefile.am (BFD32_BACKENDS): Move vms files here...
56 (BFD64_BACKENDS): ...from here.
57 (BFD32_BACKENDS_CFILES): Move vms files here...
58 (BFD64_BACKENDS_CFILES): ...from here.
59 * Makefile.in: Rebuild.
60
61 Wed Nov 4 15:58:48 1998 Nick Clifton <nickc@cygnus.com>
62
63 * Makefile.am: Add FR30 target.
64 * Makefile.in: Add FR30 target.
65 * archures.c: Add support for FR30.
66 * config.bfd: Add support for FR30.
67 * configure.in: Add support for FR30.
68 * reloc.c: Add support for FR30 relocations.
69 * targets.c: Add support for FR30 relocations.
70 * bfd-in2.h: Regenerate.
71 * configure: Regenerate.
72 * libbfd.h: Regenerate.
73 * cpu-fr30.c: New file.
74 * elf32-fr30.c: New file.
75
76 Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com>
77
78 * configure.in: detect cygwin* instead of cygwin32*
79 * configure: regenerate
80
81 Sun Nov 1 19:32:28 1998 Jeffrey A Law (law@cygnus.com)
82
83 * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca,
84 use bfd_malloc and free instead and check return value from bfd_malloc.
85
86 Sun Nov 1 16:20:35 1998 Ian Lance Taylor <ian@cygnus.com>
87
88 * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare.
89 * libbfd.h: Rebuild.
90
91 * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out.
92 (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise.
93 (MIPS_TEXT_DYNSYM_SECN): Likewise.
94 (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash
95 section.
96 (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex
97 field.
98 (mips_elf_link_hash_table_create): Don't initialize
99 dynsym_sec_strindex.
100 (mips_elf_gc_mark_hook): Add default case to avoid warning.
101 (mips_elf_size_dynamic_sections): Generate a section symbol for
102 every output section.
103 (mips_elf_finish_dynamic_sections): Count all sections for
104 DT_MIPS_UNREFEXTNO.
105 (mips_elf_finish_dynamic_sections): Use dynamic symbols for all
106 output sections.
107
108 Sun Nov 1 12:46:53 1998 Geoff Keating <geoffk@ozemail.com.au>
109
110 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots
111 for later PLT entries in large PLTs.
112 (ppc_elf_finish_dynamic_symbol): Allow for the extra slots.
113
114 Sat Oct 31 20:10:09 1998 Jeffrey A Law (law@cygnus.com)
115
116 * elf32-ppc.c (ppc_elf_reload_section): Fix typo.
117
118 1998-10-26 15:58 Ulrich Drepper <drepper@cygnus.com>
119
120 * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value.
121 * elflink.h (elf_collect_hash_codes): New function. This function is
122 called for each exported symbol and we compute the ELF hash value for
123 it.
124 (compute_bucket_value): New function. It is called from
125 size_dynamic_sections to determine the hash table size. When we are
126 optimizing a better, but slower, algorithm is used.
127 (size_dynamic_sections): Call compute_bucket_value.
128
129 * elf.c (bfd_elf_hash): Optimize the hash function a bit.
130
131 Mon Oct 19 20:03:21 1998 Catherine Moore <clm@cygnus.com>
132
133 * elf32-sh.c: Add HOWTO entries for R_SH_GNU_VTINHERIT and
134 R_SH_GNU_VTENTRY.
135 (sh_elf_gc_mark_hook): New.
136 (sh_elf_gc_sweep_hook): New.
137 (sh_elf_check_relocs): New.
138 (elf_backend_can_gc_sections): Define.
139
140 Mon Oct 19 16:57:05 1998 Felix Lee <flee@cygnus.com>
141
142 * acinclude.m4: undo previous gettext change
143 * aclocal.m4: rebuild with right version of aclocal.
144
145 Mon Oct 19 01:47:21 1998 Felix Lee <flee@cygnus.com>
146
147 * acinclude.m4, aclocal.m4: move gettext-related fragments from
148 aclocal.m4 to acinclude.m4, so they don't get lost.
149
150 * elfcore.h: rewrite for better corefile support.
151 * elf.c (elfcore_*): new functions.
152 * elf-bfd.h (elf_obj_tdata): new structure members.
153 * acconfig.h, acinclude.m4, configure.in: add feature-tests for
154 flavor of procfs.
155 * aclocal.m4, config.in, configure, Makefile.in: regenerated.
156
157 Fri Oct 16 14:07:45 1998 Catherine Moore <clm@cygnus.com>
158
159 * elf32-m32r.c: Add HOWTO entries for R_M32R_GNU_VTINHERIT
160 and R_M32R_GNU_VTENTRY.
161 (elf_backend_can_gc_sections): Define.
162 (m32r_elf_check_relocs): New.
163 (m32r_elf_gc_mark_hook): New.
164 (m32r_elf_gc_sweep_hook): New.
165 (m32r_elf_relocate_section): Handle VT relocs.
166
167 Mon Oct 12 14:18:40 1998 Nick Clifton <nickc@cygnus.com>
168
169 * coff-arm.c (arm_relocate_section): Remove redundant test.
170
171 * bfd-in2.h (struct reloc_howto_struct): Improve comment to make
172 cleat that the 'bitsize' field is the size of the bitfield AFTER
173 relocation not before.
174
175 * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield.
176
177 * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo
178 relocs.
179
180 Tue Oct 6 09:20:44 1998 Catherine Moore <clm@cygnus.com>
181
182 * elf32-sparc.c: Add HOWTO entries for R_SPARC_GNU_VTINHERIT and
183 R_SPARC_GNU_VTENTRY.
184 (elf32_sparc_check_relocs): Handle them.
185 (elf32_sparc_reloc_type_lookup): Likewise.
186 (elf32_sparc_relocate_section): Likewise.
187 (elf32_sparc_gc_mark_hook): New.
188 (elf32_sparc_gc_sweep_hook): New.
189
190 Mon Oct 5 14:55:30 1998 Jeffrey A Law (law@cygnus.com)
191
192 * som.c (som_finish_writing): Perform some sanity checks when
193 writing an executable or shared library.
194
195 Mon Oct 5 12:02:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
196
197 * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line.
198 * configure.in (elf): Add dwarf1.lo.
199 * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info.
200 * elf.c (_bfd_elf_find_nearest_line): Add call to
201 _bfd_dwarf1_find_nearest_line.
202 * elf32-mips.c (_bfd_mips_elf_find_nearest_line):
203 Add call to _bfd_dwarf1_find_nearest_line.
204 * configure: Rebuilt.
205
206 Mon Oct 5 10:06:22 1998 Catherine Moore <clm@cygnus.com>
207
208 * elflink.h (elf_gc_sections): Do not allow garbage
209 collection if dynamic sections have been created.
210
211 Mon Oct 5 09:07:37 1998 Catherine Moore <clm@cygnus.com>
212
213 * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and
214 R_V850_GNU_VTENTRY.
215 (v850_elf_check_relocs): Handle VTINHERIT and VTENTRY relocs.
216 (v850_elf_perform_relocation): Likewise.
217 (v850_elf_final_link_relocate): Likewise.
218 (v850_elf_relocate_section): Likewise.
219 (v850_elf_gc_sweep_hook): New routine.
220 (v850_elf_gc_mark_hook): New routine.
221 (elf_backend_can_gc_sections): Define.
222
223 Mon Oct 5 09:04:25 1998 Catherine Moore <clm@cygnus.com>
224
225 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume
226 that dynobj exists.
227
228 Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu>
229
230 * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
231 Declare size as bfd_size_type.
232 (rs6000coff_get_section_contents): Declare count as bfd_size_type.
233
234 Sun Oct 4 20:38:29 1998 Jeffrey A Law (law@cygnus.com)
235
236 * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch
237 structure.
238 * som.c (CPU_PA_RISC2_0): Define.
239 (_PA_RISC2_0_ID): Likewise.
240 (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed.
241
242 Sun Oct 4 21:19:09 1998 Ian Lance Taylor <ian@cygnus.com>
243
244 * elflink.h (elf_link_add_object_symbols): When a versioned symbol
245 has a base which is already defined, only add the referenced
246 symbol to the dynamic symbol table if it is defined or referenced
247 by a regular file.
248
249 * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs
250 correctly.
251
252 1998-09-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
253
254 * elflink.h (elf_link_add_object_symbols): Undo last change.
255
256 Wed Sep 23 16:09:31 1998 Richard Henderson <rth@cygnus.com>
257
258 * elflink.h (elf_link_add_object_symbols): Don't record a dynamic
259 symbol for the indirect alias to a versioned symbol.
260
261 Mon Sep 21 12:15:22 1998 Catherine Moore <clm@cygnus.com>
262
263 * elf32-i386.c (elf32_i386_vtinherit_howto): New.
264 (elf32_i386_vtentry_howto): New.
265 (elf_i386_reloc_type_lookup): Return elf32_i386_vtentry_howto
266 or elf32_i386_vtinherit_howto on lookup.
267
268 Sun Sep 20 00:48:07 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
269
270 * elf32-m68k.c: Include "elf/m68k.h". Remove definition of enum
271 reloc_type. Rename R_68K__max to R_68K_max.
272 (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY
273 reloc.
274
275 Sun Sep 20 00:09:25 1998 Chris Torek <torek@bsdi.com>
276
277 * libbfd.c (bfd_getb32): Rewrite expression to get better code.
278 (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
279
280 * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not
281 after.
282
283 Sat Sep 19 22:42:23 1998 Doug Rabson <dfr@nlsystems.com>
284
285 * elflink.h (elf_link_add_object_symbols): Ensure that the warning
286 message has a null byte terminator.
287
288 Fri Sep 18 14:35:29 1998 Nick Clifton <nickc@cygnus.com>
289
290 * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of
291 word subject to R_V850_32 relocation.
292
293 Thu Sep 17 17:20:36 1998 Nick Clifton <nickc@cygnus.com>
294
295 * dwarf2.c: Add comment describing problem computing line numbers
296 for undefined symbols at link time.
297
298 Thu Sep 17 16:03:28 1998 Richard Henderson <rth@cygnus.com>
299
300 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
301 transform a defweak into a plt entry.
302 (elf64_alpha_calc_dynrel_sizes): Allow room for secondary
303 plt entry references to receive a RELATIVE reloc.
304 (elf64_alpha_finish_dynamic_symbol): Fill them in.
305 (elf64_alpha_relocate_section): Assert we don't overrun
306 the allocated relocation space.
307
308 Wed Sep 16 18:03:13 1998 Nick Clifton <nickc@cygnus.com>
309
310 * elf.c (swap_out_syms): Always treat section symbols as
311 special, even if they are attached to a common section.
312
313 Wed Sep 16 10:34:13 1998 Nick Clifton <nickc@cygnus.com>
314
315 * elf32-v850.c (v850_elf_symbol_processing): Move symbols in
316 sections with v850 common section attributes into named v850
317 common sections.
318 (v850_elf_add_symbol_hook): Move symbols in sections with v850
319 common section attributes into named v850 common sections.
320
321 Wed Sep 16 11:26:49 CDT 1998 Catherine Moore <clm@cygnus.com>
322
323 * elf32-arm.c (elf32_arm_gc_mark_hook): Remove print
324 statement.
325
326 1998-09-15 Geoff Keating <geoffk@ozemail.com.au>
327
328 * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset
329 part of Vladimir's change of 1998-08-19. Make a R_PPC_SDAREL16
330 reloc to the wrong section a warning, not an error. .dynsbss
331 is not an output section, so there is no need to check for it.
332
333 Tue Sep 15 12:40:05 1998 Catherine Moore <clm@cygnus.com>
334
335 * elf-bfd.h: Add argument to elf_backend_get_symbol_type.
336
337 Tue Sep 15 08:34:40 1998 Catherine Moore <clm@cygnus.com>
338
339 * elf.c (swap_out_syms): Pass type to elf_backend_get_symbol_type.
340 * elf32-arm.c: Add HOWTO entries for R_ARM_GNU_VTINHERIT and
341 R_ARM_GNU_VTENTRY.
342 (elf32_arm_gc_mark_hook): New.
343 (elf32_arm_gc_sweep_hook): New.
344 (elf32_arm_check_relocs): New.
345 (elf32_arm_final_link_relocate): Handle VTINHERIT and VTENTRY
346 relocations.
347 (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY
348 relocations.
349
350 1998-09-10 Geoff Keating <geoffk@ozemail.com.au>
351
352 * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL,
353 assume there is no PLT or GOT.
354
355 Wed Sep 9 14:24:12 1998 Nick Clifton <nickc@cygnus.com>
356
357 * elf32-arm.c (elf32_arm_find_nearest_line): New function: just
358 like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is
359 also accepted as a function symbol type.
360
361 Mon Sep 7 13:24:03 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
362
363 * rs6000-core.c (_LONG_LONG): Define for AIX 4.x only.
364
365 Sat Sep 5 20:40:18 1998 Ian Lance Taylor <ian@cygnus.com>
366
367 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to
368 match definition of _bfd_gc_sections field.
369 * libbfd.h: Rebuild.
370
371 Fri Sep 4 13:54:23 1998 David Miller <davem@dm.cobaltmicro.com>
372
373 * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust
374 the addend of a dynamic relocation referencing a section.
375 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
376 (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset.
377
378 Thu Sep 3 17:28:50 1998 Richard Henderson <rth@cygnus.com>
379
380 * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the
381 bed has a size_dynamic_sections routine before trying to use it.
382
383 Mon Aug 31 14:49:22 1998 Richard Henderson <rth@cygnus.com>
384
385 * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use
386 _bfd_elf_rel_vtable_reloc_fn.
387
388 Mon Aug 31 10:23:40 1998 Catherine Moore <clm@cygnus.com>
389
390 * Makefile.am: Add elf32-arm.c.
391 * Makefile.in: Rebuild.
392 * elf-bfd.h: Add elf_backend_get_symbol_type.
393 * elf.c (swap_out_syms): If defined, call
394 elf_backend_get_symbol_type.
395 * elf32-arm.c: Define elf_backend_get_symbol_type.
396 (elf32_arm_get_symbol-type): New routine.
397 (record_thumb_to_arm_glue): Change to use STT_ARM_TFUNC.
398 (bfd_elf32_arm_process_before_allocation): Change to
399 check for STT_ARM_TFUNC.
400 (elf32_arm_final_link_relocate): Likewise.
401 * elfxx-target.h: Add elf_backend_get_symbol_type.
402
403 Fri Aug 28 19:44:07 1998 Richard Henderson <rth@cygnus.com>
404
405 * archures.c (bfd_mach_alpha_ev[456]): New.
406 * cpu-alpha.c: Rework to match these types.
407 * bfd-in2.h: Rebuild.
408
409 Fri Aug 28 19:38:53 1998 Richard Henderson <rth@cygnus.com>
410
411 * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare.
412 * elf.c (_bfd_elf_rel_vtable_reloc_fn): New.
413
414 * elf32-i386.c (elf_howto_table): Add vtable relocs.
415 (elf_i386_reloc_type_lookup): Recognize them.
416 (elf_i386_check_relocs): Pass them off to generic code.
417 (elf_i386_relocate_section): Ignore them.
418 (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New.
419 (elf_backend_can_gc_sections): True.
420
421 Thu Aug 20 15:03:45 1998 Nick Clifton <nickc@cygnus.com>
422
423 * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL
424 before looking at owner field.
425 (elf32_arm_to_thumb_stub): Ditto.
426 (elf32_arm_relocate_section): Compute name before calling
427 elf32_arm_final_link_relocate().
428
429 Thu Aug 20 11:30:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
430
431 * elf.c: comment and formatting cleanups.
432 * elfcore.h: ditto.
433
434 Wed Aug 19 15:43:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
435
436 * elfcode.h (elf_object_p): Reject files of header type ET_CORE
437 (core files are treated differently than object files).
438 * elf-bfd.h (_bfd_elf_write_corefile_contents,
439 bfd_elf_mkcorefile): declare.
440 * elfxx-target.h (_bfd_elf_write_corefile_contents,
441 bfd_elf_mkcorefile): add to bfd_target vector.
442 * elfcore.h (elf_core_file_p): save the program header table,
443 and set the bfd architecture from the elf file header.
444 * elf.c (bfd_elf_mkcorefile): new function.
445 (_bfd_elf_write_corefile_contents): new function.
446 (assign_file_positions_for_segments): add cases for handling
447 PT_NOTE segments. (assign_file_positions_except_relocs):
448 core files should be handled the same as exec files.
449 (prep_headers): identify core files as type ET_CORE.
450 (copy_private_bfd_data): identify the sections belonging to
451 the PT_NOTE segment.
452
453 * elf32-sparc.c (elf32_sparc_final_write_processing):
454 add break statement to default case.
455
456 1998-08-19 Vladimir N. Makarov <vmakarov@cygnus.com>
457
458 * elf32-ppc.c (ppc_elf_relocate_section): Check that output
459 section (not input) will be in sections ".sbss", ".sbss2",
460 ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL,
461 R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA. In all these cases also ignore
462 output_offset for correct evaluation of addend.
463
464 Tue Aug 18 11:48:12 1998 Catherine Moore <clm@cygnus.com>
465
466 * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking,
467 elf32_arm_allocate_interworking_sections and
468 elf32_arm_process_before_allocation.
469
470 Tue Aug 18 11:46:00 1998 Nick Clifton <nickc@cygnus.com>
471
472 * bfd-in.h: Ammend prototype for
473 elf32_arm_process_before_allocation to remove surplus third
474 argument.
475
476 * bfd-in2.h: Regenerate.
477
478 Sat Aug 15 20:55:08 1998 Richard Henderson <rth@cygnus.com>
479
480 * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols.
481
482 Fri Aug 14 09:12:28 1998 Stan Cox <scox@cygnus.com>
483
484 * aoutx.h (aout_link_input_section_ext): Use the relocation already
485 calculated for RELOC_SPARC_REV32 case.
486
487 Thu Aug 13 14:02:02 1998 Catherine Moore <clm@cygnus.com>
488
489 * bfd-in.h: Add prototypes for elf32_arm_get_bfd_for_interworking,
490 elf32_arm_allocate_interworking_sections and
491 elf32_arm_process_before_allocation.
492 * bfd-in2.h: Regenerated.
493 * elf32-arm.c Define elf32_arm_link_hash_table.
494 (insert_thumb_branch): New routine.
495 (find_thumb_glue): New routine.
496 (find_arm_glue): New routine.
497 (record_arm_to_thumb_glue): New routine.
498 (record_thumb_to_arm_glue): New routine.
499 (elf32_arm_link_hash_table_create): New routine.
500 (elf32_arm_get_bfd_for_interworking): New routine.
501 (elf32_arm_allocate_interworking_sections) New routine.
502 (elf32_arm_process_before_allocation) New routine.
503 (elf32_thumb_to_arm_stub): New routine.
504 (elf32_arm_to_thumb_stub): New routine.
505 (elf32_print_private_bfd_data): Fix typo.
506 (elf32_arm_final_link_relocate): Add argument sym_sec.
507 Check for branches to thumb symbols in case R_ARM_PC24.
508 Check for branches to arm symbols in case R_ARM_THM_PC22.
509 (elf32_arm_relocate_section): Pass symbol section to
510 elf32_arm_final_link_relocate.
511
512 Wed Aug 12 19:00:39 1998 Geoff Keating <geoffk@ozemail.com.au>
513
514 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT
515 entries unless the symbol is defined in the executable; in
516 particular, undefined weak symbols get a PLT entry.
517
518 Wed Aug 12 14:48:33 1998 Ian Lance Taylor <ian@cygnus.com>
519
520 * libaout.h: Remove nested comment to avoid warning.
521
522 Wed Aug 12 08:10:11 1998 Catherine Moore <clm@cygnus.com>
523
524 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
525 R_ARM_PC24 relocation.
526
527 Tue Aug 11 14:42:26 1998 Catherine Moore <clm@cygnus.com>
528
529 * elf32-arm.c (elf32_arm_final_link_relocate): Remove unused
530 argument is_local. Add argument sym_flags. Check sym_flags
531 in R_ARM_ABS32 case. Include addend for R_ARM_THM_PC22 case.
532 (elf32_arm_relocate_section): Don't pass local sym and pass
533 sym_flags to elf32_arm_final_link_relocate.
534
535 Mon Aug 10 20:38:39 1998 Richard Henderson <rth@cygnus.com>
536
537 * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change
538 to not count too few relocs for dynamicly linked executables.
539
540 Mon Aug 10 15:35:34 1998 Richard Henderson <rth@cygnus.com>
541
542 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider
543 symbols without a dynamic index dynamic. Consider all weak
544 symbols dynamic.
545 (elf64_alpha_strip_section_from_output): Don't assume 1-1
546 correspondance between input and output sections.
547
548 Mon Aug 10 15:31:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
549
550 * elflink.h (elf_gc_common_finalize_got_offsets): For backends
551 that use a .got.plt section start the got offset at zero.
552
553 Mon Aug 10 17:31:21 1998 Ian Lance Taylor <ian@cygnus.com>
554
555 * ieee.c (ieee_write_processor): Correct the processor ID written
556 out for bfd_arch_m68k, accommodating change of March 25.
557
558 Sun Aug 9 20:55:44 1998 Catherine Moore <clm@cygnus.com>
559
560 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
561 R_ARM_THM_RPC22 relocations.
562
563 Sat Aug 8 15:15:30 1998 Richard Henderson <rth@cygnus.com>
564
565 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols
566 are always dynamic.
567 (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE
568 .got relocs in -Bsymbolic shared objects.
569
570 Wed Aug 5 15:48:08 1998 Nick Clifton <nickc@cygnus.com>
571
572 * elf32-arm.c: Add private flags to ELF header.
573 (elf32_arm_print_private_bfd_data): New Function.
574 (elf32_arm_set_private_flags): New Function.
575 (elf32_arm_copy_private_flags): New Function.
576 (elf32_arm_merge_private_bfd_data): New Function.
577
578 Mon Aug 3 17:10:15 1998 Ian Lance Taylor <ian@cygnus.com>
579
580 * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against
581 a local symbol.
582 (elf32_sparc_relocate_section): Likewise.
583
584 Sun Aug 2 03:19:23 1998 Richard Henderson <rth@cygnus.com>
585
586 * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL. Create the
587 .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_.
588 (ppc_elf_relocate_section): Pull sgot and splt search to the start
589 of the function. Recognize no .plt as static linking.
590
591 1998-08-01 Ulrich Drepper <drepper@cygnus.com>
592
593 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass
594 ".liblist" string through gettext.
595
596 Fri Jul 31 16:38:14 1998 Catherine Moore <clm@cygnus.com>
597
598 * Makefile.am: Add support for elf32-arm.lo.
599 * Makefile.in: Rebuild.
600 * config.bfd (arm-*-elf): Define targ_defvec and targ_selvecs.
601 (thumb-*-elf): Define targ_defvec and targ_selvecs.
602 * configure.in: Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec.
603 * configure: Regenerate.
604 * elf.c: (prep_headers): Support arch_type of EM_ARM.
605 * targets.c: Support new targets bfd_elf32_bigarm_vec and
606 bfd_target bfd_elf32_littlearm_vec.
607 * elf32-arm.c: New file.
608
609 Tue Jun 28 19:05:28 1998 Stan Cox <scox@cygnus.com>
610
611 * libaout.h (M_SPARCLITE_LE): New machine.
612 * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE.
613 * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE.
614 (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le
615 * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32.
616 (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le
617 (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support.
618 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
619 elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32
620 * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to
621 be BFD_RELOC_SPARC_REV32.
622 * reloc.c: Ditto.
623 * config.bfd (sparc86x-*-aout): New
624
625 Fri Jul 24 13:54:19 1998 Nick Clifton <nickc@cygnus.com>
626
627 * linker.c (_bfd_generic_final_link): Allocate NULL symbol before
628 actually mapping the output sections.
629
630 Fri Jul 24 11:24:29 1998 Jeffrey A Law (law@cygnus.com)
631
632 start-sanitize-am33
633 * elf-m10300.c (mn10300_elf_relax_section): Fix typo when relaxing
634 from 24bit operand to an 8bit operand.
635
636 * elf-m10300.c (mn10300_elf_relax_section): Do not relax "dmul",
637 "dmulu", "dmach", "dmachu" with 32bit operands.
638 end-sanitize-am33
639
640 * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry.
641 (mn10300_elf_reloc_map): Similarly.
642 (mn10300_elf_final_link_relocate): Handle R_MN10300_24.
643 start-sanitize-am33
644 (mn10300_elf_relax_section): Support relaxing on the am33.
645 end-sanitize-am33
646
647 Fri Jul 24 12:36:04 1998 Ian Lance Taylor <ian@cygnus.com>
648
649 start-sanitize-r5900
650 The value of R_MIPS15_S3 has changed:
651 * elf32-mips.c (elf_mips15_s3_howto): New static variable.
652 (mips_reloc_map): Remove BFD_RELOC_MIPS15_S3.
653 (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS15_S3
654 specially.
655 (mips_info_to_howto_rel): Handle R_MIPS15_S3 specially.
656 (mips_elf_relocate_section): Check for R_MIPS15_S3.
657
658 end-sanitize-r5900
659 * elf32-mips.c (elf_mips_howto_table): Add reloc types used on
660 Irix 6.
661 (bfd_elf32_bfd_reloc_type_lookup): Add default case.
662 * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with
663 elf_mips_reloc_type defined in elf/mips.h.
664
665 1998-07-24 Ulrich Drepper <drepper@cygnus.com>
666
667 * elf64-mips.c: Remove reloc_type definition completely. It's now
668 in elf/mips.h.
669
670 Thu Jul 23 13:33:19 1998 Doug Evans <devans@canuck.cygnus.com>
671
672 * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations
673 as they are defined in elf/mips.h now.
674
675 Thu Jul 23 11:29:43 1998 Jeffrey A Law (law@cygnus.com)
676
677 start-sanitize-am33
678 * elf-m10300.c (compute_function_info): Keep track of stack space
679 needed by am33 movm instruction variant.
680 end-sanitize-am33
681
682 * Re-add lost change:
683 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
684 "movm_stack_size".
685 (mn10300_elf_relax_section): Include stack space for register saves
686 in the imm8 field of a "call" instruction.
687 (compute_function_info): Determine how much stack is allocated by
688 the movm instruction. Fix typo.
689 (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
690
691 Thu Jul 23 11:38:05 1998 Ian Lance Taylor <ian@cygnus.com>
692
693 * elf32-sparc.c (elf_backend_got_header_size): Define as 4.
694 * elf64-sparc.c (elf_backend_got_header_size): Define as 8.
695
696 1998-07-22 Ulrich Drepper <drepper@cygnus.com>
697
698 * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type.
699
700 Wed Jul 22 16:27:18 1998 Nick Clifton <nickc@cygnus.com>
701
702 * elf32-hppa.h: Let ELF header define the enum containing the
703 external reloc numbers.
704 * elf32-i386.h: Likewise.
705
706 1998-07-22 14:57 Ulrich Drepper <drepper@cygnus.com>
707
708 * elf-m10300.c: Let ELF header now define the macros to get the enum.
709 * elf32-mips.c: Likewise.
710 * elf32-ppc.c: Likewise.
711
712 Wed Jul 22 13:53:52 1998 Nick Clifton <nickc@cygnus.com>
713
714 * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in
715 bfd_coff_set_symbol_class(), in order to avoid K&R compatability
716 prblems.
717 * bfd-in.h: Regenerate.
718 * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class'
719 parameter to 'unsigned int' to avoid K&R compatability problems.
720
721 Wed Jul 22 16:43:24 1998 Ian Lance Taylor <ian@cygnus.com>
722
723 * ieee.c (ieee_find_nearest_line): Change filename_ptr and
724 functionname_ptr to be const. Change line_ptr to be unsigned.
725
726 * coffcode.h (coff_link_output_has_begun): Simplify handling when
727 macro is not defined. Change second parameter from bfd_link_info
728 to coff_final_link_info. Add prototype.
729 (coff_final_link_postscript): Simplify handling when macro is not
730 defined. Add prototype.
731
732 1998-07-22 13:08 Ulrich Drepper <drepper@cygnus.com>
733
734 * elf-mn10300.c: Before include system specific ELF header define
735 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS.
736 * elf32-mips.c: Likewise.
737 * elf32-ppc.c: Likewise.
738
739 Wed Jul 22 13:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
740
741 * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c
742 temporary patch over to elf64-mips.c as well.
743
744 1998-07-21 Ulrich Drepper <drepper@cygnus.com>
745
746 * elf32-mips.c (reloc_type): Temporarily disable definition of
747 standard relocation since they are now defined in elf/mips.h.
748
749 Tue Jul 21 09:47:00 1998 Catherine Moore <clm@cygnus.com>
750
751 * elf-m10200.c (mn10200_elf_final_link_relocate):
752 Modify range test for case R_MN10200_8.
753
754 * elf-m10300.c (mn10300_elf_final_link_relocate):
755 Modify range test for case R_MN10300_8.
756
757 Mon Jul 20 18:50:54 1998 Richard Henderson <rth@cygnus.com>
758
759 * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size.
760 * elf32-i386.c (elf_backend_got_header_size): Define.
761 (elf_backend_plt_header_size): Define.
762 * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise.
763 * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise.
764 * elfxx-target.h: Provide a default of zero.
765 * elflink.c (_bfd_elf_create_got_section): Use got_header_size.
766 * elflink.h (elf_gc_common_finalize_got_offsets): Likewise.
767
768 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT
769 entry from an executable, even if the plt refcount goes to 0.
770
771 Mon Jul 20 12:47:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
772
773 * aoutx.h (NAME(aout,find_nearest_line)): Also remember the
774 directory name at the line number.
775
776 * elf.c (_bfd_elf_find_nearest_line): Also consider symbols
777 with an unspecified type.
778
779 Wed Jul 15 11:20:01 1998 Ian Lance Taylor <ian@cygnus.com>
780
781 * sunos.c: Add undef of valid to avoid problem on SunOS.
782
783 start-sanitize-beos
784 Tue Jul 14 15:30:59 1998 Richard Henderson <rth@cygnus.com>
785
786 * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize.
787
788 end-sanitize-beos
789 Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
790
791 * elf32-m68k.c (elf_m68k_check_relocs): Also reference count
792 R_68K_PCxx and R_68K_xx relocations. Make sure that
793 ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
794 (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
795 R_68K_xx relocations.
796 (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
797 that has no plt entry.
798 (elf_m68k_relocate_section): Ignore the plt offset in a static
799 link.
800 * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
801 an ignored symbol.
802 (elf_gc_common_finalize_got_offsets): Set the got offsets also in
803 a static link.
804
805 * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
806 types.
807 (howto_table, reloc_map): Add entries for them.
808 (elf_m68k_check_relocs): Handle them. Implement reference
809 counting for got and plt entries.
810 (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
811 (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
812 symbols.
813 (rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
814 (elf_m68k_relocate_section): Handle the new reloc types.
815 (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
816 elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
817 * elflink.h (elf_link_add_object_symbols): When creating an
818 indirect reference for symbol versioning also copy the plt
819 offset.
820 (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
821 flag also reset the plt offset.
822 (elf_link_assign_sym_version): Likewise.
823 (elf_gc_common_finalize_got_offsets): Increment the got offset by
824 the size of the entry in bytes.
825 (elf_gc_allocate_got_offsets): Likewise.
826
827 Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com>
828
829 * elflink.h (elf_gc_sections): Return true rather than falling off
830 the bottom.
831
832 * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not
833 xmalloc.
834
835 Mon Jul 13 11:06:31 1998 Nick Clifton <nickc@cygnus.com>
836
837 * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a
838 comment describing when it should be enabled.
839 Changed definition of USER_LABEL_PREFIX to "", to fall into line
840 with GCC sources.
841
842 Mon Jul 13 13:06:54 1998 Ian Lance Taylor <ian@cygnus.com>
843
844 * ieee.c (ieee_slurp_external_symbols): Handle call optimization
845 information ATN records.
846
847 Fri Jul 10 16:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
848
849 * ieee.c (ieee_slurp_external_symbols): Select an appropriate
850 section for an absolute symbol in a fully linked file. Based on
851 patch from Christian Holland <CHolland@de.lucent.com>.
852
853 Wed Jul 8 11:29:56 1998 Manfred Hollstein <manfred@s-direktnet.de>
854
855 * coff-m88k.c (m88k_special_reloc): Don't lose the information
856 that a symbol is undefined.
857
858 Tue Jul 7 21:47:02 1998 Jeffrey A Law (law@cygnus.com)
859
860 * som.c (som_bfd_gc_sections): Define.
861
862 Mon Jul 6 11:35:50 1998 Nick Clifton <nickc@cygnus.com>
863
864 * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about
865 overflows in ARM_26D patches, since they have already been
866 implmented. Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk>
867
868 Sat Jul 4 12:25:36 1998 Ian Lance Taylor <ian@cygnus.com>
869
870 * coffcode.h (coff_write_object_contents): If we have any long
871 section names, call coff_write_symbols even if there are no
872 symbols.
873
874 Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com>
875
876 * elf.c (copy_private_bfd_data): Only set phdr_included once for a
877 PT_LOAD segment, rather than only setting it once for the entire
878 file.
879
880 * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
881 rather than ignoring every phdr with a p_paddr of 0, ignore all
882 the phdrs if they all have a p_paddr of 0.
883
884 * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr
885 section was discarded from the link.
886
887 Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
888
889 * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number.
890
891 Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
892
893 * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with
894 floating point operations.
895
896 Thu Jul 2 18:37:25 1998 Ian Lance Taylor <ian@cygnus.com>
897
898 * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global
899 function symbols.
900
901 Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de>
902
903 Merge of vax/vms (read-only) support
904 * configure.com: Support Vax target.
905 * makefile.vms: Support Vax target.
906 * vms.h: Renamed from evax.h, merged vax/vms (read-only) support.
907 * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only)
908 support.
909 * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only)
910 support.
911 * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only)
912 support.
913 * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only)
914 support.
915 * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only)
916 support.
917 * libbfd.c (real_read): Use unbuffered read on VMS/Vax.
918 * targets.c (bfd_target_ovax_flavour): New flavour.
919 (vms_alpha_vec): Renamed from evax_alpha_vec.
920 (vms_vax_vec): New.
921 (target_vector): Update accordingly.
922 * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not
923 evax_alpha_vec.
924 (vax*-*-*vms*): New target.
925 * Makefile.am: Update for renamed files. Rebuild dependencies.
926 * bfd-in2.h: Rebuild.
927 * configure.in, Makefile.in, aclocal.m4: Rebuild.
928
929 Thu Jul 2 13:31:55 1998 Ian Lance Taylor <ian@cygnus.com>
930
931 Based on patch from Matt Semersky <matts@scd.hp.com>:
932 * linker.c (_bfd_generic_final_link): Force a trailing NULL
933 pointer on abfd->outsymbols.
934 (generic_add_output_symbol): Handle NULL sym parameter.
935
936 Wed Jul 1 17:05:53 1998 Nick Clifton <nickc@cygnus.com>
937
938 * elf.c (copy_private_bfd_data): Add support for changing VMA or
939 LMA of sections.
940
941 Wed Jul 1 16:58:50 1998 Ian Lance Taylor <ian@cygnus.com>
942
943 * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons
944 when handling 32 bit immediate relocs.
945 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
946
947 Tue Jun 30 09:55:03 1998 Jeffrey A Law (law@cygnus.com)
948
949 * section.c (STD_SECTION): Account for recently added gc_mark
950 field in struct asection.
951
952 * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function.
953 (bfd_elf32_bfd_merge_private_bfd_data): Define.
954
955 Thu Jun 25 18:31:41 1998 Richard Henderson <rth@cygnus.com>
956
957 ELF Section-level Garbage Collection:
958 * bfd.c (bfd_gc_sections): New.
959 * aout-adobe.c: Hook to default implementation.
960 * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise.
961 * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise.
962 * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise.
963 * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise.
964 * tekhex.c, versados.c: Likewise.
965 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New.
966 * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections.
967
968 * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New.
969 (bfd_generic_gc_sections): New.
970 * section.c (SEC_KEEP): New.
971 (asection): Add gc_mark member.
972
973 * elfcode.h (elf_gc*): New name remappings.
974 * elflink.h (elf_link_input_bfd): Don't set contents on stabs
975 sections to be excluded.
976 (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New.
977 (elf_gc_propogate_vtable_entries_used): New.
978 (elf_gc_smash_unused_vtentry_relocs): New.
979 (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New.
980 (elf_gc_common_finalize_got_offsets): New.
981 (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New.
982 * elfxx-target.h: Add and default gc hooks.
983
984 * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset
985 for unions.
986 (struct elf_obj_tdata): Likewise for local_got_offsets.
987 * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses.
988 * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise.
989 * elf64-sparc.c, elflink.h: Likewise.
990
991 * elf-bfd.h (struct elf_link_hash_entry): Add vtable members.
992 (ELF_LINK_HASH_MARK): Define.
993 (struct elf_backend_data): Add GC hooks.
994 * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members.
995
996 * elf-m10300.c (mn10300_elf_check_relocs): New.
997 (mn10300_elf_gc_mark_hook): New.
998 (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New.
999 (elf_mn10300_howto, mn10300_reloc_map): Handle them.
1000 (mn10300_elf_final_link_relocate): Likewise.
1001 (mn10300_elf_relocate_section): Likewise.
1002 (elf_backend_can_gc_sections): Define.
1003 * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New.
1004 (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New.
1005 (bfd_elf32_bfd_reloc_type_lookup): Handle them.
1006 (mips_info_to_howto_rel): Likewise.
1007 (mips_elf_relocate_section): Likewise.
1008 (mips_elf_check_relocs): Likewise.
1009 (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New.
1010 (elf_backend_can_gc_sections): Define.
1011 * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New.
1012 (ppc_elf_howto_raw): Handle them.
1013 (ppc_elf_reloc_type_lookup): Likewise.
1014 (ppc_elf_relocate_section): Likewise.
1015 (ppc_elf_check_relocs): Reference count .got and .plt entires.
1016 Handle new vtable relocs.
1017 (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries.
1018 (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New.
1019 (elf_backend_can_gc_sections): Define.
1020
1021 Fri Jun 26 10:48:23 1998 Jeffrey A Law (law@cygnus.com)
1022
1023 * archures.c (bfd_mach_mn10300): Define.
1024 * elf-m10300.c: Include elf/mn10300.h
1025 (elf_mn10300_mach): New function.
1026 (_bfd_mn10300_elf_final_write_processing): Likewise.
1027 (_bfd_mn10300_elf_object_p): Likewise.
1028 (elf_backendfinal_write_processing): Define.
1029 (elf_backend_object_p): Likewise.
1030 start-sanitize-am33
1031 * archures.c (bfd_mach_am33): Define.
1032 * cpu-m10300.c (bfd_am33_arch): New arch info structure. Link it
1033 into the NEXT field of bfd_mn10300_arch.
1034 end-sanitize-am33
1035
1036 Thu Jun 25 18:31:08 1998 Nick Clifton <nickc@cygnus.com>
1037
1038 * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S
1039 relocation.
1040
1041 Wed Jun 24 17:17:57 1998 Ian Lance Taylor <ian@cygnus.com>
1042
1043 * elflink.h (elf_bfd_final_link): Loop over input_bfds using the
1044 link_next field, not the next field.
1045
1046 Sun Jun 21 19:38:39 1998 Ian Lance Taylor <ian@cygnus.com>
1047
1048 * elf.c (map_sections_to_segments): Check the section address
1049 against the phdr size both with and without a modulo of
1050 maxpagesize.
1051
1052 Fri Jun 19 17:08:18 1998 Ian Lance Taylor <ian@cygnus.com>
1053
1054 * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a
1055 linker created empty input section if the output section has the
1056 same name.
1057
1058 * elflink.h (elf_link_output_extsym): Print an error message if
1059 _bfd_elf_section_from_bfd_section fails.
1060
1061 * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on
1062 failure.
1063
1064 start-sanitize-sky
1065 Thu Jun 18 23:59:30 1998 Doug Evans <devans@seba.cygnus.com>
1066
1067 * reloc.c: New relocs BFD_RELOC_MIPS_DVP_11_S4,
1068 BFD_RELOC_MIPS_DVP_U15_S3.
1069 * elf32-mips.c: Handle them.
1070 * bfd-in2.h: Regenerate.
1071 * libbfd.h: Regenerate.
1072
1073 end-sanitize-sky
1074 Tue Jun 16 11:55:55 1998 Ian Lance Taylor <ian@cygnus.com>
1075
1076 * elf.c (copy_private_bfd_data): Improve handling of Solaris
1077 native linker output. Avoid putting an empty section in more than
1078 one segment.
1079
1080 Fri Jun 12 13:30:17 1998 Tom Tromey <tromey@cygnus.com>
1081
1082 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
1083 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
1084
1085 Fri Jun 12 13:34:02 1998 Doug Evans <devans@canuck.cygnus.com>
1086
1087 * elf.c (swap_out_syms): New arg relocatable_p.
1088 Don't add section VMA to symbols for relocatable output.
1089 (_bfd_elf_compute_section_file_positions): Update call to
1090 swap_out_syms.
1091
1092 Mon Jun 8 15:20:57 1998 Nick Clifton <nickc@cygnus.com>
1093
1094 * elf32-v850.c (v850_elf_perform_relocation): Make comparisons
1095 against 'addend' be signed rather than unsigned.
1096
1097 Sat Jun 6 00:31:21 1998 Nick Clifton <nickc@cygnus.com>
1098
1099 * elf32-m32r.c: Add prototyps for static functions.
1100
1101 * coff-arm.c: Add prototypes for static functions.
1102
1103 Fri Jun 5 17:21:51 1998 Nick Clifton <nickc@cygnus.com>
1104
1105 * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the
1106 LMA is used to order sections in a segment.
1107
1108 * elf32-v850.c: Add prototypes for static functions.
1109 Change type of addend parameter to bfd_vma in various functions.
1110
1111 Fri Jun 5 18:09:58 1998 Ian Lance Taylor <ian@cygnus.com>
1112
1113 * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use
1114 complain_overflow_signed instead of complain_overflow_bitfield.
1115
1116 Fri Jun 5 15:11:11 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1117
1118 * elf.c (elf_map_symbols): Don't add section VMA to symbol value
1119 when comparing against 0.
1120
1121 Wed Jun 3 17:52:49 1998 Ian Lance Taylor <ian@cygnus.com>
1122
1123 * Makefile.am (config.status): New target.
1124 * Makefile.in: Rebuild.
1125
1126 start-sanitize-sky
1127 Wed Jun 3 11:39:57 1998 Doug Evans <devans@canuck.cygnus.com>
1128
1129 * elf32-mips.c (_bfd_mips_elf_fake_sections): Update to use
1130 Elf32_Dvp_External_Overlay instead of 64 bit version.
1131
1132 end-sanitize-sky
1133 Wed Jun 3 12:18:24 1998 Stan Cox <scox@equinox.cygnus.com>
1134
1135 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an
1136 error if previous object endianness doesn't match current object.
1137
1138 Tue Jun 2 17:50:59 1998 Nick Clifton <nickc@cygnus.com>
1139
1140 * elf32-v850.c (v850_elf_print_private_bfd_data): Call
1141 _bfd_elf_print_private)bfd_data ().
1142
1143 Tue Jun 2 15:29:35 1998 Ian Lance Taylor <ian@cygnus.com>
1144
1145 * elflink.h (elf_merge_symbol): Don't always set type_change_ok
1146 and size_change_ok.
1147 (elf_link_add_object_symbols): Set type_change_ok and
1148 size_change_ok before calling elf_merge_symbol.
1149
1150 * elf32-mips.c (mips_elf_relocate_section): If we issue an
1151 undefined symbol error, don't also issue an overflow error.
1152
1153 Tue Jun 2 13:51:00 1998 Geoff Keating <geoffk@ozemail.com.au>
1154
1155 * elf32-ppc.c (ppc_elf_relocate_section): The target of an
1156 R_PPC_LOCAL24PC relocation should be local; if not, print an error
1157 message instead of crashing.
1158
1159 Mon Jun 1 18:23:12 1998 Yuli Barcohen <yuli.barcohen@telrad.co.il>
1160
1161 * archures.c (bfd_mach_cpu32): Define.
1162 (bfd_default_scan): Add case for 68060. Fix 68332 case to use
1163 bfd_mach_cpu32.
1164 * cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
1165 * ieee.c: Include <ctype.h>.
1166 (ieee_object_p): Parse out process ID string to make it more
1167 likely to be acceptable for bfd_scan_arch.
1168 * bfd-in2.h: Rebuild.
1169
1170 Mon Jun 1 11:12:02 1998 Nick Clifton <nickc@cygnus.com>
1171
1172 * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call
1173 _bfd_elf_print_private_bfd_data() so that the program header will
1174 be displayed.
1175
1176 Mon Jun 1 12:14:28 1998 Ian Lance Taylor <ian@cygnus.com>
1177
1178 * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than
1179 0x68. Reindent. Add some comments.
1180
1181 start-sanitize-sky
1182 Sun May 31 16:11:22 1998 Doug Evans <devans@canuck.cygnus.com>
1183
1184 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Set sh_link
1185 field of .DVP.ovlytab to .DVP.ovlystrtab's section index.
1186 (_bfd_mips_elf_section_from_shdr): Recognize SHT_DVP_OVERLAY_TABLE
1187 and SHT_DVP_OVERLAY.
1188 (_bfd_mips_elf_fake_sections): Ditto.
1189
1190 end-sanitize-sky
1191 Fri May 29 09:58:08 1998 Nick Clifton <nickc@cygnus.com>
1192
1193 * elf.c (copy_private_bfd_data): Adjust physical address of
1194 segment in output BFD to contain LMAs of its sections.
1195
1196 Tue May 26 19:37:47 1998 Stan Cox <scox@equinox.cygnus.com>
1197
1198 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
1199 elf32_sparc_relocate_section): Added R_SPARC_32LE for little
1200 endian data 32 bit relocations.
1201 (elf32_sparc_merge_private_bfd_data): Check if linking little
1202 endian objects with big endian objects.
1203 (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le.
1204 (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags.
1205 * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE.
1206 * reloc.c: Same.
1207 * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le
1208 * archures.c (bfd_mach_sparc_sparclite_le): New.
1209 * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New.
1210
1211 Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com>
1212
1213 * peicode.h (add_data_entry): Fix precedence of operators in if ()
1214 statement.
1215
1216 Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com>
1217
1218 * bfd-in.h: Move over patch to bfd-in2.h.
1219
1220 * reloc.c (bfd_check_overflow): Add casts before shifts which may
1221 not fit in 32 bits.
1222 (_bfd_relocate_contents): Likewise.
1223
1224 Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com>
1225
1226 * peicode.h (add_data_entry): If the section has no private data
1227 then do not create a Data Dictionary entry for it.
1228
1229 Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com>
1230
1231 * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes.
1232 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots,
1233 elf64_alpha_size_got_sections): Rewrite, handling multiple got
1234 subsections during relaxation more correctly.
1235
1236 Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com>
1237
1238 * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class ().
1239 Add extra argument to bfd_arm_process_before_allocation ().
1240 * bfd-in.h: Reflect changes made in bfd-in2.h.
1241 * coffgen.c (bfd_coff_set_symbol_class): New function. Set the
1242 coff class of a BFD symbol.
1243 * coff-arm.c: Add support for interworking between Thumb code and
1244 non-interworking aware ARM code.
1245
1246 Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com)
1247
1248 * po/Make-in (install-info): New target.
1249
1250 Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
1251
1252 * filemode.c: Remove; not used.
1253
1254 If sysdep.h includes a header file, don't include it again:
1255 * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or
1256 <errno.h>.
1257 * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than
1258 <sysdep.h>.
1259 * archive.c: Don't include <string.h> or <errno.h>.
1260 * evax-alpha.c; Don't include <stdio.h>.
1261 * evax-egsd.c: Likewise.
1262 * evax-etir.c: Likewise.
1263 * evax-misc.c: Likewise.
1264 * evax-emh.c: Likewise. Also, don't include <sys/types.h>.
1265 * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or
1266 <errno.h>.
1267 * hpux-core.c: Likewise.
1268 * netbsd-core.c: Likewise.
1269 * som.c: Likewise.
1270 * libbfd.c: Don't include <sys/types.h>.
1271 * nlmcode.h: Don't include <string.h>.
1272 * osf-core.c: Don't include <string.h> or <stdio.h>.
1273 * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>,
1274 <errno.h>, or <unistd.h>.
1275 * trad-core.c: Don't include <stdio.h> or <sys/types.h>.
1276
1277 Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de>
1278
1279 * configure.com: If the version number can not be found in
1280 configure.in, set it to "unknown" rather than "2.8.1".
1281
1282 Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com>
1283
1284 * elf32-mips.c (elf_mips_mach): New.
1285 (_bfd_mips_elf_object_p): Use elf_mips_mach.
1286 (_bfd_mips_elf_final_write_processing): Use the names
1287 of machines, rather than the numbers. Set both the ARCH
1288 and MACH in e_flags. Handle a few more specific machines.
1289 (_bfd_mips_elf_merge_private_bfd_data): Merge both
1290 EF_MIPS_ARCH and EF_MIPS_MACH.
1291
1292 Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com>
1293
1294 * syms.c (bfd_is_local_label): Revert last change.
1295 * srec.c (srec_write_symbols): Discard debugging symbols.
1296
1297 Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com>
1298
1299 * som.c: Include <ctype.h>.
1300 * som.h: Don't include sysdep.h.
1301
1302 Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com>
1303
1304 * libbfd.h: Rebuilt.
1305 * libbfd-in.h: Removed gettext includes and defines.
1306 * sysdep.h: Moved gettext-related includes and defines here.
1307
1308 Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com>
1309
1310 * srec.c (srec_write_symbols): Use bfd_is_local_label rather than
1311 an ad-hoc test. Kill bogus #if 0 code.
1312 * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local.
1313
1314 Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com>
1315
1316 * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address
1317 when generating a normal executable for a symbol defined in a
1318 regular file. When copying a reloc into the output file, adjust
1319 the addend for a PC relative reloc against a global symbol.
1320
1321 Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com>
1322
1323 * libbfd.h: Rebuilt.
1324 * libbfd-in.h (_): Define as dgettext.
1325
1326 Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com>
1327
1328 * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma,
1329 not signed.
1330 * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS
1331 when declaring parameter types.
1332 (pe_saved_coff_bfd_copy_private_bfd_data): Likewise.
1333
1334 Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com>
1335
1336 * config.bfd: If we include any ELF targets in targ_defvec and/or
1337 targ_selvecs, then add the generic ELF targets to targ_selvecs.
1338 * elf32-gen.c (dummy): New static const variable.
1339 (elf_generic_info_to_howto): New static function.
1340 (elf_generic_info_to_howto_rel): New static function.
1341 (elf_info_to_howto): Define as elf_generic_info_to_howto.
1342 (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel.
1343 * elf64-gen.c: Same changes as elf32-gen.c.
1344 * elfcode.h (elf_object_p): For the generic target, ignore a
1345 failure of bfd_default_set_arch_mach. Fix indentation a bit.
1346
1347 Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com>
1348
1349 * configure.in (WIN32LIBADD): Add -lintl on cygwin32.
1350 * configure: Rebuild.
1351
1352 Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com)
1353
1354 * config.bfd: Update OSR5/Unixware patterns.
1355
1356 Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com>
1357
1358 * elf.c (assign_file_positions_for_segments): Allow for holes
1359 between sections added by a link script.
1360
1361 Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com>
1362
1363 * configure.in: Change version number to 2.9.4
1364 * configure: Rebuild.
1365
1366 Based on patch from H.J. Lu <hjl@gnu.org>:
1367 * elf.c (bfd_elf_get_bfd_needed_list): New function.
1368 * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare.
1369 * bfd-in2.h: Rebuild.
1370
1371 Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com>
1372
1373 * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other.
1374 Change all users.
1375
1376 Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com>
1377
1378 * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members.
1379 (elf64_alpha_relax_section): Fill them in.
1380 (elf64_alpha_relax_opt_call): Implement more than a stub.
1381 (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default
1382 alignment on .scommon.
1383 (elf64_alpha_merge_gots): Merge use counts as well.
1384
1385 Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com>
1386
1387 * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section
1388 for calculating a local symbol's address.
1389 (elf64_alpha_calc_got_offsets): Skip entries with 0 use count.
1390 Set the .got's cooked size as well as the raw size.
1391
1392 Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com>
1393
1394 * elf32-v850.c (v850_elf_print_private_bfd_data): Add
1395 internationalisation of printed information.
1396
1397 * coff-arm.c (coff_arm_print_private_bfd_data): Add
1398 internationalisation of printed information.
1399
1400 Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com>
1401
1402 * syms.c (struct indexentry): Change directory_name, file_name,
1403 and function_name fields to char *.
1404 (struct stab_find_info): Change cached_file_name field to char *.
1405
1406 Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com>
1407
1408 * peicode.h (dir_names): Add missing N_() macros to dir_names array.
1409
1410 Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
1411
1412 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
1413
1414 Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com>
1415
1416 * Makefile.am (install-data-local): Make $(includedir).
1417 * Makefile.in: Rebuild.
1418
1419 Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
1420
1421 * libbfd-in.h: Use `gettext' and not `dgettext' for now.
1422
1423 Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com>
1424
1425 * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl.
1426 * Makefile.in: Rebuild.
1427
1428 * bfd-in2.h: Rebuild for Nick's changes.
1429
1430 Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com>
1431
1432 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last
1433 change wrt length == max_namelen.
1434
1435 Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com>
1436
1437 * Many files: Added gettext invocations around user-visible
1438 strings.
1439 * libbfd-in.h: Added gettext includes and defines.
1440 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
1441 HAVE_LC_MESSAGES): Define.
1442 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
1443 po/Makefile.
1444 * Makefile.am (SUBDIRS): Added po.
1445 (POTFILES): New macro.
1446 (po/POTFILES.in): New target.
1447 (SOURCE_HFILES): New macro.
1448 (HFILES): Use it.
1449 * po/Make-in, po/POTFILES.in, po/bfd.pot: New files.
1450
1451 Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
1452
1453 * elfcore.h (bfd_prstatus): Copy core_prstatus from the first
1454 NT_PRSTATUS note section encountered, it contains the status of
1455 the currently executing thread when the core file was written.
1456
1457 Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com>
1458
1459 * libcoff.h: Add extra parameter to
1460 bfd_coff_link_output_has_begun overrideable function.
1461 * cofflink.c: Pass extra parameter to
1462 bfd_coff_link_output_has_begun function.
1463 * bfd-in.h: Add prototypes for exported ARM interworking
1464 functions.
1465 * peicode.h: ARM specific code reorganised to conform to BFD
1466 coding conventions.
1467 * coffcode.h: ARM specific code reorganised to conform to BFD
1468 coding conventions.
1469 * coff-arm.c: Code reorganised to conform to the BFD coding
1470 conventions. Global variables have been moved into an ARM
1471 specific hash table structure and a new function:
1472 bfd_arm_get_bfd_for_interworking() has been created which is
1473 called from the linker scripts.
1474
1475 Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com>
1476
1477 * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test.
1478
1479 * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from
1480 elf64_alpha_relax_find_reloc_ofs. Changed all callers.
1481 (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss.
1482 (elf64_alpha_size_got_sections): Don't merge .got sections twice.
1483
1484 Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
1485
1486 * config.bfd: Added sparc86x support.
1487
1488 Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com>
1489
1490 * elf32-mips.c (mips_elf_relocate_section): Do not complain about
1491 an out of range pc-relative jump/call to an undefined weak symbol.
1492
1493 Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com>
1494
1495 * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp
1496 comparisons signed.
1497
1498 Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com>
1499
1500 * archive.c (bfd_generic_archive_p): If a slurp subroutine returns
1501 an error other than bfd_error_system_call, set the error to
1502 bfd_error_wrong_format.
1503
1504 * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add
1505 bfd_elf32_powerpcle_vec.
1506
1507 * elf.c (copy_private_bfd_data): If all the p_paddr fields in the
1508 program segments are zero, don't set p_paddr_valid.
1509
1510 Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com>
1511
1512 * elf64-alpha.c: Initial implementation of relaxation --
1513 (struct alpha_elf_link_hash_entry): Add use_count member.
1514 (elf64_alpha_check_relocs): Initialize and increment it.
1515 (elf64_alpha_can_merge_gots): Check it when considering merging.
1516 (elf64_alpha_merge_gots): Drop entries with zero use.
1517 (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
1518 (elf64_alpha_always_size_sections): Split out got sizing ...
1519 (elf64_alpha_size_got_sections): ... here. New function.
1520 (elf64_alpha_relax_find_reloc_ofs): New function.
1521 (elf64_alpha_relax_with_lituse): Likewise.
1522 (elf64_alpha_relax_without_lituse): Likewise.
1523 (elf64_alpha_relax_opt_call): Likewise.
1524 (elf64_alpha_relax_section): Likewise.
1525 (elf64_alpha_add_symbol_hook): Likewise.
1526 (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16.
1527 (elf64_alpha_relocate_section): Likewise.
1528 (bfd_elf64_bfd_relax_section): Define.
1529 (elf_backend_add_symbol_hook): Likewise.
1530
1531 Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com>
1532
1533 * elf.c (prep_headers): Use new EM_SPARCV9 symbol.
1534 * elf64-sparc.c (ELF_MACHINE_CODE): Likewise.
1535 (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64.
1536
1537 Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com>
1538
1539 * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32.
1540 * configure: Rebuild.
1541
1542 Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com>
1543
1544 * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@.
1545 (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@.
1546 * configure.in: Define and substitute WIN32LDFLAGS and
1547 WIN32LIBADD.
1548 * aclocal.m4: Rebuild with new libtool.
1549 * configure, Makefile.in: Rebuild.
1550
1551 Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com>
1552
1553 * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol
1554 before any other symbols in the same section.
1555
1556 Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com>
1557
1558 * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF
1559 systems.
1560
1561 Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
1562
1563 * dwarf2.c (comp_unit): Move it earlier in the source. Add
1564 addr_size.
1565 (read_address): Replace 'bdf*' argument with 'comp_unit*' argument.
1566 Use addr_size for address size, rather than sizeof(bfd_vma).
1567 (read_attribute): Replace bdf* argument with 'comp_unit*' argument.
1568 Fix call to read_address.
1569 (decode_line_info): Replace bdf* argument with 'comp_unit*' argument.
1570 Scrap other unneeded arguments. Fix call to read_address.
1571 (scan_unit_for_functions): Fix call to read_attribute.
1572 (parse_comp_unit): We now handle more values for addr_size.
1573 Set addr_size in unit. Fix call to read_attribute and
1574 decode_line_info.
1575
1576 Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com>
1577
1578 * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null.
1579
1580 Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com>
1581
1582 * archures.c (bfd_default_scan): Add m68k cases back to default
1583 switch, reverting patch of March 25, since IEEE support depends
1584 upon them.
1585
1586 Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com>
1587
1588 * Makefile.am (diststuff): New target.
1589 * Makefile.in: Rebuild.
1590
1591 Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com)
1592
1593 * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of
1594 som_offset when we have an extended name table.
1595
1596 Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org>
1597
1598 * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before
1599 trying to copy it.
1600 * Makefile.in: Rebuild.
1601
1602 Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1603
1604 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section
1605 symbols when creating a shared library.
1606 (elf_m68k_adjust_dynindx): New function, used by above code.
1607 (elf_m68k_finish_dynamic_sections): Initialize the section
1608 symbols.
1609 (elf_m68k_relocate_section): Change abort to BFD_ASSERT.
1610
1611 Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com>
1612
1613 * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant
1614 value 11.
1615
1616 Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1617
1618 * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix
1619 assertion.
1620
1621 Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com)
1622
1623 * elf-m10300.c (mn10300_elf_relax_section): Correctly handle
1624 absolute symbols.
1625
1626 Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com>
1627
1628 * configure.in: Set version to 2.9.1.
1629 * configure: Rebuild.
1630
1631 * Branched binutils 2.9.
1632
1633 Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org>
1634
1635 * syms.c (ENABLE_CACHING): Define.
1636 (struct indexentry): Define.
1637 (struct stab_cache): Remove.
1638 (cmpindexentry): New static function.
1639 (struct stab_find_info): Add new fields: indextable,
1640 indextablesize, cached_indexentry, cached_offset, cached_stab, and
1641 cached_file_name. Remove fields: file_cache, function_cache, and
1642 line_cache.
1643 (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted
1644 index table and search it.
1645
1646 Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com>
1647
1648 * elf.c (_bfd_elf_copy_private_section_data): Call
1649 copy_private_bfd_data once we've seen the last SEC_ALLOC section.
1650
1651 * cpu-mips.c: Remove trailing comma at end of enumeration list.
1652
1653 Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com>
1654
1655 * coff-arm.c: Define all globally visible variables and functions
1656 only when COFF_WITH_PE is not defined.
1657 * configure.in (armpe_little_vec, armpe_big_vec): Add
1658 coff-arm.lo.
1659 * configure: Rebuild.
1660
1661 Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com>
1662
1663 Fix some gcc -Wall warnings:
1664 * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings.
1665 * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise.
1666 * archures.c (bfd_default_scan): Likewise.
1667 * bfd.c (bfd_scan_vma): Likewise.
1668 * binary.c (mangle_name): Likewise
1669 * coff-arm.c (aoutarm_fix_pcrel_26): Likewise.
1670 * coff-sh.c (sh_relocate_section): Likewise.
1671 * coff-stgo32.c (create_go32_stub): Likewise.
1672 * coffcode.h (coff_slurp_line_table): Likewise.
1673 * ecoff.c (_bfd_ecoff_write_armap): Likewise.
1674 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
1675 (assign_file_positions_for_segments): Likewise.
1676 * elf32-mips.c (mips_elf_relocate_section): Likewise.
1677 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
1678 * oasys.c (oasys_write_sections): Likewise.
1679 * ppcboot.c (ppcboot_object_p): Likewise.
1680 (mangle_name): Likewise.
1681 * riscix.c (riscix_fix_pcrel_26): Likewise.
1682 * srec.c (srec_scan): Likewise.
1683 * stabs.c (_bfd_write_section_stabs): Likewise.
1684 * sunos.c (sunos_add_dynamic_symbols): Likewise.
1685 * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to
1686 switch. Declare parameters for function pointers.
1687 * archures.c (bfd_default_scan): Add braces to avoid ambiguous if
1688 warning.
1689 * elf.c (elf_sort_sections): Likewise.
1690 * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation.
1691 Add default cases to switches.
1692 (coff_arm_relocate_section): Remove unused local variables.
1693 Always set rstat.
1694 (coff_arm_bfd_set_private_flags): Change flag variable to type
1695 flagword.
1696 * coff-mips.c (mips_relocate_section): Initialize use_lo.
1697 * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int.
1698 (dump_toc): Change cat to const, and initialize it.
1699 * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff.
1700 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
1701 (sh_elf_relocate_section): Initialize r_symndx.
1702 * coffcode.h (coff_compute_section_file_positions): Only declare
1703 old_sofar if ALIGN_SECTIONS_IN_FILE.
1704 (coff_write_object_contents): Initialize csym.
1705 * coffgen.c (coff_pointerize_aux): Make type and class unsigned.
1706 * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to
1707 switch.
1708 * dwarf2.c: Include libiberty.h.
1709 (read_2_signed_bytes, read_4_signed_bytes): Comment out.
1710 (decode_line_info): Remove unused local variables.
1711 * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise.
1712 (m32r_elf_relocate_section): Likewise.
1713 * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise.
1714 (v850_elf_reloc): Likewise.
1715 * elf-bfd.h (elf_linker_section_t): Make alignment unsigned.
1716 (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned.
1717 * elf.c (assign_file_positions_for_segments): Always set adjust.
1718 * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully
1719 parenthesize expression.
1720 * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h.
1721 (m32r_elf_object_p): Return a value.
1722 (m32r_elf_print_private_bfd_data): Change fprintf format string.
1723 * elf32-mips.c (mips_elf_final_link): Initialize last.
1724 (mips_elf_finish_dynamic_sections): Initialize last and dindx.
1725 * elf32-v850.c (v850_elf_object_p): Return a value.
1726 (v850_elf_print_private_bfd_data): Change fprintf format string.
1727 * elfcode.h (elf_slurp_symbol_table): Change symcount and i to
1728 unsigned long.
1729 * elflink.h (elf_link_add_object_symbols): Change vernum to
1730 unsigned int, and initialize it. Change fprintf format string.
1731 (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type
1732 when setting or comparing to soname_indx.
1733 (elf_create_pointer_linker_section): Change num_symbols to
1734 unsigned int.
1735 * libcoff-in.h (coff_data_type): Change flags to flagword.
1736 * peicode.h (pe_print_idata): Initialize idx. Change j to
1737 bfd_size_type. Initialize hint_member. Remove useless test to
1738 time_stamp.
1739 (pe_print_edata): Change num_functions and num_names in struct
1740 EDT_type to unsigned long. Remove cast. Change fprintf format
1741 string.
1742 * ppcboot.c (ppcboot_object_p): Change i to size_t.
1743 * reloc.c (bfd_get_reloc_size): Change return type to unsigned
1744 int.
1745 * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to
1746 int *. Update uses. Change j to long.
1747 * bfd-in2.h, libcoff.h: Rebuild.
1748
1749 Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com>
1750
1751 * elf32-v850.c Remove definition of USE_REL.
1752 (v850_elf_info_to_howto_rela): New function.
1753 (v850_elf_perform_relocation): Renamed from
1754 v850_elf_store_addend_in_insn. Removed replace argument.
1755 (v850_elf_reloc): store the relocation in the addend field instead
1756 of the insn.
1757 (v850_elf_final_link_relocate): Now calls
1758 v850_elf_perform_relocation.
1759 (v850_elf_relocate_section): Remove code to generate REL
1760 relocations.
1761
1762 Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com>
1763
1764 * coffcode.h (coff_new_section_hook): Set the type and storage
1765 class in the native symbol information allocated for a new section
1766 symbol.
1767
1768 Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com>
1769
1770 * peicode.h: Chain together calls to
1771 coff_bfd_copy_private_bfd_data and
1772 coff_bfd_print_private_bfd_data.
1773
1774 * coff-arm.c: Add prototypes for
1775 coff_arm_bfd_print_private_bfd_data and
1776 coff_arm_bfd_copy_private_bfd_data.
1777
1778 Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com>
1779
1780 * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE
1781 build.
1782
1783 * peicode.h: Call arm-coff private data functions after handling
1784 pe private data.
1785
1786 * coff-arm.c: Turn statics into globals so that they can be shared
1787 both pe and pei backends.
1788
1789 Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com>
1790
1791 * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than
1792 plain numbers.
1793 (sunos_write_object_contents): Likewise.
1794 * aoutx.h (NAME(aout,machine_type)): Likewise.
1795 * coffcode.h (coff_set_arch_mach_hook): Likewise.
1796
1797 Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1798
1799 * archures.c (bfd_mach_m68*): Add definitions for various m68k
1800 variants.
1801 (bfd_default_scan): Remove m68k special cases.
1802 * bfd-in2.h: Rebuild.
1803 * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather
1804 than plain numbers.
1805 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
1806 * cpu-m68k.c (arch_info_struct): Likewise. Add entry for
1807 m68k:68000.
1808 (bfd_m68k_arch): Set mach field to zero to signal no explicit
1809 selection, change printable_name to just "m68k" and make that the
1810 default instead of m68k:68020.
1811
1812 * aout-tic30.c (NAME): Define this to avoid multiple definitions
1813 from aoutx.h.
1814 (MY_get_section_contents): Define as aout_32_get_section_contents
1815 rather than NAME(aout,get_section_contents).
1816
1817 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast.
1818
1819 * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha
1820 and call bfd_default_set_arch_mach to do the real work.
1821
1822 Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com>
1823
1824 * bout.c (BALX): Include return register g14 as part of the insn.
1825 (BALX_MASK): New.
1826 (calljx_callback): Use it.
1827
1828 Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com>
1829
1830 * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma.
1831 * libbfd.h: Rebuild.
1832
1833 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change
1834 byte_count to unsigned int.
1835 (mn10300_elf_relax_section): Initialize internal_relocs. Remove
1836 unused local variables.
1837
1838 * evax-alpha.c (evax_close_and_cleanup): Remove unused local
1839 variables er and er1.
1840
1841 * cpu-v850.c: Include <ctype.h>.
1842 (scan): Case isdigit argument to unsigned char.
1843
1844 From Yan Meroth <YAN.MEROTH@st.com>:
1845 * ihex.c (ihex_scan): Add extbase variable so that getting an
1846 extended linear address record does not ignore any previous
1847 extended address.
1848 (ihex_write_object_contents): When writing out an extended linear
1849 address record, zero out any previous extended address.
1850
1851 Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de>
1852
1853 * ieee.c (do_one): Check section before dereferencing it.
1854 (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr.
1855 (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive.
1856
1857 Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com>
1858
1859 * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF.
1860
1861 Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com>
1862
1863 * coff-arm.c: Add interworking functions to pe backends.
1864
1865 start-sanitize-r5900
1866 Sun Mar 22 13:05:08 1998 Jeffrey A Law (law@cygnus.com)
1867
1868 * elf32-mips.c (R_MIPS15_S3): New relocation type.
1869 (elf_mips_howto_table): Add R_MIPS15_S3.
1870 (mips_reloc_map): Map BFD_RELOC_MIPS15_S3 to R_MIPS15_S3.
1871 * reloc.c (BFD_RELOC_MIPS15_S3): New relocation type.
1872 * bfd-in2.h, libbfd.h: Rebuilt.
1873
1874 end-sanitize-r5900
1875 Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com>
1876
1877 * configure.in: Use AM_DISABLE_SHARED.
1878 * aclocal.m4, configure: Rebuild with libtool 1.2.
1879
1880 Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com>
1881
1882 * coff-arm.c (coff_arm_relocate_section): Better error messages
1883 when interowrking conflucts occur. Courtesy of Jonathan Walton
1884 and Tony Thompson.
1885 (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted
1886 relocations. Patch courtesy of Jonathan Walton and Tony
1887 Thompson.
1888
1889 Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com>
1890
1891 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert
1892 part of Feb 22 change controling when to override the existing
1893 symbol with the .plt entry.
1894
1895 Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com>
1896
1897 * config.bfd (targ_cpu): Add thumb-pe target.
1898
1899 * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external
1900 functions in PE build.
1901
1902 Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com>
1903
1904 * config.bfd (sparclite-*-elf*): Added.
1905
1906 start-sanitize-vr4320
1907 Tue Mar 3 11:24:05 1998 Gavin Koch <gavin@cygnus.com>
1908
1909 * mips-cpu.c: Reorganize sanitization.
1910
1911 * archures.c, bfd-in2.h, mips-cpu.c : Added bfd_mach_mips4320.
1912
1913 end-sanitize-vr4320
1914 Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com>
1915
1916 * configure.in: Add elf.lo to elf shell variable.
1917 * Makefile.am (BFD_LIBS): Remove elf.lo.
1918 (BFD_LIBS_CFILES): Remove elf.c.
1919 (BFD32_BACKENDS): Add elf.lo.
1920 (BFD32_BACKENDS_CFILES): Add elf.c.
1921 * configure, Makefile.in: Rebuild.
1922
1923 1998-02-23 15:53 Richard Henderson <rth@cygnus.com>
1924
1925 * elf32-i386.c (elf_i386_relocate_section): A pc-relative
1926 relocation against a now-local symbol should not have a dynamic
1927 relocation.
1928
1929 Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com>
1930
1931 * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in
1932 COFF filehdr flags.
1933 (pe_print_private_bfd_data): Print PE flags. From Mikey
1934 <jeffdb@netzone.com>.
1935
1936 Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com>
1937
1938 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create
1939 a plt entry when we can determine that we authoritatively define
1940 the symbol.
1941
1942 Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com>
1943
1944 * configure.in (COREFILE selection): Remove sparc-*-linux*. They
1945 don't actually use trad-core, but a SunOS-style core file handled
1946 by gdb directly.
1947 * hosts/sparclinux.h: Remove.
1948
1949 start-sanitize-sky
1950 Thu Feb 19 02:38:52 1998 Doug Evans <devans@charmed.cygnus.com>
1951
1952 * reloc.c (BFD_RELOC_MIPS_DVP_27_S4): New reloc type.
1953 * elf32-mips.c (enum reloc_type): Add R_MIPS_DVP_27_S4.
1954 (elf_mips_dvp_27_s4_howto): Describe it.
1955 (bfd_elf32_bfd_reloc_type_lookup): Handle it.
1956 (mips_info_to_how_rel): Handle it.
1957 (mips_elf_relocate_section): Handle it.
1958 * bfd-in2.h,libbfd.h: Regenerate.
1959
1960 end-sanitize-sky
1961 Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
1962
1963 * peicode.h (pe_print_idata): If there is no .idata section, look
1964 for the import tables in some other section. Make the initial
1965 label line up better with the data. Print the import address
1966 table even if there is no import name table. If the import
1967 address table holds actual addresses, print them.
1968
1969 start-sanitize-sky
1970 Tue Feb 17 20:00:26 1998 Doug Evans <devans@canuck.cygnus.com>
1971
1972 * config.bfd (targ_archs): If mips64r5900-sky-elf, add bfd_dvp_arch.
1973
1974 end-sanitize-sky
1975 Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com>
1976
1977 * libbfd.c (bfd_seek): If fseek fails, save errno around call to
1978 bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not
1979 bfd_error_system_call.
1980
1981 Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com>
1982
1983 * Makefile.am (AUTOMAKE_OPTIONS): Define.
1984 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
1985
1986 From H.J. Lu <hjl@gnu.org>:
1987 * Makefile.am (libbfd_la_LDFLAGS): Define.
1988 * Makefile.in: Rebuild.
1989
1990 Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com>
1991
1992 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
1993 * netbsd.h (MACHTYPE_OK): Define.
1994 (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when
1995 calling N_SET_MACHTYPE, rather than having a switch.
1996 * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD,
1997 and M_ALPHA_NETBSD.
1998 * i386netbsd.c (MACHTYPE_OK): Don't define.
1999 (DEFAULT_MID): Define.
2000 * m68k4knetbsd.c (SEGMENT_SIZE): Don't define.
2001 (MACHTYPE_OK): Don't define.
2002 (DEFAULT_MID): Define.
2003 * m68knetbsd.c: (MACHTYPE_OK): Don't define.
2004 (DEFAULT_MID): Define.
2005 * ns32knetbsd.c (MACHTYPE_OK): Don't define.
2006 (DEFAULT_MID): Define.
2007 * sparcnetbsd.c (MACHTYPE_OK): Don't define.
2008 (DEFAULT_MID): Define.
2009
2010 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
2011 * vaxnetbsd.c: New file.
2012 * netbsd-core.c: Clean up. Remove unused macros. Use netbsd
2013 rather than netbsd_core.
2014 * targets.c (vaxnetbsd_vec): Declare.
2015 (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is
2016 defined, add netbsd_core_vec.
2017 * configure.in: Set COREFILE for alpha*-*-netbsd* and
2018 powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is
2019 netbsd-core.lo, set COREFLAG to -DNETBSD_CORE.
2020 * config.bfd (alpha*-*-netbsd*): New target.
2021 * Makefile.am: Rebuild dependencies.
2022 (BFD32_BACKENDS): Add vaxnetbsd.lo.
2023 (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c.
2024 * configure, Makefile.in: Rebuild.
2025
2026 * configure.host: Remove the old shared library build stuff. We
2027 now use libtool instead.
2028
2029 Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com>
2030
2031 * tekhex.c (tekhex_write_object_contents): Call tekhex_init.
2032
2033 Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org>
2034
2035 * configure.in: Take stab-syms.lo out of sparclinux_vec list.
2036 * configure: Rebuild.
2037
2038 Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com>
2039 start-sanitize-m32rx
2040 * elf32-m32r.c (m32r_elf_merge_private_bfd_data): Do not complain
2041 when merging m32r BFDs into m32rx BFDs.
2042 end-sanitize-m32rx
2043 * elf32-v850.c (remember_hi16s_reloc): New function.
2044 (find_remembered_hi16s_reloc): New function.
2045 (v850_elf_store_addend_in_insn): Use the above new functions to
2046 match up HI6S relocs with LO16 relocs.
2047
2048 start-sanitize-sky
2049 Tue Feb 10 13:25:14 1998 Doug Evans <devans@canuck.cygnus.com>
2050
2051 * archures.c (bfd_mach_dvp_{vif,gif}): Renamed from ..._{pke,gpuif}.
2052 (bfd_txvu_arch): Delete.
2053 * cpu-mips.c (arch_info_struct): dvp:{vif,gif} renamed from
2054 dvp:{pke,gpuif}.
2055 * bfd-in2.h: Regenerate.
2056
2057 end-sanitize-sky
2058 Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com>
2059
2060 * configure.in: Change -linux* to -linux-gnu*.
2061 * config.bfd, configure.host: Likewise.
2062 * configure: Rebuild.
2063
2064 Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com>
2065
2066 * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another
2067 LO16/HI16S bug and improve comments about what is going on.
2068
2069 Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
2070
2071 * configure, aclocal.m4: Rebuild with new libtool.
2072
2073 start-sanitize-v850e
2074 Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com>
2075
2076 * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain
2077 when merging v850 code into v850e/v850ea code. Do not initialise
2078 output flags if the input is the default architecture.
2079 end-sanitize-v850e
2080 Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com)
2081
2082 start-sanitize-r5900
2083 * cpu-mips.c (arch_info_struct): Make r5900 pointer size 32bits.
2084 end-sanitize-r5900
2085 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR
2086 get the size from bfd_arch_bits_per_address instead of directly
2087 from the isa.
2088
2089 Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com>
2090
2091 * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address
2092 to wrap, just return all 1's bits instead.
2093 * libbfd.h: Regenerate.
2094
2095 Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com>
2096
2097 * coff-i386.c (coff_pe_i386_relocate_section): New static function
2098 if COFF_WITH_PE.
2099 (coff_relocate_section): If COFF_WITH_PE, define as
2100 coff_pe_i386_relocate_section.
2101 * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE,
2102 skip empty sections, to match coff_write_object_contents.
2103
2104 * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend,
2105 rather than swapping out r_offset twice. From Luke Deller
2106 <luked@cse.unsw.edu.au>.
2107
2108 Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com>
2109
2110 * configure.in: Set libtool_enable_shared rather than
2111 libtool_shared. Remove diversion hack.
2112 * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild
2113 with new libtool.
2114
2115 Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org>
2116
2117 * syms.c (struct stab_cache): Define.
2118 (struct stab_find_info): Remove cached_offset, cached_stab,
2119 cached_str, and cached_stroff fields. Add file_cache,
2120 function_cache, and line_cache fields.
2121 (_bfd_stab_section_find_nearest_line): Use extensive caching to
2122 speed up searches.
2123
2124 Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com>
2125
2126 * peicode.h (pe_print_idata): Check for import of ordinal rather
2127 than name.
2128 (pe_print_edata): If there is no .edata section, look for the
2129 export data in some other section.
2130
2131 Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
2132
2133 * configure.in: Change version to 2.8.4.
2134 * configure: Regenerated.
2135
2136 Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
2137
2138 Add tms320c30 support:
2139 * cpu-tic30.c: New file.
2140 * aout-tic30.c: New file.
2141 * coff-tic30.c: New file.
2142 * archures.c (bfd_arch_tic30): Define.
2143 (bfd_tic30_arch): Declare.
2144 (bfd_archures_list): Add bfd_tic30_arch.
2145 * targets.c (bfd_target_vector): Add tic30_aout_vec and
2146 tic30_coff_vec.
2147 * reloc.c (BFD_RELOC_TIC30_LDP): Define.
2148 * coffcode.h (coff_set_arch_mach_hook): Add tic30 case.
2149 (coff_set_flags): Likewise.
2150 * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets.
2151 * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors.
2152 * Makefile.am: Rebuild dependencies.
2153 (ALL_MACHINES): Add cpu-tic30.lo.
2154 (ALL_MACHINES_CFILES): Add cpu-tic30.c.
2155 (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo.
2156 (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c.
2157 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
2158
2159 Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com>
2160
2161 * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc
2162 to lag behind LO16 reloc by a couple of instructions.
2163
2164 Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com>
2165
2166 * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force
2167 make to reexamine the file timestamp.
2168 ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise.
2169
2170 * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from
2171 0x100000.
2172
2173 start-sanitize-sky
2174 Fri Jan 30 17:48:17 1998 Doug Evans <devans@canuck.cygnus.com>
2175
2176 * elf32-mips.c (elf_mips_dvp_11_pcrel_howto): Set pcrel_offset=true
2177 and partial_inplace=false.
2178 (mips_elf_relocate_section): Recognize R_MIPS_DVP_11_PCREL.
2179
2180 end-sanitize-sky
2181 Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au>
2182
2183 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure
2184 to create .dynsbss and .rela.sbss sections.
2185 (ppc_elf_adjust_dynamic_symbol): Put space for small data to be
2186 copied from dynamic objects into .sbss.
2187 (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't
2188 use it. Correct typo of .rela.sdata2.
2189 (ppc_elf_finish_dynamic_symbol): Generate reloc to where we
2190 put the data, which may now be in .sbss.
2191 (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss.
2192 (elf_backend_create_dynamic_sections): Define as
2193 ppc_elf_create_dynamic_sections.
2194
2195 * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs
2196 against _GLOBAL_OFFSET_TABLE_.
2197 (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in
2198 shared libraries which refer to local symbols. Make sure that the
2199 test for allocating space for a reloc in a shared object is the
2200 same as the test for emitting a reloc.
2201
2202 start-sanitize-sky
2203 Thu Jan 29 17:44:53 1998 Doug Evans <devans@canuck.cygnus.com>
2204
2205 * elf32-mips.c: Add dvp support.
2206
2207 end-sanitize-sky
2208 Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
2209
2210 * config.bfd (i[3456]-*-mingw32*): New target.
2211 * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32.
2212 * aclocal.m4, configure: Rebuild.
2213
2214 start-sanitize-sky
2215 Wed Jan 28 15:14:28 1998 Doug Evans <devans@canuck.cygnus.com>
2216
2217 * config.bfd, configure.in: Add dvp support.
2218 * configure: Regenerate.
2219 * aclocal.m4: Regenerate.
2220 * archures.c, reloc.c, cpu-mips.c: Add dvp support.
2221 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
2222
2223 end-sanitize-sky
2224 Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
2225
2226 * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we
2227 have a bfd_object.
2228
2229 Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com>
2230
2231 Sparc v9 ABI compliant PLT:
2232 * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries.
2233 (plt_templates, sparc64_elf_build_plt_entry): Delete.
2234 (LARGE_PLT_THRESHOLD): New define.
2235 (GOT_RESERVED_ENTRIES): V9 ABI only uses 1.
2236 (sparc64_elf_build_plt): New function.
2237 (sparc64_elf_plt_entry_offset): Likewise.
2238 (sparc64_elf_plt_ptr_offset): Likewise.
2239 (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to
2240 contain the index for convenience. Skip the initial entries
2241 in .rela.plt.
2242 (sparc64_elf_size_dynamic_sections): Zero the allocated contents
2243 memory for the benefit of .rela.plt.
2244 (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset.
2245 (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use
2246 sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc.
2247 (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt.
2248 Call sparc64_elf_build_plt.
2249 (elf_backend_want_got_plt): No.
2250 (elf_backend_plt_readonly): No.
2251 (elf_backend_plt_alignment): 8.
2252
2253 * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab.
2254 * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it.
2255 * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it
2256 to be called.
2257
2258 Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com)
2259
2260 * archures.c (bfd_mach_mips*): Add definitions for various MIPS
2261 processors.
2262 * cpu-mips.c (arch_info_struct): Add mips variants.
2263 * bfd-in2.h: Rebuilt.
2264
2265 Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com>
2266
2267 * coff-arm.c (coff_arm_relocate_section): Preserve the contents of
2268 t2a3_b_insn.
2269
2270 Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com>
2271
2272 * config.bfd (i[3456]86-sco3.2v5*): ELF now the default.
2273 (i[3456]86sco3.2v5*coff): New target.
2274
2275 Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com>
2276
2277 * bfd-in2.h: Rebuild with changes to chew--tab expansion.
2278
2279 Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com>
2280
2281 * bfd.c (bfd_get_error_handler): Add orthogonal function.
2282 * bfd-in2.h: Regenerate.
2283
2284 Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com>
2285
2286 * tekhex.c (tekhex_write_object_contents): Check for no symbols.
2287
2288 Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com>
2289
2290 * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't
2291 adjust addend for an output common symbol (from Jimmy Blair
2292 <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative
2293 defined symbol to counteract adjustment made in generic relocation
2294 code.
2295
2296 * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h.
2297
2298 Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de>
2299
2300 * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name.
2301 (GET_SCNDHR_NLNNO): Likewise.
2302
2303 Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com>
2304
2305 * cpu-sh.c (arch_info_struct): Correct next field of sh3e.
2306
2307 Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com>
2308
2309 * elf32-m32r.c: Add macros to handle NOP insertion.
2310
2311 Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com>
2312
2313 * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section.
2314 (xcoff_mark): Likewise.
2315 (xcoff_build_ldsyms): Mark absolute symbols.
2316
2317 Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com>
2318
2319 * bout.c (b_out_write_object_contents): Sort symbols before output
2320 to keep {CALL,BAL}NAME symbols adjacent.
2321 (b_out_symbol_cmp): New function.
2322
2323 For older changes see ChangeLog-9697
2324 \f
2325 Local Variables:
2326 mode: change-log
2327 left-margin: 8
2328 fill-column: 74
2329 version-control: never
2330 End: