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