* elflink.h (link_read_relocs): Explicitly cast external_relocs to
[external/binutils.git] / bfd / ChangeLog
1 1999-06-22  Mark Mitchell  <mark@codesourcery.com>
2
3         * elflink.h (link_read_relocs): Explicitly cast external_relocs to
4         bfd_byte * before performing pointer arithmetic.
5
6 Tue Jun 22 13:06:25 1999  Jeffrey A Law  (law@cygnus.com)
7
8         * elf-hppa.h: New file.  Common stuff for elf32 and elf64 PA
9         support.
10         * elf32-hppa.c: Include elf-hppa.h.
11         (ARCH_SIZE): Define.
12         (elf_hppa_reloc_type_lookup): Delete.  Found in the common code
13         now.
14         (elf32_hppa_info_to_howto): Similarly.
15         (elf_hppa_howto_table): Similarly.
16         (elf_hppa_reloc_type_lookup): Similarly.
17         (hppa_elf_gen_reloc_type): Similarly.
18         * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete.
19
20 1999-06-22  Nick Clifton  <nickc@cygnus.com>
21
22         * elf32-v850.c (v850_elf_final_link_relocate): Catch overflow
23         handling R_V850_22_PCREL relocation.
24
25 1999-06-21  Ian Lance Taylor  <ian@zembu.com>
26
27         * coff-arm.c (arm_emit_base_file_entry): Explicitly declare return
28         type.
29
30 Sun Jun 20 14:13:57 1999  Richard Henderson  <rth@cygnus.com>
31
32         * section.c (_bfd_strip_section_from_output): Ignore sections
33         DISCARDed by the link script.
34
35 1999-06-19  Ian Lance Taylor  <ian@zembu.com>
36
37         * elflink.h (elf_link_remove_section_and_adjust_dynindices):
38         Remove unused local variable spp.
39
40         * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash if
41         the entry symbol is not set.
42
43 Fri Jun 18 04:24:57 1999  Richard Henderson  <rth@cygnus.com>
44
45         * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust
46         GPDISP or LITUSE in a relocatable link.
47
48 Thu Jun 17 21:24:43 1999  J"orn Rennecke <amylaar@cygnus.co.uk>
49
50         * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc.
51         * (alloc_dwarf1_func): Likewise.
52
53 Wed Jun 16 03:09:57 1999  Jeffrey A Law  (law@cygnus.com)
54
55         * libhppa.h: Fix various formatting errors.
56         (assemble_3); Rewrite using CATENATE.
57         (assemble_17): Fix various bugs.
58
59 1999-06-16  Nick Clifton  <nickc@cygnus.com>
60
61         * elf32-mcore.c (R_MCORE_RAW): Fix definition.
62
63 1999-06-15  Richard Henderson  <rth@cygnus.com>
64
65         * section.c (SEC_SHORT): Define.
66         * bfd-in2.h: Rebuild.
67
68 1999-06-13  Mark Mitchell  <mark@codesourcery.com>
69
70         * elflink.h (elf_link_remove_section_and_adjust_dynindices):
71         Remove abfd parameter.  Use _bfd_strip_section_from_output.
72         (bfd_elf_size_dynamic_sections): Adjust callers accordingly.
73         
74         * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function.
75         * elflink.c (_bfd_elf_link_adjust_dynindx): Define it.
76         * elflink.h (elf_link_remove_section_and_adjust_dynindices): New
77         function.
78         (bfd_elf_size_dynamic_sections): Use it.
79
80 1999-06-13  Alan Modra  <alan@spri.levels.unisa.edu.au>
81
82         * elf32-i386.c (elf_howto_table): Change R_386_PC8 from
83         complain_overflow_bitfield to complain_overflow_signed.
84
85 1999-06-13  Mark Mitchell  <mark@codesourcery.com>
86
87         * elflink.h (elf_link_read_relocs_from_section): New function,
88         split out from ...
89         (elf_link_read_relocs): Here.  Use it for both relocation
90         sections.
91
92 1999-06-12  Mark Mitchell  <mark@codesourcery.com>
93
94         * elfcode.h (elf_slurp_reloc_table_from_section): Don't assume
95         asect->reloc_count is valid.
96
97 1999-06-12  Ian Lance Taylor  <ian@zembu.com>
98
99         * elf32-mips.c (mips_elf32_section_processing): Permit a
100         SHT_MIPS_REGINFO section to have a size of 0.
101
102 1999-06-12  David O'Brien  <obrien@freebsd.org>
103
104         * config.bfd (alpha*-*-freebsd*): New target.
105         (i[3456]86-*-freebsd*): Now defaults to ELF.
106
107 1999-06-11  Ian Lance Taylor  <ian@zembu.com>
108
109         * reloc.c (_bfd_relocate_contents): Permit bitfield relocations to
110         wrap if the relocation covers the high bit of an address.
111
112         * dwarf2.c (decode_line_info): Remove unused variable first_time.
113
114 1999-06-10  Jakub Jelinek  <jj@ultra.linux.cz>
115
116         * elf64_sparc.c (sparc64_elf_relocate_section): Use R_SPARC_max_std
117         instead of R_SPARC_max.
118         (sparc64_elf_info_to_howto): Likewise.
119         * elf32_sparc.c (elf32_sparc_relocate_section): Likewise.
120         (elf32_sparc_info_to_howto): Likewise; handle vtable relocations.
121
122 1999-06-07  Richard Henderson  <rth@cygnus.com>
123
124         * section.c (_bfd_strip_section_from_output): Remove output
125         sections with no initial link_order.
126
127 1999-06-07  Nick Clifton  <nickc@cygnus.com>
128
129         * elf32-m88k.c (ELF_MAXPAGESIZE): Define.
130
131 Mon Jun  7 11:49:43 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
132
133         * Makefile.am (SOURCE_HFILES): Add missing headers.
134         * Makefile.in: Regenerated.
135
136 1999-06-06  Mark Mitchell  <mark@codesourcery.com>
137
138         * elf32-mips.c (_bfd_mips_elf_print_private_data): Recognize
139         the N32 ABI.
140
141 1999-06-04  Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
142
143         * elf32-ppc.c (ppc_elf_relocate_section): Don't barf on out of
144         range undefweak symbols.
145         * hash.c: Add missing comma after @xref{}
146         * linker.c: Likewise.
147
148 1999-06-04  Nick Clifton  <nickc@cygnus.com>
149
150         * elfxx-target.h (ELF_MAXPAGESIZE): Produce an error message
151         if not defined.
152         * elf32-gen.c (ELF_MAXPAGESIZE): Define.
153         * elf32-i860.c (ELF_MAXPAGESIZE): Define.
154         * elf32-i960.c (ELF_MAXPAGESIZE): Define.
155         * elf64-gen.c (ELF_MAXPAGESIZE): Define.
156
157 1999-06-04  Ian Lance Taylor  <ian@zembu.com>
158
159         * Makefile.am: Rebuild dependencies.
160         (BFD32_BACKENDS): Add dwarf1.lo.
161         (BFD32_BACKENDS_CFILES): Add dwarf1.c.
162         * Makefile.in: Rebuild.
163
164 1999-06-04  Nick Clifton  <nickc@cygnus.com>
165
166         * Makefile.am: Add epoc-arm-pe target.
167         * Makefile.in: Regenerate.
168         * pe-arm.c: Only redefine interworking function names if they have
169         not already been redefined.
170         * pei-arm.c: Only redefine interworking function names if they have
171         not already been redefined.
172         * epoc-pe-arm.c: Redefine interworking function names to avoid a
173         name space clash.
174         * epoc-pei-arm.c: Redefine interworking function names to avoid a
175         name space clash.
176
177 1999-06-03  Nick Clifton  <nickc@cygnus.com>
178
179         * elfxx-target.h (ELF_MAXPAGESIZE): Default to 0x1000 not 1.
180
181 Fri Jun  4 10:05:11 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
182
183         * elf.c (elf_fake_sections): Undo change of 1999-05-10.
184
185 Fri Jun  4 03:10:49 1999  J"orn Rennecke <amylaar@cygnus.co.uk>
186
187         * elf32-sh.c (sh_elf_relax_delete_bytes): Fix setting of
188         start / stop for recalculating of r_addend of R_SH_SWITCH*.
189
190 Fri Jun  4 02:53:13 1999  J"orn Rennecke <amylaar@cygnus.co.uk>
191
192         * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH32
193         in other text sections.
194
195 Fri Jun  4 02:29:34 1999  J"orn Rennecke <amylaar@cygnus.co.uk>
196
197         * libbfd.c (_bfd_generic_verify_endian_match): New function.
198         * libbfd-in.h (_bfd_generic_verify_endian_match): Declare.
199         * libbfd.h: Regenerate.
200         * coff-sh.c (sh_merge_private_data): Delete.
201         (coff_bfd_merge_private_bfd_data): Change to
202         _bfd_generic_verify_endian_match.
203         (elf32-sh.c): bfd_elf32_bfd_merge_private_bfd_data: Define.
204
205 1999-06-03  Ulrich Drepper  <drepper@cygnus.com>
206
207         * elf32-arm.h: Fix typo: change ELF_MAXPAGE_SIZE to ELF_MAXPAGESIZE.
208
209 1999-06-03  Ian Lance Taylor  <ian@zembu.com>
210
211         * bfd-in.h (bfd_elf32_arm_allocate_interworking_sections): Correct
212         prototype.
213         (bfd_elf32_arm_process_before_allocation): Likewise.
214         * bfd-in2.h: Rebuild.
215
216 1999-06-03  David Mosberger  <davidm@hpl.hp.com>
217
218         * dwarf2.c (struct line_info): Add member END_SEQUENCE to keep
219         track of end_sequence markers.
220         (add_line_info): Add END_SEQUENCE arg.
221         (decode_line_info): Don't try to infer lo_pc and hi_pc from the
222         debug-line info---it doesn't work right if a compilation unit
223         consists of multiple discontiguous code-sequences.  It would be
224         worthwhile to optimize for the common case where a compilation
225         unit results in a contiguous set of code sequences, but this is
226         quite tricky to get right for arbitrary DWARF2 files.
227         (lookup_address_in_line_info_table): Don't use the last line entry
228         for a compilation unit for anything with an address higher than
229         this line entry.  Also, check for end_sequence markers to
230         correctly handle discontinuities.
231         (_bfd_dwarf2_find_nearest_line): When checking previously loaded
232         compilation units, check all compilation units with each->high==0
233         just like when reading compilation units.
234
235         * dwarf2.c (decode_line_info): Initialize table->files and
236         table->last_line to NULL to avoid segfaults due to random
237         values in these members.
238         (concat_filename): Check for out-of-range file number before
239         indexing filename table.  Segfaults suck.
240
241         * dwarf2.c (decode_line_info): Don't truncate address to least
242         significant 32 bits (breaks 64 bit targets).
243         (lookup_address_in_function_table): Ditto.
244         (comp_unit_contains_address): Ditto.
245
246 1999-06-02  Mark Mitchell  <Mark Mitchell <mark@codesourcery.com>>
247
248         * elf32-mips.c (elf_mips_howto_table): Add R_MIPS_JALR.
249         * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
250         (mips_elf64_howto_table_rela): Likewise.
251
252         * elfcode.h (elf_slurp_reloc_table_from_section): New function,
253         split out from ...
254         (elf_slurp_reloc_table): Here.  Use it to handle the case where a
255         single section has two associated relocation sections.
256
257 1999-06-02  Mark Salter  <msalter@cygnus.com>
258
259         * coffcode.h (coff_set_alignment_hook): Set lma from s_vaddr if
260         COFF_WITH_PE defined.
261
262 1999-06-02  Nick Clifton  <nickc@cygnus.com>
263
264         * pe-arm.c: Rename global arm interworking functions to avoid name
265         collision when all targets BFD is built.
266         * pei-arm.c: Ditto.
267
268 1999-05-31  Mark Mitchell  <mark@codesourcery.com>
269
270         * elf-bfd.h (elf_backend_data): Remove use_rela_p.  Add
271         may_use_rel_p, may_use_rela_p, default_use_rela_p.
272         (bfd_elf_section_data): Add use_rela_p.
273         * elf.c (bfd_section_from_shdr): Set use_rela_p appropriately.
274         (_bfd_elf_new_section_hook): Likewise.
275         (elf_fake_sections): Use may_use_rela_p, etc., instead of
276         use_rela_p.
277         (_bfd_elf_copy_private_section_data): Copy use_rela_p.
278         * elfcode.h (write_relocs): Determine whether or not use rela
279         relocs based on the relocation section header.
280         * elflink.c (_bfd_elf_create_dynamic_sections): Use default_use_rela_p
281         instead of use_rela_p.
282         * elfxx-target.h (elf_backend_may_use_relp): New macro.
283         (elf_backend_may_use_rela_p): Likewise.
284         (elf_backend_default_use_rela_p): Likewise.
285         (elfNN_bed): Use them.
286
287 Wed Jun  2 12:38:49 1999  Miodrag Vallat <miodrag@multimania.com>
288
289         * hosts/alphalinux.h (TRAD_CORE_EXTRA_SIZE_ALLOWED): Expand to 4096.
290
291 Tue Jun  1 17:57:58 1999  Mark P. Mitchell  <mitchell@n02.acl.lanl.gov>
292
293         * reloc.c (BFD_RELOC_MIPS_SUB): New relocation.
294         (BFD_RELOC_MIPS_GOT_PAGE): Likewise.
295         (BFD_RELOC_MIPS_GOT_OFST): Likewise.
296         (BFD_RELOC_MIPS_GOT_DISP): Likewise.
297         * bfd-in2.h: Regenerated.
298         * libbfd.h: Likewise.
299         * elf32-mips.c (mips_info_to_howto_rela): New function.
300         (USE_REL): Adjust for new conventions.
301         (MINUS_ONE): New macro.
302         (elf_mips_howto_table): Add R_MIPS_SUB.
303         (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, MIPS_GOT_OFST,
304         and MIPS_GOT_DISP.
305         (mips_elf_final_write_processing): Set sh_link, not sh_info, for a
306         .MIPS.content section.
307         (_bfd_mips_elf_fake_sections): Treat all sections that begin
308         with .MIPS.content as .MIPS.content sections.  Set
309         SHF_MNIPS_NOSTRIP for such section.
310         (elf_info_to_howto): Define to mips_info_to_howto_rela.
311         * elf64-mips.c (mips_r):  Add entries for MIPS_SUB, MIPS_GOT_PAGE,
312         MIPS_GOT_OFST, and MIPS_GOT_DISP.
313
314 Wed Jun  2 11:51:12 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
315
316         * vms-misc.c (_bfd_vms_hash_newfunc): Fix use of uninitialized
317         variable.
318
319         * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Avoid ambigous
320         `else'.
321
322 1999-05-30  Philip Blundell  <philb@gnu.org>
323
324         * elf32-arm.h (elf32_arm_relocate_section): Reinstate change of
325         1993-03-25 (!!).  Take into account the bitmasks for the reloc so
326         the addend does not overflow into the rest of the word.
327
328 1999-05-29  Nick Clifton  <nickc@cygnus.com>
329
330         * bfd-in.h: Amend prototype for
331         bfd_elf32_arm_process_before_allocation .
332         * bfd-in.h: Regenerate.
333
334         * elfarm-oabi.c (NUM_ELEM): New macro: Compute the number of
335         elements in a fixed sized array.
336         (ARM_ELF_ABI_VERSION): Define.
337         (ARM_ELF_OS_ABI_VERSION): Define.
338         (R_ARM_THM_ABS5): Fix rightshift and size.
339         (R_ARM_THM_PC22): Fix size.
340         (R_ARM_PLT32): Define Howto.
341         (find_howto): New function: Locate a howto based on a reloc
342         number.
343         (elf32_arm_info_to_howto): Use find_howto if necessary.
344         (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
345         bfd_reloc_code_real_type.
346         (elf32_arm_reloc_map[]): Add entries for BFD_RELOC_VTABLE_INHERIT
347         and BFD_RELOC_VTABLE_ENTRY.
348         (elf32_arm_reloc_type_lookup): Use find_howto if necessary.
349
350         * elfarm-nabi.c (NUM_ELEM): New macro: Compute the number of
351         elements in a fixed sized array.
352         (ARM_ELF_ABI_VERSION): Define.
353         (ARM_ELF_OS_ABI_VERSION): Define.
354         (R_ARM_THM_ABS5): Fix rightshift and size.
355         (R_ARM_THM_PC22): Fix size.
356         (elf32_arm_info_to_howto_rel): Rename to elf32_arm_info_to_howto.
357         (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
358         bfd_reloc_code_real_type.
359
360         * elf32-arm.h (struct elf32_arm_link_hash_table): Add new field:
361         no_pipeline_knowledge.
362         (elf32_arm_link_hash_create): Initialise new field to zero.
363         (bfd_elf32_arm_process_before_allocation): Add new paraemter:
364         no_pipeline_knowledge.  Use this parameter to initialise the field
365         in the globals data structure.
366         (elf32_arm_final_link_relocate): Only add in pipeline offset if
367         no_pipeline_knowledge is false and the binary is from an old
368         toolchain.
369         (elf32_arm_merge_private_data): Generate an error if an attempt is
370         made to linl together big endian and little endian code.
371         (elf32_arm_post_process_headers): New function:  Initialise the
372         EI_OSABI and EI_ABIVERSION fields of the newly created ELF program
373         header.
374         (elf_backend_post_process_headers): Define.
375
376 1999-05-28  Nick Clifton  <nickc@cygnus.com>
377
378         * elf-bfd.h (struct elf_backend_data): Add new field:
379         elf_backend_post_process_headers.
380
381         * elfxx-target.h (elf_backend_post_process_headers): Define to
382         NULL if not already defined.
383         (elfNN_bed): Initialise elf_backend_post_process_headers field.
384
385         * elf.c (prep_headers): Set the EI_OSABI and EI_ABIVERSION fields
386         to zero.
387         (_bfd_elf_compute_section_file_positions): Call
388         elf_backend_post_process_headers if defined.
389
390 1999-05-28  Ian Lance Taylor  <ian@zembu.com>
391
392         * configure.in: Check whether getuid and getgid exist.
393         * archive.c: Define getuid and getgid as macros if HAVE_GETUID or
394         HAVE_GETGID are not defined, respectively.
395         (bfd_write_armap): Don't special case on _WIN32 for getuid and
396         getgid.
397         * configure.host: Set ac_cv_func_get{ug}id for *-*-windows*.
398         * configure, config.in: Rebuild.
399
400 1999-05-28  Martin Dorey  <mdorey@madge.com>
401
402         * elf32-i960.c: New file.
403         * elf.c (prep_headers): Handle bfd_arch_i960.
404         * targets.c (bfd_target_vector): Add &bfd_elf32_i960_vec.
405         * config.bfd (i960-*-elf*): New target.
406         * configure.in (bfd_elf32_i960_vec): New target vector.
407         * Makefile.am (BFD32_BACKENDS): Add elf32-i960.lo.
408         (BFD32_BACKENDS_CFILES): Add elf32-i960.c.
409         * Makefile.in, aclocal.m4, configure: Rebuild.
410
411 1999-05-27  Nick Clifton  <nickc@cygnus.com>
412
413         * elfarm-oabi.c (elf32_arm_howto_table): Add entry for
414         R_ARM_PLT32.
415         (find_howto): New function: Find entries in the
416         elf32_arm_howto_table.
417         (elf32_arm_info_to_howto): Use find_howto if the entry cannot be
418         computed simply.
419         (elf32_arm_reloc_type_lookup): Add lookup for
420         BFD_RELOC_ARM_PLT32.
421
422 1999-05-25  Philip Blundell  <pb@nexus.co.uk>
423
424         * bfd/elf32-arm.h (elf32_arm_link_hash_newfunc): New function.
425         (elf32_arm_link_hash_table_create): Use above function as the
426         constructor for hash table entries.
427         (elf32_arm_relocate_section): Avoid crash when there is no output
428         section.
429         (elf32_arm_final_link_relocate): New parameter h.
430         (elf32_arm_relocate_section): Pass symbol hash entry to above
431         routine.
432         (elf32_arm_gc_sweep_hook, elf32_arm_check relocs): Correct
433         comments.
434
435 1999-05-25  Catherine Moore  <clm@cygnus.com>
436
437         * coff-arm.c (coff_arm_relocate_section): Don't emit
438         base file entries for pc-relative values.
439
440 1999-05-25  DJ Delorie  <dj@cygnus.com>
441
442         * peicode.h (coff_swap_sym_in): When we create the actual section
443         to reflect the not-there section C_SECTION symbols refer to,
444         change the symbol class to C_STAT as the section is now really
445         there.
446
447 1999-05-24  Philip Blundell  <pb@nexus.co.uk>
448
449         * elf32-arm.h (elf32_arm_relocate_section): Undo change of
450         1999-03-25.
451
452 Mon May 17 13:35:35 1999  Stan Cox  <scox@cygnus.com>
453
454         * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed
455         F_PIC_INT to F_PIC.
456         * coffcode.h (coff_set_arch_mach_hook): Added F_ARM_2a, and
457         F_ARM_3M labels.  Changed F_PIC_INT to F_PIC.
458
459 1999-05-16  Nick Clifton  <nickc@cygnus.com>
460
461         * coff-mcore.c (in_reloc_p): Reinstate.
462
463 1999-05-15  Nick Clifton  <nickc@cygnus.com>
464
465         * reloc.c (BFD_RELOC_MCORE_RVA): Define.
466         * bfd-in2.h: Regenerate.
467         * coff-mcore.c (in_reloc_p): Remove defintion.
468         (mcore_coff_howto): Add IMAGE_REL_MCORE_RVA.
469         (mcore_coff_reloc_type_lookup): Map BFD_RELOC_RVA to
470         IMAGE_REL_MCORE_RVA.
471         (coff_mcore_rtype_to_howto): Add special processing for
472         IMAGE_REL_MCORE_RVA.
473         (coff_mcore_relocate_section): Add support for
474         IMAGE_REL_MCORE_RVA.
475         * elf32-mcore (mcore_elf_howto_): Add R_MCORE_RELATIVE.
476         (mcore_elf_reloc_type_lookup): Map BFD_RELOC_RVA to
477         R_MCORE_RELATIVE.
478         (mcore_elf_relocate_section): Delete redundant case labels.
479
480 Fri May 14 10:59:55 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
481
482         * elf32-arm.h (elf32_arm_relocate_section): Fix operator
483         precedence between bit-and and comparison.
484
485 Thu May 13 09:45:23 1999  Joel Sherrill (joel@OARcorp.com)
486
487         * config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to
488         list of target formats (targ_selvecs).
489         (i[3456]86*-*-rtemself*, mips*el-*-rtems*): New targets.
490         (powerpcle*-*rtems*, sh-*-rtemself*): New targets.
491
492 1999-05-10  DJ Delorie  <dj@cygnus.com>
493
494         * ecoff.c (_bfd_ecoff_write_armap): give the symtab element a
495         reasonable mode until "ar x" is smart enough to skip it (fixes
496         gcc/libgcc.a builds on mips-ecoff targets
497
498         * coffcode.h (styp_to_sec_flags): Explain how COMDATs are supposed
499         to work.  Hack to support MS import libraries, which use different
500         COMDAT types than GNU.
501         (coff_slurp_symbol_table): C_SECTION symbols are local; they refer
502         to implied zero-length sections (see peicode below)
503         * coffgen.c (coff_get_normalized_symtab): Properly read long MS
504         filename symbols, which use one *or more* auxents.
505         * coffswap.h (coff_swap_aux_in): ditto
506         * peicode.h (coff_swap_sym_in): Build the implied zero-length
507         sections
508
509 Tue May 11 15:51:58 1999  Jeffrey A Law  (law@cygnus.com)
510
511         * elf32-v850.c (v850_elf_howto_table): Make partial_inplace false
512         for all relocations.
513
514 1999-05-10  Catherine Moore  <clm@cygnus.com>
515
516         * bfd-in.h (bfd_arm_allocate_interworking_sections):  Static
517         if COFF_IMAGE_WITH_PE.
518         (bfd_arm_process_before_allocation): Likewise.
519         (bfd_arm_get_bfd_for_interworking): Likewise.
520         * coff-arm.c: Likewise.
521         * bfd-in2.h: Regenerate.
522         * configure.in (armpe_little_vec): Remove coff-arm.lo.
523         (armpe_big_vec): Likewise.
524         * configure: Rebuild.
525
526 1999-05-10  Nick Clifton  <nickc@cygnus.com>
527
528         * elf.c (elf_fake_sections): Check for .rel. as start of rel
529         section, not just .rel.  Same for .rela.
530
531 1999-05-07  Nick Clifton  <nickc@cygnus.com>
532
533         * coff-mcore.c (coff_mcore_relocate_section): Replace assert about
534         endianism with an error message.
535
536 Thu May  6 17:09:09 1999  Fred Fish  <fnf@be.com>
537
538         * dwarf2.c (read_abbrevs): Change cast of dwarf_abbrev_buffer
539         assignment from "unsigned char *" to "char *".
540         (decode_line_info): Likewise for dwarf_line_buffer assignment.
541
542 1999-05-05  Catherine Moore  <clm@cygnus.com>
543
544         * coff-arm.c (coff_arm_relocate_section):  Add one to
545         address of ARM_RVA32 thumb functions.
546
547 1999-05-05  Catherine Moore  <clm@cygnus.com>
548
549         * elf32-m68k.c (elf32_m68k_set_private_flags): New.
550         (elf32_m68k_copy_private_bfd_data): New.
551         (elf32_m68k_merge_private_bfd_data): New.
552         (elf32_m68k_print_private_bfd_data): New.
553         (CPU32_FLAG): Define.
554         (PLT_CPU32_ENTRY_SIZE): Define.
555         (elf_cpu32_plt0_entry): Declare.
556         (elf_cpu32_plt_entry): Declare.
557         (elf_m68k_adjust_dynamic_symbol): Generate cpu32 plt entries.
558         (elf_m68k_finish_dynamic_symbol): Likewise.
559         (elf_m68k_finish_dynamic_sections): Likewise.
560         (elf_backend_plt_header_size): Remove definition.
561         (bfd_elf32_bfd_copy_private_bfd_data): Define.
562         (bfd_elf32_bfd_merge_private_bfd_data): Define.
563         (bfd_elf32_bfd_set_private_flags): Define.
564         (bfd_elf32_bfd_print_private_bfd_data): Define.
565
566 Mon May  3 09:24:49 1999  Jeffrey A Law  (law@cygnus.com)
567
568         * som.c (som_fixup_formats): Fix comments for R_SHORT_PCREL_MODE
569         and R_LONG_PCREL_MODE.
570
571 1999-04-29  Nick Clifton  <nickc@cygnus.com>
572
573         * coff-mcore.c (coff_mcore_relocate_section): Fix typos.
574
575 Fri Apr 28 16:36:19 1999  Stan Cox  <scox@cygnus.com>
576
577         * elf32-sh.c (sh_elf_relocate_section): Include relocation addend
578         in relocation calculation.
579
580 1999-04-26  Tom Tromey  <tromey@cygnus.com>
581
582         * aclocal.m4, configure: Updated for new version of libtool.
583
584 1999-04-21  Nick Clifton  <nickc@cygnus.com>
585
586         * coff-mcore.c: Add support for mcore relocs.
587
588 1999-04-20  Gavin Romig-Koch  <gavin@cygnus.com>
589
590         * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): Scrap the
591         incorrect use EF_MIPS_xxBITPTRS.
592
593 1999-04-18  Ian Lance Taylor  <ian@zembu.com>
594
595         * elf64-alpha.c (elf64_alpha_relax_section): Remove unused local
596         variable insn.
597
598         * bfd-in2.h: Rebuild.
599         * libbfd.h: Rebuild.
600
601 Sat Apr 17 20:55:15 1999  Catherine Moore  <clm@cygnus.com>
602
603         * coff-arm.c (coff_arm_rtype_to_howto): Remove ARM26D transform.
604         (coff_arm_relocate_section):  Add ARM26D transform.  Only
605         change to ARM26D for relocateable links.
606
607 1999-04-16  Gavin Romig-Koch  <gavin@cygnus.com>
608
609         * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): New.
610         (bfd_elf32_bfd_print_private_bfd_data): New.
611
612 1999-04-15  Doug Evans  <devans@casey.cygnus.com>
613
614         * elf32-arm.h (elf32_arm_final_link_relocate):  For R_ARM_THM_ABS5,
615         refetch addend if USE_REL, add many comments regarding current state.
616         For R_ARM_THM_PC22, refetch addend if USE_REL, simplify.
617         * elfarm-nabi.c (elf32_arm_howto_table): For R_ARM_THM_ABS5, fix
618         size and rightshift.  For R_ARM_THM_PC22, fix bitsize.
619         * elfarm-oabi.c (elf32_arm_howto_table): Ditto.
620
621 Wed Apr 14 14:33:08 1999  Richard Henderson  <rth@cygnus.com>
622
623         * elf32-mips.c (_bfd_mips_elf_read_ecoff_info): Zero `debug'.
624         * elf64-alpha.c (elf64_alpha_read_ecoff_info): Likewise.
625
626 1999-04-13  David Mosberger  <davidm@hpl.hp.com>
627
628         * dwarf2.c (decode_line_info): Don't truncate address to least
629         significant 32 bits (breaks 64 bit targets).
630         (lookup_address_in_function_table): Ditto.
631         (comp_unit_contains_address): Ditto.
632
633 Tue Apr 13 21:27:19 1999  Catherine Moore  <clm@cygnus.com>
634
635         * coff-arm.c (arm_emit_base_file_entry): New routine.
636         (A2T3_OFFSET): Define.
637         (T2A3_OFFSET): Define.
638         (coff_arm_relocate_section):  Emit base file entries for interworking
639         stubs.
640
641 1999-04-13  Philip Blundell  <philb@gnu.org>
642
643         * elfarm-nabi.c (elf32_arm_howto_table): Add dummy entries for
644         relocs 17 through 19.
645
646 Sun Apr 11 01:25:17 1999  Richard Henderson  <rth@cygnus.com>
647
648         * elfcode.h: Remove fnmatch.h.
649         * elflink.h (elf_link_assign_sym_version): Call back to ld
650         instead of calling fnmatch.
651
652         * config.bfd (i?86-*-beoself): Include pe vecs.
653
654 Sun Apr 11 01:14:06 1999  Richard Henderson  <rth@cygnus.com>
655
656         * elf32-i386.c (elf_i386_finish_dynamic_sections): Allow .plt
657         to go missing.
658
659 1999-04-10  Richard Henderson  <rth@cygnus.com>
660
661         * elf32-i386.c (elf_i386_relocate_section): Mind no_undefined
662         when trying to resolve dynamic symbol references.
663         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
664         * elf32-mips.c (mips_elf_relocate_section): Likewise.
665         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
666         * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
667         * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
668         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
669         * elflink.h (elf_link_output_extsym): Likewise.
670
671 Sat Apr 10 15:12:09 1999  Richard Henderson  <rth@cygnus.com>
672
673         * section.c (_bfd_strip_section_from_output): New function moved from
674         * elf64-alpha.c (elf64_alpha_strip_section_from_output): ... here.
675         * elf32-i386.c (elf_i386_size_dynamic_sections): Use it.
676         * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
677         * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
678         * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
679         * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
680         * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
681         * bfd-in2.h: Update.
682
683 1999-04-09  Ian Lance Taylor  <ian@zembu.com>
684
685         * elf64-sparc.c: Fix incorrect calls to bfd_check_overflow.
686
687 1999-04-08  Nick Clifton  <nickc@cygnus.com>
688
689         * coff-mcore.c: New File: Support for mcore-pe targets.
690         * cpu-mcore.c: New File: Support for mcore targets.
691         * elf32-mcore.c: New File: Support for mcore-elf target.
692         * pe-mcore.c: New File: Definitions for mcore-pe target.
693         * pei-mcore.c: New File: Definitions for mcore-pei target.
694         * Makefile.am: Add support for MCore targets.
695         * Makefile.in: Regenerate.
696         * config.bfd: Add support for MCore targets.
697         * configure.in: Add support for MCore targets.
698         * configure: Regenerate.
699         * archures.c: Add support for MCore architecture.
700         * bfd-in2.h: Regenerate.
701         * coffcode.h: Add support for mcore-pe targets.
702         * elf.c: Add support for mcore-elf target.
703         * reloc.c: Add support for MCore relocs.
704         * targets.c: Add support for MCore targets.
705
706 1999-04-07  Nick Clifton  <nickc@cygnus.com>
707
708         * elfarm-nabi.c (elf32_arm_howto_table): Add entries for
709         R_ARM_XPC25 and R_ARM_THM_XPC22.
710         (elf32_arm_reloc_map): Remove redundant entries.
711
712 1999-04-06  Ian Lance Taylor  <ian@zembu.com>
713
714         * sysdep.h (LC_MESSAGES): Never define.
715
716 1999-04-06  Chris Torek  <torek@bsdi.com>
717
718         * reloc.c (bfd_check_overflow): Add addrsize parameter.  Change
719         all callers.  Rewrite completely.
720         (_bfd_relocate_contents): Rewrite overflow checking.
721         * bfd-in2.h: Rebuild.
722
723 1999-04-05  Ian Lance Taylor  <ian@zembu.com>
724
725         From Gabriel Paubert <paubert@iram.es>:
726         * elf32-ppc.c (ppc_elf_howto_raw): Set R_PPC_GOT16_LO,
727         R_PPC_PLT16_LO and R_PPC_SECTOFF_LO to be complain_overflow_dont.
728         Set R_PPC_PLT16_HA, R_PPC_SECTOFF_HA and R_PPC_EMB_NADDR16_HA to
729         have a rightshift of 16 and use ppc_elf_addr16_ha_reloc.
730         * ppcboot.c (ppcboot_vec): Use little endian routines for
731         headers.
732
733         * elf.c (elfcore_strndup): Only define if it will be used.
734         * elf32-ppc.c (ppc_elf_relax_section): Remove unused locals irel
735         and irelend.
736         (ppc_elf_check_relocs): Remove unused local i.
737         (ppc_elf_gc_mark_hook): Add default case to switch.
738
739         From Bernd Nitzler <nitzler@kagcpd01.ag01.kodak.COM>:
740         * srec.c (srec_scan): Accept \r in symbol definitions.
741         (srec_object_p): Set HAS_SYMS if we saw any symbols.
742         (symbolsrec_object_p): Likewise.
743
744 1999-04-04  Don Bowman <don@pixsci.com>
745
746         * config.bfd: Add mips*el-*-vxworks* and mips*-*-vxworks*.
747
748 1999-04-04  Ian Lance Taylor  <ian@zembu.com>
749
750         * dwarf1.c (parse_line_table): Remove unused locals last_pc and
751         last_line.
752         * elf-bfd.h (_bfd_elfcore_section_from_phdr): Declare.
753         * elf32-i386.c (elf_i386_gc_mark_hook): Add default case to
754         switch.
755         * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove unused
756         local i.
757         * syms.c (_bfd_stab_section_find_nearest_line): Remove unused
758         local val.
759
760 1999-03-31  Nick Clifton  <nickc@cygnus.com>
761
762         * config.bfd: Add support for arm-epoc-pe target.
763         * configure.in: Add support for arm-epoc-pe target.
764         * configure: Regenerate.
765         * targets.c: Add support for arm-epoc-pe target.
766         * coff-arm.c: Allow header files to override definition of
767         TARGET_UNDERSCORE and USER_LABEL_PREFIX.
768         * pe-arm.h: Allow previous header files to override definition of
769         TARGET_LITTLE_SYM and TARGET_BIG_SYM.
770         * pei-arm.h: Allow previous header files to override definition of
771         TARGET_LITTLE_SYM and TARGET_BIG_SYM.
772         * epoc-pe-arm.c: New file.  Support arm-epoc-pe target.
773         * epoc-pei-arm.c: New file.  Support arm-epoc-pei target.
774
775 1999-03-30  Nick Clifton  <nickc@cygnus.com>
776
777         * elf.c (elf_map_symbols): Handle the case where section
778         symbols are generated for content-less sections which are
779         not mapped to the output file.
780
781         * linker.c: Replace direct references to fields in BFD structure
782         with accessor macros.
783
784         * elflink.h: Replace direct references to fields in BFD structure
785         with accessor macros.
786
787 1999-03-25  Philip Blundell  <pb@nexus.co.uk>
788
789         * config.bfd: Eliminate redundancy in checks for Linux/ARM.
790
791         * elf32-arm.h (elf32_arm_relocate_section): Take the rightshift into
792         account when adjusting section symbols during a partial link.
793
794 1999-03-24  Nick Clifton  <nickc@cygnus.com>
795
796         * coff-sparc.c (struct coff_reloc_map): Change type of field
797           'bfd_reloc_val' to bfd_reloc_code_real_type.
798         * elf-m10200.c (struct mn10200_reloc_map): Ditto.
799         * elf-m10300.c (struct mn10300_reloc_map): Ditto.
800         * elf32-arc.c (struct arc_reloc_map): Ditto.
801         * elf32-d10v.c (struct d10v_reloc_map): Ditto.
802         * elf32-d30v.c (struct d30v_reloc_map): Ditto.
803         * elf32-fr30.c (struct fr30_reloc_map): Ditto.
804         * elf32-m32r.c (struct m32r_reloc_map): Ditto.
805         * elf32-sh.c (struct elf_reloc_map): Ditto.
806         * elf32-sparc.c (struct elf_reloc_map): Ditto.
807         * elf32-v850.c (struct v850_reloc_map): Ditto.
808         * elf64-sparc.c (struct elf_reloc_map): Ditto.
809         * elfarm-nabi.c (struct elf32_arm_reloc_map): Ditto.
810         * elfarm-oabi.c (struct elf32_arm_reloc_map): Ditto.
811
812 1999-03-17  Martin Hunt  <hunt@cygnus.com>
813
814         * syms.c (_bfd_stab_section_find_nearest_line): Changed this
815         function so source-level assembly works.  If multiple N_SOs
816         are seen without and N_FUNs, create an indextable entry with
817         a NULL function name.
818
819 1999-03-16  Gavin Romig-Koch  <gavin@cygnus.com>
820
821         * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data) Allow merging
822         of certian similar cpus.
823
824 1999-03-16  Gavin Romig-Koch  <gavin@cygnus.com>
825
826         * elf32-mips.c (_bfd_mips_elf_final_write_processing):
827         Add the 5000.  Change the architecture for the 5400 to mips4.
828         (elf_mips_mach): Add r5000.
829
830 1999-03-11  Doug Evans  <devans@casey.cygnus.com>
831
832         * cpu-i960.c (scan_i960_mach): Recognize i960:ka_sa and i960:kb_sb.
833
834 1999-03-11  Nick Clifton  <nickc@cygnus.com>
835
836         * binary.c (binary_set_section_contents): Generate warning about
837         huge file offsets for any section that will occupy file space, not
838         just those that are loadable.
839
840 1999-02-24  Jim Blandy  <jimb@zwingli.cygnus.com>
841
842         * libbfd.h: Regenerate after Nick Clifton's Feb 17 changes.
843
844 1999-02-22  Jim Lemke  <jlemke@cygnus.com>
845
846         * elf32-ppc.c: Add ppc_elf_relax_section() for the ld option mpc860c0.
847
848 Mon Feb 22 18:26:51 1999  Ian Lance Taylor  <ian@cygnus.com>
849
850         * elf-bfd.h (ELF_LINK_HASH_REF_REGULAR_NONWEAK): Define.
851         * elflink.h: Revert all changes since Feb 16.  Instead:
852         (elf_link_add_object_symbols): Set REF_REGULAR_NONWEAK flag if
853         appropriate.  Copy it to version symbols.
854         (elf_fix_symbol_flags): Set REF_REGULAR_NONWEAK for non ELF
855         symbols if appropriate.
856         (elf_adjust_dynamic_symbol): Set REF_REGULAR_NONWEAK for weakdef
857         symbol if appropriate.
858         (elf_link_output_extsym): If symbol is marked as undefined, and
859         has no nonweak references, mark it as weak undefined.
860
861 Fri Feb 19 16:01:12 1999  Ian Lance Taylor  <ian@cygnus.com>
862
863         * elflink.h (elf_merge_symbol): When overriding a dynamic
864         definition with a weak undefined symbol, set NEEDS_PLT if it is a
865         function.
866         (elf_link_add_object_symbols): Don't copy the other field if we
867         are overridding.
868
869 Thu Feb 18 18:07:43 1999  Ian Lance Taylor  <ian@cygnus.com>
870
871         * elflink.h (elf_merge_symbol): Do not merge any symbol from a
872         shared object with a weak undefined symbol.
873
874 1999-02-18  Nick Clifton  <nickc@cygnus.com>
875
876         * elfarm-nabi.c: Set partial_inplace back to false.
877
878 1999-02-17  Nick Clifton  <nickc@cygnus.com>
879
880         * coff-arm.c (TARGET_UNDERSCORE): Re-enable.
881         (USER_LABEL_PREFIX): Set to "_".
882
883         The following patches are from: Scott Bambrough
884         <scottb@corelcomputer.com>
885
886         * libaout.h (M_ARM6_NETBSD): Set to 143.
887
888         * reloc.c: Add ARM PIC relocs:   BFD_RELOC_ARM_GOT12,
889         BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_COPY,
890         BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_PLT32,
891         BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC.
892         * bfd-in2.h: Regenerate.
893
894         * elfarm-nabi.c (elf32_arm_howto_table): Set partial_inplace to
895         'true' as REL relocs are now being used.  Add new PIC relocs:
896         R_ARM_COPY, R_ARM_GLOB_DAT, R_ARM_JUMP_SLOT, R_ARM_RELATIVE,
897         R_ARM_GOTOFF, R_ARM_GOTPC, R_ARM_GOT32, R_ARM_PLT32.
898
899         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Check byte order
900         of targets.
901         (elf32_arm_final_link_relocate): Change parameters so that entire
902         reloc is passed.  Add support for PIC relocs.
903         (elf32_arm_relocate_section): Pass entire reloc to
904         elf32_arm_final_link_relocate.
905         (elf32_arm_check_relocs): Handle new PIC relocs.
906         (elf32_arm_adjust_dynamic_symbol): New function.
907         (elf32_arm_size_dynamic_sections): New function.
908         (elf32_arm_discard_copies): New function.
909         (elf32_arm_finish_dynamic_symbol): New function.
910         (elf32_arm_finish_dynamic_sections): New function.
911         (ELF_MAXPAGE_SIZE): Define.
912         (bfd_elf32_bfd_reloc_type_lookup): Define.
913         (elf_backend_relocate_section): Define.
914         (elf_backend_adjust_dynamic_symbol): Define.
915         (elf_backend_create_dynamic_sections): Define.
916         (elf_backend_finish_dynamic_symbol): Define.
917         (elf_backend_finish_dynamic_sections): Define.
918         (elf_backend_size_dynamic_sections): Define.
919         (elf_backend_plt_readonly): Define.
920         (elf_backend_want_got_plt): Define.
921         (elf_backend_want_plt_sym): Define.
922
923 Wed Feb 17 12:02:26 1999  Stan Cox  <scox@cygnus.com>
924
925         * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Make reginfo
926         sections SEC_LINK_ONCE and SEC_LINK_DUPLICATES_SAME_SIZE.
927         (_bfd_mips_elf_fake_sections): Likewise.
928
929 Wed Feb 17 12:07:23 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
930
931         * elfarm-oabi.c (bfd_elf32_arm_allocate_interworking_sections,
932         bfd_elf32_arm_get_bfd_for_interworking,
933         bfd_elf32_arm_process_before_allocation): Define to avoid clash
934         with elfarm-nabi.c.
935
936         * elf32-arm.h: Don't declare elf32_arm_info_to_howto.
937         (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub,
938         elf32_arm_find_nearest_line): Make them static.
939
940 Tue Feb 16 22:44:37 1999  Ian Lance Taylor  <ian@cygnus.com>
941
942         * elflink.h (elf_merge_symbol): Add pflags parameter.  Change all
943         callers.  Do not merge a definition from a shared object with a
944         weak undefined symbol.
945         (elf_link_add_object_symbols): Do not change the symbol type or
946         size if the old symbol overrides the new one.
947
948 1999-02-08  Nick Clifton  <nickc@cygnus.com>
949
950         * config.bfd: Add support for strongarm target.
951
952 Mon Feb  8 11:18:14 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
953
954         * elf32-m68k.c (reloc_map): Use the correct types for the struct
955         fields instead of unsigned char.
956
957 Fri Feb  5 00:22:36 1999  Ian Lance Taylor  <ian@cygnus.com>
958
959         * Makefile.am: Rebuild dependencies.
960         * Makefile.in: Rebuild.
961
962 Thu Feb  4 22:30:13 1999  Ian Lance Taylor  <ian@cygnus.com>
963
964         * configure.in: Change AC_PREREQ to 2.13.  Remove AM_CYGWIN32.
965         Change AM_EXEEXT to AC_EXEEXT and AM_PROG_INSTALL to
966         AC_PROG_INSTALL.  Add comments to uses of AC_DEFINE.
967         * acinclude.m4: Add comments to uses of AC_DEFINE.
968         * acconfig.h: Remove.
969         * configure: Rebuild with current autoconf/automake.
970         * aclocal.m4: Likewise.
971         * config.in: Likewise.
972         * Makefile.in: Likewise.
973
974 1999-02-04  DJ Delorie  <dj@cygnus.com>
975
976         * libbfd.c (real_read): don't call fread for zero bytes.  This
977         covers up a bug (or misuse of bfd) that's exposed by Solaris.
978
979 Thu Feb  4 12:38:10 1999  Stan Cox  <scox@cygnus.com>
980
981         * elf32-mips.c (mips_elf_relocate_section): Insure that the target
982         of a jump is in the current 256 MB region.
983
984 Thu Feb  4 12:15:38 1999  Ian Lance Taylor  <ian@cygnus.com>
985
986         * format.c (bfd_check_format_matches): Change last patch to only
987         take effect for the binary target.
988
989 Wed Feb  3 19:40:12 1999  Ian Lance Taylor  <ian@cygnus.com>
990
991         * elf32-i386.c (elf_i386_reloc_type_lookup): Add BFD_RELOC_CTOR.
992
993 Wed Feb  3 15:02:44 1999  Catherine Moore  <clm@cygnus.com>
994
995         * elf32-fr30.c (fr30_elf_check_relocs):  New routine.
996
997 Tue Feb  2 21:38:28 1999  Ian Lance Taylor  <ian@cygnus.com>
998
999         * format.c (bfd_check_format_matches): If the target was
1000         previously specified, don't check other targets when checking for
1001         an archive file.
1002
1003 Tue Feb  2 18:16:43 1999  Catherine Moore  <clm@cygnus.com>
1004
1005         * elf32-arm.h (elf32_arm_reloc_map):  Removed.
1006         (elf32_arm_reloc_type_lookup):  Removed
1007         * elfarm-nabi.c (elf32_arm_reloc_map):  New.
1008         (elf32_arm_reloc_type_lookup):  New.
1009         * elfarm-oabi.c (elf32_arm_reloc_map):  New.
1010         (elf32_arm_reloc_type_lookup):  New.
1011
1012 Mon Feb  1 19:49:21 1999  Catherine Moore  <clm@cygnus.com>
1013
1014         * elfarm-nabi.c:  Renamed from elf32-arm-newabi.c.
1015         * elfarm-oabi.c:  Renamed from elf32-arm-oldabi.c
1016         * Makefile.am:  Use new files.
1017         * Makefile.in:  Regenerate.
1018         * configure.in:  Use new files.
1019         * configure:  Regenerate.
1020
1021 1999-02-01  Nick Clifton  <nickc@cygnus.com>
1022
1023         * elf32-fr30.c (fr30_elf_gc_mark_hook): New function.
1024         (fr30_elf_gc_sweep_hook): New function.
1025         (elf_backend_can_gc_sections): Define.
1026
1027 Mon Feb  1 12:21:47 1999  Catherine Moore  <clm@cygnus.com>
1028
1029         * targets.c (bfd_target_vector):  Add bfd_elf32_littlearm_oabi_vec
1030         and bfd_elf32_bigarm_oabi_vec.
1031
1032 Mon Feb  1 11:46:31 1999  Catherine Moore  <clm@cygnus.com>
1033
1034         * Makefile.am (elf32-arm-oldabi.lo):  New.
1035         (elf32-arm-newabi.lo):  New.
1036         * Makefile.in:  Regenerate.
1037         * config.bfd (thumb-*-elf):  Remove definition of targ_underscore.
1038         (arm-*-elf):  Likewise.
1039         (arm-*-oabi):  New.
1040         (thumb-*-oabi):  New.
1041         * configure:  Regenerate.
1042         * configure.in (bfd_elf32_littlearm_oabi_vec):  New.
1043         (bfd_elf32_bigarm_oabi_vec):  New.
1044         * elf32-arm-newabi.c:  New.
1045         * elf32-arm-oldabi.c:  New.
1046         * elf32-arm.c:  Removed.
1047         * elf32-arm.h:  New.
1048
1049 Mon Feb  1 11:52:12 1999  Frank Ch. Eigler  <fche@cygnus.com>
1050
1051         * binary.c (binary_set_section_contents): Omit warnings for
1052         unloadable sections.
1053
1054 1999-01-31  Michael Meissner  <meissner@cygnus.com>
1055
1056         * config.bfd (powerpc{,le}-*-vxworks*): Add aliases to
1057         powerpc{,le}-*-eabi.
1058
1059 1999-01-29  Nick Clifton  <nickc@cygnus.com>
1060
1061         * dwarf2.c (read_unsigned_leb128): Remove unused variables.
1062         * dwarf2.c (read_signed_leb128): Remove unused variables.
1063
1064 Fri Jan 29 00:47:21 1999  H.J. Lu  <hjl@gnu.org>
1065
1066         * elf.c (assign_file_positions_for_segments): Only adjust
1067         p_align when needed.
1068
1069 Thu Jan 28 20:05:22 1999  Ian Lance Taylor  <ian@cygnus.com>
1070
1071         * binary.c (binary_set_section_contents): Don't return early for a
1072         non-loadable section, in case the first section is non-loadable.
1073         Don't set the low lma for a SEC_NEVER_LOAD section.  From Maciej
1074         W. Rozycki <macro@ds2.pg.gda.pl>.
1075
1076 1999-01-28  Nick Clifton  <nickc@cygnus.com>
1077
1078         * elf32-fr30.c (fr30_reloc_map): Add R_FR30_GNU_VTINHERIT and
1079         R_FR30_GNU_VTENTRY relocs.
1080
1081 Thu Jan 28 11:08:16 1999  Catherine Moore  <clm@cygnus.com>
1082
1083        * elflink.h (elf_link_output_sym):  Zero syms which are
1084        part of sections which have been excluded.
1085
1086 Wed Jan 27 13:35:35 1999  Stan Cox  <scox@cygnus.com>
1087
1088         * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed F_PIC
1089         to F_PIC_INT.
1090         * coffcode.h (coff_set_arch_mach_hook): Removed F_ARM_2a and
1091         F_ARM_3M labels.  Changed F_PIC to F_PIC_INT.
1092
1093 1999-01-27  Nick Clifton  <nickc@cygnus.com>
1094
1095         * elf32-fr30.c (fr30_elf_howto_table): Fix name of R_FR30_48
1096         relocation.
1097         (fr30_final_link_relocate): Use computed value as result of
1098         relocation.
1099
1100 1999-01-26  Frank Ch. Eigler  <fche@cygnus.com>
1101
1102         * binary.c (binary_set_section_contents): Emit warning for
1103         huge file offsets due to widely-dispersed section LMAs.
1104
1105 Mon Jan 18 03:35:35 1999  Ian Lance Taylor  <ian@cygnus.com>
1106
1107         * elf.c (assign_file_positions_for_segments): If not D_PAGED,
1108         align first section to largest section alignment, not first
1109         section alignment.
1110
1111 1999-01-04  Jason Molenda  (jsm@bugshack.cygnus.com)
1112
1113         * configure.in: Require autoconf 2.12.1 or higher.
1114
1115 Tue Dec 22 15:21:41 1998  Catherine Moore  <clm@cygnus.com>
1116
1117         * archures.c (bfd_mach_i386_i386_intel_syntax):  Define.
1118         * bfd-in2.h:  Likewise.
1119         * cpu-i386.c (bfd_i386_arch_intel_syntax):  New.
1120
1121 1998-12-16  Gavin Romig-Koch  <gavin@cygnus.com>
1122
1123         * archures.c,bfd-in2.h (bfd_mach_mips4111): New.
1124         * cpu-mips.c: Add support for and independent 4111.
1125         * elf32-mips.c (elf_mips_mach): E_MIPS_MACH_4111 -> bfd_mach_mips4111.
1126         (_bfd_mips_elf_final_write_processing):
1127         bfd_mach_mips4111 -> E_MIPS_ARCH_3 | E_MIPS_MACH_4111.
1128
1129 1998-12-15  Gavin Romig-Koch  <gavin@cygnus.com>
1130
1131         * elf32-mips.c (elf_mips_abi_name): New.
1132         (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags.
1133
1134 1998-12-12  Gavin Romig-Koch  <gavin@cygnus.com>
1135
1136         * elf32-mips.c (_bfd_mips_elf_final_write_processing):
1137         Handle bfd_mach_mips4300.
1138
1139 1998-12-11  Ulrich Drepper  <drepper@cygnus.com>
1140
1141         * elf32-i386.c: Remove leaked development code from patch
1142         1998-12-10 by Richard Henderson.
1143
1144 1998-12-10  Richard Henderson  <rth@cygnus.com>
1145
1146         * elf32-i386.c (elf_i386_relocate_section): Don't fail relocations
1147         in debug sections for symbol defined externally.
1148
1149 Thu Dec 10 10:58:38 1998  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
1150
1151         * targets.c (bfd_target_vector): Remove duplicate entry for
1152         tekhex_vec.
1153
1154 1998-12-09  Nick Clifton  <nickc@cygnus.com>
1155
1156         * elf32-fr30.c (fr30_elf_howto_table): Set src_mask fields to 0
1157         since we are using RELAs.
1158
1159 Tue Dec  8 22:15:48 1998  Ian Lance Taylor  <ian@cygnus.com>
1160
1161         SCO Open Server Release 5 core file support, from Jouke Numan
1162         <jnuman@hiscom.nl>:
1163         * sco5-core.c: New file.
1164         * configure.in (i[3456]86-*-sco3.2v5*): Use sco5-core.lo.
1165         (sco5-core.lo): Define SCO5_CORE in COREFLAG.
1166         * Makefile.am: Rebuild dependencies.
1167         (OPTIONAL_BACKENDS): Add sco5-core.lo.
1168         (OPTIONAL_BACKENDS_CFILES): Add sco5-core.c.
1169         * bfd.c (struct _bfd): Add sco5_core_data field to tdata.
1170         * targets.c (sco5_core_vec): Add to target list if SCO5_CORE.
1171         * bfd-in2.h, configure, Makefile.in: Rebuild.
1172
1173 Tue Dec  8 19:38:42 1998  Mark Klein  <mklein@dis.com>
1174
1175         * config.bfd (hppa*-*-mpeix*): New target.
1176         * configure.in: Add AC_HEADER_DIRENT.
1177         (hppa*-*-mpeix*): New target.
1178         * configure.host (hppa*-*-mpeix*): New host.
1179         * hpux-core.c: Check HOST_HPPAMPEIX.  Use HAVE_DIRENT_H and
1180         friends rather than just including <sys/dir.h>.
1181         * som.h (struct som_symbol): Add hppa_priv_level and apto
1182         tc_data.  Change all users.
1183         (struct somdata): Add comp_unit field.
1184         (obj_som_compilation_unit): Define.
1185         (bfd_som_attach_compilation_unix): Declare.
1186         * som.c: Check HOST_HPPAMPEIX.
1187         (struct som_misc_symbol_info): Add new field priv_level.
1188         (som_object_setup): Add current_offset parameter.  Change all
1189         callers.
1190         (setup_sections): Likewise.
1191         (som_object_p): For EXECLIBMAGIC, read the lst header.
1192         (som_write_symbol_strings): Add compilation_unit parameter.
1193         Change all callers.
1194         (som_finish_writing): Write out compilation_unit.
1195         (som_bfd_derive_misc_symbol_info): Set priv_level.
1196         (som_build_and_write_symbol_table): Set xleast field to 3.
1197         (som_slurp_symbol_table): Set symbol priv_level.
1198         (bfd_som_attach_compilation_unit): New function.
1199         (som_bfd_ar_write_symbol_stuff): Set xleast field to 3.  Set
1200         priv_level into symbol_value.
1201         * configure, config.in: Rebuild.
1202
1203 Tue Dec  8 16:21:35 1998  Ian Lance Taylor  <ian@cygnus.com>
1204
1205         * hpux-core.c (hpux_core_core_file_p): Change call to nonexistent
1206         warning function to call _bfd_error_handler instead.
1207
1208         * libbfd.c (COERCE32): Cast through unsigned long and long to
1209         avoid bug in old version of gcc.
1210
1211         * elf64-alpha.c (elf64_alpha_additional_program_headers): Remove.
1212         (elf_backend_additional_program_headers): Don't define.
1213
1214 1998-12-08  Nick Clifton  <nickc@cygnus.com>
1215
1216         * elf32-fr30.c (fr30_final_link_relocate): Fix PC relative
1217         relocations to include offset of 2 included in the insns, and the
1218         offset of the relocs within the section.
1219
1220 Wed Dec  2 15:03:59 1998  David Taylor  <taylor@texas.cygnus.com>
1221
1222         The following changes were made by David Taylor
1223         <taylor@texas.cygnus.com>, Edith Epstein
1224         <eepstein@sophia.cygnus.com>, Jim Blandy
1225         <jimb@zwingli.cygnus.com>, and Elena Zannoni
1226         <ezannoni@kwikemart.cygnus.com> as part of the project to merge in
1227         changes originally made by HP; HP did not create ChangeLog
1228         entries.
1229
1230         * aclocal.m4, configure, Makefile.in: Rebuilt using latest
1231         automake macro library.
1232
1233         * hpux-core.c (hpux_core_core_file_p): this function now
1234         understands HPUX 10.30 thread info. Yes, the thread stacks can be
1235         found in the corefile! Also, in hpux_core_core_file_p, if we
1236         encounter a section with an unknown type, don't punt.  Instead,
1237         just skip it.  Also, count the number of sections of known type
1238         that we encounter.  If we encounter at least one good one, then
1239         we'll declare that the file is a core file.  If we encounter any
1240         unknown ones but some known ones, then we'll issue a warning (but
1241         still declare it to be a core file). Also, correctly decide when a
1242         file is not a core.
1243         (PROC_INFO_HAS_THREAD_ID): define if CORE_ANON_SHMEM defined.
1244         (CORE_ANON_SHMEM): define if not defined.
1245         (hpux_core_struct): add members lwpid and user_tid.
1246         (core_kernel_thread_id, core_user_thread_id): new macros.
1247         (make_bfd_asection): use bfd_alloc to allocate room for a copy of
1248         the name before storing it in the bfd.
1249         (hpux_core_core_file_p): handle threads.
1250
1251         * libhppa.h (GET_FIELD): protect against redefinition.
1252         (HPPA_WIDE): define.
1253         (GET_FIELD): define.
1254         (GET_BIT): define.
1255         (MASK): define.
1256         (CATENATE): define.
1257         (ELEVEN): define.
1258         (sign_extend): redefine.
1259         (assemble_6): define.
1260         (assemble_12): rewrite.
1261         (assemble_16): define.
1262         (assemble_16a): define.
1263         (assemble_17): rewrite.
1264         (assemble_22): define.
1265
1266 1998-12-07  Nick Clifton  <nickc@cygnus.com>
1267
1268         * elf32-fr30.c (fr30_final_link_relocate): Using signed
1269         relocations for signed values.
1270
1271 Sun Dec  6 16:30:33 1998  Ian Lance Taylor  <ian@cygnus.com>
1272
1273         * mipsbsd.c (MY(set_arch_mach)): Make static.
1274         * aoutx.h (NAME(aout,machine_type)): For bfd_arch_mips, use
1275         bfd_mach_mips* macros rather than simple numbers.
1276
1277         COFF weak symbol support, based on patches from Mark Elbrecht
1278         <snowball3@usa.net>:
1279         * coffcode.h (coff_slurp_symbol_table): Handle C_WEAKEXT.
1280         * coffgen.c (coff_renumber_symbols): Handle weak symbols.
1281         (coff_write_alien_symbol): Likewise.
1282         * cofflink.c (coff_link_check_ar_symbols): Likewise.
1283         (coff_link_add_symbols): Likewise.
1284         (_bfd_coff_link_input_bfd): Likewise.
1285         (_bfd_coff_write_global_sym): Likewise.
1286
1287         * elf.c (copy_private_bfd_data): Always initialize the
1288         includes_phdrs field.
1289
1290         * elflink.h (elf_fix_symbol_flags): Check for case where a non-ELF
1291         file defines a symbol first mentioned in an ELF file.
1292
1293         * bfd-in.h: Always define BFD_HOST_64_BIT and BFD_HOST_U_64_BIT if
1294         possible, rather than only if BFD64.
1295         * elflink.h (compute_bucket_count): Just check BFD_HOST_U_64_BIT,
1296         not __GNUC__.
1297         * bfd-in2.h: Rebuild.
1298
1299         * srec.c (srec_set_section_contents): Correct test to avoid
1300         switching to 4 byte addresses after seeing a second section which
1301         requires 3 byte addresses.  From Joel Schantz
1302         <joel.schantz@argosys.boeing.com>.
1303
1304         * config.bfd (m68*-*-gnu*): New target.  From Aymeric Vincent
1305         <aymeric.vincent@emi.u-bordeaux.fr>.
1306
1307 1998-12-04  Jim Blandy  <jimb@zwingli.cygnus.com>
1308
1309         * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Fix logic to
1310         decide whether the output file is -mrelocatable-lib,
1311         -mrelocatable, or neither.  (gdb.base/nodebug.exp)
1312
1313 1998-12-03  Nick Clifton  <nickc@cygnus.com>
1314
1315         * elf32-fr30.c: Add support for R_FR30_48 reloc.
1316         * reloc.c: Add BFD_RELOC_FR30_48 relocation.
1317         * bfd-in2.h: Regenerate.
1318         * libbfd.h: Regenerate
1319
1320 Wed Dec  2 00:58:37 1998  Ian Lance Taylor  <ian@cygnus.com>
1321
1322         * elflink.h (elf_adjust_dynamic_symbol): Warn on an attempt to
1323         link against a dynamic symbol with no type or size.
1324
1325 1998-12-01  Ulrich Drepper  <drepper@cygnus.com>
1326
1327         * elf32-i386.c (i386_check_relocs) [R_386_32]: Don't emit
1328         relocation for section which does not get loaded.
1329         (elf_i386_relocate_section) [R_386_32]: Likewise.
1330
1331 Tue Dec  1 11:33:33 1998  Jim Wilson  <wilson@cygnus.com>
1332
1333         * coff-h8300.c (h8300_bfd_link_add_symbols): Make reloc_size,
1334         reloc_count and i long instead of unsigned long.  Handle error
1335         return from bfd_canonicalize_reloc.
1336
1337 1998-12-01  Nick Clifton  <nickc@cygnus.com>
1338
1339         * elf32-v850.c (v850_elf_relocate_section): Detect the absence of
1340         a hash table.
1341
1342 Mon Nov 30 15:28:09 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
1343
1344         * elf32-sh.c (elf/sh.h): Include.
1345         sh_reloc_type: Delete.  Changed all references to elf_sh_reloc_type.
1346         (sh_elf_howto_tab): Add HOWTO for R_SH_SWITCH8.
1347         (sh_reloc_map): Map BFD_RELOC_8_PCREL to R_SH_SWITCH8.
1348         (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
1349         * Makefile.in: Add dependency of elf32-sh.lo on $(INCDIR)/elf/sh.h.
1350
1351 Fri Nov 27 17:51:38 1998  Geoff Keating  <geoffk@ozemail.com.au>
1352
1353         * elflink.h (compute_bucket_count): Don't allow minsize==0, it
1354         causes division by zero later on.
1355
1356 Thu Nov 26 11:19:35 1998  Dave Brolley  <brolley@cygnus.com>
1357
1358         * elf32-fr30.c (fr30_elf_pc9_reloc,fr30_elf_pc12_reloc): Not
1359         needed.
1360
1361 1998-11-25  DJ Delorie  <dj@cygnus.com>
1362
1363         * coff-i386.c (i3coff_object_p): Remove hack.  Use new emulation
1364         hook now.
1365
1366 Tue Nov 24 10:25:27 1998  Nick Clifton  <nickc@cygnus.com>
1367
1368         * elf32-fr30.c (fr30_elf_relocate_section): Call
1369         fr30_final_link_relocate.
1370         (fr30_final_link_relocate): New function: Handle I20 and I32
1371         relocs.
1372         (fr30_elf_i32_reloc): New function: Handle I32 relocs.
1373         (fr30_elf_pc9_reloc): New function: Handle 9_PCREL relocs.
1374         (fr30_elf_pc12_reloc): New function: Handle 12_PCREL relocs.
1375
1376         * elf32-v850.c (v850_elf_relocate_section): Reset hi16s reloc
1377         chain to empty.
1378
1379         The following changes are based on a patch submitted by Gianluca
1380         Moro <glctr@abc.it>:
1381
1382         (v850_elf_perform_relocation): Only update a hi16s reloc if it has
1383         not already been updated.
1384         (find_remembered_hi16s_reloc): New parameter 'already_found'
1385         returns state of remembered hi16s reloc.
1386         (remember_hi16s_reloc): Set 'found' field to false.
1387         (hi16s_location): Add 'found' field.
1388
1389 1998-11-23  DJ Delorie  <dj@cygnus.com>
1390
1391         * coff-i386.c (bfd_pe_dll_not_recognized_hack): the linker wants
1392         to see .DLL files as unrecognized.
1393         (i3coff_object_p): Sorry, had to hack it to not recognize these
1394         files (pei-i386) on request.
1395
1396 1998-11-23  DJ Delorie  <dj@cygnus.com>
1397
1398         * opncls.c (bfd_make_readable): need more cleanup for symbols and
1399         relents.  Call bfd_check_format to reinitialize.
1400
1401 Fri Nov 20 14:21:36 1998  Nick Clifton  <nickc@cygnus.com>
1402
1403         * elf32-fr30.c (fr30_elf_relocate_section): Remove spurious
1404         warnings.
1405
1406 Thu Nov 19 14:42:15 1998  Geoffrey Noer  <noer@cygnus.com>
1407
1408         * aclocal.m4: regenerate
1409         * configure: regenerate
1410
1411 Tue Nov 17 20:23:35 1998  Richard Henderson  <rth@cygnus.com>
1412
1413         * elf-bfd.h (struct elf_link_hash_entry): Add vtable_entries_size.
1414         * elf.c (_bfd_elf_link_hash_newfunc): Clear it.
1415         * elflink.h (elf_gc_propagate_vtable_entries_used): Copy it, and
1416         respect it as an upper bound on what memory to reference.
1417         (elf_gc_smash_unused_vtentry_relocs): Likewise.
1418         (elf_gc_record_vtentry): Handle as-yet undefined vtables.  Set and
1419         update vtable_entries_size appropriately.
1420
1421 Tue Nov 17 15:28:31 1998  Nick Clifton  <nickc@cygnus.com>
1422
1423         * elf32-fr30.c (fr30_reloc_type_lookup): Used integers to hold
1424         reloc number.
1425
1426 Mon Nov 16 22:19:21 1998  DJ Delorie  <dj@cygnus.com>
1427
1428         * archive.c (bfd_ar_hdr_from_filesystem): support BFD_IN_MEMORY
1429         bfds; they have no "file" so we fake it.
1430         * bfd-in2.h: add bfd_make_writable and bfd_make_readable (regen)
1431         * libbfd.c (bfd_write): Allow writing to BFD_IN_MEMORY bfds by
1432         resizing the memory buffer.
1433         * opncls.c (bfd_make_writable): New function; lets you write a
1434         bfd_create'd bfd to an in-memory buffer.
1435         (bfd_make_readable): New function; lets you read back that buffer
1436         as if it were from bfd_openr.  Used to build generated archive
1437         members (winsup's ld's dlltool)
1438
1439 Mon Nov 16 19:15:19 1998  Dave Brolley  <brolley@cygnus.com>
1440
1441         * po/bfd.pot: Regenerated.
1442
1443 Mon Nov 16 10:57:06 1998  Nick Clifton  <nickc@cygnus.com>
1444
1445         * elf32-v850.c (hi16s_location): Replaced fixed size array with
1446         linked list.
1447
1448 Sun Nov 15 20:28:25 1998  Richard Henderson  <rth@cygnus.com>
1449
1450         * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper
1451         element of the gotentry list for local symbols too.
1452         (elf64_alpha_relocate_section): Unify local and global handling.
1453         Assert that gotent->use_count > 0.
1454
1455 Sat Nov 14 15:16:01 1998  Ian Lance Taylor  <ian@cygnus.com>
1456
1457         * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and
1458         update for file name changes of July 2, 1998.
1459         (vms_vax_vec): New.
1460         * configure: Rebuild.
1461
1462 Thu Nov 12 19:19:54 1998  Dave Brolley  <brolley@cygnus.com>
1463
1464         * po/bfd.pot: Regenerated.
1465
1466 Tue Nov 10 16:17:06 1998  Geoffrey Noer  <noer@cygnus.com>
1467
1468         * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*.
1469         * aclocal.m4, configure: regenerate
1470
1471 Tue Nov 10 15:13:59 1998  Nick Clifton  <nickc@cygnus.com>
1472
1473         * elf.c (prep_headers): Add support for bfd_arch_fr30.
1474
1475 Tue Nov 10 13:37:36 1998  Felix Lee  <flee@cygnus.com>
1476
1477         * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE,
1478         BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value
1479         was cached.
1480         * aclocal.m4, configure: regenerated.
1481
1482 Tue Nov 10 14:31:01 1998  Catherine Moore  <clm@cygnus.com>
1483
1484         * elf32-d10v.c (reloc_type):  Add R_D10V_GNU_VTINHERIT and
1485         R_D10V_GNU_VTENTRY relocs.
1486         (elf_d10v_howto_table):  Likewise.
1487         (d10v_reloc_map d10v_reloc_map):  Likewise.
1488         (elf32_d10v_gc_mark_hook):  New.
1489         (elf32_d10v_gc_sweep_hook):  New.
1490         (elf32_d10v_check_relocs):  New.
1491         (elf32_d10v_relocate_section):  New.
1492         (elf_backend_relocate_section):  Define.
1493         (elf_backend_can_gc_sections):  Define.
1494
1495 Sat Nov  7 18:07:51 1998  Peter Schauer  <peter.schauer@regent.e-technik.tu-muenchen.de>
1496
1497         * Makefile.am (BFD32_BACKENDS): Move vms files here...
1498         (BFD64_BACKENDS): ...from here.
1499         (BFD32_BACKENDS_CFILES): Move vms files here...
1500         (BFD64_BACKENDS_CFILES): ...from here.
1501         * Makefile.in: Rebuild.
1502
1503 Wed Nov  4 15:58:48 1998  Nick Clifton  <nickc@cygnus.com>
1504
1505         * Makefile.am: Add FR30 target.
1506         * Makefile.in: Add FR30 target.
1507         * archures.c: Add support for FR30.
1508         * config.bfd: Add support for FR30.
1509         * configure.in: Add support for FR30.
1510         * reloc.c: Add support for FR30 relocations.
1511         * targets.c: Add support for FR30 relocations.
1512         * bfd-in2.h: Regenerate.
1513         * configure: Regenerate.
1514         * libbfd.h:  Regenerate.
1515         * cpu-fr30.c: New file.
1516         * elf32-fr30.c: New file.
1517
1518 Mon Nov  2 14:59:33 1998  Geoffrey Noer  <noer@cygnus.com>
1519
1520         * configure.in: detect cygwin* instead of cygwin32*
1521         * configure: regenerate
1522
1523 Sun Nov  1 19:32:28 1998  Jeffrey A Law  (law@cygnus.com)
1524
1525         * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca,
1526         use bfd_malloc and free instead and check return value from bfd_malloc.
1527
1528 Sun Nov  1 16:20:35 1998  Ian Lance Taylor  <ian@cygnus.com>
1529
1530         * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare.
1531         * libbfd.h: Rebuild.
1532
1533         * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out.
1534         (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise.
1535         (MIPS_TEXT_DYNSYM_SECN): Likewise.
1536         (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash
1537         section.
1538         (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex
1539         field.
1540         (mips_elf_link_hash_table_create): Don't initialize
1541         dynsym_sec_strindex.
1542         (mips_elf_gc_mark_hook): Add default case to avoid warning.
1543         (mips_elf_size_dynamic_sections): Generate a section symbol for
1544         every output section.
1545         (mips_elf_finish_dynamic_sections): Count all sections for
1546         DT_MIPS_UNREFEXTNO.
1547         (mips_elf_finish_dynamic_sections): Use dynamic symbols for all
1548         output sections.
1549
1550 Sun Nov  1 12:46:53 1998  Geoff Keating  <geoffk@ozemail.com.au>
1551
1552         * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots
1553         for later PLT entries in large PLTs.
1554         (ppc_elf_finish_dynamic_symbol): Allow for the extra slots.
1555
1556 Sat Oct 31 20:10:09 1998  Jeffrey A Law  (law@cygnus.com)
1557
1558         * elf32-ppc.c (ppc_elf_reload_section): Fix typo.
1559
1560 1998-10-26 15:58  Ulrich Drepper  <drepper@cygnus.com>
1561
1562         * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value.
1563         * elflink.h (elf_collect_hash_codes): New function.  This function is
1564         called for each exported symbol and we compute the ELF hash value for
1565         it.
1566         (compute_bucket_value): New function.  It is called from
1567         size_dynamic_sections to determine the hash table size.  When we are
1568         optimizing a better, but slower, algorithm is used.
1569         (size_dynamic_sections): Call compute_bucket_value.
1570
1571         * elf.c (bfd_elf_hash): Optimize the hash function a bit.
1572
1573 Mon Oct 19 20:03:21 1998  Catherine Moore  <clm@cygnus.com>
1574
1575         * elf32-sh.c:  Add HOWTO entries for R_SH_GNU_VTINHERIT and
1576         R_SH_GNU_VTENTRY.
1577         (sh_elf_gc_mark_hook):  New.
1578         (sh_elf_gc_sweep_hook):  New.
1579         (sh_elf_check_relocs):  New.
1580         (elf_backend_can_gc_sections):  Define.
1581
1582 Mon Oct 19 16:57:05 1998  Felix Lee  <flee@cygnus.com>
1583
1584         * acinclude.m4: undo previous gettext change
1585         * aclocal.m4: rebuild with right version of aclocal.
1586
1587 Mon Oct 19 01:47:21 1998  Felix Lee  <flee@cygnus.com>
1588
1589         * acinclude.m4, aclocal.m4: move gettext-related fragments from
1590         aclocal.m4 to acinclude.m4, so they don't get lost.
1591
1592         * elfcore.h: rewrite for better corefile support.
1593         * elf.c (elfcore_*): new functions.
1594         * elf-bfd.h (elf_obj_tdata): new structure members.
1595         * acconfig.h, acinclude.m4, configure.in: add feature-tests for
1596         flavor of procfs.
1597         * aclocal.m4, config.in, configure, Makefile.in: regenerated.
1598
1599 Fri Oct 16 14:07:45 1998  Catherine Moore  <clm@cygnus.com>
1600
1601         * elf32-m32r.c:  Add HOWTO entries for R_M32R_GNU_VTINHERIT
1602         and R_M32R_GNU_VTENTRY.
1603         (elf_backend_can_gc_sections):  Define.
1604         (m32r_elf_check_relocs):  New.
1605         (m32r_elf_gc_mark_hook):  New.
1606         (m32r_elf_gc_sweep_hook):  New.
1607         (m32r_elf_relocate_section):  Handle VT relocs.
1608
1609 Mon Oct 12 14:18:40 1998  Nick Clifton  <nickc@cygnus.com>
1610
1611         * coff-arm.c (arm_relocate_section): Remove redundant test.
1612
1613         * bfd-in2.h (struct reloc_howto_struct): Improve comment to make
1614         cleat that the 'bitsize' field is the size of the bitfield AFTER
1615         relocation not before.
1616
1617         * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield.
1618
1619         * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo
1620         relocs.
1621
1622 Tue Oct  6 09:20:44 1998  Catherine Moore  <clm@cygnus.com>
1623
1624         * elf32-sparc.c:  Add HOWTO entries for R_SPARC_GNU_VTINHERIT and
1625         R_SPARC_GNU_VTENTRY.
1626         (elf32_sparc_check_relocs):  Handle them.
1627         (elf32_sparc_reloc_type_lookup):  Likewise.
1628         (elf32_sparc_relocate_section):  Likewise.
1629         (elf32_sparc_gc_mark_hook):  New.
1630         (elf32_sparc_gc_sweep_hook):  New.
1631
1632 Mon Oct  5 14:55:30 1998  Jeffrey A Law  (law@cygnus.com)
1633
1634         * som.c (som_finish_writing): Perform some sanity checks when
1635         writing an executable or shared library.
1636
1637 Mon Oct  5 12:02:31 1998  Gavin Romig-Koch  <gavin@cygnus.com>
1638
1639         * dwarf1.c : New file.  Adds _bfd_dwarf1_find_nearest_line.
1640         * configure.in (elf): Add dwarf1.lo.
1641         * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info.
1642         * elf.c (_bfd_elf_find_nearest_line): Add call to
1643         _bfd_dwarf1_find_nearest_line.
1644         * elf32-mips.c (_bfd_mips_elf_find_nearest_line):
1645         Add call to _bfd_dwarf1_find_nearest_line.
1646         * configure: Rebuilt.
1647
1648 Mon Oct  5 10:06:22 1998  Catherine Moore  <clm@cygnus.com>
1649
1650         * elflink.h (elf_gc_sections):  Do not allow garbage
1651         collection if dynamic sections have been created.
1652
1653 Mon Oct  5 09:07:37 1998  Catherine Moore  <clm@cygnus.com>
1654
1655         * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and
1656         R_V850_GNU_VTENTRY.
1657         (v850_elf_check_relocs):  Handle VTINHERIT and VTENTRY relocs.
1658         (v850_elf_perform_relocation):  Likewise.
1659         (v850_elf_final_link_relocate):  Likewise.
1660         (v850_elf_relocate_section):  Likewise.
1661         (v850_elf_gc_sweep_hook):  New routine.
1662         (v850_elf_gc_mark_hook):  New routine.
1663         (elf_backend_can_gc_sections):  Define.
1664
1665 Mon Oct  5 09:04:25 1998  Catherine Moore  <clm@cygnus.com>
1666
1667         * elf32-m68k.c (elf_m68k_gc_sweep_hook):  Don't assume
1668         that dynobj exists.
1669
1670 Sun Oct  4 23:29:34 1998  David Edelsohn  <edelsohn@mhpcc.edu>
1671
1672         * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
1673         Declare size as bfd_size_type.
1674         (rs6000coff_get_section_contents): Declare count as bfd_size_type.
1675
1676 Sun Oct  4 20:38:29 1998  Jeffrey A Law  (law@cygnus.com)
1677
1678         * cpu-hppa.c (bfd_hppa20_arch): Define.  Link it into the bfd_hppa_arch
1679         structure.
1680         * som.c (CPU_PA_RISC2_0): Define.
1681         (_PA_RISC2_0_ID): Likewise.
1682         (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed.
1683
1684 Sun Oct  4 21:19:09 1998  Ian Lance Taylor  <ian@cygnus.com>
1685
1686         * elflink.h (elf_link_add_object_symbols): When a versioned symbol
1687         has a base which is already defined, only add the referenced
1688         symbol to the dynamic symbol table if it is defined or referenced
1689         by a regular file.
1690
1691         * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs
1692         correctly.
1693
1694 1998-09-27  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1695
1696         * elflink.h (elf_link_add_object_symbols): Undo last change.
1697
1698 Wed Sep 23 16:09:31 1998  Richard Henderson  <rth@cygnus.com>
1699
1700         * elflink.h (elf_link_add_object_symbols): Don't record a dynamic
1701         symbol for the indirect alias to a versioned symbol.
1702
1703 Mon Sep 21 12:15:22 1998  Catherine Moore  <clm@cygnus.com>
1704
1705         * elf32-i386.c (elf32_i386_vtinherit_howto): New.
1706         (elf32_i386_vtentry_howto): New.
1707         (elf_i386_reloc_type_lookup):  Return elf32_i386_vtentry_howto
1708         or elf32_i386_vtinherit_howto  on lookup.
1709
1710 Sun Sep 20 00:48:07 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1711
1712         * elf32-m68k.c: Include "elf/m68k.h".  Remove definition of enum
1713         reloc_type.  Rename R_68K__max to R_68K_max.
1714         (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY
1715         reloc.
1716
1717 Sun Sep 20 00:09:25 1998  Chris Torek  <torek@bsdi.com>
1718
1719         * libbfd.c (bfd_getb32): Rewrite expression to get better code.
1720         (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
1721
1722         * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not
1723         after.
1724
1725 Sat Sep 19 22:42:23 1998  Doug Rabson  <dfr@nlsystems.com>
1726
1727         * elflink.h (elf_link_add_object_symbols): Ensure that the warning
1728         message has a null byte terminator.
1729
1730 Fri Sep 18 14:35:29 1998  Nick Clifton  <nickc@cygnus.com>
1731
1732         * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of
1733         word subject to R_V850_32 relocation.
1734
1735 Thu Sep 17 17:20:36 1998  Nick Clifton  <nickc@cygnus.com>
1736
1737         * dwarf2.c: Add comment describing problem computing line numbers
1738         for undefined symbols at link time.
1739
1740 Thu Sep 17 16:03:28 1998  Richard Henderson  <rth@cygnus.com>
1741
1742         * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
1743         transform a defweak into a plt entry.
1744         (elf64_alpha_calc_dynrel_sizes): Allow room for secondary
1745         plt entry references to receive a RELATIVE reloc.
1746         (elf64_alpha_finish_dynamic_symbol): Fill them in.
1747         (elf64_alpha_relocate_section): Assert we don't overrun
1748         the allocated relocation space.
1749
1750 Wed Sep 16 18:03:13 1998  Nick Clifton  <nickc@cygnus.com>
1751
1752         * elf.c (swap_out_syms): Always treat section symbols as
1753         special, even if they are attached to a common section.
1754
1755 Wed Sep 16 10:34:13 1998  Nick Clifton  <nickc@cygnus.com>
1756
1757         * elf32-v850.c (v850_elf_symbol_processing): Move symbols in
1758         sections with v850 common section attributes into named v850
1759         common sections.
1760         (v850_elf_add_symbol_hook): Move symbols in sections with v850
1761         common section attributes into named v850 common sections.
1762
1763 Wed Sep 16 11:26:49 CDT 1998  Catherine Moore  <clm@cygnus.com>
1764
1765         * elf32-arm.c (elf32_arm_gc_mark_hook):  Remove print
1766         statement.
1767
1768 1998-09-15  Geoff Keating  <geoffk@ozemail.com.au>
1769
1770         * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset
1771         part of Vladimir's change of 1998-08-19.  Make a R_PPC_SDAREL16
1772         reloc to the wrong section a warning, not an error.  .dynsbss
1773         is not an output section, so there is no need to check for it.
1774
1775 Tue Sep 15 12:40:05 1998  Catherine Moore  <clm@cygnus.com>
1776
1777        * elf-bfd.h:  Add argument to elf_backend_get_symbol_type.
1778
1779 Tue Sep 15 08:34:40 1998  Catherine Moore  <clm@cygnus.com>
1780
1781        * elf.c (swap_out_syms):  Pass type to elf_backend_get_symbol_type.
1782        * elf32-arm.c:  Add HOWTO entries for R_ARM_GNU_VTINHERIT and
1783        R_ARM_GNU_VTENTRY.
1784        (elf32_arm_gc_mark_hook): New.
1785        (elf32_arm_gc_sweep_hook): New.
1786        (elf32_arm_check_relocs): New.
1787        (elf32_arm_final_link_relocate):  Handle VTINHERIT and VTENTRY
1788        relocations.
1789        (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY
1790        relocations.
1791
1792 1998-09-10  Geoff Keating  <geoffk@ozemail.com.au>
1793
1794         * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL,
1795         assume there is no PLT or GOT.
1796
1797 Wed Sep  9 14:24:12 1998  Nick Clifton  <nickc@cygnus.com>
1798
1799         * elf32-arm.c (elf32_arm_find_nearest_line): New function:  just
1800         like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is
1801         also accepted as a function symbol type.
1802
1803 Mon Sep  7 13:24:03 1998  Peter Schauer  <pes@regent.e-technik.tu-muenchen.de>
1804
1805         * rs6000-core.c (_LONG_LONG):  Define for AIX 4.x only.
1806
1807 Sat Sep  5 20:40:18 1998  Ian Lance Taylor  <ian@cygnus.com>
1808
1809         * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to
1810         match definition of _bfd_gc_sections field.
1811         * libbfd.h: Rebuild.
1812
1813 Fri Sep  4 13:54:23 1998  David Miller  <davem@dm.cobaltmicro.com>
1814
1815         * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust
1816         the addend of a dynamic relocation referencing a section.
1817         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1818         (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset.
1819
1820 Thu Sep  3 17:28:50 1998  Richard Henderson  <rth@cygnus.com>
1821
1822         * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the
1823         bed has a size_dynamic_sections routine before trying to use it.
1824
1825 Mon Aug 31 14:49:22 1998  Richard Henderson  <rth@cygnus.com>
1826
1827         * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use
1828         _bfd_elf_rel_vtable_reloc_fn.
1829
1830 Mon Aug 31 10:23:40 1998  Catherine Moore  <clm@cygnus.com>
1831
1832         * Makefile.am:  Add elf32-arm.c.
1833         * Makefile.in:  Rebuild.
1834         * elf-bfd.h:  Add elf_backend_get_symbol_type.
1835         * elf.c (swap_out_syms):  If defined, call
1836         elf_backend_get_symbol_type.
1837         * elf32-arm.c: Define elf_backend_get_symbol_type.
1838         (elf32_arm_get_symbol-type):  New routine.
1839         (record_thumb_to_arm_glue):  Change to use STT_ARM_TFUNC.
1840         (bfd_elf32_arm_process_before_allocation):  Change to
1841         check for STT_ARM_TFUNC.
1842         (elf32_arm_final_link_relocate):  Likewise.
1843         * elfxx-target.h:  Add elf_backend_get_symbol_type.
1844
1845 Fri Aug 28 19:44:07 1998  Richard Henderson  <rth@cygnus.com>
1846
1847         * archures.c (bfd_mach_alpha_ev[456]): New.
1848         * cpu-alpha.c: Rework to match these types.
1849         * bfd-in2.h: Rebuild.
1850
1851 Fri Aug 28 19:38:53 1998  Richard Henderson  <rth@cygnus.com>
1852
1853         * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare.
1854         * elf.c (_bfd_elf_rel_vtable_reloc_fn): New.
1855
1856         * elf32-i386.c (elf_howto_table): Add vtable relocs.
1857         (elf_i386_reloc_type_lookup): Recognize them.
1858         (elf_i386_check_relocs): Pass them off to generic code.
1859         (elf_i386_relocate_section): Ignore them.
1860         (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New.
1861         (elf_backend_can_gc_sections): True.
1862
1863 Thu Aug 20 15:03:45 1998  Nick Clifton  <nickc@cygnus.com>
1864
1865         * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL
1866         before looking at owner field.
1867         (elf32_arm_to_thumb_stub): Ditto.
1868         (elf32_arm_relocate_section): Compute name before calling
1869         elf32_arm_final_link_relocate().
1870
1871 Thu Aug 20 11:30:17 1998  Michael Snyder  <msnyder@cleaver.cygnus.com>
1872
1873         * elf.c: comment and formatting cleanups.
1874         * elfcore.h: ditto.
1875
1876 Wed Aug 19 15:43:26 1998  Michael Snyder  <msnyder@cleaver.cygnus.com>
1877
1878         * elfcode.h (elf_object_p): Reject files of header type ET_CORE
1879         (core files are treated differently than object files).
1880         * elf-bfd.h (_bfd_elf_write_corefile_contents,
1881         bfd_elf_mkcorefile): declare.
1882         * elfxx-target.h (_bfd_elf_write_corefile_contents,
1883         bfd_elf_mkcorefile): add to bfd_target vector.
1884         * elfcore.h (elf_core_file_p): save the program header table,
1885         and set the bfd architecture from the elf file header.
1886         * elf.c (bfd_elf_mkcorefile): new function.
1887         (_bfd_elf_write_corefile_contents): new function.
1888         (assign_file_positions_for_segments): add cases for handling
1889         PT_NOTE segments.  (assign_file_positions_except_relocs):
1890         core files should be handled the same as exec files.
1891         (prep_headers): identify core files as type ET_CORE.
1892         (copy_private_bfd_data): identify the sections belonging to
1893         the PT_NOTE segment.
1894
1895         * elf32-sparc.c (elf32_sparc_final_write_processing):
1896         add break statement to default case.
1897
1898 1998-08-19  Vladimir N. Makarov  <vmakarov@cygnus.com>
1899
1900         * elf32-ppc.c (ppc_elf_relocate_section): Check that output
1901         section (not input) will be in sections ".sbss", ".sbss2",
1902         ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL,
1903         R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA.  In all these cases also ignore
1904         output_offset for correct evaluation of addend.
1905
1906 Tue Aug 18 11:48:12 1998  Catherine Moore  <clm@cygnus.com>
1907
1908         * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking,
1909         elf32_arm_allocate_interworking_sections and
1910         elf32_arm_process_before_allocation.
1911
1912 Tue Aug 18 11:46:00 1998  Nick Clifton  <nickc@cygnus.com>
1913
1914         * bfd-in.h: Ammend prototype for
1915         elf32_arm_process_before_allocation to remove surplus third
1916         argument.
1917
1918         * bfd-in2.h: Regenerate.
1919
1920 Sat Aug 15 20:55:08 1998  Richard Henderson  <rth@cygnus.com>
1921
1922         * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols.
1923
1924 Fri Aug 14 09:12:28 1998  Stan Cox  <scox@cygnus.com>
1925
1926         * aoutx.h (aout_link_input_section_ext): Use the relocation already
1927         calculated for RELOC_SPARC_REV32 case.
1928
1929 Thu Aug 13 14:02:02 1998  Catherine Moore  <clm@cygnus.com>
1930
1931        * bfd-in.h:  Add prototypes for elf32_arm_get_bfd_for_interworking,
1932        elf32_arm_allocate_interworking_sections and
1933        elf32_arm_process_before_allocation.
1934        * bfd-in2.h:  Regenerated.
1935        * elf32-arm.c Define elf32_arm_link_hash_table.
1936        (insert_thumb_branch): New routine.
1937        (find_thumb_glue): New routine.
1938        (find_arm_glue): New routine.
1939        (record_arm_to_thumb_glue): New routine.
1940        (record_thumb_to_arm_glue): New routine.
1941        (elf32_arm_link_hash_table_create): New routine.
1942        (elf32_arm_get_bfd_for_interworking): New routine.
1943        (elf32_arm_allocate_interworking_sections) New routine.
1944        (elf32_arm_process_before_allocation) New routine.
1945        (elf32_thumb_to_arm_stub): New routine.
1946        (elf32_arm_to_thumb_stub): New routine.
1947        (elf32_print_private_bfd_data): Fix typo.
1948        (elf32_arm_final_link_relocate):  Add argument sym_sec.
1949        Check for branches to thumb symbols in case R_ARM_PC24.
1950        Check for branches to arm symbols in case R_ARM_THM_PC22.
1951        (elf32_arm_relocate_section):  Pass symbol section to
1952        elf32_arm_final_link_relocate.
1953
1954 Wed Aug 12 19:00:39 1998  Geoff Keating  <geoffk@ozemail.com.au>
1955
1956         * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT
1957         entries unless the symbol is defined in the executable; in
1958         particular, undefined weak symbols get a PLT entry.
1959
1960 Wed Aug 12 14:48:33 1998  Ian Lance Taylor  <ian@cygnus.com>
1961
1962         * libaout.h: Remove nested comment to avoid warning.
1963
1964 Wed Aug 12 08:10:11 1998 Catherine Moore  <clm@cygnus.com>
1965
1966        * elf32-arm.c (elf32_arm_final_link_relocate):  Rework
1967        R_ARM_PC24 relocation.
1968
1969 Tue Aug 11 14:42:26 1998  Catherine Moore  <clm@cygnus.com>
1970
1971        * elf32-arm.c (elf32_arm_final_link_relocate):  Remove unused
1972        argument is_local.  Add argument sym_flags.  Check sym_flags
1973        in R_ARM_ABS32 case.  Include addend for R_ARM_THM_PC22 case.
1974        (elf32_arm_relocate_section):  Don't pass local sym and pass
1975        sym_flags to elf32_arm_final_link_relocate.
1976
1977 Mon Aug 10 20:38:39 1998  Richard Henderson  <rth@cygnus.com>
1978
1979         * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change
1980         to not count too few relocs for dynamicly linked executables.
1981
1982 Mon Aug 10 15:35:34 1998  Richard Henderson  <rth@cygnus.com>
1983
1984         * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider
1985         symbols without a dynamic index dynamic.  Consider all weak
1986         symbols dynamic.
1987         (elf64_alpha_strip_section_from_output): Don't assume 1-1
1988         correspondance between input and output sections.
1989
1990 Mon Aug 10 15:31:39 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1991
1992         * elflink.h (elf_gc_common_finalize_got_offsets): For backends
1993         that use a .got.plt section start the got offset at zero.
1994
1995 Mon Aug 10 17:31:21 1998  Ian Lance Taylor  <ian@cygnus.com>
1996
1997         * ieee.c (ieee_write_processor): Correct the processor ID written
1998         out for bfd_arch_m68k, accommodating change of March 25.
1999
2000 Sun Aug  9 20:55:44 1998  Catherine Moore  <clm@cygnus.com>
2001
2002         * elf32-arm.c (elf32_arm_final_link_relocate):  Rework
2003         R_ARM_THM_RPC22 relocations.
2004
2005 Sat Aug  8 15:15:30 1998  Richard Henderson  <rth@cygnus.com>
2006
2007         * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols
2008         are always dynamic.
2009         (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE
2010         .got relocs in -Bsymbolic shared objects.
2011
2012 Wed Aug  5 15:48:08 1998  Nick Clifton  <nickc@cygnus.com>
2013
2014         * elf32-arm.c: Add private flags to ELF header.
2015         (elf32_arm_print_private_bfd_data): New Function.
2016         (elf32_arm_set_private_flags): New Function.
2017         (elf32_arm_copy_private_flags): New Function.
2018         (elf32_arm_merge_private_bfd_data): New Function.
2019
2020 Mon Aug  3 17:10:15 1998  Ian Lance Taylor  <ian@cygnus.com>
2021
2022         * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against
2023         a local symbol.
2024         (elf32_sparc_relocate_section): Likewise.
2025
2026 Sun Aug  2 03:19:23 1998  Richard Henderson  <rth@cygnus.com>
2027
2028         * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL.  Create the
2029         .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_.
2030         (ppc_elf_relocate_section): Pull sgot and splt search to the start
2031         of the function.  Recognize no .plt as static linking.
2032
2033 1998-08-01  Ulrich Drepper  <drepper@cygnus.com>
2034
2035         * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass
2036         ".liblist" string through gettext.
2037
2038 Fri Jul 31 16:38:14 1998  Catherine Moore  <clm@cygnus.com>
2039
2040         * Makefile.am: Add support for elf32-arm.lo.
2041         * Makefile.in: Rebuild.
2042         * config.bfd (arm-*-elf):  Define targ_defvec and targ_selvecs.
2043         (thumb-*-elf): Define targ_defvec and targ_selvecs.
2044         * configure.in:  Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec.
2045         * configure: Regenerate.
2046         * elf.c: (prep_headers):  Support arch_type of EM_ARM.
2047         * targets.c:  Support new targets bfd_elf32_bigarm_vec and
2048         bfd_target bfd_elf32_littlearm_vec.
2049         * elf32-arm.c:  New file.
2050
2051 Tue Jun 28 19:05:28 1998  Stan Cox  <scox@cygnus.com>
2052
2053         * libaout.h (M_SPARCLITE_LE): New machine.
2054         * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE.
2055         * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE.
2056         (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le
2057         * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32.
2058         (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le
2059         (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support.
2060         * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
2061         elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32
2062         * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to
2063         be BFD_RELOC_SPARC_REV32.
2064         * reloc.c: Ditto.
2065         * config.bfd (sparc86x-*-aout): New
2066
2067 Fri Jul 24 13:54:19 1998  Nick Clifton  <nickc@cygnus.com>
2068
2069         * linker.c (_bfd_generic_final_link): Allocate NULL symbol before
2070         actually mapping the output sections.
2071
2072 Fri Jul 24 11:24:29 1998  Jeffrey A Law  (law@cygnus.com)
2073
2074
2075         * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry.
2076         (mn10300_elf_reloc_map): Similarly.
2077         (mn10300_elf_final_link_relocate): Handle R_MN10300_24.
2078
2079 Fri Jul 24 12:36:04 1998  Ian Lance Taylor  <ian@cygnus.com>
2080
2081         * elf32-mips.c (elf_mips_howto_table): Add reloc types used on
2082         Irix 6.
2083         (bfd_elf32_bfd_reloc_type_lookup): Add default case.
2084         * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with
2085         elf_mips_reloc_type defined in elf/mips.h.
2086
2087 1998-07-24  Ulrich Drepper  <drepper@cygnus.com>
2088
2089         * elf64-mips.c: Remove reloc_type definition completely.  It's now
2090         in elf/mips.h.
2091
2092 Thu Jul 23 13:33:19 1998  Doug Evans  <devans@canuck.cygnus.com>
2093
2094         * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations
2095         as they are defined in elf/mips.h now.
2096
2097 Thu Jul 23 11:29:43 1998  Jeffrey A Law  (law@cygnus.com)
2098
2099
2100         * Re-add lost change:
2101         * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
2102         "movm_stack_size".
2103         (mn10300_elf_relax_section): Include stack space for register saves
2104         in the imm8 field of a "call" instruction.
2105         (compute_function_info): Determine how much stack is allocated by
2106         the movm instruction.  Fix typo.
2107         (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
2108
2109 Thu Jul 23 11:38:05 1998  Ian Lance Taylor  <ian@cygnus.com>
2110
2111         * elf32-sparc.c (elf_backend_got_header_size): Define as 4.
2112         * elf64-sparc.c (elf_backend_got_header_size): Define as 8.
2113
2114 1998-07-22  Ulrich Drepper  <drepper@cygnus.com>
2115
2116         * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type.
2117
2118 Wed Jul 22 16:27:18 1998  Nick Clifton  <nickc@cygnus.com>
2119
2120         * elf32-hppa.h: Let ELF header define the enum containing the
2121         external reloc numbers.
2122         * elf32-i386.h: Likewise.
2123
2124 1998-07-22 14:57  Ulrich Drepper  <drepper@cygnus.com>
2125
2126         * elf-m10300.c: Let ELF header now define the macros to get the enum.
2127         * elf32-mips.c: Likewise.
2128         * elf32-ppc.c: Likewise.
2129
2130 Wed Jul 22 13:53:52 1998  Nick Clifton  <nickc@cygnus.com>
2131
2132         * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in
2133         bfd_coff_set_symbol_class(), in order to avoid K&R compatability
2134         prblems.
2135         * bfd-in.h: Regenerate.
2136         * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class'
2137         parameter to 'unsigned int' to avoid K&R compatability problems.
2138
2139 Wed Jul 22 16:43:24 1998  Ian Lance Taylor  <ian@cygnus.com>
2140
2141         * ieee.c (ieee_find_nearest_line): Change filename_ptr and
2142         functionname_ptr to be const.  Change line_ptr to be unsigned.
2143
2144         * coffcode.h (coff_link_output_has_begun): Simplify handling when
2145         macro is not defined.  Change second parameter from bfd_link_info
2146         to coff_final_link_info.  Add prototype.
2147         (coff_final_link_postscript): Simplify handling when macro is not
2148         defined.  Add prototype.
2149
2150 1998-07-22 13:08  Ulrich Drepper  <drepper@cygnus.com>
2151
2152         * elf-mn10300.c: Before include system specific ELF header define
2153         START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS.
2154         * elf32-mips.c: Likewise.
2155         * elf32-ppc.c: Likewise.
2156
2157 Wed Jul 22 13:46:51 1998  Ian Lance Taylor  <ian@cygnus.com>
2158
2159         * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c
2160         temporary patch over to elf64-mips.c as well.
2161
2162 1998-07-21  Ulrich Drepper  <drepper@cygnus.com>
2163
2164         * elf32-mips.c (reloc_type): Temporarily disable definition of
2165         standard relocation since they are now defined in elf/mips.h.
2166
2167 Tue Jul 21 09:47:00 1998  Catherine Moore  <clm@cygnus.com>
2168
2169         * elf-m10200.c (mn10200_elf_final_link_relocate):
2170         Modify range test for case R_MN10200_8.
2171
2172         * elf-m10300.c (mn10300_elf_final_link_relocate):
2173         Modify range test for case R_MN10300_8.
2174
2175 Mon Jul 20 18:50:54 1998  Richard Henderson  <rth@cygnus.com>
2176
2177         * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size.
2178         * elf32-i386.c (elf_backend_got_header_size): Define.
2179         (elf_backend_plt_header_size): Define.
2180         * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise.
2181         * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise.
2182         * elfxx-target.h: Provide a default of zero.
2183         * elflink.c (_bfd_elf_create_got_section): Use got_header_size.
2184         * elflink.h (elf_gc_common_finalize_got_offsets): Likewise.
2185
2186         * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT
2187         entry from an executable, even if the plt refcount goes to 0.
2188
2189 Mon Jul 20 12:47:26 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2190
2191         * aoutx.h (NAME(aout,find_nearest_line)): Also remember the
2192         directory name at the line number.
2193
2194         * elf.c (_bfd_elf_find_nearest_line): Also consider symbols
2195         with an unspecified type.
2196
2197 Wed Jul 15 11:20:01 1998  Ian Lance Taylor  <ian@cygnus.com>
2198
2199         * sunos.c: Add undef of valid to avoid problem on SunOS.
2200
2201 Tue Jul 14 15:30:59 1998  Richard Henderson  <rth@cygnus.com>
2202
2203         * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize.
2204
2205 Tue Jul 14 11:22:21 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2206
2207         * elf32-m68k.c (elf_m68k_check_relocs): Also reference count
2208         R_68K_PCxx and R_68K_xx relocations.  Make sure that
2209         ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
2210         (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
2211         R_68K_xx relocations.
2212         (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
2213         that has no plt entry.
2214         (elf_m68k_relocate_section): Ignore the plt offset in a static
2215         link.
2216         * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
2217         an ignored symbol.
2218         (elf_gc_common_finalize_got_offsets): Set the got offsets also in
2219         a static link.
2220
2221         * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
2222         types.
2223         (howto_table, reloc_map): Add entries for them.
2224         (elf_m68k_check_relocs): Handle them.  Implement reference
2225         counting for got and plt entries.
2226         (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
2227         (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
2228         symbols.
2229         (rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
2230         (elf_m68k_relocate_section): Handle the new reloc types.
2231         (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
2232         elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
2233         * elflink.h (elf_link_add_object_symbols): When creating an
2234         indirect reference for symbol versioning also copy the plt
2235         offset.
2236         (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
2237         flag also reset the plt offset.
2238         (elf_link_assign_sym_version): Likewise.
2239         (elf_gc_common_finalize_got_offsets): Increment the got offset by
2240         the size of the entry in bytes.
2241         (elf_gc_allocate_got_offsets): Likewise.
2242
2243 Tue Jul 14 11:18:14 1998  Ian Lance Taylor  <ian@cygnus.com>
2244
2245         * elflink.h (elf_gc_sections): Return true rather than falling off
2246         the bottom.
2247
2248         * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not
2249         xmalloc.
2250
2251 Mon Jul 13 11:06:31 1998  Nick Clifton  <nickc@cygnus.com>
2252
2253         * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a
2254         comment describing when it should be enabled.
2255         Changed definition of USER_LABEL_PREFIX to "", to fall into line
2256         with GCC sources.
2257
2258 Mon Jul 13 13:06:54 1998  Ian Lance Taylor  <ian@cygnus.com>
2259
2260         * ieee.c (ieee_slurp_external_symbols): Handle call optimization
2261         information ATN records.
2262
2263 Fri Jul 10 16:31:06 1998  Ian Lance Taylor  <ian@cygnus.com>
2264
2265         * ieee.c (ieee_slurp_external_symbols): Select an appropriate
2266         section for an absolute symbol in a fully linked file.  Based on
2267         patch from Christian Holland <CHolland@de.lucent.com>.
2268
2269 Wed Jul  8 11:29:56 1998  Manfred Hollstein  <manfred@s-direktnet.de>
2270
2271         * coff-m88k.c (m88k_special_reloc): Don't lose the information
2272         that a symbol is undefined.
2273
2274 Tue Jul  7 21:47:02 1998  Jeffrey A Law  (law@cygnus.com)
2275
2276         * som.c (som_bfd_gc_sections): Define.
2277
2278 Mon Jul  6 11:35:50 1998  Nick Clifton  <nickc@cygnus.com>
2279
2280         * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about
2281         overflows in ARM_26D patches, since they have already been
2282         implmented.  Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk>
2283
2284 Sat Jul  4 12:25:36 1998  Ian Lance Taylor  <ian@cygnus.com>
2285
2286         * coffcode.h (coff_write_object_contents): If we have any long
2287         section names, call coff_write_symbols even if there are no
2288         symbols.
2289
2290 Fri Jul  3 13:11:35 1998  Ian Lance Taylor  <ian@cygnus.com>
2291
2292         * elf.c (copy_private_bfd_data): Only set phdr_included once for a
2293         PT_LOAD segment, rather than only setting it once for the entire
2294         file.
2295
2296         * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
2297         rather than ignoring every phdr with a p_paddr of 0, ignore all
2298         the phdrs if they all have a p_paddr of 0.
2299
2300         * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr
2301         section was discarded from the link.
2302
2303 Fri Jul  3 14:39:05 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
2304
2305         * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number.
2306
2307 Fri Jul  3 14:35:48 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
2308
2309         * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with
2310         floating point operations.
2311
2312 Thu Jul  2 18:37:25 1998  Ian Lance Taylor  <ian@cygnus.com>
2313
2314         * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global
2315         function symbols.
2316
2317 Thu Jul  2 14:59:42 1998  Klaus Kaempf  <kkaempf@rmi.de>
2318
2319         Merge of vax/vms (read-only) support
2320         * configure.com: Support Vax target.
2321         * makefile.vms: Support Vax target.
2322         * vms.h: Renamed from evax.h, merged vax/vms (read-only) support.
2323         * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only)
2324         support.
2325         * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only)
2326         support.
2327         * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only)
2328         support.
2329         * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only)
2330         support.
2331         * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only)
2332         support.
2333         * libbfd.c (real_read): Use unbuffered read on VMS/Vax.
2334         * targets.c (bfd_target_ovax_flavour): New flavour.
2335         (vms_alpha_vec): Renamed from evax_alpha_vec.
2336         (vms_vax_vec): New.
2337         (target_vector): Update accordingly.
2338         * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not
2339         evax_alpha_vec.
2340         (vax*-*-*vms*): New target.
2341         * Makefile.am: Update for renamed files.  Rebuild dependencies.
2342         * bfd-in2.h: Rebuild.
2343         * configure.in, Makefile.in, aclocal.m4: Rebuild.
2344
2345 Thu Jul  2 13:31:55 1998  Ian Lance Taylor  <ian@cygnus.com>
2346
2347         Based on patch from Matt Semersky <matts@scd.hp.com>:
2348         * linker.c (_bfd_generic_final_link): Force a trailing NULL
2349         pointer on abfd->outsymbols.
2350         (generic_add_output_symbol): Handle NULL sym parameter.
2351
2352 Wed Jul  1 17:05:53 1998  Nick Clifton  <nickc@cygnus.com>
2353
2354         * elf.c (copy_private_bfd_data): Add support for changing VMA or
2355         LMA of sections.
2356
2357 Wed Jul  1 16:58:50 1998  Ian Lance Taylor  <ian@cygnus.com>
2358
2359         * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons
2360         when handling 32 bit immediate relocs.
2361         * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
2362
2363 Tue Jun 30 09:55:03 1998  Jeffrey A Law  (law@cygnus.com)
2364
2365         * section.c (STD_SECTION): Account for recently added gc_mark
2366         field in struct asection.
2367
2368         * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function.
2369         (bfd_elf32_bfd_merge_private_bfd_data): Define.
2370
2371 Thu Jun 25 18:31:41 1998  Richard Henderson  <rth@cygnus.com>
2372
2373         ELF Section-level Garbage Collection:
2374         * bfd.c (bfd_gc_sections): New.
2375         * aout-adobe.c: Hook to default implementation.
2376         * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise.
2377         * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise.
2378         * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise.
2379         * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise.
2380         * tekhex.c, versados.c: Likewise.
2381         * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New.
2382         * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections.
2383
2384         * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New.
2385         (bfd_generic_gc_sections): New.
2386         * section.c (SEC_KEEP): New.
2387         (asection): Add gc_mark member.
2388
2389         * elfcode.h (elf_gc*): New name remappings.
2390         * elflink.h (elf_link_input_bfd): Don't set contents on stabs
2391         sections to be excluded.
2392         (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New.
2393         (elf_gc_propogate_vtable_entries_used): New.
2394         (elf_gc_smash_unused_vtentry_relocs): New.
2395         (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New.
2396         (elf_gc_common_finalize_got_offsets): New.
2397         (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New.
2398         * elfxx-target.h: Add and default gc hooks.
2399
2400         * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset
2401         for unions.
2402         (struct elf_obj_tdata): Likewise for local_got_offsets.
2403         * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses.
2404         * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise.
2405         * elf64-sparc.c, elflink.h: Likewise.
2406
2407         * elf-bfd.h (struct elf_link_hash_entry): Add vtable members.
2408         (ELF_LINK_HASH_MARK): Define.
2409         (struct elf_backend_data): Add GC hooks.
2410         * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members.
2411
2412         * elf-m10300.c (mn10300_elf_check_relocs): New.
2413         (mn10300_elf_gc_mark_hook): New.
2414         (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New.
2415         (elf_mn10300_howto, mn10300_reloc_map): Handle them.
2416         (mn10300_elf_final_link_relocate): Likewise.
2417         (mn10300_elf_relocate_section): Likewise.
2418         (elf_backend_can_gc_sections): Define.
2419         * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New.
2420         (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New.
2421         (bfd_elf32_bfd_reloc_type_lookup): Handle them.
2422         (mips_info_to_howto_rel): Likewise.
2423         (mips_elf_relocate_section): Likewise.
2424         (mips_elf_check_relocs): Likewise.
2425         (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New.
2426         (elf_backend_can_gc_sections): Define.
2427         * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New.
2428         (ppc_elf_howto_raw): Handle them.
2429         (ppc_elf_reloc_type_lookup): Likewise.
2430         (ppc_elf_relocate_section): Likewise.
2431         (ppc_elf_check_relocs): Reference count .got and .plt entires.
2432         Handle new vtable relocs.
2433         (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries.
2434         (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New.
2435         (elf_backend_can_gc_sections): Define.
2436
2437 Fri Jun 26 10:48:23 1998  Jeffrey A Law  (law@cygnus.com)
2438
2439         * archures.c (bfd_mach_mn10300): Define.
2440         * elf-m10300.c: Include elf/mn10300.h
2441         (elf_mn10300_mach): New function.
2442         (_bfd_mn10300_elf_final_write_processing): Likewise.
2443         (_bfd_mn10300_elf_object_p): Likewise.
2444         (elf_backendfinal_write_processing): Define.
2445         (elf_backend_object_p): Likewise.
2446
2447 Thu Jun 25 18:31:08 1998  Nick Clifton  <nickc@cygnus.com>
2448
2449         * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S
2450         relocation.
2451
2452 Wed Jun 24 17:17:57 1998  Ian Lance Taylor  <ian@cygnus.com>
2453
2454         * elflink.h (elf_bfd_final_link): Loop over input_bfds using the
2455         link_next field, not the next field.
2456
2457 Sun Jun 21 19:38:39 1998  Ian Lance Taylor  <ian@cygnus.com>
2458
2459         * elf.c (map_sections_to_segments): Check the section address
2460         against the phdr size both with and without a modulo of
2461         maxpagesize.
2462
2463 Fri Jun 19 17:08:18 1998  Ian Lance Taylor  <ian@cygnus.com>
2464
2465         * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a
2466         linker created empty input section if the output section has the
2467         same name.
2468
2469         * elflink.h (elf_link_output_extsym): Print an error message if
2470         _bfd_elf_section_from_bfd_section fails.
2471
2472         * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on
2473         failure.
2474
2475 Tue Jun 16 11:55:55 1998  Ian Lance Taylor  <ian@cygnus.com>
2476
2477         * elf.c (copy_private_bfd_data): Improve handling of Solaris
2478         native linker output.  Avoid putting an empty section in more than
2479         one segment.
2480
2481 Fri Jun 12 13:30:17 1998  Tom Tromey  <tromey@cygnus.com>
2482
2483         * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
2484         ($(PACKAGE).pot): Unconditionally depend on POTFILES.
2485
2486 Fri Jun 12 13:34:02 1998  Doug Evans  <devans@canuck.cygnus.com>
2487
2488         * elf.c (swap_out_syms): New arg relocatable_p.
2489         Don't add section VMA to symbols for relocatable output.
2490         (_bfd_elf_compute_section_file_positions): Update call to
2491         swap_out_syms.
2492
2493 Mon Jun  8 15:20:57 1998  Nick Clifton  <nickc@cygnus.com>
2494
2495         * elf32-v850.c (v850_elf_perform_relocation): Make comparisons
2496         against 'addend' be signed rather than unsigned.
2497
2498 Sat Jun  6 00:31:21 1998  Nick Clifton  <nickc@cygnus.com>
2499
2500         * elf32-m32r.c: Add prototyps for static functions.
2501
2502         * coff-arm.c: Add prototypes for static functions.
2503
2504 Fri Jun  5 17:21:51 1998  Nick Clifton  <nickc@cygnus.com>
2505
2506         * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the
2507         LMA is used to order sections in a segment.
2508
2509         * elf32-v850.c: Add prototypes for static functions.
2510         Change type of addend parameter to bfd_vma in various functions.
2511
2512 Fri Jun  5 18:09:58 1998  Ian Lance Taylor  <ian@cygnus.com>
2513
2514         * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use
2515         complain_overflow_signed instead of complain_overflow_bitfield.
2516
2517 Fri Jun  5 15:11:11 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2518
2519         * elf.c (elf_map_symbols): Don't add section VMA to symbol value
2520         when comparing against 0.
2521
2522 Wed Jun  3 17:52:49 1998  Ian Lance Taylor  <ian@cygnus.com>
2523
2524         * Makefile.am (config.status): New target.
2525         * Makefile.in: Rebuild.
2526
2527 Wed Jun  3 12:18:24 1998  Stan Cox  <scox@equinox.cygnus.com>
2528
2529         * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an
2530         error if previous object endianness doesn't match current object.
2531
2532 Tue Jun  2 17:50:59 1998  Nick Clifton  <nickc@cygnus.com>
2533
2534         * elf32-v850.c (v850_elf_print_private_bfd_data): Call
2535         _bfd_elf_print_private)bfd_data ().
2536
2537 Tue Jun  2 15:29:35 1998  Ian Lance Taylor  <ian@cygnus.com>
2538
2539         * elflink.h (elf_merge_symbol): Don't always set type_change_ok
2540         and size_change_ok.
2541         (elf_link_add_object_symbols): Set type_change_ok and
2542         size_change_ok before calling elf_merge_symbol.
2543
2544         * elf32-mips.c (mips_elf_relocate_section): If we issue an
2545         undefined symbol error, don't also issue an overflow error.
2546
2547 Tue Jun  2 13:51:00 1998  Geoff Keating  <geoffk@ozemail.com.au>
2548
2549         * elf32-ppc.c (ppc_elf_relocate_section): The target of an
2550         R_PPC_LOCAL24PC relocation should be local; if not, print an error
2551         message instead of crashing.
2552
2553 Mon Jun  1 18:23:12 1998  Yuli Barcohen  <yuli.barcohen@telrad.co.il>
2554
2555         * archures.c (bfd_mach_cpu32): Define.
2556         (bfd_default_scan): Add case for 68060.  Fix 68332 case to use
2557         bfd_mach_cpu32.
2558         * cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
2559         * ieee.c: Include <ctype.h>.
2560         (ieee_object_p): Parse out process ID string to make it more
2561         likely to be acceptable for bfd_scan_arch.
2562         * bfd-in2.h: Rebuild.
2563
2564 Mon Jun  1 11:12:02 1998  Nick Clifton  <nickc@cygnus.com>
2565
2566         * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call
2567         _bfd_elf_print_private_bfd_data() so that the program header will
2568         be displayed.
2569
2570 Mon Jun  1 12:14:28 1998  Ian Lance Taylor  <ian@cygnus.com>
2571
2572         * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than
2573         0x68.  Reindent.  Add some comments.
2574
2575 Fri May 29 09:58:08 1998  Nick Clifton  <nickc@cygnus.com>
2576
2577         * elf.c (copy_private_bfd_data): Adjust physical address of
2578         segment in output BFD to contain LMAs of its sections.
2579
2580 Tue May 26 19:37:47 1998  Stan Cox  <scox@equinox.cygnus.com>
2581
2582         * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
2583         elf32_sparc_relocate_section): Added R_SPARC_32LE for little
2584         endian data 32 bit relocations.
2585         (elf32_sparc_merge_private_bfd_data): Check if linking little
2586         endian objects with big endian objects.
2587         (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le.
2588         (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags.
2589         * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE.
2590         * reloc.c: Same.
2591         * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le
2592         * archures.c (bfd_mach_sparc_sparclite_le): New.
2593         * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New.
2594
2595 Thu May 21 16:59:28 1998  Nick Clifton  <nickc@cygnus.com>
2596
2597         * peicode.h (add_data_entry): Fix precedence of operators in if ()
2598         statement.
2599
2600 Tue May 19 18:41:19 1998  Ian Lance Taylor  <ian@cygnus.com>
2601
2602         * bfd-in.h: Move over patch to bfd-in2.h.
2603
2604         * reloc.c (bfd_check_overflow): Add casts before shifts which may
2605         not fit in 32 bits.
2606         (_bfd_relocate_contents): Likewise.
2607
2608 Mon May 18 14:44:15 1998  Nick Clifton  <nickc@cygnus.com>
2609
2610         * peicode.h (add_data_entry): If the section has no private data
2611         then do not create a Data Dictionary entry for it.
2612
2613 Mon May 18 00:09:28 1998  Richard Henderson  <rth@cygnus.com>
2614
2615         * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes.
2616         (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots,
2617         elf64_alpha_size_got_sections): Rewrite, handling multiple got
2618         subsections during relaxation more correctly.
2619
2620 Thu May 14 14:22:58 1998  Nick Clifton  <nickc@cygnus.com>
2621
2622         * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class ().
2623         Add extra argument to bfd_arm_process_before_allocation ().
2624         * bfd-in.h: Reflect changes made in bfd-in2.h.
2625         * coffgen.c (bfd_coff_set_symbol_class): New function.  Set the
2626         coff class of a BFD symbol.
2627         * coff-arm.c: Add support for interworking between Thumb code and
2628         non-interworking aware ARM code.
2629
2630 Sun May 10 22:33:59 1998  Jeffrey A Law  (law@cygnus.com)
2631
2632         * po/Make-in (install-info): New target.
2633
2634 Thu May  7 17:40:56 1998  Ian Lance Taylor  <ian@cygnus.com>
2635
2636         * filemode.c: Remove; not used.
2637
2638         If sysdep.h includes a header file, don't include it again:
2639         * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or
2640         <errno.h>.
2641         * aoutx.h: Don't include <string.h>.  Use "sysdep.h" rather than
2642         <sysdep.h>.
2643         * archive.c: Don't include <string.h> or <errno.h>.
2644         * evax-alpha.c; Don't include <stdio.h>.
2645         * evax-egsd.c: Likewise.
2646         * evax-etir.c: Likewise.
2647         * evax-misc.c: Likewise.
2648         * evax-emh.c: Likewise.  Also, don't include <sys/types.h>.
2649         * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or
2650         <errno.h>.
2651         * hpux-core.c: Likewise.
2652         * netbsd-core.c: Likewise.
2653         * som.c: Likewise.
2654         * libbfd.c: Don't include <sys/types.h>.
2655         * nlmcode.h: Don't include <string.h>.
2656         * osf-core.c: Don't include <string.h> or <stdio.h>.
2657         * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>,
2658         <errno.h>, or <unistd.h>.
2659         * trad-core.c: Don't include <stdio.h> or <sys/types.h>.
2660
2661 Thu May  7 13:12:50 1998  Klaus Kaempf  <kkaempf@progis.de>
2662
2663         * configure.com: If the version number can not be found in
2664         configure.in, set it to "unknown" rather than "2.8.1".
2665
2666 Wed May  6 09:46:05 1998  Gavin Koch  <gavin@cygnus.com>
2667
2668         * elf32-mips.c (elf_mips_mach): New.
2669         (_bfd_mips_elf_object_p): Use elf_mips_mach.
2670         (_bfd_mips_elf_final_write_processing): Use the names
2671         of machines, rather than the numbers.  Set both the ARCH
2672         and MACH in e_flags.  Handle a few more specific machines.
2673         (_bfd_mips_elf_merge_private_bfd_data): Merge both
2674         EF_MIPS_ARCH and EF_MIPS_MACH.
2675
2676 Tue May  5 21:01:53 1998  Richard Henderson  <rth@cygnus.com>
2677
2678         * syms.c (bfd_is_local_label): Revert last change.
2679         * srec.c (srec_write_symbols): Discard debugging symbols.
2680
2681 Tue May  5 23:36:06 1998  Ian Lance Taylor  <ian@cygnus.com>
2682
2683         * som.c: Include <ctype.h>.
2684         * som.h: Don't include sysdep.h.
2685
2686 Tue May  5 18:29:24 1998  Tom Tromey  <tromey@cygnus.com>
2687
2688         * libbfd.h: Rebuilt.
2689         * libbfd-in.h: Removed gettext includes and defines.
2690         * sysdep.h: Moved gettext-related includes and defines here.
2691
2692 Tue May  5 16:47:54 1998  Richard Henderson  <rth@cygnus.com>
2693
2694         * srec.c (srec_write_symbols): Use bfd_is_local_label rather than
2695         an ad-hoc test.  Kill bogus #if 0 code.
2696         * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local.
2697
2698 Mon May  4 16:10:33 1998  Ian Lance Taylor  <ian@cygnus.com>
2699
2700         * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address
2701         when generating a normal executable for a symbol defined in a
2702         regular file.  When copying a reloc into the output file, adjust
2703         the addend for a PC relative reloc against a global symbol.
2704
2705 Mon May  4 10:08:18 1998  Tom Tromey  <tromey@cygnus.com>
2706
2707         * libbfd.h: Rebuilt.
2708         * libbfd-in.h (_): Define as dgettext.
2709
2710 Mon May  4 11:02:23 1998  Ian Lance Taylor  <ian@cygnus.com>
2711
2712         * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma,
2713         not signed.
2714         * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS
2715         when declaring parameter types.
2716         (pe_saved_coff_bfd_copy_private_bfd_data): Likewise.
2717
2718 Wed Apr 29 15:35:03 1998  Ian Lance Taylor  <ian@cygnus.com>
2719
2720         * config.bfd: If we include any ELF targets in targ_defvec and/or
2721         targ_selvecs, then add the generic ELF targets to targ_selvecs.
2722         * elf32-gen.c (dummy): New static const variable.
2723         (elf_generic_info_to_howto): New static function.
2724         (elf_generic_info_to_howto_rel): New static function.
2725         (elf_info_to_howto): Define as elf_generic_info_to_howto.
2726         (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel.
2727         * elf64-gen.c: Same changes as elf32-gen.c.
2728         * elfcode.h (elf_object_p): For the generic target, ignore a
2729         failure of bfd_default_set_arch_mach.  Fix indentation a bit.
2730
2731 Tue Apr 28 20:05:52 1998  Ian Lance Taylor  <ian@cygnus.com>
2732
2733         * configure.in (WIN32LIBADD): Add -lintl on cygwin32.
2734         * configure: Rebuild.
2735
2736 Tue Apr 28 12:16:57 1998  Jason Molenda  (crash@bugshack.cygnus.com)
2737
2738         * config.bfd:  Update OSR5/Unixware patterns.
2739
2740 Mon Apr 27 18:02:24 1998  Richard Henderson  <rth@cygnus.com>
2741
2742         * elf.c (assign_file_positions_for_segments): Allow for holes
2743         between sections added by a link script.
2744
2745 Mon Apr 27 11:49:55 1998  Ian Lance Taylor  <ian@cygnus.com>
2746
2747         * configure.in: Change version number to 2.9.4
2748         * configure: Rebuild.
2749
2750         Based on patch from H.J. Lu <hjl@gnu.org>:
2751         * elf.c (bfd_elf_get_bfd_needed_list): New function.
2752         * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare.
2753         * bfd-in2.h: Rebuild.
2754
2755 Sat Apr 25 20:07:53 1998  Richard Henderson  <rth@cygnus.com>
2756
2757         * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other.
2758         Change all users.
2759
2760 Sat Apr 25 18:29:07 1998  Richard Henderson  <rth@cygnus.com>
2761
2762         * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members.
2763         (elf64_alpha_relax_section): Fill them in.
2764         (elf64_alpha_relax_opt_call): Implement more than a stub.
2765         (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default
2766         alignment on .scommon.
2767         (elf64_alpha_merge_gots): Merge use counts as well.
2768
2769 Sat Apr 25 14:07:29 1998  Richard Henderson  <rth@cygnus.com>
2770
2771         * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section
2772         for calculating a local symbol's address.
2773         (elf64_alpha_calc_got_offsets): Skip entries with 0 use count.
2774         Set the .got's cooked size as well as the raw size.
2775
2776 Fri Apr 24 09:16:00 1998  Nick Clifton  <nickc@cygnus.com>
2777
2778         * elf32-v850.c (v850_elf_print_private_bfd_data): Add
2779         internationalisation of printed information.
2780
2781         * coff-arm.c (coff_arm_print_private_bfd_data): Add
2782         internationalisation of printed information.
2783
2784 Fri Apr 24 12:09:18 1998  Ian Lance Taylor  <ian@cygnus.com>
2785
2786         * syms.c (struct indexentry): Change directory_name, file_name,
2787         and function_name fields to char *.
2788         (struct stab_find_info): Change cached_file_name field to char *.
2789
2790 Thu Apr 23 08:13:04 1998  Nick Clifton  <nickc@cygnus.com>
2791
2792         * peicode.h (dir_names): Add missing N_() macros to dir_names array.
2793
2794 Wed Apr 22 13:06:15 1998  Tom Tromey  <tromey@cygnus.com>
2795
2796         * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
2797
2798 Wed Apr 22 17:48:48 1998  Ian Lance Taylor  <ian@cygnus.com>
2799
2800         * Makefile.am (install-data-local): Make $(includedir).
2801         * Makefile.in: Rebuild.
2802
2803 Wed Apr 22 13:06:15 1998  Tom Tromey  <tromey@cygnus.com>
2804
2805         * libbfd-in.h: Use `gettext' and not `dgettext' for now.
2806
2807 Wed Apr 22 12:53:40 1998  Ian Lance Taylor  <ian@cygnus.com>
2808
2809         * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl.
2810         * Makefile.in: Rebuild.
2811
2812         * bfd-in2.h: Rebuild for Nick's changes.
2813
2814 Tue Apr 21 23:11:51 1998  Richard Henderson  <rth@cygnus.com>
2815
2816         * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last
2817         change wrt length == max_namelen.
2818
2819 Tue Apr 21 21:19:36 1998  Tom Tromey  <tromey@scribbles.cygnus.com>
2820
2821         * Many files: Added gettext invocations around user-visible
2822         strings.
2823         * libbfd-in.h: Added gettext includes and defines.
2824         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
2825         HAVE_LC_MESSAGES): Define.
2826         * configure.in: Call CY_GNU_GETTEXT.  Create po/Makefile.in and
2827         po/Makefile.
2828         * Makefile.am (SUBDIRS): Added po.
2829         (POTFILES): New macro.
2830         (po/POTFILES.in): New target.
2831         (SOURCE_HFILES): New macro.
2832         (HFILES): Use it.
2833         * po/Make-in, po/POTFILES.in, po/bfd.pot: New files.
2834
2835 Tue Apr 21 13:38:18 1998 Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
2836
2837         * elfcore.h (bfd_prstatus):  Copy core_prstatus from the first
2838         NT_PRSTATUS note section encountered, it contains the status of
2839         the currently executing thread when the core file was written.
2840
2841 Tue Apr 21 10:00:12 1998  Nick Clifton  <nickc@cygnus.com>
2842
2843         * libcoff.h: Add extra parameter to
2844         bfd_coff_link_output_has_begun overrideable function.
2845         * cofflink.c: Pass extra parameter to
2846         bfd_coff_link_output_has_begun function.
2847         * bfd-in.h: Add prototypes for exported ARM interworking
2848         functions.
2849         * peicode.h: ARM specific code reorganised to conform to BFD
2850         coding conventions.
2851         * coffcode.h: ARM specific code reorganised to conform to BFD
2852         coding conventions.
2853         * coff-arm.c: Code reorganised to conform to the BFD coding
2854         conventions.  Global variables have been moved into an ARM
2855         specific hash table structure and a new function:
2856         bfd_arm_get_bfd_for_interworking() has been created which is
2857         called from the linker scripts.
2858
2859 Tue Apr 21 00:11:51 1998  Richard Henderson  <rth@cygnus.com>
2860
2861         * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test.
2862
2863         * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from
2864         elf64_alpha_relax_find_reloc_ofs.  Changed all callers.
2865         (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss.
2866         (elf64_alpha_size_got_sections): Don't merge .got sections twice.
2867
2868 Sat Apr 18 01:21:04 1998  Stan Cox  <scox@cygnus.com>
2869
2870         * config.bfd: Added sparc86x support.
2871
2872 Fri Apr 17 22:29:04 1998  Ian Lance Taylor  <ian@cygnus.com>
2873
2874         * elf32-mips.c (mips_elf_relocate_section): Do not complain about
2875         an out of range pc-relative jump/call to an undefined weak symbol.
2876
2877 Thu Apr 16 13:49:00 1998  Richard Henderson  <rth@cygnus.com>
2878
2879         * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp
2880         comparisons signed.
2881
2882 Thu Apr 16 11:43:33 1998  Ian Lance Taylor  <ian@cygnus.com>
2883
2884         * archive.c (bfd_generic_archive_p): If a slurp subroutine returns
2885         an error other than bfd_error_system_call, set the error to
2886         bfd_error_wrong_format.
2887
2888         * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add
2889         bfd_elf32_powerpcle_vec.
2890
2891         * elf.c (copy_private_bfd_data): If all the p_paddr fields in the
2892         program segments are zero, don't set p_paddr_valid.
2893
2894 Wed Apr 15 22:15:16 1998  Richard Henderson  <rth@cygnus.com>
2895
2896         * elf64-alpha.c: Initial implementation of relaxation --
2897         (struct alpha_elf_link_hash_entry): Add use_count member.
2898         (elf64_alpha_check_relocs): Initialize and increment it.
2899         (elf64_alpha_can_merge_gots): Check it when considering merging.
2900         (elf64_alpha_merge_gots): Drop entries with zero use.
2901         (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
2902         (elf64_alpha_always_size_sections): Split out got sizing ...
2903         (elf64_alpha_size_got_sections): ... here.  New function.
2904         (elf64_alpha_relax_find_reloc_ofs): New function.
2905         (elf64_alpha_relax_with_lituse): Likewise.
2906         (elf64_alpha_relax_without_lituse): Likewise.
2907         (elf64_alpha_relax_opt_call): Likewise.
2908         (elf64_alpha_relax_section): Likewise.
2909         (elf64_alpha_add_symbol_hook): Likewise.
2910         (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16.
2911         (elf64_alpha_relocate_section): Likewise.
2912         (bfd_elf64_bfd_relax_section): Define.
2913         (elf_backend_add_symbol_hook): Likewise.
2914
2915 Wed Apr 15 16:08:46 1998  Richard Henderson  <rth@cygnus.com>
2916
2917         * elf.c (prep_headers): Use new EM_SPARCV9 symbol.
2918         * elf64-sparc.c (ELF_MACHINE_CODE): Likewise.
2919         (ELF_MACHINE_ALT1): New.  Set to EM_OLD_SPARC64.
2920
2921 Wed Apr 15 11:34:33 1998  Ian Lance Taylor  <ian@cygnus.com>
2922
2923         * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32.
2924         * configure: Rebuild.
2925
2926 Mon Apr 13 16:46:27 1998  Ian Lance Taylor  <ian@cygnus.com>
2927
2928         * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@.
2929         (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@.
2930         * configure.in: Define and substitute WIN32LDFLAGS and
2931         WIN32LIBADD.
2932         * aclocal.m4: Rebuild with new libtool.
2933         * configure, Makefile.in: Rebuild.
2934
2935 Fri Apr 10 13:44:27 1998  Ian Lance Taylor  <ian@cygnus.com>
2936
2937         * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol
2938         before any other symbols in the same section.
2939
2940 Wed Apr  8 14:50:23 1998  Michael Meissner  <meissner@cygnus.com>
2941
2942         * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF
2943         systems.
2944
2945 Tue Apr  7 16:25:31 1998  Gavin Romig-Koch  <gavin@cygnus.com>
2946
2947         * dwarf2.c (comp_unit): Move it earlier in the source. Add
2948         addr_size.
2949         (read_address): Replace 'bdf*' argument with 'comp_unit*' argument.
2950         Use addr_size for address size, rather than sizeof(bfd_vma).
2951         (read_attribute): Replace bdf* argument with 'comp_unit*' argument.
2952         Fix call to read_address.
2953         (decode_line_info): Replace bdf* argument with 'comp_unit*' argument.
2954         Scrap other unneeded arguments.  Fix call to read_address.
2955         (scan_unit_for_functions): Fix call to read_attribute.
2956         (parse_comp_unit): We now handle more values for addr_size.
2957         Set addr_size in unit.  Fix call to read_attribute and
2958         decode_line_info.
2959
2960 Tue Apr  7 15:44:47 1998  Gavin Romig-Koch <gavin@cygnus.com>
2961
2962         * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null.
2963
2964 Tue Apr  7 12:35:18 1998  Ian Lance Taylor  <ian@cygnus.com>
2965
2966         * archures.c (bfd_default_scan): Add m68k cases back to default
2967         switch, reverting patch of March 25, since IEEE support depends
2968         upon them.
2969
2970 Mon Apr  6 14:06:40 1998  Ian Lance Taylor  <ian@cygnus.com>
2971
2972         * Makefile.am (diststuff): New target.
2973         * Makefile.in: Rebuild.
2974
2975 Sun Apr  5 16:21:44 1998  Jeffrey A Law  (law@cygnus.com)
2976
2977         * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of
2978         som_offset when we have an extended name table.
2979
2980 Sun Apr  5 16:04:39 1998  H.J. Lu  <hjl@gnu.org>
2981
2982         * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before
2983         trying to copy it.
2984         * Makefile.in: Rebuild.
2985
2986 Fri Apr  3 11:09:42 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2987
2988         * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section
2989         symbols when creating a shared library.
2990         (elf_m68k_adjust_dynindx): New function, used by above code.
2991         (elf_m68k_finish_dynamic_sections): Initialize the section
2992         symbols.
2993         (elf_m68k_relocate_section): Change abort to BFD_ASSERT.
2994
2995 Wed Apr  1 16:04:02 1998  Nick Clifton  <nickc@cygnus.com>
2996
2997         * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant
2998         value 11.
2999
3000 Wed Apr  1 13:36:58 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3001
3002         * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix
3003         assertion.
3004
3005 Tue Mar 31 00:12:12 1998  Jeffrey A Law  (law@cygnus.com)
3006
3007         * elf-m10300.c (mn10300_elf_relax_section): Correctly handle
3008         absolute symbols.
3009
3010 Mon Mar 30 12:46:15 1998  Ian Lance Taylor  <ian@cygnus.com>
3011
3012         * configure.in: Set version to 2.9.1.
3013         * configure: Rebuild.
3014
3015         * Branched binutils 2.9.
3016
3017 Mon Mar 30 12:20:50 1998  Brent Baccala  <baccala@freesoft.org>
3018
3019         * syms.c (ENABLE_CACHING): Define.
3020         (struct indexentry): Define.
3021         (struct stab_cache): Remove.
3022         (cmpindexentry): New static function.
3023         (struct stab_find_info): Add new fields: indextable,
3024         indextablesize, cached_indexentry, cached_offset, cached_stab, and
3025         cached_file_name.  Remove fields: file_cache, function_cache, and
3026         line_cache.
3027         (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted
3028         index table and search it.
3029
3030 Mon Mar 30 10:39:34 1998  Ian Lance Taylor  <ian@cygnus.com>
3031
3032         * elf.c (_bfd_elf_copy_private_section_data): Call
3033         copy_private_bfd_data once we've seen the last SEC_ALLOC section.
3034
3035         * cpu-mips.c: Remove trailing comma at end of enumeration list.
3036
3037 Sat Mar 28 16:33:02 1998  Ian Lance Taylor  <ian@cygnus.com>
3038
3039         * coff-arm.c: Define all globally visible variables and functions
3040         only when COFF_WITH_PE is not defined.
3041         * configure.in (armpe_little_vec, armpe_big_vec): Add
3042         coff-arm.lo.
3043         * configure: Rebuild.
3044
3045 Fri Mar 27 16:06:02 1998  Ian Lance Taylor  <ian@cygnus.com>
3046
3047         Fix some gcc -Wall warnings:
3048         * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings.
3049         * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise.
3050         * archures.c (bfd_default_scan): Likewise.
3051         * bfd.c (bfd_scan_vma): Likewise.
3052         * binary.c (mangle_name): Likewise
3053         * coff-arm.c (aoutarm_fix_pcrel_26): Likewise.
3054         * coff-sh.c (sh_relocate_section): Likewise.
3055         * coff-stgo32.c (create_go32_stub): Likewise.
3056         * coffcode.h (coff_slurp_line_table): Likewise.
3057         * ecoff.c (_bfd_ecoff_write_armap): Likewise.
3058         * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
3059         (assign_file_positions_for_segments): Likewise.
3060         * elf32-mips.c (mips_elf_relocate_section): Likewise.
3061         * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
3062         * oasys.c (oasys_write_sections): Likewise.
3063         * ppcboot.c (ppcboot_object_p): Likewise.
3064         (mangle_name): Likewise.
3065         * riscix.c (riscix_fix_pcrel_26): Likewise.
3066         * srec.c (srec_scan): Likewise.
3067         * stabs.c (_bfd_write_section_stabs): Likewise.
3068         * sunos.c (sunos_add_dynamic_symbols): Likewise.
3069         * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to
3070         switch.  Declare parameters for function pointers.
3071         * archures.c (bfd_default_scan): Add braces to avoid ambiguous if
3072         warning.
3073         * elf.c (elf_sort_sections): Likewise.
3074         * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation.
3075         Add default cases to switches.
3076         (coff_arm_relocate_section): Remove unused local variables.
3077         Always set rstat.
3078         (coff_arm_bfd_set_private_flags): Change flag variable to type
3079         flagword.
3080         * coff-mips.c (mips_relocate_section): Initialize use_lo.
3081         * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int.
3082         (dump_toc): Change cat to const, and initialize it.
3083         * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff.
3084         * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
3085         (sh_elf_relocate_section): Initialize r_symndx.
3086         * coffcode.h (coff_compute_section_file_positions): Only declare
3087         old_sofar if ALIGN_SECTIONS_IN_FILE.
3088         (coff_write_object_contents): Initialize csym.
3089         * coffgen.c (coff_pointerize_aux): Make type and class unsigned.
3090         * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to
3091         switch.
3092         * dwarf2.c: Include libiberty.h.
3093         (read_2_signed_bytes, read_4_signed_bytes): Comment out.
3094         (decode_line_info): Remove unused local variables.
3095         * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise.
3096         (m32r_elf_relocate_section): Likewise.
3097         * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise.
3098         (v850_elf_reloc): Likewise.
3099         * elf-bfd.h (elf_linker_section_t): Make alignment unsigned.
3100         (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned.
3101         * elf.c (assign_file_positions_for_segments): Always set adjust.
3102         * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr.  Fully
3103         parenthesize expression.
3104         * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h.
3105         (m32r_elf_object_p): Return a value.
3106         (m32r_elf_print_private_bfd_data): Change fprintf format string.
3107         * elf32-mips.c (mips_elf_final_link): Initialize last.
3108         (mips_elf_finish_dynamic_sections): Initialize last and dindx.
3109         * elf32-v850.c (v850_elf_object_p): Return a value.
3110         (v850_elf_print_private_bfd_data): Change fprintf format string.
3111         * elfcode.h (elf_slurp_symbol_table): Change symcount and i to
3112         unsigned long.
3113         * elflink.h (elf_link_add_object_symbols): Change vernum to
3114         unsigned int, and initialize it.  Change fprintf format string.
3115         (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type
3116         when setting or comparing to soname_indx.
3117         (elf_create_pointer_linker_section): Change num_symbols to
3118         unsigned int.
3119         * libcoff-in.h (coff_data_type): Change flags to flagword.
3120         * peicode.h (pe_print_idata): Initialize idx.  Change j to
3121         bfd_size_type.  Initialize hint_member.  Remove useless test to
3122         time_stamp.
3123         (pe_print_edata): Change num_functions and num_names in struct
3124         EDT_type to unsigned long.  Remove cast.  Change fprintf format
3125         string.
3126         * ppcboot.c (ppcboot_object_p): Change i to size_t.
3127         * reloc.c (bfd_get_reloc_size): Change return type to unsigned
3128         int.
3129         * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to
3130         int *.  Update uses.  Change j to long.
3131         * bfd-in2.h, libcoff.h: Rebuild.
3132
3133 Fri Mar 27 10:10:46 1998  Catherine Moore <clm@cygnus.com>
3134
3135         * elf32-v850.c Remove definition of USE_REL.
3136         (v850_elf_info_to_howto_rela): New function.
3137         (v850_elf_perform_relocation):  Renamed from
3138         v850_elf_store_addend_in_insn.  Removed replace argument.
3139         (v850_elf_reloc): store the relocation in the addend field instead
3140         of the insn.
3141         (v850_elf_final_link_relocate):  Now calls
3142         v850_elf_perform_relocation.
3143         (v850_elf_relocate_section):  Remove code to generate REL
3144         relocations.
3145
3146 Thu Mar 26 13:32:17 1998  Ian Lance Taylor  <ian@cygnus.com>
3147
3148         * coffcode.h (coff_new_section_hook): Set the type and storage
3149         class in the native symbol information allocated for a new section
3150         symbol.
3151
3152 Thu Mar 26 10:13:41 1998  Nick Clifton  <nickc@cygnus.com>
3153
3154         * peicode.h: Chain together calls to
3155         coff_bfd_copy_private_bfd_data and
3156         coff_bfd_print_private_bfd_data.
3157
3158         * coff-arm.c: Add prototypes for
3159         coff_arm_bfd_print_private_bfd_data and
3160         coff_arm_bfd_copy_private_bfd_data.
3161
3162 Wed Mar 25 15:45:55 1998  Nick Clifton  <nickc@cygnus.com>
3163
3164         * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE
3165         build.
3166
3167         * peicode.h: Call arm-coff private data functions after handling
3168         pe private data.
3169
3170         * coff-arm.c: Turn statics into globals so that they can be shared
3171         both pe and pei backends.
3172
3173 Wed Mar 25 15:19:38 1998  Ian Lance Taylor  <ian@cygnus.com>
3174
3175         * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than
3176         plain numbers.
3177         (sunos_write_object_contents): Likewise.
3178         * aoutx.h (NAME(aout,machine_type)): Likewise.
3179         * coffcode.h (coff_set_arch_mach_hook): Likewise.
3180
3181 Wed Mar 25 13:59:24 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3182
3183         * archures.c (bfd_mach_m68*): Add definitions for various m68k
3184         variants.
3185         (bfd_default_scan): Remove m68k special cases.
3186         * bfd-in2.h: Rebuild.
3187         * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather
3188         than plain numbers.
3189         * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
3190         * cpu-m68k.c (arch_info_struct): Likewise.  Add entry for
3191         m68k:68000.
3192         (bfd_m68k_arch): Set mach field to zero to signal no explicit
3193         selection, change printable_name to just "m68k" and make that the
3194         default instead of m68k:68020.
3195
3196         * aout-tic30.c (NAME): Define this to avoid multiple definitions
3197         from aoutx.h.
3198         (MY_get_section_contents): Define as aout_32_get_section_contents
3199         rather than NAME(aout,get_section_contents).
3200
3201         * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast.
3202
3203         * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha
3204         and call bfd_default_set_arch_mach to do the real work.
3205
3206 Wed Mar 25 10:41:35 1998  Richard Henderson  <rth@cygnus.com>
3207
3208         * bout.c (BALX): Include return register g14 as part of the insn.
3209         (BALX_MASK): New.
3210         (calljx_callback): Use it.
3211
3212 Wed Mar 25 11:19:28 1998  Ian Lance Taylor  <ian@cygnus.com>
3213
3214         * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma.
3215         * libbfd.h: Rebuild.
3216
3217         * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change
3218         byte_count to unsigned int.
3219         (mn10300_elf_relax_section): Initialize internal_relocs.  Remove
3220         unused local variables.
3221
3222         * evax-alpha.c (evax_close_and_cleanup): Remove unused local
3223         variables er and er1.
3224
3225         * cpu-v850.c: Include <ctype.h>.
3226         (scan): Case isdigit argument to unsigned char.
3227
3228         From Yan Meroth <YAN.MEROTH@st.com>:
3229         * ihex.c (ihex_scan): Add extbase variable so that getting an
3230         extended linear address record does not ignore any previous
3231         extended address.
3232         (ihex_write_object_contents): When writing out an extended linear
3233         address record, zero out any previous extended address.
3234
3235 Tue Mar 24 16:09:43 1998  Manfred Hollstein  <manfred@s-direktnet.de>
3236
3237         * ieee.c (do_one): Check section before dereferencing it.
3238         (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr.
3239         (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive.
3240
3241 Mon Mar 23 18:51:47 1998  Joel Sherrill  <joel@OARcorp.com>
3242
3243         * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF.
3244
3245 Mon Mar 23 14:23:36 1998  Nick Clifton  <nickc@cygnus.com>
3246
3247         * coff-arm.c: Add interworking functions to pe backends.
3248
3249 Fri Mar 20 18:47:20 1998  Ian Lance Taylor  <ian@cygnus.com>
3250
3251         * configure.in: Use AM_DISABLE_SHARED.
3252         * aclocal.m4, configure: Rebuild with libtool 1.2.
3253
3254 Fri Mar 20 11:25:41 1998  Nick Clifton  <nickc@cygnus.com>
3255
3256         * coff-arm.c (coff_arm_relocate_section): Better error messages
3257         when interowrking conflucts occur.  Courtesy of Jonathan Walton
3258         and Tony Thompson.
3259         (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted
3260         relocations.  Patch courtesy of Jonathan Walton and Tony
3261         Thompson.
3262
3263 Fri Mar 20 02:26:43 1998  Richard Henderson  <rth@cygnus.com>
3264
3265         * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert
3266         part of Feb 22 change controling when to override the existing
3267         symbol with the .plt entry.
3268
3269 Wed Mar 18 09:26:25 1998  Nick Clifton  <nickc@cygnus.com>
3270
3271         * config.bfd (targ_cpu): Add thumb-pe target.
3272
3273         * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external
3274         functions in PE build.
3275
3276 Sun Mar  8 23:37:26 1998  Stan Cox  <scox@equinox.cygnus.com>
3277
3278         * config.bfd (sparclite-*-elf*): Added.
3279
3280 Mon Feb 23 19:31:19 1998  Ian Lance Taylor  <ian@cygnus.com>
3281
3282         * configure.in: Add elf.lo to elf shell variable.
3283         * Makefile.am (BFD_LIBS): Remove elf.lo.
3284         (BFD_LIBS_CFILES): Remove elf.c.
3285         (BFD32_BACKENDS): Add elf.lo.
3286         (BFD32_BACKENDS_CFILES): Add elf.c.
3287         * configure, Makefile.in: Rebuild.
3288
3289 1998-02-23 15:53  Richard Henderson  <rth@cygnus.com>
3290
3291         * elf32-i386.c (elf_i386_relocate_section): A pc-relative
3292         relocation against a now-local symbol should not have a dynamic
3293         relocation.
3294
3295 Mon Feb 23 16:17:08 1998  Ian Lance Taylor  <ian@cygnus.com>
3296
3297         * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in
3298         COFF filehdr flags.
3299         (pe_print_private_bfd_data): Print PE flags.  From Mikey
3300         <jeffdb@netzone.com>.
3301
3302 Sun Feb 22 20:39:00 1998  Richard Henderson  <rth@cygnus.com>
3303
3304         * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create
3305         a plt entry when we can determine that we authoritatively define
3306         the symbol.
3307
3308 Sun Feb 22 20:33:05 1998  Richard Henderson  <rth@cygnus.com>
3309
3310         * configure.in (COREFILE selection): Remove sparc-*-linux*.  They
3311         don't actually use trad-core, but a SunOS-style core file handled
3312         by gdb directly.
3313         * hosts/sparclinux.h: Remove.
3314
3315 Wed Feb 18 15:31:06 1998  Ian Lance Taylor  <ian@cygnus.com>
3316
3317         * peicode.h (pe_print_idata): If there is no .idata section, look
3318         for the import tables in some other section.  Make the initial
3319         label line up better with the data.  Print the import address
3320         table even if there is no import name table.  If the import
3321         address table holds actual addresses, print them.
3322
3323 Tue Feb 17 12:58:34 1998  Ian Lance Taylor  <ian@cygnus.com>
3324
3325         * libbfd.c (bfd_seek): If fseek fails, save errno around call to
3326         bfd_tell.  If errno is EINVAL, set bfd_error_file_truncated, not
3327         bfd_error_system_call.
3328
3329 Fri Feb 13 13:11:33 1998  Ian Lance Taylor  <ian@cygnus.com>
3330
3331         * Makefile.am (AUTOMAKE_OPTIONS): Define.
3332         * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
3333
3334         From H.J. Lu <hjl@gnu.org>:
3335         * Makefile.am (libbfd_la_LDFLAGS): Define.
3336         * Makefile.in: Rebuild.
3337
3338 Thu Feb 12 17:31:11 1998  Ian Lance Taylor  <ian@cygnus.com>
3339
3340         NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3341         * netbsd.h (MACHTYPE_OK): Define.
3342         (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when
3343         calling N_SET_MACHTYPE, rather than having a switch.
3344         * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD,
3345         and M_ALPHA_NETBSD.
3346         * i386netbsd.c (MACHTYPE_OK): Don't define.
3347         (DEFAULT_MID): Define.
3348         * m68k4knetbsd.c (SEGMENT_SIZE): Don't define.
3349         (MACHTYPE_OK): Don't define.
3350         (DEFAULT_MID): Define.
3351         * m68knetbsd.c: (MACHTYPE_OK): Don't define.
3352         (DEFAULT_MID): Define.
3353         * ns32knetbsd.c (MACHTYPE_OK): Don't define.
3354         (DEFAULT_MID): Define.
3355         * sparcnetbsd.c (MACHTYPE_OK): Don't define.
3356         (DEFAULT_MID): Define.
3357
3358         NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3359         * vaxnetbsd.c: New file.
3360         * netbsd-core.c: Clean up.  Remove unused macros.  Use netbsd
3361         rather than netbsd_core.
3362         * targets.c (vaxnetbsd_vec): Declare.
3363         (bfd_target_vector): Add vaxnetbsd_vec.  If NETBSD_CORE is
3364         defined, add netbsd_core_vec.
3365         * configure.in: Set COREFILE for alpha*-*-netbsd* and
3366         powerpc-*-netbsd* to netbsd-core.lo.  If COREFILE is
3367         netbsd-core.lo, set COREFLAG to -DNETBSD_CORE.
3368         * config.bfd (alpha*-*-netbsd*): New target.
3369         * Makefile.am: Rebuild dependencies.
3370         (BFD32_BACKENDS): Add vaxnetbsd.lo.
3371         (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c.
3372         * configure, Makefile.in: Rebuild.
3373
3374         * configure.host: Remove the old shared library build stuff.  We
3375         now use libtool instead.
3376
3377 Wed Feb 11 17:13:09 1998  Richard Henderson  <rth@cygnus.com>
3378
3379         * tekhex.c (tekhex_write_object_contents): Call tekhex_init.
3380
3381 Tue Feb 10 19:23:28 1998  H.J. Lu  <hjl@gnu.org>
3382
3383         * configure.in: Take stab-syms.lo out of sparclinux_vec list.
3384         * configure: Rebuild.
3385
3386 Tue Feb 10 15:16:38 1998  Nick Clifton  <nickc@cygnus.com>
3387         * elf32-v850.c (remember_hi16s_reloc): New function.
3388         (find_remembered_hi16s_reloc): New function.
3389         (v850_elf_store_addend_in_insn): Use the above new functions to
3390         match up HI6S relocs with LO16 relocs.
3391
3392 Tue Feb 10 15:01:39 1998  Ian Lance Taylor  <ian@cygnus.com>
3393
3394         * configure.in: Change -linux* to -linux-gnu*.
3395         * config.bfd, configure.host: Likewise.
3396         * configure: Rebuild.
3397
3398 Mon Feb  9 19:40:59 1998  Nick Clifton  <nickc@cygnus.com>
3399
3400         * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another
3401         LO16/HI16S bug and improve comments about what is going on.
3402
3403 Sat Feb  7 15:27:03 1998  Ian Lance Taylor  <ian@cygnus.com>
3404
3405         * configure, aclocal.m4: Rebuild with new libtool.
3406
3407 Fri Feb  6 14:48:20 1998  Nick Clifton  <nickc@cygnus.com>
3408
3409         * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain
3410         when merging v850 code into v850e/v850ea code.  Do not initialise
3411         output flags if the input is the default architecture.
3412
3413 Fri Feb  6 11:50:22 1998  Jeffrey A Law  (law@cygnus.com)
3414
3415         * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR
3416         get the size from bfd_arch_bits_per_address instead of directly
3417         from the isa.
3418
3419 Thu Feb  5 14:21:34 1998  Michael Meissner  <meissner@cygnus.com>
3420
3421         * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address
3422         to wrap, just return all 1's bits instead.
3423         * libbfd.h: Regenerate.
3424
3425 Thu Feb  5 11:51:05 1998  Ian Lance Taylor  <ian@cygnus.com>
3426
3427         * coff-i386.c (coff_pe_i386_relocate_section): New static function
3428         if COFF_WITH_PE.
3429         (coff_relocate_section): If COFF_WITH_PE, define as
3430         coff_pe_i386_relocate_section.
3431         * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE,
3432         skip empty sections, to match coff_write_object_contents.
3433
3434         * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend,
3435         rather than swapping out r_offset twice.  From Luke Deller
3436         <luked@cse.unsw.edu.au>.
3437
3438 Wed Feb  4 19:11:28 1998  Ian Lance Taylor  <ian@cygnus.com>
3439
3440         * configure.in: Set libtool_enable_shared rather than
3441         libtool_shared.  Remove diversion hack.
3442         * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild
3443         with new libtool.
3444
3445 Wed Feb  4 16:10:21 1998  Brent Baccala  <baccala@freesoft.org>
3446
3447         * syms.c (struct stab_cache): Define.
3448         (struct stab_find_info): Remove cached_offset, cached_stab,
3449         cached_str, and cached_stroff fields.  Add file_cache,
3450         function_cache, and line_cache fields.
3451         (_bfd_stab_section_find_nearest_line): Use extensive caching to
3452         speed up searches.
3453
3454 Wed Feb  4 13:34:22 1998  Ian Lance Taylor  <ian@cygnus.com>
3455
3456         * peicode.h (pe_print_idata): Check for import of ordinal rather
3457         than name.
3458         (pe_print_edata): If there is no .edata section, look for the
3459         export data in some other section.
3460
3461 Mon Feb  2 20:05:42 1998  Jason Molenda  (crash@bugshack.cygnus.com)
3462
3463         * configure.in: Change version to 2.8.4.
3464         * configure: Regenerated.
3465
3466 Mon Feb  2 17:39:39 1998  Steve Haworth  <steve@pm.cse.rmit.EDU.AU>
3467
3468         Add tms320c30 support:
3469         * cpu-tic30.c: New file.
3470         * aout-tic30.c: New file.
3471         * coff-tic30.c: New file.
3472         * archures.c (bfd_arch_tic30): Define.
3473         (bfd_tic30_arch): Declare.
3474         (bfd_archures_list): Add bfd_tic30_arch.
3475         * targets.c (bfd_target_vector): Add tic30_aout_vec and
3476         tic30_coff_vec.
3477         * reloc.c (BFD_RELOC_TIC30_LDP): Define.
3478         * coffcode.h (coff_set_arch_mach_hook): Add tic30 case.
3479         (coff_set_flags): Likewise.
3480         * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets.
3481         * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors.
3482         * Makefile.am: Rebuild dependencies.
3483         (ALL_MACHINES): Add cpu-tic30.lo.
3484         (ALL_MACHINES_CFILES): Add cpu-tic30.c.
3485         (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo.
3486         (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c.
3487         * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
3488
3489 Mon Feb  2 12:25:12 1998  Nick Clifton  <nickc@cygnus.com>
3490
3491         * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc
3492         to lag behind LO16 reloc by a couple of instructions.
3493
3494 Mon Feb  2 14:09:46 1998  Ian Lance Taylor  <ian@cygnus.com>
3495
3496         * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force
3497         make to reexamine the file timestamp.
3498         ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise.
3499
3500         * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from
3501         0x100000.
3502
3503 Fri Jan 30 19:07:07 1998  Geoff Keating  <geoffk@ozemail.com.au>
3504
3505         * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure
3506         to create .dynsbss and .rela.sbss sections.
3507         (ppc_elf_adjust_dynamic_symbol): Put space for small data to be
3508         copied from dynamic objects into .sbss.
3509         (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't
3510         use it.  Correct typo of .rela.sdata2.
3511         (ppc_elf_finish_dynamic_symbol): Generate reloc to where we
3512         put the data, which may now be in .sbss.
3513         (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss.
3514         (elf_backend_create_dynamic_sections): Define as
3515         ppc_elf_create_dynamic_sections.
3516
3517         * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs
3518         against _GLOBAL_OFFSET_TABLE_.
3519         (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in
3520         shared libraries which refer to local symbols.  Make sure that the
3521         test for allocating space for a reloc in a shared object is the
3522         same as the test for emitting a reloc.
3523
3524 Thu Jan 29 15:55:35 1998  J.J. van der Heijden  <J.J.vanderHeijden@student.utwente.nl>
3525
3526         * config.bfd (i[3456]-*-mingw32*): New target.
3527         * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32.
3528         * aclocal.m4, configure: Rebuild.
3529
3530 Wed Jan 28 13:41:26 1998  Ian Lance Taylor  <ian@cygnus.com>
3531
3532         * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we
3533         have a bfd_object.
3534
3535 Tue Jan 27 21:43:55 1998  Richard Henderson  <rth@cygnus.com>
3536
3537         Sparc v9 ABI compliant PLT:
3538         * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries.
3539         (plt_templates, sparc64_elf_build_plt_entry): Delete.
3540         (LARGE_PLT_THRESHOLD): New define.
3541         (GOT_RESERVED_ENTRIES): V9 ABI only uses 1.
3542         (sparc64_elf_build_plt): New function.
3543         (sparc64_elf_plt_entry_offset): Likewise.
3544         (sparc64_elf_plt_ptr_offset): Likewise.
3545         (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to
3546         contain the index for convenience.  Skip the initial entries
3547         in .rela.plt.
3548         (sparc64_elf_size_dynamic_sections): Zero the allocated contents
3549         memory for the benefit of .rela.plt.
3550         (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset.
3551         (sparc64_elf_finish_dynamic_symbol): Kill template stuff.  Use
3552         sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc.
3553         (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt.
3554         Call sparc64_elf_build_plt.
3555         (elf_backend_want_got_plt): No.
3556         (elf_backend_plt_readonly): No.
3557         (elf_backend_plt_alignment): 8.
3558
3559         * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab.
3560         * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it.
3561         * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it
3562         to be called.
3563
3564 Tue Jan 27 21:45:15 1998  Jeffrey A Law  (law@cygnus.com)
3565
3566         * archures.c (bfd_mach_mips*): Add definitions for various MIPS
3567         processors.
3568         * cpu-mips.c (arch_info_struct): Add mips variants.
3569         * bfd-in2.h: Rebuilt.
3570
3571 Tue Jan 27 15:06:04 1998  Nick Clifton  <nickc@cygnus.com>
3572
3573         * coff-arm.c (coff_arm_relocate_section): Preserve the contents of
3574         t2a3_b_insn.
3575
3576 Tue Jan 27 12:47:27 1998  Robert Lipe  <robertl@dgii.com>
3577
3578         * config.bfd (i[3456]86-sco3.2v5*): ELF now the default.
3579         (i[3456]86sco3.2v5*coff): New target.
3580
3581 Mon Jan 26 15:41:30 1998  Ian Lance Taylor  <ian@cygnus.com>
3582
3583         * bfd-in2.h: Rebuild with changes to chew--tab expansion.
3584
3585 Thu Jan 22 21:26:48 1998  Richard Henderson  <rth@cygnus.com>
3586
3587         * bfd.c (bfd_get_error_handler): Add orthogonal function.
3588         * bfd-in2.h: Regenerate.
3589
3590 Thu Jan 22 21:13:39 1998  Richard Henderson  <rth@cygnus.com>
3591
3592         * tekhex.c (tekhex_write_object_contents): Check for no symbols.
3593
3594 Wed Jan 21 21:19:03 1998  Ian Lance Taylor  <ian@cygnus.com>
3595
3596         * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't
3597         adjust addend for an output common symbol (from Jimmy Blair
3598         <jimmyb@wrs.com>).  If COFF_WITH_PE, adjust addend for PC relative
3599         defined symbol to counteract adjustment made in generic relocation
3600         code.
3601
3602         * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h.
3603
3604 Wed Jan 21 21:16:06 1998  Manfred Hollstein  <manfred@s-direktnet.de>
3605
3606         * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name.
3607         (GET_SCNDHR_NLNNO): Likewise.
3608
3609 Mon Jan 19 12:49:52 1998  Ian Lance Taylor  <ian@cygnus.com>
3610
3611         * cpu-sh.c (arch_info_struct): Correct next field of sh3e.
3612
3613 Wed Jan 14 17:23:27 1998  Nick Clifton  <nickc@cygnus.com>
3614
3615         * elf32-m32r.c: Add macros to handle NOP insertion.
3616
3617 Wed Jan 14 16:15:22 1998  Richard Henderson  <rth@cygnus.com>
3618
3619         * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section.
3620         (xcoff_mark): Likewise.
3621         (xcoff_build_ldsyms): Mark absolute symbols.
3622
3623 Wed Jan 14 16:03:11 1998  Richard Henderson  <rth@cygnus.com>
3624
3625         * bout.c (b_out_write_object_contents): Sort symbols before output
3626         to keep {CALL,BAL}NAME symbols adjacent.
3627         (b_out_symbol_cmp): New function.
3628
3629 For older changes see ChangeLog-9697
3630 \f
3631 Local Variables:
3632 mode: change-log
3633 left-margin: 8
3634 fill-column: 74
3635 version-control: never
3636 End: