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