6177384dd458819add8a81464c1b74aa64578b7b
[platform/upstream/binutils.git] / bfd / ChangeLog
1 Tue Nov  9 11:40:27 1993  Stan Shebs  (shebs@rtl.cygnus.com)
2
3         * m68klynx.c (TARGET_IS_BIG_ENDIAN_P): Define.
4
5 Tue Nov  9 11:26:05 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
6
7         * libelf.h: Added some comments.
8         (struct elf_backend_data): Added elf_backend_ecoff_debug_swap
9         field.  Removed unused write_relocs field.
10         * elf32-target.h: Adjusted elf_backend_data initialization
11         accordingly.
12         * elf64-target.h: Corrected elf_backend_data initialization to
13         fill in all fields and to set elf_64_p to 1.
14
15 Mon Nov  8 18:13:14 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
16
17         * elfcode.h (bfd_section_from_shdr): Remove duplicate assignment
18         to filepos in SHT_STRTAB case.
19         (assign_file_position_for_section): Set BFD section filepos as
20         well as ELF section sh_offset.
21
22         * reloc.c: Use const instead of CONST.
23         (bfd_perform_relocation): Make variable howto a const pointer.
24         * bfd-in2.h, libbfd.h: Rebuilt.
25
26 Mon Nov  8 12:19:15 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
27
28         * Makefile.in (realclean): Don't remove generated headers.  Reverts
29         change of 2 Jul 1993.
30
31 Mon Nov  8 06:08:31 1993  D. V. Henkel-Wallace  (gumby@cirdan.cygnus.com)
32
33         * configure.bfd: make unixware equivalent to sysv4.
34
35         * config/i386-nlm.mt: bring in elf config; make it the default.
36
37 Sun Nov  7 20:21:38 1993  Jeffrey A. Law  (law@snake.cs.utah.edu)
38
39         * libbfd.c (bfd_put_8): Add parens around reference to "val"
40         argument.
41
42 Fri Nov  5 21:45:09 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
43
44         * hosts/i386mach3.h (HOST_SEGMENT_SIZE),
45         i386mach3.c (SEGMENT_SIZE, TEXT_START_ADDR): Correct values (?).
46
47 Fri Nov  5 15:17:57 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
48
49         * coffcode.h (coff_write_object_contents): Zero out internal_a.
50
51 Fri Nov  5 10:41:07 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
52
53         * aoutx.h, archive.c, archures.c, bfd.c, cache.c, coffcode.h,
54         core.c, ctor.c, format.c, init.c, libbfd.c, opncls.c, reloc.c,
55         section.c, syms.c, targets.c:
56         Doc cleanup (spelling, punctuation, grammar, formatting).
57         * bfd-in2.h, libbfd.h: Rebuild.
58
59 Thu Nov  4 14:46:14 1993  John Gilmore  (gnu@rtl.cygnus.com)
60
61         * bfd-in.h (bfd_get_cacheable, bfd_set_cacheable):  New accessors.
62         * bfd.c, opncls.c:  Improve comments on file descriptor cacheing.
63
64 Thu Nov  4 08:54:30 1993  Jeffrey A. Law  (law@snake.cs.utah.edu)
65
66         * From Pete Hoogenboom (hoogen@cs.utah.edu)
67         * elf32-hppa.c (hppa_elf_get_section_contents): Fix logic error
68         in last change.  Always rebuild symbol extension section the first
69         time though if output sections exist (fixes ld -r problems).
70
71 Thu Nov 04 08:08:46 1993  Jeffrey Wheat  (cassidy@cygnus.com)
72
73         * Makefile.in: Add .PHONY for check and installcheck rules.
74
75 Tue Nov  2 14:42:27 1993  Bill Cox (bill@tarkas.cygnus.com)
76
77         * libbfd-in.h (artdata): Use long, not time_t for portability, at
78           least to HPUX.  File below is a derived file.
79
80 Tue Nov  2 14:42:27 1993  Bill Cox (bill@tarkas.cygnus.com)
81
82         * libbfd.h (artdata): Use long, not time_t for portability, at
83           least to HPUX.
84
85 Tue Nov  2 09:32:25 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
86
87         * config.bfd: Use bigmips for mips*-*-bsd*.
88
89 Mon Nov  1 14:30:09 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
90
91         * elfcode.h (elf_slurp_reloca_table, elf_slurp_reloc_table):
92         Handle symbol number of zero.
93
94         * reloc.c (enum bfd_reloc_code_real): Added
95         BFD_RELOC_MIPS_LITERAL, BFD_RELOC_MIPS_GOT16,
96         BFD_RELOC_MIPS_CALL16, BFD_RELOC_MIPS_GPREL32.
97         * bfd-in2.h: Rebuilt.
98         * coff-mips.c (mips_bfd_reloc_type_lookup): Handle
99         BFD_RELOC_MIPS_LITERAL.
100         * elf32-mips.c (mips_reloc_map): Handle new relocs.
101         (mips_elf_hi16_reloc, mips_elf_lo16_reloc): Rearrange _gp_disp
102         checks slightly.
103
104         * aout-target.h (MY_bfd_debug_info_start, MY_bfd_debug_info_end,
105         MY_bfd_debug_info_accumulat [sic]): Remove unused definitions.
106         (MY_bfd_get_relocated_section_contents, MY_bfd_relax_section,
107         MY_bfd_seclet_link): Define.
108         (MY_bfd_reloc_type_lookup): Rename from
109         MY_reloc_howto_type_lookup.
110         (MY_bfd_make_debug_symbol): Rename from MY_make_debug_symbol.
111         (MY(vec)): Use JUMP_TABLE rather than listing functions.
112         * hp300hpux.c (MY_get_symtab, MY_get_symtab_upper_bound,
113         MY_canonicalize_reloc, MY_write_object_contents): Don't define in
114         terms of MY, because that causes a recusive invocation of CAT when
115         expanded within JUMP_TABLE, and ANSI compilers don't expand
116         recursive macros.
117         * mipsbsd.c (MY_bfd_reloc_type_lookup): Rename from
118         MY_reloc_howto_type_lookup, and don't define in terms of MY.
119         (MY_canonicalize_reloc): Don't define in terms of MY.
120         (aout_mips_little_vec, aout_mips_big_vec): Use JUMP_TABLE rather
121         than listing functions.
122
123 Mon Nov  1 09:12:25 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
124
125         * config.bfd: Use m68k-elf for m68*-*-sysv4*.
126
127 Sun Oct 31 09:35:49 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
128
129         * targets.c: Move enum target_flavour outside of struct and change
130         the name to enum bfd_flavour.  This means bfd clients can use it.
131         * bfd-in.h: Add macro bfd_get_flavour.
132         * bfd-in2.h: Rebuilt.
133
134         * som.c: Add comment about how abort() on corrupt executable is evil.
135
136 Sat Oct 30 12:27:09 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
137
138         * aoutx.h (aout,slurp_reloc_table): Avoid a goto.
139
140 Fri Oct 29 16:04:33 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
141
142         * gen-aout.c, libbfd.c: exit(1) instead of exit(-1).
143
144 Fri Oct 29 13:17:21 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
145
146         * bfd-in.h: Added commands for object file flag values.
147         * bfd-in2.h: Rebuilt.
148         * elfcode.h (elf_object_p): If type is ET_DYN, set DYNAMIC flag,
149         not EXEC_P.
150         * bout.c, coff-h8300.c, coff-sh.c: Add BFD_IS_RELAXABLE to
151         object_flags field for target vector.
152         * aix386-core.c, aout-adobe.c, aout-target.h, bout.c, coff-a29k.c,
153         coff-alpha.c, coff-apollo.c, coff-h8300.c, coff-h8500.c,
154         coff-i386.c, coff-i960.c, coff-m68k.c, coff-m88k.c, coff-mips.c,
155         coff-rs6000.c, coff-sh.c, coff-we32k.c, coff-z8k.c, hpux-core.c,
156         ieee.c, mipsbsd.c, nlm-target.h, oasys.c, osf-core.c, som.c,
157         srec.c, tekhex.c, trad-core.c:  Remove DYNAMIC from object_flags
158         field for target vector.
159
160 Thu Oct 28 20:02:31 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
161
162         * hosts/std-host.h: Don't declare time; causes error on mach3.
163         * configure.in (i386mach3_vec): Require aout32.o stab-syms.o.
164
165 Thu Oct 28 16:33:26 1993  Stan Shebs  (shebs@rtl.cygnus.com)
166
167         LynxOS and Sparc LynxOS changes:
168         * config.bfd: Recognize sparc-*-lynxos*.
169         * configure.host: Recognize sparc-*-lynxos*.
170         * configure.in: Recognize Sparc Lynx vectors.
171         * targets.c (sparclynx_aout_vec): Declare.
172         (sparclynx_coff_vec): Declare.
173         (target_vector): Add them.
174         * cf-i386lynx.c: New file, renamed from i386lynx-cf.c.
175         * cf-m68klynx.c: New file, renamed from m68klynx-cf.c.
176         * cf-sparclynx.c: New file, support for coff in Sparc LynxOS.
177         * coff-sparc.c: New file, basic Sparc coff support.
178         * sparclynx.c: New file, support for a.out in Sparc LynxOS.
179         * Makefile.in: Change filenames appropriately, add Sparc rules.
180         * coffcode.h (coff_set_arch_mach_hook): Recognize Sparc magic
181         number.
182         (coff_set_flags): Use LynxOS magic number for i386, m68k, and
183         Sparc LynxOS, set Sparc magic number for Sparcs.
184         * config/m68k-lynx.mt (SELECT_VECS): Remove redundant vector.
185         * config/sparc-lynx.mt: New file.
186         * hosts/i386lynx.h: Cosmetic improvements.
187         * hosts/m68klynx.h: Add ifdefs, #define of cfree.
188         * hosts/sparclynx.h: New file.
189
190 Thu Oct 28 16:23:40 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
191
192         gcc -Wall lint:
193         * coff-h8300.c (h8300_reloc16_estimate): Declare return type.
194         Remove useless statement probably left by code copy.
195         * cpu-i960.c (compatible): Fully bracket matrix initializer.
196         * elf32-hppa.c (hppa_elf_build_arg_reloc_stub): Use bfd_xmalloc
197         rather than xmalloc.  Use realloc and check the return value
198         rather than xrealloc.
199         (hppa_elf_get_section_contents): Add some casts.
200         * elf32-i386.c (elf_i386_reloc_type_lookup): Remove unused
201         variable.  Add default case to switch.
202         * hp300hpux.c: Declare aout_32_write_syms.
203         * i386bsd.c, i386linux.c, netbsd386.c (N_SHARED_LIB): Define as 0
204         (definition from aout/aout64.h is always 0 anyhow).
205         * i386lynx.c (swap_std_reloc_in): Remove unused variable.
206         * ieee.c (ieee_write_id): length can never be negative.
207         (read_id): Likewise.
208         (ieee_archive_p): Remove unused variable.
209         * libcoff-in.h (bfd_perform_slip): Declare.
210         * libcoff.h: Rebuilt.
211         * oasys.c (oasys_write_sections): Remove zero initialization of
212         static structure.
213         * reloc16.c: Indentation change.
214
215 Wed Oct 27 16:51:29 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
216
217         * configure.in, config/i386-mach3.mt: Update for new configuration
218         (--with-targets and so on).
219         * hosts/i386mach3.h: Declare errno.
220         * targets.c: Declare i386mach3_vec.
221
222 Wed Oct 27 12:18:07 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
223
224         * nlmcode.h (nlm_swap_auxiliary_headers_in,
225         nlm_swap_auxiliary_headers_out): Handle sharedDebugRecordOffset
226         and sharedDebugRecordCount fields.
227
228 Tue Oct 26 16:21:12 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
229
230         * targets.c (target_vector): Remove SCO_CORE.  On Sep 11 1993,
231         we started using trad-core.c for SCO instead.
232
233         * targets.c (target_vector): Re-enable generic ELF and NLM targets.
234
235 Tue Oct 26 16:53:12 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
236
237         * elfcode.h (assign_file_position_for_section): Align sh_offset to
238         sh_addralign (this is what UnixWare does, and it shouldn't hurt).
239
240 Tue Oct 26 10:16:54 1993  Ken Raeburn  (raeburn@cygnus.com)
241
242         From Jeff Law and Pete Hoogenboom at Utah:
243
244         * elf32-hppa.h (hppa_elf_stub_finish): Add prototype.
245         (ELF32_HPPA_R_ARG_RELOC): Renamed without the ELF32 prefix
246         and moved into libhppa.h.  All references changed.
247         (ELF32_HPPA_R_CONSTANT, ELF32_HPPA_R_ADDEND): Likewise.
248         (get_opcode and opcode defines): Move into libhppa.h
249         * elf32-hppa.c (hppa_elf_insn2fmt): Rename and move info
250         libhppa.h.
251         * libhppa.h (HPPA_R_*): Moved here.  Reformatted slightly to make
252         for easier reading.
253         (get_opcode): Moved here.  FIXME! this really should be a C function
254         inside the opcode library!
255         (bfd_hppa_insn2fmt): Likewise.
256
257         * targets.c (target_vector): Enable elf32-hppa vector.
258
259         * elf32-hppa.c (hppa_elf_get_section_contents): Add new comments
260         and clarify existing comments.  Do not use DEFUN to declare this
261         function.  Fix numerous indention problems.  Correctly handle cases
262         where symbol extension section may need to be read from disk, 
263         read from memory, or built then read from memory.
264
265         * elf32-hppa.h: Reformat with gnu-indent and hand fix numerous
266         formatting and indention problems gnu-indent can not handle.
267         Clarify some comments about relocation types.  Comment basic
268         relocation "classes".  Group PARAM declarations together.
269         (HPPA_SXT_{NULL, SYMNDX, RG_RELOC}): Make members of a new 
270         enumerated type rather than #defines.
271
272 Tue Oct 26 02:40:46 1993  Stu Grossman  (grossman at cygnus.com)
273
274         * som.c (hppa_object_setup):  Set SEC_CODE for .text section so
275         that GDB can figure out text_start and text_end.
276
277 Mon Oct 25 16:05:23 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
278
279         Fix up warnings from gcc -Wall:
280         * coffgen.c (coff_print_symbol): Use %lx and cast n_value to
281         unsigned long.  Use %ld for tagndx.  Use %lx for offset + vma and
282         cast it to unsigned long.
283         * ecoff.c (ecoff_emit_aggregate): Use %ld.      
284         (ecoff_print_symbol): Use %ld, and cast indx and sym_base to long.
285         * coffcode.h (dummy_reloc16_estimate): Specify return type.
286
287         * libbfd.c (bfd_write): If not everything is written out, set
288         bfd_error to system_call_error.  If the return value is
289         non-negative, set errno to ENOSPC (if ENOSPC is defined).
290         (bfd_seek): If the seek fails, set bfd_error to system_call_error.
291         (bfd_generic_set_section_contents): For a bad offset + count, set
292         bfd_error to bad_value.
293         * seclet.c (rel): Don't abort.  Instead, return false.
294
295 Mon Oct 25 09:59:37 1993  Ken Raeburn  (raeburn@cygnus.com)
296
297         * aoutx.h (reloc_type_lookup): Handle BFD_RELOC_SPARC_WDISP22.
298
299 Fri Oct 22 20:35:54 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
300
301         * config.bfd: handle mips*-* instead of mips-*, use mips*el
302           instead of mips-*-*l
303
304 Fri Oct 22 14:03:33 1993  Mark Eichin  (eichin@cygnus.com)
305
306         * m68k-lynx.mt, i386-lynx.mt (TDEFINES): set
307         FPRINTF_ALREADY_DECLARED because the objdump.c declaration of
308         fprintf collides with the native one.
309
310 Fri Oct 22 11:50:25 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
311
312         * targets.c (target_vector): Enable MIPS ELF vectors.
313
314 Fri Oct 22 07:51:51 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
315
316         * config.bfd: Use bigmips for mips-sony-bsd*.
317
318         * configure.host, config.bfd: Add * to end of all OS names.
319
320 Thu Oct 21 12:16:26 1993  Ken Raeburn  (raeburn@cygnus.com)
321
322         * elfcode.h (FILE_ALIGN): Renamed from EALIGN, to avoid conflict
323         with Ultrix header files.
324
325         * som.h (struct som_section_data_struct): Renamed from
326         som_section_data to avoid conflict with macro by that name.
327
328         Changes from Jeff Law and Peter Hoogenboom at Utah:
329
330         * elf32-hppa.c (hppa_elf_reloc):  Target register for a 'jump
331         in delay slot' optimization in combination with a long call
332         stub should always be r31.
333
334         * elf32-hppa.c: (hppa_elf_relocate_insn): To be consistent
335         across all relocation types, retrieve instruction addends from
336         the relocation entry rather than from the instruction itself.
337
338         * elf32-hppa.c: (hppa_elf_relocate_insn): Fix a relocation
339         error that only occurred when the addend of an 'addil' or
340         'ldil' was larger than 21 bits and very close to a 2K byte
341         boundary.
342
343         * elf32-hppa.c: (hppa_elf_reloc):  Handle the optimization in
344         which a jump is placed in the delay slot of a function call.
345         The jump was being accomplished via an adjustment to the
346         return pointer.  This optimization would break the long call
347         stub code, if there was any.
348
349         * elf32-hppa.c: (hppa_elf_build_long_branch_stub): Corrections
350         to long branch stubs to avoid use of general register 2.
351
352         * hppa_stubs.h: New stub instructions.
353
354         * elfcode.h: Declare bfd_elf_find_section.
355
356         * som.h (som_section_data): Add new "subspace_index" field.
357
358         * som.c (setup_sections): Save the original SOM subspace index
359         in the BFD section associated with that subspace.  
360         (som_get_symtab_upper_bound): Implement.
361         (som_get_symtab): Implement.
362         (som_print_symbol): Implement.
363         (som_slurp_string_table): New function to read a string table
364         from a SOM object file.
365         (som_section_from_subspace_index): New function to return the
366         section which corresponds to a SOM subspace index.
367         (som_slurp_symbol_table): New function to read the symbol
368         table from a SOM object file.
369         (som_make_empty_symbol): Check for errors from bfd_zalloc.
370         (som_new_section_hook): Initialize subspace_index field to
371         -1 instead of 0.
372
373         * som.c (som_object_setup): Fix polarity of test to set HAS_RELOC.
374         Set EXEC_P for executables.
375         (setup_sections): Correctly identify when a section has
376         relocations.
377         (log2): New function.
378         (setup_sections): Correctly convert between SOM alignments and BFD
379         alignments.
380
381         * som.c (setup_sections): Do not set SEC_ALLOC or SEC_LOAD
382         for sections which correspond to SOM spaces, doing so confuses
383         many utilities.  Set assorted SEC_* flags for SOM subspaces
384         which correspond to BFD sections.
385
386         * elf32-hppa.c: (elf32_hppa_backend_fake_sections): The stab
387         string table should have sh_type == SHT_STRTAB.  Add
388         processing to make it so.
389
390         * elfcode.h: (bfd_section_from_shdr): String tables (other
391         than .strtab) were not getting the file offsets recorded, so
392         they could not be read from disk.
393
394         * elfcode.h: (elf_make_sections):  Leave the sh_addr field of
395         the section header and the vma field of a section at 0 if the
396         section is not part of the program execution image. (e.g.,
397         .stab)
398
399         * som.[hc]: Change target vector prefix from "hppa" to "som".
400         Consistently use obj_som prefix to access fields in backend data
401         structures.  Fix all callers/references.
402
403         * som.h: Do not include files only needed for core file reading here.
404         Include a.out for both HOST_HPPAHPUX and HOST_HPPABSD.  Delete
405         forward structure declarations, they are unnecessary.
406         (struct somdata): Delete aux_hdr, and hp_symbol_entry_size fields.
407         Change "symbols" to "symtab".  Add "stringtab" and "reloc_filepos"
408         fields for future use.  Change obj_som_* macros as appropriate.
409         (som_section_data): New structure to keep SOM specific information
410         about BFD sections (for future use).
411
412         * som.c: Provide PARAMS declarations for all functions currently
413         in this file.
414         (struct container): Delete unwanted structure definition.
415         (som_object_setup): Add comments.  Use som_mkobject to allocate
416         SOM specific information in the BFD; use information from the
417         file and (possibly empty) auxiliary headers to initialize this
418         information.  Delete redundant bfd_get_symcount (abfd) "calls".
419         (setup_sections): Return type is now boolean, fix return statements.
420         "Fix" handling of BSS like subspaces in the computation of the
421         containing space's size.  If the subspace has relocations, set the
422         appropriate BFD section flags and record the index into and the
423         size of the fixup stream.  Always return a value.
424         (som_object_p): Set bfd_error appropriately if errors are detected
425         from bfd_{read,seek} functions.  Handle EXECLIBMAGIC type files.
426         Do not try to read a non-existant auxiliary header.
427         (som_mkobject): Flesh out.
428         (som_section_hook): Allocate space to hold SOM specific information
429         about sections.
430
431 Thu Oct 21 12:41:34 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
432
433         gcc -Wall lint:
434         * coff-h8300.c, coffcode.h: Change shrink parameter
435         in *_reloc16_estimate to unsigned to match prototype.
436         * archive.c: Avoid "/*" in comment.
437
438 Thu Oct 21 13:05:16 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
439
440         * dep-in.sed: Create our own line breaks for a more aesthetic
441         Makefile.
442         * Makefile.in: Rebuilt dependencies.
443
444         * elf32-mips.c: Include "seclet.h".
445         (mips_elf_fake_sections): Force size of .reginfo section to sizeof
446         Elf32_External_RegInfo.
447         (mips_elf_seclet_link): New function.  Link the .reginfo section
448         specially, and pass everything else to the generic routine.
449         (bfd_elf32_bfd_seclet_link): Define macro.
450         * elf32-target.h: If bfd_elf32_bfd_seclet_link is already defined,
451         don't override it.
452
453 Wed Oct 20 12:22:37 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
454
455         * libnlm.h (nlm_backend_data): Added signature field.
456         (nlm_signature): New macro.
457         * nlmcode.h (nlm_object_p, nlm_write_object_contents): Use the NLM
458         signature from the backend rather than the constant NLM_SIGNATURE.
459         * nlm32-i386.c (nlm32_i386_backend): Initialize signature field.
460
461         * aoutf1.h (MACHTYPE_OK): Accept M_UNKNOWN.
462         (NAME(sunos,set_arch_mach)): Treat M_UNKNOWN as 68000, not 68020.
463
464 Wed Oct 20 10:28:27 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
465
466         * hosts/i386bsd.h [__bsdi__]: Define HOST_DATA_START_ADDR.
467
468 Wed Oct 20 10:10:07 1993  Ken Raeburn  (raeburn@cygnus.com)
469
470         * Makefile.in (HFILES): New variable, for use in "make dep".
471         (.dep): Depend on $(CFILES) and $(HFILES).  Delete .dep1 and
472         remake it, so that "$?" is complete.
473         (.dep1): Don't need to remove .dep1 first.
474         (dep.sed): Depend on config.status, not Makefile.
475         (CFILES): Add nlm.c.
476
477 Tue Oct 19 15:26:26 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
478
479         * coff-alpha.c: Implemented reloc handling for the linker, made
480         various other related changes.
481         * libecoff.h (ecoff_backend_data): Added rdata_in_text field.
482         Renamed finish_reloc to adjust_reloc_in.  Added adjust_reloc_out
483         field.
484         (ecoff_bfd_get_relocated_section_contents): Don't define.
485         * ecoff.c (ecoff_sec_to_styp_flags, ecoff_styp_to_sec_flags):
486         Handle .lita section.
487         (ecoff_slurp_reloc_table): Handle RELOC_SECTION_FINI.
488         finish_reloc backend field renamed to adjust_reloc_in.
489         (ecoff_bfd_seclet_link): Adjust number of aux entries to
490         debug_align boundary.
491         (ecoff_compute_section_file_positions): If rdata_in_text put
492         .rdata section in text segment, not data segment.  Put .pdata
493         section in text segment.
494         (ecoff_write_object_contents): Likewise.  Also, call
495         adjust_reloc_out, and handle .lita, .xdata, .pdata, .fini and
496         absolute sections when writing out relocs.
497         * coffswap.h (coff_swap_aouthdr_out): For ALPHAECOFF, output 2 for
498         bldrev field, as on Alpha OSF/1.  Padding field is now 2 bytes.
499         * coff-mips.c (mips_ecoff_swap_reloc_out): Added assertion.
500         (mips_adjust_reloc_in): Renamed from mips_finish_reloc.
501         (mips_adjust_reloc_out): New function (does nothing).
502         (mips_ecoff_backend_data): Initialize new fields.
503         (ecoff_bfd_get_relocation_section_contents): Define to be
504         bfd_generic_get_relocated_section_contents.
505
506         * reloc.c (bfd_perform_relocation): Added casts to avoid Alpha
507         OSF/1 cc bug.
508
509 Thu Oct 14 01:10:35 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
510
511         * reloc.c (bfd_perform_relocation): Add comments attempting to
512         explain PC relative relocations.
513
514         * coffcode.h (styp_to_sec_flags): Don't set SEC_DEBUGGING until it
515         is made to work.
516         (coff_compute_section_file_positions): Remove check for
517         USE_DISCARDED_SECTIONS_COUNT.
518         * coff-i386.c: Don't define USE_DISCARDED_SECTIONS_COUNT.  Basing
519         it on host defines is wrong.
520
521         * ecoff.c (ecoff_bfd_seclet_link): Don't link a .reginfo section.
522         (ecoff_write_object_contents): Don't require the .reginfo section
523         to be a particular size.
524
525 Wed Oct 13 18:39:03 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
526
527         * Makefile.in (dep-in): New rule, for editing dependencies into
528         Makefile.in in $(srcdir).  Use move-if-change.
529         (.dep1, dep): Use move-if-change.
530         (CFILES): Add coff-apollo.c.
531
532         Sun Oct 10 18:02:56 1993  Troy Rollo (troy@cbme.unsw.EDU.AU)
533
534         * Makefile.in: Recognise new file, coff-apollo.o
535
536         * coff-apollo.c: New file
537
538         * coffcode.h: Recognise apollo magic numbers and writable text
539
540         * coffswap.h: Swap Apollo optional header entries
541
542         * config.bfd: Add line for Apollo
543
544         * configure.host: Replace apollo68b and apollo68v with Apollo
545
546         * configure.in: Recognise apollocoff_vec
547
548         * targets.c: Likewise
549
550         * config/apollo.mh, config/apollo.mt: New files
551
552         * hosts/apollo68.h: Remove inclusion of strings.h
553
554 Wed Oct 13 14:28:17 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
555
556         * coff-i386.c (i3coff_object_p): Now static.
557
558         * Makefile.in: Updated dependencies.
559         (.dep, .dep1, dep.sed): New targets, to make "make dep" work
560         better.
561         * dep-in.sed: New file.
562
563         * m68klynx-cf.c (ONLY_DECLARE_RELOCS): Define, to avoid name
564         conflicts when "--with-targets=all".
565         * coff-m68k.c (m68kcoff_howto_table, m68k_rtype2howto,
566         m68k_howto2rtype): Rename via macros to keep namespace clean.
567         * configure.in: For m68klynx_coff_vec, include coff-m68k.o for
568         now.
569
570 Tue Oct 12 17:03:27 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
571
572         * elf32-mips.c: Extensive additions to do relocations and to
573         handle MIPS specific sections.
574         * libelf.h (elf_backend_data): Pass fourth argument to
575         elf_backend_section_from_bfd_section to permit it to control the
576         section index to use.
577         (elf_obj_tdata): Add gp and gp_size fields.
578         (elf_gp, elf_gp_size): New accessor macros.
579         * elfcode.h: Removed a number of unused local variables.
580         (elf_fake_sections): Clear section header before calling
581         elf_backend_fake_sections, not after.
582         (prep_headers): Return true at end.
583         (elf_section_from_bfd_section): Pass retval argument to
584         elf_backend_section_from_bfd_section.
585         * elf32-hppa.c (elf32_hppa_backend_section_from_bfd_section):
586         Accept and ignore new retval argument.
587         * bfd.c: Include libelf.h.
588         (bfd_set_gp_size): Handle ELF targets.
589         * Makefile.in (bfd.o): Depends upon libelf.h.
590         (elf32-mips.o): Depends upon $(INCDIR)/elf/mips.h.
591
592 Mon Oct 11 17:25:18 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
593
594         * ecoff.c (ecoff_mkobject): Check bfd_make_section return value.
595         (ecoff_mkobject_hook): New function.
596         (ecoff_new_section_hook, ecoff_sizeof_headers,
597         ecoff_compute_section_file_positions, ecoff_set_section_contents,
598         ecoff_write_object_contents): Handle dummy REGINFO section.
599         (ecoff_get_section_contents): New function to handle reading
600         REGINFO section.
601         * libecoff.h (ecoff_get_section_contents): Change from macro
602         definition to function prototype.
603         (ecoff_mkobject_hook): New prototype.
604         * coff-alpha.c (alpha_ecoff_mkobject_hook): Removed.
605         (alpha_ecoff_backend_data): Use ecoff_mkobject_hook.
606         * coff-mips.c (mips_ecoff_mkobject_hook): Removed.
607         (mips_ecoff_backend_data): Use ecoff_mkobject_hook.
608
609 Fri Oct  8 15:25:33 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
610
611         * libbfd.c (bfd_get*32, bfd_get*64):  Prevent ANSI sign extension
612         by casting the most significant byte to bfd_vma.
613
614 Fri Oct  8 02:34:21 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
615
616         * configure.in:  Do not define SELECT_VECS, SELECT_ARCHITECTURES
617         if configuring --with-targets=all.
618
619 Thu Oct  7 17:34:07 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
620
621         * aoutx.h (howto_table_std): Correct the "size" field in some
622         entries.
623
624         * reloc.c (reloc_howto_type): Change documentation to dispel any
625         notion that the "size" field is a power-of-two indicator.
626
627 Thu Oct  7 10:50:38 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
628
629        * coffswap.h: (bfd_swap_reloc_in): a symndx is signed.
630
631         Make support for relaxing more generic.
632         * reloc16.c: Add new target entry - bfd_coff_reloc16_estimate,
633         fix bit rot.
634         * libcoff.h, libcoff-in.h: declarations. Prototypes
635         * coffcode.h (bfd_coff_std_swap_table): Add calls to
636         coff_reloc_16_extra_cases and coff_reloc16_estimate.
637         (dummy_reloc16_estimate): New function.
638         * coff-h8300.c (h8300_reloc16_estimate): New function
639
640 Thu Oct  7 14:24:13 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
641
642         * elfcode.h (EALIGN): Define, dependent on ARCH_SIZE.
643         (align_file_position): New function.
644         (elf_locate_sh): Disabled function deleted.
645         (assign_file_positions_for_symtab_and_strtabs): Align position,
646         then place symtab, then do other sections.
647         (map_program_segments): Align program header.
648         (assign_file_positions_except_relocs): Align section headers.
649         (assign_file_positions_for_relocs): Align relocation sections.
650
651 Tue Oct  5 10:44:32 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
652
653         * configure.host: Recognize hppa*-*-hiux* (currently synonym for hpux).
654         Change other hppa entries to use -*- not -hp-.
655         * config.bfd: Recognize hppa*-*-hiux* (currently synonym for hpux).
656
657         * coff-rs6000.c, cpu-rs6000.c, rs6000-core.c: Change non-ASCII
658         characters in comment to octal escapes.
659
660 Sun Oct  3 12:35:15 1993  Stan Shebs  (shebs@rtl.cygnus.com)
661
662         * coff-i386lynx.c: Removed, name too long.
663         * i386lynx-cf.c: New file, was coff-i386lynx.c.
664         * configure.in: Reflect file name changes.
665         * Makefile.in: Mention Lynx-related files.
666
667         * i386lynx.c (lynx_32_swap_ext_reloc_in): get reloc bits in i386
668         Lynx-specific way.
669
670         * m68klynx-cf.c: New file, defines coff format for M68K LynxOS.
671         * m68klynx.c: Remove coff vector definition, now in m68klynx-cf.c.
672
673         * coffcode.h (sec_to_styp_flags): Set section flag to STYP_INFO
674         for .stab, .stabstr and .debug sections, and set SEC_DEBUGGING for
675         sections of type STYP_INFO.  (from Minh Tran-Le)
676         (coff_compute_section_file_positions): Add discarded_sections_count
677         to abfd->section_count, which helps `strip' keep the size
678         of the executable header constant.
679         * coff-i386.c (discarded_sections_count): New variable, initialized
680         to zero.  For use by `strip'.  Currently being used only in aix386
681         coff, but may be useful for other coff systems.  (from Minh Tran-Le)
682
683         * coffswap.h (coff_swap_filehdr_out): Added a missing cast.
684
685         * archive.c: Cosmetic improvements.
686         * opncls.c: Cosmetic improvements.
687         (new_bfd): Removed redundant structure slot init.
688
689 Sat Oct  2 18:48:17 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
690
691         * config/news-mips.mh, hosts/news-mips.h: New files.
692         * configure.host: Use news-mips for mips-sony-bsd*.
693
694 Fri Oct  1 13:14:17 1993  Stan Shebs  (shebs@rtl.cygnus.com)
695
696         * configure.in: i386lynx_coff_vec requires coff-i386lynx.o.
697         * coff-i386lynx.c: New file, defines Lynx target vector and name,
698         includes coff-i386.c.
699         * coff-i386.c (i386coff_vec): Allow redefinition of target vector
700         symbol and name, if TARGET_SYM and/or TARGET_NAME are defined.
701         * i386lynx.c: Remove coff vector definition entirely.
702         (lynx_32_swap_ext_reloc_in): Define.
703         (lynx_32_swap_std_reloc_in): Define, get reloc bits in i386
704         Lynx-specific way.
705         (lynx_32_swap_ext_reloc_out): Define.
706         (lynx_32_swap_std_reloc_out): Define.
707         (lynx_32_slurp_reloc_table): Define, call Lynx swapping fns.
708         (lynx_32_squirt_out_relocs): Define, call Lynx swapping fns.
709         (lynx_32_canonicalize_reloc): Define, call Lynx swapping fns.
710         (WRITE_HEADERS): Define, call Lynx swapping fns.
711
712         * config/i386-lynx.mt (SELECT_VECS): Remove redundant vector.
713
714 Thu Sep 30 17:50:52 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
715
716         * reloc.c (bfd_reloc_code_type): Add linkage-table relative
717         relocations of size 8, 16, 32.  Sort generic relocs by type rather
718         than size.  Added a little documentation too.
719
720         * aoutx.h (howto_table_std): Add BASE16 and BASE32 relocs.
721         (TABLE_SIZE): New macro.
722         (reloc_type_lookup): Handle BFD_RELOC_{16,32}_BASEREL for std
723         relocs.
724         (swap_std_reloc_out): Write baserel relocs correctly.
725         (swap_std_reloc_in): Handle r_baserel field.  Assert that
726         r_jmptable and r_relative fields are clear, and that the computed
727         index does refer to a defined entry of the howto table.
728
729 Tue Sep 28 14:47:46 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
730
731         * section.c (bfd_make_section_anyway): New function.
732         * section.c: Change comments to say several sections can have
733         the same name.
734         * bfd-in2.h: Re-generate to reflect above change.
735         * coffgen.c (make_a_section_from_file): Call bfd_make_section_anyway
736         if still no section after the bfd_coff_make_section_hook.
737         * coffcode.h: Add comment about TWO_DATA_SECS.
738
739 Tue Sep 28 03:22:24 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
740
741         * ecoff.c (ecoff_slurp_symbolic_info):  Always determine raw_size
742         explicitly.
743         * ecoff.c (ecoff_sec_to_styp_flags, ecoff_styp_to_sec_flags):  Handle
744         .fini section.
745
746 Mon Sep 27 18:29:18 1993  Stan Shebs  (shebs@rtl.cygnus.com)
747
748         * config.bfd configure.host: Match on *-lynxos* for LynxOS,
749         add m68*-*-lynxos*.
750         * configure.in : Replaced i386lynx_vec with i386lynx_aout_vec
751         and i386lynx_coff_vec.
752         Added m68klynx_aout_vec and m68klynx_coff_vec.
753         * targets.c (target_vector): Removed i386lynx_vec, added
754         {i386,m68k}lynx_{aout,coff}_vec.
755         * i386lynx.c: Added copy of i386coff.c, renamed bfd target to
756         i386lynx_coff_vec.
757         * m68klynx.c: New file.
758         * config/i386-lynx.mt: Replaced i386lynx_vec with i386lynx_aout_vec
759         and i386lynx_coff_vec.
760         * config/m68k-lynx.mt: New file.
761         * hosts/i386lynx.h: Added definition of cfree as free (from Eichin).
762         * hosts/m68klynx.h: New file.
763
764 Mon Sep 27 18:00:41 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
765
766         * archive.c: Define offsetof here.
767         * hosts/*.h: Don't define it here.
768
769 Mon Sep 27 19:09:27 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
770
771         * elfcode.h (bfd_section_from_shdr): Set filepos for SHT_STRTAB
772         section.
773
774 Fri Sep 24 15:47:40 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
775
776         * hpux-core.c: Add comment about hpux version 7.
777
778 Fri Sep 24 16:50:26 1993  Stu Grossman  (grossman at cygnus.com)
779
780         * lynx-core.c (lynx_core_file_p):  Change per-thread register
781         section names from .regXXX to .reg/XXX to avoid parsing ambiguity
782         in gdb/corelow.c.  Create alias .reg section for the currently
783         running thread.
784
785 Fri Sep 24 13:22:32 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
786
787         * libecoff.h (ecoff_backend_data): Removed big_magic and
788         little_magic fields.
789         * coff-alpha.c (alpha_ecoff_backend_data): Removed initialization
790         of big_magic and little_magic.
791         * coff-mips.c (mips_ecoff_bad_format_hook): Make sure magic number
792         matches endianess of bfd.
793         (mips_ecoff_backend_data): Removed initialization of big_magic and
794         little_magic.
795         * ecoff.c (ecoff_set_arch_mach_hook): Set MIPS machine number
796         based on magic number.  Support r4000 magic numbers.
797         (ecoff_get_magic): New function.
798         (ecoff_write_object_contents): Use ecoff_get_magic, not fields in
799         the backend structure.
800         * cpu-mips.c (arch_info_struct): Added case for r6000.
801
802         For MIPS configurations put both big and little endian versions in
803         the list of targets; the code is getting compiled in anyhow.
804         * bigmips.mt (SELECT_VECS): Define to be ecoff_little_vec.
805         * decstation.mt (SELECT_VECS): Define to be ecoff_big_vec.
806         * mipsbelf.mt (SELECT_VECS): Define to be bfd_elf32_littlemips_vec.
807         * mipslelf.mt (SELECT_VECS): Define to be bfd_elf32_bitmips_vec.
808         * riscos.mt (SELECT_VECS): Define to be ecoff_little_vec.
809
810 Fri Sep 24 00:42:23 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
811
812         * osf-core.c:  New file for OSF/1 core file support.
813         * config/alphaosf.mh (HDEFINES):  Add -DOSF_CORE.
814         (HDEPFILES):  Set to osf-core.o.
815         * bfd-in2.h (union tdata):  Add osf_core_data member.
816         * targets.c:  If OSF_CORE is defined, add osf_core_vec to target list.
817         * Makefile.in (OPTIONAL_BACKENDS):  Add osf-core.o.
818         (osf-core.o):  New dependency.
819
820 Thu Sep 23 21:04:53 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
821
822         * TODO: Remove note about making --with-bfd-targets use canonical
823         target configuration name (already done); reword item about
824         separating reading and writing stuff to not refer to a
825         non-existent item.
826
827         * ecoff.h (ecoff_set_arch_mach_hook): Accept MIPS_MAGIC_LITTLE2
828         and MIPS_MAGIC_BIG2.
829
830 Thu Sep 23 11:06:34 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
831
832         * gen-aout.c (main): Output newline after end of comment, not
833         before.  (Reported by Jonathan Stone,
834         jonathan@oscar.stanford.edu).
835
836 Thu Sep 23 10:48:27 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
837
838         * archive.c (compute_and_write_armap): Put weak symbols in the
839         armap.
840
841         * elfcode.h (fix_up_strtabs): Set sh_entsize for the .stab
842         section, not the .stabstr section.  Set the type of the .stabstr
843         section to SHT_STRTAB.
844         (elf_section_from_bfd_section): Handle SHT_STRTAB sections.
845
846         * section.c (SEC_DEBUGGING): New section flag.
847         * elfcode.h (bfd_section_from_shdr): If section is SHT_PROGBITS,
848         and the name starts with .debug, .line or .stab, set
849         SEC_DEBUGGING.  If SHT_STRTAB, check for .debug and .stab.
850         * elf32-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added
851         SEC_DEBUGGING to section_flags.
852         * elf64-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added
853         SEC_DEBUGGING and SEC_CODE to section_flags.
854         * bfd-in2.h: Updated.
855
856 Wed Sep 22 16:34:14 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
857
858         * bfd.c (tdata): Add lynx_core_data.
859
860         * ecoff.c (ecoff_compute_section_file_positions): Set filepos for
861         sections with SEC_LOAD set, even if SEC_HAS_CONTENTS is clear.
862         (ecoff_write_object_contents): Don't set scnptr to zero just
863         because size of section is zero.  Needed for Irix 4.0.5F.
864
865 Wed Sep 22 09:49:32 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
866
867         * config.bfd: Use i960-bout, not i960-coff for i960-*-nindy*.
868
869 Wed Sep 22 07:34:09 1993  Stu Grossman  (grossman at cygnus.com)
870
871         * Makefile.in (OPTIONAL_BACKENDS):  Add lynx-core.o.
872         * bfd-in2.h (tdata):  Add lynx_core_data;
873         * config.bfd configure.host:  Get rid of superfluous netbsd and
874         lynxos entries.
875         * configure.in:  Add lynx-core.o to Lynx config.
876         * i386lynx.c:  Add defs for core file support.
877         * lynx-core.c:  New file with Lynx core file support.
878         * hosts/i386lynx.h:  Move lots of host specific includes to here.
879         Add def of HOST_LYNX.  Remove unnecessary defs.
880
881 Mon Sep 20 19:18:10 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
882
883         * elfcode.h (bfd_section_from_shdr): Only set SEC_DATA for a
884         SHF_PROGBITS or SHT_STRTAB section if SEC_ALLOC is set.  Never set
885         SEC_DATA for a SHF_NOBITS section.
886
887         * nlm32-i386.c (nlm_i386_mangle_relocs): Check SEC_LOAD rather
888         than SEC_CODE | SEC_DATA.  Add some casts to avoid warnings.
889         * nlmcode.h: Add some casts to avoid warnings.
890         (nlm_write_object_contents): Ignore relocs for sections that are
891         neither code nor data.  Just use the symbol value for debugging
892         symbols; don't offset by the section vma.
893
894 Fri Sep 17 18:08:55 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
895
896         * reloc.c (bfd_perform_relocation): Don't return an error when
897         performing a reloc against an undefined weak symbol.
898         * syms.c (bfd_print_symbol_vandf): Show value of BSF_WEAK rather
899         than obsolete BSF_EXPORT.
900
901 Fri Sep 17 02:04:31 1993  John Gilmore  (gnu@cygnus.com)
902
903         * hosts/{alphaosf.h, amix.h, apollo68.h, apollov68.h,
904         decstation.h, delta88.h, dgux.h, dose.h, go32.h, harris.h,
905         hp300.h, hp300bsd.h, hppabsd.h, hppahpux.h, i386aix.h, i386bsd.h,
906         i386linux.h, i386lynx.h, i386v.h, i386v4.h, irix3.h, irix4.h,
907         mipsbsd.h, ncr3000.h, rs6000.h, rtbsd.h, solaris2.h, sparc-ll.h,
908         std-host.h, stratus.h, sun3.h, sysv4.h, tahoe.h, ultra3.h,
909         vaxult.h, vaxult2.h, we32k.h}:  Make sure that "offsetof" is
910         defined on all hosts, now that archive.c uses it.
911
912 Thu Sep 16 18:20:30 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
913
914         * elfcode.h (elf_map_symbols): Create section symbols for all
915         sections, not just allocated sections; debugging sections can have
916         relocs.
917         (elf_symbol_from_bfd_symbol): If there is an output section, use
918         the section index from that rather than the input section.
919
920 Thu Sep 16 12:20:50 1993  Ken Raeburn  (raeburn@cygnus.com)
921
922         * libbfd-in.h (bfd_flush, bfd_stat): Reflect John's changes to
923         libbfd.h, which is regenerated from this file.
924
925         * bfd-in.h (symtype): Deleted typedef.
926
927 Wed Sep 15 11:48:37 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
928
929         * libbfd.c (COERCExx): Cast x to bfd_signed_vma before doing the
930         xor and subtract.  Otherwise it will not sign extend if the type
931         of bfd_vma is larger than int.
932
933         * ecoffswap.h (ecoff_swap_pdr_in): Get regoffset, iopt, fregoffset
934         and frameoffset as signed numbers.  From Peter Schauer.
935
936 Tue Sep 14 18:20:36 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
937
938         * elf32-i386.c (elf_howto_table): Add bfd_elf_generic_reloc
939         special function for all reloc entries.
940         * elf32-target.h (TARGET_LITTLE_SYM): Add SEC_CODE to
941         section_flags.
942         * libelf.h (elf_symbol_type): Remove desc, type and other fields.
943         * Makefile.in (elf32-*.o): These depend upon elf32-target.h.
944
945 Tue Sep 14 14:34:45 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
946
947         * libbfd-in.h (struct artdata):  Add armap_timestamp and
948         armap_datepos here too.
949
950 Mon Sep 13 21:03:18 1993  John Gilmore  (gnu@cacophony.cygnus.com)
951
952         Improve timestamp support in BSD archive files to avoid linker
953         warnings.
954
955         * libbfd.h (struct artdata):  Add armap_timestamp and armap_datepos.
956         (bfd_flush, bfd_stat):  Add prototypes.
957         * libbfd.c (bfd_flush):  Add, does fflush on a BFD.
958         (bfd_stat):  Add, does fstat on a BFD.
959
960         * archive.c (_bfd_write_archive_contents): At end of file writing,
961         verify and possibly update the timestamp in the armap, if a BSD
962         archive.  FIXME!  Kludge recognizes BSD archive, rather than
963         vectoring properly.  Should add to xvec.
964         (compute_and_write_armap):  Move prototype to top, avoid PROTO.
965         (bsd_write_armap): Save timestamp and file location thereof, when
966         writing the armap in a BSD file.
967         (bsd_update_armap_timestamp):  New function to check and
968         rewrite the timestamp.
969
970         * hosts/std-host.h (offsetof):  Define, if not already, for archive.c.
971
972 Sat Sep 11 18:13:42 1993  Jim Kingdon  (kingdon@poseidon.cygnus.com)
973
974         * hosts/i386sco.h: Define a bunch of stuff for core files.
975         * sco-core.c: Remove, replace by trad-core.c.
976         * trad-core.c: If HOST_STACK_START_ADDR is defined, use it.
977         * config/i386sco.mh: Use trad-core not sco-core.
978         * hosts/i386isc.h, config/i386isc.mh: Remove.
979         * configure.host: Use i386sco for isc.
980         * config/i386-sco.mt: Remove, identical to i386-coff.mt.
981         * config.bfd: Use i386-coff not i386-sco.
982
983         * config.bfd: Recognize i[34]86-*-solaris2* specifically rather
984         than using *-*-solaris2* (i486-unknown-solaris2 is i386-elf, not
985         i486-elf which doesn't exist).
986
987 Fri Sep 10 12:56:36 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
988
989         * coffswap.h (coff_swap_aouthdr_out): For ALPHAECOFF, force
990         padding field to zero.
991
992         * config.bfd (i[34]86-*-netbsd*): New target; use i386-netbsd.
993         * configure.in: Remove bogus netbsd386 handling.
994
995         * coff-mips.c: Don't warn about overflow for MIPS_R_JMPADDR reloc.
996         Correct overflow detection requires matching the upper four bits
997         of the destination against the PC.
998
999 Thu Sep  9 16:57:46 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1000
1001         * configure.in: Make 64-bit stuff work with "--with-targets=all".
1002
1003 Tue Sep  7 14:17:02 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1004
1005         * libbfd-in.h: Removed swapping routines declarations.
1006         * bfd-in.h: Added swapping routine declarations, and renamed them
1007         from _do_* to bfd_*.
1008         * libbfd.c: Renamed swapping routines from _do_* to _bfd_*.
1009         * Changed all callers.
1010         * libbfd.h, bfd-in2.h: Rebuilt.
1011
1012 Mon Sep  6 15:28:07 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1013
1014         * elf32-i386.c (elf_howto_table): Set pcrel_offset to true for
1015         R_386_PC32.
1016
1017 Fri Sep  3 13:06:12 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1018
1019         * configure.in: Reorganized setting of makefile variables so
1020         64-bit stuff works again.
1021
1022         * libbfd-in.h (_do_get*, _do_put*): Renamed via macros to clean up
1023         namespace.
1024
1025         * libelf.h (elf32_symbol_type, elf64_symbol_type): Deleted
1026         "native_elf_sym" field, merged to make new type "elf_symbol_type".
1027         (struct elf_obj_tdata): Field symbols is now elf_symbol_type*.
1028         Deleted field raw_syms.
1029         (obj_symbols): Remove cast.
1030         (obj_raw_syms): Deleted.
1031         * elfcode.h (elf_slurp_symbol_table): Don't set raw_syms or
1032         native_elf_sym fields.
1033         * elf32-hppa.c: Changed uses of elf32_symbol_type to
1034         elf_symbol_type.
1035
1036         From Pete Hoogenboom and Jeff Law:
1037
1038         * elf32-hppa.c (ELF_MAXPAGESIZE): Define.
1039
1040         * elf32-hppa.c (elf_hppa_tc_symbol): If the argument relocation
1041         bits are zero (e.g., they specify no relocations), then do not
1042         even bother adding their entries to the symextn section.
1043
1044         * elf32-hppa.c (elf_hppa_tc_symbol): Any function, regardless
1045         of scope can have an argument relocation stub.
1046
1047         * elf32-hppa.c: (Elf32_hppa_Stub_description):  Rename this
1048         structure and type to elf32_hppa_stub_description.  This makes
1049         it consistent with the GNU coding conventions.
1050         (elf32_hppa_stub_description): Added a 'next' field to allow
1051         linking of stub description structures.
1052         (elf32_hppa_stub_description): Added a 'stub_listP' field to
1053         keep track of individual stubs.
1054         (Elf32_hppa_Stub_list, Elf32_hppa_Stub_list_struct):  Removed.
1055         Combined with the elf32_hppa_stub_description structure.
1056         (elf32_hppa_stub_name_list):  New type to keep track of
1057         individual stubs.
1058         (add_stub):  Removed.
1059         (add_stub_by_name): New function.
1060         (find_stub_by_name): New function.
1061         (hppa_elf_build_arg_reloc_stub): Allow reusing stubs that
1062         already exist.
1063         (hppa_elf_build_long_branch_stub): Allow reusing stubs that
1064         already exist.
1065
1066         * elf32-hppa.c: (retval_mismatches):  The direction of argument
1067         relocation was reversed.
1068         (hppa_elf_build_arg_reloc_stub): Return address was not being
1069         restored.
1070         (hppa_elf_arg_reloc_needed_p): Add argument containing caller
1071         argument relocation bits so this function can be used in the check
1072         for plabel stubs.
1073         (hppa_elf_stub_check): Pass caller argument relocation bits into
1074         hppa_elf_arg_reloc_needed_p().
1075         (hppa_look_for_stubs_in_section): Add check for plabel stubs and
1076         pass caller argument relocation bits into
1077         hppa_elf_arg_reloc_needed_p().
1078
1079 Thu Sep  2 00:59:55 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1080
1081         * libhppa.h (hppa_field_adjust): Remove unused `init_value' variable.
1082
1083         * hosts/delta88v4.h: New for SVR4.
1084         * configure.hosts: Use it.
1085
1086 Wed Sep  1 14:23:32 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1087
1088         * libaout.h, netbsd386.c: Change M_I386 to M_386_NETBSD.  M_I386
1089         is an SCO pre-define.
1090
1091 Tue Aug 31 12:50:19 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1092
1093         * nlmcode.h (nlm_object_p): Set HAS_SYMS if there are external
1094         references.
1095         (nlm_swap_auxiliary_headers_{in,out}): The copyright length is
1096         only one byte.
1097         (nlm_get_symtab_upper_bound): Include debugging symbols in symbol
1098         count.
1099         (nlm_slurp_symbol_table): Make symlength unsigned.  Read debugging
1100         symbols as BFD local symbols.
1101         (nlm_write_object_contents): Don't bother writing out exported
1102         symbols more than once; they now appear in the symbol table more
1103         than once (with and without a prefix) if necessary.  Set offset
1104         values to be non-zero as NLMLINK does.
1105
1106 Tue Aug 31 12:07:43 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1107
1108         * libhppa.h: Restore #undefs of e_fsel and other e_* symbols.
1109
1110 Fri Aug 27 16:43:35 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1111
1112         * section.c (struct sec): Move position of user_set_vma, and
1113         document it.
1114         (SEC_BALIGN): Disable for now.  I don't think it's currently used.
1115
1116         * elf32-hppa.c (elf_hppa_howto_table): Now static.
1117         (symext_rootP, symext_lastP, global_value, GOT_value,
1118         global_symbol, global_sym_defined, symextn_contents,
1119         symextn_contents_real_size, elf_hppa_stub_rootP,
1120         elf32_hppa_symextn_map, elf32_hppa_symextn_map_size): Rely on
1121         default initialization.
1122         (hppa_elf_gen_reloc_type): Macro "UNDEFINED" doesn't need a
1123         trailing semicolon.
1124         (hppa_look_for_stubs_in_section): Introduce temporaries to make
1125         code more readable in 80 columns.
1126
1127         * libhppa.h (all functions): Now inline under GNU C.
1128
1129         More patches from Jeff Law:
1130
1131         * elf32-hppa.c (AR_WARN): Give argument which caused the
1132         invalid argument relocation.
1133         (AR_UNIMP): Delete unused macro.
1134         (hppa_elf_set_section_contents): Always return a value.
1135         (elf32_hppa_backend_table_processing): Likewise.
1136         (elf32_hppa_backend_section_processing: Likewise.
1137
1138         * som.c: New file containing SOM specific code extracted
1139         from hppa.c
1140
1141         * som.h: New file containing SOM specific code extracted
1142         from libhppa.h
1143
1144         * hppa.c: Deleted.
1145
1146         * libhppa.h: Delete SOM specific code.  Add generic PA
1147         code which can be shared by both SOM and ELF backends.
1148
1149         * Makefile.in: Replace hppa.c with som.c.  elf32-hppa.o
1150         depends on libhppa.h now.
1151
1152         * configure.in (hppa_vec): Needs som.o module instead of
1153         hppa.o.
1154
1155         * elf32-hppa.c: Include libhppa.h.  Do not define
1156         BYTES_IN_WORD.
1157
1158         * elf32-hppa.h (hppa_reloc_field_selector_type): Delete
1159         now lives in libhppa.h.
1160         (hppa_reloc_field_selector_type_alt): Likewise.
1161
1162         * hosts/hppabsd.h: Include <stdlib.h> and <unistd.h>.  Do not
1163         define malloc or free.
1164
1165         * config/hppa-elf.mt (SELECT_ARCHITECTURES): Don't define
1166         SELECT_VECS.
1167
1168         * elf32-hppa.c (hppa_elf_relocate_unwind_table): Delete unused
1169         variables.
1170         (elf_hppa_reloc_type_lookup): Likewise.
1171         (elf_hppa_tc_make_sections): Likewise.
1172         (hppa_elf_arg_reloc_needed_p): Likewise.
1173         (hppa_elf_build_long_branch_stub): Likewise.
1174         (elf_reloc_map): Delete, no longer used.
1175         (elf_hppa_reloc_map): Likewise.
1176         (elf32_hppa_symextn_map_max_size): Likewise.
1177         (elf32_hppa_get_sym_extn): Abort if type is bogus.
1178
1179         * elf32-hppa.c (elf32_hppa_backend_fake_sections): Add processing
1180         of the .hppa_unwind section.
1181
1182 Wed Aug 25 16:13:49 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
1183
1184         * config.bfd: recognize m88110.
1185
1186 Tue Aug 24 16:32:35 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1187
1188         Merged changes from Jeff Law and Pete Hoogenboom at Utah:
1189
1190         * elfcode.h (elf_section_from_bfd_section): Add detection of
1191         SHT_NOTE sections.
1192
1193         * elf32-hppa.c:
1194         (hppa_elf_build_long_branch_stub,hppa_elf_long_branch_needed_p):
1195         New functions for support of long branch stubs.
1196         (hppa_elf_stub_check,hppa_look_for_stubs_in_section):  Add
1197         check for long branch stubs.
1198         (hppa_look_for_stubs):  Unused function.  Removed.
1199         (hppa_elf_set_section_contents): Implement a PA/ELF-specific
1200         version of bfd_set_section_contents.
1201         (hppa_elf_long_branch_needed_p): Only output debugging diagnostics
1202         when BFD is configured for debugging.
1203
1204         * elf32-hppa.c: (elf32_hppa_get_symextn_chain):  New function
1205         to return a list of symbols that have non-zero argument
1206         relocation bits.
1207         (hppa_elf_stub_finish): Make sure stub generation is done only
1208         once.
1209
1210         * elf32-hppa.c: (hppa_elf_stub_reloc):  New function for
1211         generation relocation entries within a stub.
1212         (hppa_elf_build_arg_reloc_stub): Corrections to argument
1213         relocation stubs.
1214
1215         * elf32-hppa.c: New #define's for argument relocation types.
1216         (mismatches, retval_mismatches): Updated to reflect new
1217         argument relocation types.
1218         (CURRENT_STUB_OFFSET): New macro.
1219
1220         * elfcode.h (map_program_segments): Set the PF_X bit for data
1221         segments.
1222
1223         * elf32-hppa.c: (elf_hppa_howto_table): Add
1224         R_HPPA_STUB_CALL_17 for support of linker stub generation.
1225         (hppa_elf_reloc): Add support of R_HPPA_STUB_CALL_17
1226         relocation type.
1227
1228         * elf32-hppa.h: (elf32_hppa_reloc_type): Add
1229         R_HPPA_STUB_CALL_17 for support of linker stub generation.
1230
1231         * hppa_stubs.h: Add new instructions that are used in linker
1232         stub generation.
1233
1234         * elf32-hppa.c (hppa_elf_relocate_unwind_table): The offsets in an
1235         unwind descriptor were incorrect.
1236
1237         * libelf.h (bfd_elf_find_section): Declare.
1238
1239         * elf32-hppa.c: (elf32_hppa_backend_symbol_processing):  New
1240         function in place of global_sym field in elf_backend_data
1241         structure.
1242         (elf32_hppa_backend_symbol_table_processing,
1243         elf32_hppa_backend_section_processing,
1244         elf32_hppa_backend_fake_sections,
1245         elf32_hppa_backend_section_from_shdr,
1246         elf32_hppa_backend_section_from_bfd_section):  New functions to
1247         provide support of symbol extension sections and argument
1248         relocation stubs.
1249         (elf_info_to_howto):  Remove call to abort().
1250
1251         * elf32-target.h:  Support for special processing by the backend.
1252         (struct elf_backend_data):  Added elf_backend_symbol_processing,
1253         elf_backend_symbol_table_processing,
1254         elf_backend_section_processing, elf_backend_section_from_shdr,
1255         elf_backend_fake_sections, and
1256         elf_backend_section_from_bfd_section fields.
1257         * elfcode.h: (bfd_section_from_shdr): Add a check for
1258         processor-specific section types.
1259         (elf_fake_sections):  Add a check for processor-specific
1260         section types.
1261         (bfd_elf32_write_object_contents):  Add a check to see if
1262         there is any final section processing to be done by the
1263         backend.
1264         (elf_section_from_bfd_section):  Add a check for
1265         processor-specific section types.
1266         (elf_slurp_symbol_table):  Remove reference to global_sym in the
1267         elf_backend_data structure.  Replace it with a call to
1268         elf_backend_symbol_processing.
1269         * libelf.h: Remove global_sym field in the elf_backend_data
1270         structure.  Replace it with a series of backend-specific
1271         functions.
1272
1273         * elf32-hppa.c (hppa_elf_stub_branch_reloc): The formal argument
1274         stub_sym should be called target_sym.
1275         (hppa_elf_build_arg_reloc_stub): Refer to the stub bfd (abfd)
1276         rather than the output bfd (output_bfd).
1277         (hppa_elf_reloc): Get rid of references to the global_sym field in
1278         the elf_backend_data structure.
1279
1280         * elfcode.h (elf_fake_sections): Check the correct condition for
1281         .bss.  Also, detect the existence of a .note section.
1282
1283         * elf32-hppa.c (hppa_elf_relocate_insn): r_format argument should
1284         have been r_field.
1285
1286         * hosts/hppabsd.h (HOST_MACHINE_ARCH): Reference to bfd_arch_m68k
1287         should be a reference to bfd_arch_hppa.
1288
1289         * hppa.c (hppa_vec): Replace bfd_false with _bfd_dummy_target in
1290         the bfd_check_format structure to avoid a type mismatch.
1291
1292 Mon Aug 23 1993  Sean Fagan  (sef@cygnus.com)
1293                  and Jim Kingdon  (kingdon@cygnus.com)
1294
1295         Add NetBSD support:
1296         * netbsd386.c: New file.
1297         * aoutx.h: Make sym_is_debugger_info true for N_FN.
1298         * Makefile.in, aout-target.h, config.bfd, configure.host, configure.in,
1299         libaout.h, targets.c: Other changes.
1300
1301 Fri Aug 20 17:04:59 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1302
1303         * config/m88k-elf.mt: New file.
1304         * config.bfd: Use it for m88*-*-sysv4*.
1305
1306 Fri Aug 20 15:16:58 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1307
1308         * elfcode.h (elf_build_phdrs): Unused function deleted.
1309         (bfd_shdr_from_section): Ditto.
1310         (write_relocs): Don't change section contents for addend.
1311         (elf_locate_sh): Return type is now always elf_internal_shdr,
1312         since the other types were really aliases for this type anyways.
1313         Don't compile this function, since it is static and doesn't appear
1314         to be used in this file.
1315         (sym_is_global): Return non-zero for weak symbols.  Abort if
1316         section pointer is null.
1317         (swap_out_syms): Reorder tests so function symbols can be weak.
1318         (elf_slurp_symbol_table): Don't use BSF_EXPORT.
1319         (elf_slurp_reloca_table): Make RELOC_PROCESSING section smaller by
1320         extracting out some common code.  Abort if BFD section symbol has
1321         null name.
1322         (elf_slurp_reloc_table): Translate ELF section symbols into BFD
1323         section symbols.  Don't read section contents to fill in addend
1324         field.
1325
1326         * elf32-i386.c (elf_howto_table): All partial_inplace fields
1327         should be "true".
1328
1329         * Merged from OSF:
1330
1331         Tue Jun 15 14:38:32 1993  Michael Meissner  (meissner@osf.org)
1332
1333         * libelf.h (struct Elf_Sym_Extra): New structure to contain ELF
1334         specific information for a symbol.  Put in elf_sym_num, which
1335         gives the external symbol number in the elf object file, since
1336         local symbols must come before global symbols.
1337         (elf_sym_extra): New macro.
1338         (elf_symtab_map): Delete, in favor of using Elf_Sym_Extra.
1339         * elfcode.h (elf_map_symbols): Use Elf_Sym_Extra to map internal
1340         symbol number to external number.  Store the address of the
1341         Elf_Sym_Extra field for the symbol in the udata field.
1342         (elf_write_object_contents): Use Elf_Sym_Extra to map out symbols.
1343
1344         Sun Jun 20 16:30:11 1993  Michael Meissner  (meissner@osf.org)
1345
1346         * elfcode.h (elf_obj_tdata): Add field to count the size of the
1347         array of pointers to section symbols.
1348         (elf_map_symbols): Bump the max index of the section symbols so
1349         that we don't overwrite memory.  Store the max index into the
1350         elf_obj_tdata field.
1351
1352         Sat Jun 19 10:12:27 1993  Michael Meissner  (meissner@osf.org)
1353
1354         * elfcode.h (elf_obj_tdata): Add pointer to an array of pointers
1355         to the section symbols we created.  Remove unused field
1356         internal_syms.
1357         (elf_map_symbols): Fill in array of pointers to section symbols.
1358         Only create section symbols for sections that have SEC_ALLOC set,
1359         and have non-zero size.
1360         (elf_symbol_from_bfd_symbol): If udata is NULL, and this is a
1361         section symbol, look up the section in the list of section
1362         symbols, and set the udata pointer appropriately.  Otherwise, if
1363         udata is still NULL, fail an assertion, and use 0, instead of
1364         dropping core.
1365
1366 Fri Aug 20 12:18:05 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1367
1368         * config.bfd (mips-*-elfl*, mips-*-elf*): New targets, using
1369         mipslelf and mipsbelf respectively.
1370         * config/mipslelf.mt, config/mipsbelf.mt: New files.
1371         * elf32-mips.c: Added some reloc information.
1372         * configure.in: Fixed error message.
1373
1374         * ecoff.c (ECOFF_LONG_SIZE): Removed.  Just use constants.
1375
1376 Thu Aug 19 09:45:51 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1377
1378         * Makefile.in (BFD_LIBS, ALL_MACHINES, BFD32_BACKENDS, BFD64_BACKENDS,
1379         OPTIONAL_BACKENDS): Alphabetize entries and add a few missing ones.
1380         * archures.c: Alphabetize decls.
1381
1382         * configure.in, targets.c: Add missing vectors to the tables.
1383         * targets.c (target_vector) [!SELECT_VECS]: Add DEFAULT_VECTOR.
1384         Remove hp300bsd_vec due to clash with sunos_big_vec.
1385
1386 Tue Aug 17 18:12:32 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1387
1388         * hosts/i386{mach3,osf1mk}.h: New files, for Mach hosting.
1389         * hosts/i386mach.h: removed, replaced by i386osf1mk.h.
1390         * config/i386mach3.mt, i386mach3.c: New files, for Mach a.out format.
1391         * Makefile.in, configure.host, config.bfd: Corresponding changes.
1392         * hosts/decstation.h: Include <sys/param.h> not <machine/param.h>.
1393
1394 Tue Aug 17 15:19:41 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1395
1396         * coffgen.c (coff_section_symbol): If section's output_section is
1397         not yet set, point to itself.  This is needed because this is
1398         called on the output file, not the input file.
1399
1400         * coff-rs6000.c (dummy_reloc, RTYPE2HOWTO): Set howto field to a
1401         dummy value, rather than leaving it NULL.
1402
1403         * archures.c (bfd_default_set_arch_mach): Set bfd_error on
1404         failure.
1405         * aoutx.h (NAME(aout,set_arch_mach)): Check return value of
1406         bfd_default_set_arch_mach.
1407
1408 Tue Aug 17 09:42:16 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1409
1410         * config.bfd (cpu): Extract from canonical name with sed.
1411         * configure.in: Don't pass it.
1412
1413 Sun Aug 15 20:45:45 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1414
1415         * bfd-in.h: Remove {BYTE,WORD,LONG}_SIZE; they are pointless and
1416         BYTE_SIZE conflicts with a Mach header.
1417         * ecoff.c: Change LONG_SIZE to ECOFF_LONG_SIZE and define it.
1418
1419         * configure.host: Make sure all OS fields end in *.
1420
1421 Fri Aug 13 16:33:33 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1422
1423         * ecoff.c (ecoff_slurp_reloc_table): Use bfd_abs_section for
1424         RELOC_SECTION_NONE and RELOC_SECTION_ABS.  If a reloc section
1425         doesn't exist, don't try to create it.
1426
1427         * nlmcode.h (nlm_write_object_contents): procedure offsets are
1428         from start of code segment, not start of file.
1429         * config/i386-nlm.mt (DEFAULT_VECTOR): It's nlm32_i386_vec, not
1430         bfd_nlm32_i386_vec.
1431         * configure.in (SELECT_VECS switch): Likewise.
1432
1433 Thu Aug 12 10:32:47 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1434
1435         * format.c (bfd_check_format): If the target matches the default
1436         target, set match_count to 1, to ignore any previous matches.
1437
1438         * Makefile.in (BFD32_BACKENDS): Remove srec.o, add reloc16.o.
1439
1440         * configure.in: Add reloc16.o when we add
1441         coff-h8300.o, coff-h8500.o, coff-sh.o, coff-z8k.o.
1442         Makefile.in (BFD_LIBS): Remove reloc16.o.
1443
1444         * config/u68k-coff.mt: Fix typo, DEFAULT_TARGET for
1445         DEFAULT_VECTOR.
1446
1447         * config/h8300-coff.mt, h8500-coff.mt, sh-coff.mt, st2000.mt,
1448         z8k-coff.mt (DEFAULT_VECTOR): Define.  Don't explicitly add
1449         S-records via SELECT_VECS.
1450
1451         * targets.c (target_vector), Makefile.in (BFD_LIBS): Always
1452         support S-records, for convenience.
1453
1454 Thu Aug 12 08:30:05 1993  Ian Lance Taylor  (ian@cygnus.com)
1455
1456         * coff-alpha.c (alpha_howto_table, alpha_finish_reloc,
1457         alpha_ecoff_swap_reloc_{in,out}, alpha_bfd_reloc_type_lookup):
1458         Read and write Alpha relocs.  Can't process them yet.
1459         * ecoff.c (ecoff_slurp_reloc_table): Recognize new reloc sections.
1460         If the section does not already exist, create it.
1461
1462         * ecoffswap.h (ecoff_swap_pdr_{in,out}): Handle new fields defined
1463         on the Alpha.
1464
1465         * libecoff.h (ecoff_backend_data): Added constructor_reloc and
1466         finish_reloc fields.
1467         * ecoff.c: Move MIPS reloc support from here...
1468         * coff-mips.c: to here.
1469         * ecoff.c (ecoff_set_symbol_info): Get constructor reloc howto
1470         from backend.
1471         (ecoff_slurp_reloc_table): Removed MIPS specific stuff.  Call
1472         finish_reloc backend function.
1473         (ecoff_write_object_contents): Removed MIPS specific assertions.
1474         * coff-mips.c (mips_finish_reloc): New function.
1475         (mips_ecoff_backend_data): Fill in new fields.
1476         * coff-alpha.c (alpha_ecoff_backend_data): Use NULL for new
1477         fields.
1478         * targets.c: Added extern for ecoffalpha_little_vec.
1479
1480         * bfd.c (_bfd_host_big_endian): Removed.
1481         * bfd-in.h (HOST_BYTE_ORDER_BIG_P, bfd_header_twiddle_required):
1482         Removed.
1483         * bfd-in2.h: Regenerated.
1484
1485 Wed Aug 11 12:11:23 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1486
1487         * config.bfd: New file, broken out of configure.in.
1488         * configure.in: Use it, and use standard target names for
1489         --with-targets, replacing --with-bfd-targets.
1490
1491         * archures.c (archures_init_table): Add bfd_sh_arch.
1492
1493         * configure.in: Include coff-m68k.o for m68kcoffun_vec.
1494         Include nlm32.o and nlm.o for bfd_nlm32_i386_vec.
1495         Fix error in error message.
1496
1497         * oasys.c: Make bfd_error_vector extern.
1498
1499         * configure.in: Include stab-syms.o for a.out/b.out targets
1500         and hp300{bsd,hpux}.
1501
1502 Wed Aug 11 06:40:51 1993  Ian Lance Taylor  (ian@cygnus.com)
1503
1504         * nlmcode.h (nlm_compute_section_file_positions): Add the .bss
1505         section before setting output_has_begun.
1506         (nlm_set_section_contents): Remove argument names from
1507         mangle_relocs_func prototype.
1508         (nlm_write_object_contents): Remove shadowing local variable.
1509         Don't write out debugging symbols if debugInfoOffset is -1.  Add
1510         the codeImageOffset to the start, exit, and check procedure
1511         offsets.
1512         * nlm32-i386.c (nlm_i386_write_reloc, nlm_i386_mangle_relocs):
1513         Don't check partial_inplace field; its value is irrelevant.
1514
1515         * Base use of sco-core on host, not target.
1516         * configure.host (i[34]86-*-sco*): Use i386sco rather than i386v.
1517         * config/i386-sco.mt (TDEFINES): Removed.
1518         * config/i386sco.mh: New file to use sco-core.
1519         * hosts/i386sco.h: New file; just includes hosts/i386v.h.
1520
1521         * ecoffswap.h (ecoff_swap_{hdr,ext}_{in,out}): Use signed
1522         conversions for some fields.
1523
1524 Tue Aug 10 13:32:23 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1525
1526         * ecoff.c (ecoff_gprel_reloc): If _gp is not defined, give an
1527         error rather than aborting.
1528
1529         * libnlm.h (struct nlm_backend_data): Added mach field.
1530         (nlm_machine): New accessor macro.
1531         * nlm.c (nlm_mkobject): Set architecture and machine from backend
1532         information.
1533         * nlm32-i386.c (nlm32_i386_backend): Initialize new mach field.
1534
1535 Tue Aug 10 09:31:18 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1536
1537         * configure.in: Replace calls to sort with shell code
1538         to uniq the lists.
1539
1540 Tue Aug 10 06:23:16 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1541
1542         * configure.in: Include aout32.o for any a.out/b.out formats.
1543
1544 Mon Aug  9 09:37:18 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1545
1546         * config/i386-linux.mt (SELECT_VECS): Support bfd_elf32_i386_vec.
1547         * config/m68k-elf.mt (SELECT_VECS): Support m68kcoff_vec.
1548         * config/i386-elf.mt (SELECT_VECS): Support i386coff_vec.
1549         * config/hppa-elf.mt (SELECT_VECS): Support hppa_vec.
1550         * config/sparc-elf.mt (SELECT_VECS): Support sunos_big_vec.
1551         * config/i386-sco.mt (SELECT_VECS): Don't define; Ian says it was
1552         just a hack.
1553
1554 Mon Aug  9 13:15:00 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
1555
1556         * config/m88k-coff.mt (DEFAULT_VEC -> DEFAULT_VECTOR): renamed.
1557
1558 Mon Aug  9 14:26:45 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1559
1560         * syms.c (BSF_EXPORT): Now same as BSF_GLOBAL.
1561
1562         * bfd.c (bfd_scan_vma): New function.
1563
1564 Mon Aug  9 11:29:53 1993  Ian Lance Taylor  (ian@cygnus.com)
1565
1566         * bfd-in.h (bfd_get_architecture, bfd_get_machine): Removed
1567         obsolete macros.
1568         * bfd-in2.h: Updated.
1569
1570         * ecoff.c (ecoff_slurp_armap): Correct bug in initialization of
1571         stringbase.
1572
1573 Sun Aug  8 12:21:13 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1574
1575         * configure.in: Remove unneeded test.
1576
1577 Sun Aug  8 12:41:22 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1578
1579         * Makefile.in ({dist,real}clean): Use $(MAKE), not make.
1580
1581 Sat Aug  7 09:14:21 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1582
1583         * config/st2000.mt (TDEFINES): Don't define MRI; not used.
1584
1585         * PORTING, TODO, config/README: Update to reflect below changes.
1586
1587         * configure.in: Replace MINIMIZE and --with-minimal-bfd with
1588         --with-bfd-targets="target1,target2,..." and the special target
1589         "all" to get the previous default behavior.
1590         Figure out which architecture and backend .o files are needed from
1591         DEFAULT_VECTOR, SELECT_VECS, and SELECT_ARCHITECTURES as set in
1592         the .mt files.  Define TDEFAULTS based on them, also.
1593
1594         * Makefile.in: Remove references to MINIMIZE.
1595         * archures.c, targets.c: Ditto.
1596
1597         * config/*.mt: Define DEFAULT_VECTOR, SELECT_VECS, and
1598         SELECT_ARCHITECTURES as variables rather than as -D arguments to
1599         TDEFAULTS.
1600
1601         * config/a29k-coff.mt,alphaosf.mt, i386-sco.mt, i960-bout.mt,
1602         i960-coff.mt (TDEFAULTS): Don't put the default vector in
1603         SELECT_VECS manually; it's automatic now.
1604
1605         * config/i386-sco.mt (TDEFAULTS): Don't put &sco_core_vec in
1606         SELECT_VECS manually; -DSCO_CORE does it automatically now.
1607
1608         * config/h8300-coff.mt,h8500-coff.mt,sh-coff.mt,st2000.mt,z8k-coff.mt
1609         (TDEFAULTS): Don't define BFD; not used.
1610
1611         * config/hppaosf.mh (HDEFINES): Don't define SELECT_ARCHITECTURES;
1612         this is a host, not a target.
1613
1614 Sat Aug  7 05:28:03 1993  Fred Fish  (fnf@deneb.cygnus.com)
1615
1616         * elfcode.h (elf_object_p):  Add comment about what this function
1617         does and to watch out for side effects.  Add FIXME for memory leaks.
1618         Fix comment about checking for matching byte order.  Preserve
1619         pointer to old tdata (if any), and restore it if we don't match
1620         file with target vector.  If we are going to use goto's, use them
1621         consistently and maintainably.
1622         * nlmcode.h (nlm_object_p):  Expand comments about leaked memory
1623         to note that the problem is even more serious than just leaked
1624         memory.  Replace goto with more traditional return.
1625
1626 Fri Aug  6 12:00:03 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1627
1628         Fix incorrect or useless makefile variable definitions:
1629         * config/news.mt, config/u68k-coff.mt (TDEFAULTS): Use this to
1630         define DEFAULT_VECTOR, instead of TDEFINES.
1631         * config/i386aix.mh (MINIMIZE): Don't define.
1632         * config/hppaosf.mh (MINIMIZE): Don't conditionalize.
1633         * config/rs6000.mh (ALLOCA),
1634         * config/i386v.mh (ALLOCA),
1635         * config/i386linux.mh (ALLOCA),
1636         * config/i386isc.mh (ALLOCA),
1637         * config/go32.mh (EXTRALIBS): Don't define; not used.
1638         * config/solaris2.mh (HDEFINES): Renamed from H_DEFINES.
1639         * config/alphaosf.mt (TDEFINES): Set it, not HDEFINES.
1640         * config/z8k-coff.mt (CC): Don't define.  It's a target, not a host.
1641
1642         * config/.Sanitize (Things-to-keep): Add README.
1643         * config/README: New file, explaining the variables.
1644
1645         * targets.c (target_vector): Add hp300_bsd_vec.
1646         * Makefile.in (BFD32_BACKENDS, CFILES): Add hp300bsd.
1647         (hp300bsd.o): New rule.
1648
1649 Fri Aug  6 15:13:22 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1650
1651         * libelf.h (NAME): Provide a default definition, that's neither
1652         for 32 bits nor for 64.
1653
1654         Tue Jun 15 14:38:32 1993  Michael Meissner  (meissner@osf.org)
1655
1656         * libelf.h (elf_hash): Change declaration to bfd_elf_hash, since
1657         that is what is in elf.c.
1658
1659 Fri Aug  6 12:28:38 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1660
1661         * ecoff.c (ecoff_set_symbol_info): Removed special handling for
1662         scBss and scSBss symbols, since it was wrong.
1663
1664         * Makefile.in (coff-mips.o, coff-alpha.o): Don't depend on
1665         coffcode.h.
1666
1667         * coffcode.h (sec_to_styp_flags): Inspired by mb@tti.COM (Michael
1668         Bloom): Only set STYP_BSS for SEC_ALLOC sections.
1669
1670         * ecoff.c (ecoff_slurp_armap): From Arne Henrik Juul
1671         <arnej@kari.fm.unit.no>: Handle a COFF style armap.
1672
1673 Fri Aug  6 09:59:45 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1674
1675         * hpux-core.c: Cast return value from bfd_zalloc.
1676
1677 Thu Aug  5 13:22:44 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1678
1679         * aoutx.h (log2): Delete i387-specific code.
1680
1681         * Makefile.in (BFD_LIBS): Always include elf.o.
1682         (BFD32_BACKENDS): Don't include elf.o here.
1683         (ofiles): Delete references to ofiles2 and ofiles3.
1684         (do_clean): Delete ofiles.
1685         (BFDIN_H): Changed references to $(srcdir)/bfd-in2.h.
1686         (stmp-bfd.h): Use bfd.h-new as temporary name, not bfd.h2.
1687         (headers): Use bfd-in2.h-new as temporary name, not bfd.h-new.
1688
1689         * bfd-in.h: Reworded comment to make it clear that bfd-in2.h is a
1690         generated file.
1691
1692         * reloc.c (enum bfd_reloc_code_real): Added i386-elf reloc types
1693         (from Meissner's additions to bfd-in2.h).
1694
1695         * elf32-i386.c (ELF_MAXPAGESIZE): Define.
1696
1697         Merged:
1698
1699         Wed Jun 23 06:05:58 1993  Michael Meissner  (meissner@osf.org)
1700
1701         * elfcode.h (elf_write_object_contents): Don't drop core if
1702         elf_symbol_from returns a NULL pointer when processing a non-elf
1703         symbol, use a 0 size instead.
1704
1705         Tue Jun 15 14:38:32 1993  Michael Meissner  (meissner@osf.org)
1706
1707         * elfcode.h (elf_hash): Delete macro mapping elf_hash to
1708         bfd_elf32_hash, since the hash table is independent of the 32/64
1709         bit system.
1710
1711         * libelf.h (elf_hash): Change declaration to bfd_elf_hash, since
1712         that is what is in elf.c.
1713
1714         Sat Jun 19 10:12:27 1993  Michael Meissner  (meissner@osf.org)
1715
1716         * elf32-i386.h (reloc_type): Reformat spacing.
1717         (elf_howto_table): Add the rest of the 386/ELF relocations.
1718         (elf_i386_reloc_type_lookup): Ditto.
1719         (elf_i386_info_to_howto): Ditto.
1720         (elf_i386_info_to_howto_rel): Ditto.
1721
1722 Thu Aug  5 10:07:43 1993  Fred Fish  (fnf@cygnus.com)
1723
1724         * nlmcode.h (nlm_get_reloc_upper_bound):  Test return value
1725         of nlm_slurp_symbol_table as boolean, not pointer.
1726         * nlmcode.h (nlm_canonicalize_reloc):  Test return value
1727         of nlm_slurp_reloc_fixups as boolean, not pointer.
1728
1729 Wed Aug  4 16:22:55 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
1730
1731         * config/go32.mh: remove HDEFINES; since __MSDOS__ and __GO32__
1732         are now predefined by GCC
1733
1734 Wed Aug  4 16:06:29 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1735
1736         * coffgen.c (coff_print_symbol): Add the section offset to the
1737         line number address, so it's printed the same way as the function
1738         address.  Only showed up for line numbers that aren't in the first
1739         section (.text).
1740
1741 Wed Aug  4 08:33:55 1993  Ian Lance Taylor  (ian@cygnus.com)
1742
1743         * libnlm.h (nlm_backend_data): Added nlm_mangle_relocs.
1744         (nlm_mangle_relocs_func): New macro.
1745         * nlm32-i386.c (nlm_i386_write_reloc): Rewrote correctly.
1746         (nlm_i386_mangle_relocs): New function.
1747         * nlmcode.h (nlm_compute_section_file_positions): Move all common
1748         symbols into the .bss section.
1749         (nlm_set_section_contents): Call the mangle_relocs function.
1750         (nlm_write_object_contents): Treat a reloc against any defined
1751         symbol as an internal reloc.  Fix bug in external reloc counting.
1752         Get the offset and debugging type right for .bss symbols.  Only
1753         output debugging symbols for defined symbols.
1754
1755         * coff-h8500.c (rtype2howto): Do an fprintf to stderr rather than
1756         using printf.
1757         * coff-z8k.c (rtype2howto): Likewise.
1758         * coffcode.h (dummy_reloc16_extra_cases): Likewise.
1759         * elf32-i386.c (TRACE): Likewise.
1760         * hp300hpux.c (convert_sym_type, swap_std_reloc_in): Likewise.
1761         * rs6000-core.c (rs6000coff_get_section_contents): Likewise.
1762         * coffgen.c (coff_print_symbol): Do an fprintf to the file
1763         argument rather than using printf.
1764
1765 Tue Aug  3 18:17:25 1993  Ian Lance Taylor  (ian@cygnus.com)
1766
1767         * coffswap.h: Added macros used when accessing several fields;
1768         default is the same as before.
1769         (coff_swap_aouthdr_{in,out}): Handle the Alpha ECOFF fields.
1770         * coff-alpha.c: Defined macros to use the right sizes in
1771         coffswap.h.
1772         * libecoff.h: Backend information is now in target vector, not
1773         BFD.  Start of backend information is COFF backend information.
1774         * coff-alpha.c, coff-mips.c: Changed accordingly.
1775         * ecoff.c (ecoff_mkobject): New function.
1776         (ARMAP_START): Changed into backend information, since Alpha uses
1777         a different name.
1778         (ecoff_slurp_armap): Don't overlay archive header.
1779         * bfd.c: Include libcoff.h.
1780
1781 Tue Aug  3 16:33:11 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1782
1783         * Makefile.in (install): Fix sh syntax error.
1784
1785         * aoutf1.h: Make bfd_error_trap extern; it's defined in bfd.c.
1786
1787 Tue Aug  3 15:19:09 1993  Fred Fish  (fnf@deneb.cygnus.com)
1788
1789         * nlm_slurp_symbol_table: Don't use '&' on arrays.
1790
1791 Tue Aug  3 11:06:28 1993  Ian Lance Taylor  (ian@cygnus.com)
1792
1793         * ecoff.c: New file for generic ECOFF functions.
1794         * ecoffswap.h: New file for ECOFF swapping functions which differ
1795         only slightly for different targets.
1796         * libecoff.h: Added prototypes for ecoff.c functions.
1797         (ecoff_backend_data): New structure.
1798         (ecoff_tdata): Added backend_data field.  Changed external data
1799         pointers to be PTR rather than to a particular struct.
1800         (ecoff_symbol_struct): Moved in from coff-mips.c.
1801         * coff-alpha.c, coff-mips.c: Moved common functions into ecoff.c.
1802         Added ECOFF backend structures.  Include ecoffswap.h.
1803         * coff-msym.c: Removed; superseded by ecoffswap.h.
1804         * bfd.c: Include coff/internal.h.
1805         * Makefile.in (BFD_LIBS): Removed coff-mips.o and coff-msym.o.
1806         Added ecoff.o.
1807         (BFD64_BACKENDS): Added coff-alpha.o.
1808         (CFILES): Removed coff-msym.c.  Added ecoff.c.
1809         (bfd.o): Added dependency on $(INCDIR)/coff/sym.h.
1810         (coff-mips.o): Added dependency on ecoffswap.h and coff/ecoff.h.
1811         (ecoff.o, coff-alpha.o): New targets.
1812         (coff-msym.o): Removed target.
1813
1814 Mon Aug  2 23:33:38 1993  John Gilmore  (gnu@cygnus.com)
1815
1816         * elf32-hppa.h, hosts/*:  Remove (one more time) all occurrances
1817         of EXFUN in the BFD sources.  Heave ho!
1818
1819 Mon Aug  2 16:45:57 1993  Stu Grossman  (grossman at cygnus.com)
1820
1821         * coffcode.h (coff_set_arch_mach_hook):  Add check for I386LYNXMAGIC.
1822
1823 Mon Aug  2 12:18:03 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
1824
1825         * hosts/sun3.h: remove some more conflicting decls
1826
1827 Mon Aug  2 11:48:23 1993  Stu Grossman  (grossman at cygnus.com)
1828
1829         * i386lynx.c:  Remove unnecessary def of N_HEADER_IN_TEXT,
1830         redefine TEXT_START_ADDR to be 0.
1831
1832 Sun Aug  1 22:54:08 1993  Stu Grossman  (grossman at cygnus.com)
1833
1834         * configure.host, configure.in, hosts/i386lynx.h:  Lynx/386
1835         host and target info.
1836
1837 Fri Jul 30 18:08:27 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1838
1839         * nlm32-i386.c: New file.  First cut at i386 NLM code.
1840         * libnlm.h: Added some more prototypes.
1841         (struct nlm_relent): New structure.
1842         (nlmNAME(symbol_type)): Added rcnt and relocs fields.
1843         (struct nlm_obj_tdata): Added new fields: nlm_symbols,
1844         nlm_text_low, nlm_data_low, nlm_reloc_fixups,
1845         nlm_reloc_fixup_secs.
1846         (struct nlm_backend_data): New structure, with accessor macros.
1847         * nlmcode.h: Use NLM_HIBIT rather than MSB.
1848         (nlm_object_p): Set SEC_RELOC for .text and .data.  Don't set
1849         SEC_DATA for .bss.  Set HAS_RELOC and HAS_SYMS for abfd.  Set the
1850         architecture.
1851         (nlm_swap_fixed_header_out, nlm_swap_variable_header_out,
1852         find_nonzero, nlm_swap_auxiliary_headers_out): New outbound
1853         swapping functions.
1854         (nlm_get_symtab_upper_bound, nlm_slurp_symbol_table): Include
1855         external references in symbol table as undefined symbols.
1856         (nlm_get_symtab, nlm_slurp_symbol_table): Fill in alocation
1857         argument in get_symtab rather than in slurp_symbol_table.
1858         (nlm_slurp_symbol_table): Save symbol information in tdata.
1859         (nlm_print_symbol): New function.
1860         (nlm_slurp_reloc_fixups, nlm_get_reloc_upper_bound,
1861         nlm_canonicalize_reloc): New functions to read relocs.
1862         (nlm_compute_section_file_positions, nlm_set_section_contents,
1863         nlm_external_reloc_compare, nlm_write_object_contents): New
1864         functions to create NLM files.
1865         * nlm-target.h: Define all the nlm functions here either as
1866         default values or in terms of nlmNAME.  Use JUMP_TABLE(nlm).  Set
1867         the backend_data field to TARGET_BACKEND_DATA.
1868         * nlm32-gen.c, nlm64-gen.c: Don't define function macros here;
1869         they are now in nlm-target.h.
1870         (TARGET_BACKEND_DATA): Define as NULL.
1871         * nlm.c (nlm_mkobject): Do allocate the tdata field.
1872         (nlm_set_arch_mach): New function.
1873         * targets.c: Added nlm32_i386_vec.
1874         * Makefile.in (BFD32_BACKENDS): Added nlm32-i386.o.
1875         (CFILES): Added nlm32-i386.c.
1876         (nlm32-gen.o, nlm64-gen.o): Depend on nlm-target.h.
1877         (nlm32-i386.o): New target.
1878
1879 Thu Jul 29 20:20:39 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
1880
1881         * hosts/sun3.h: remove some function decls that conflict w/ ANSI
1882         C, and aren't needed anyway (return int)
1883
1884 Wed Jul 28 15:46:38 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1885
1886         * elfcode.h: Use casts with bfd_alloc and alloca.
1887
1888 Tue Jul 27 12:51:43 1993  Fred Fish  (fnf@deneb.cygnus.com)
1889
1890         * nlm{32,64}-gen.c (JUMP_TABLE_PREFIX):  Delete.
1891         * nlm{32,64}-gen.c (JUMP_TABLE_INIT):  New macro that works with
1892         older cpp's, that don't do additional replacement on the JUMP_TABLE
1893         macro's argument.
1894         * nlm-target.h (JUMP_TABLE_INIT):  Use new macro in place of
1895         JUMP_TABLE macro.
1896
1897 Mon Jul 26 17:39:01 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1898
1899         Yet another trad-core variant:
1900         * config/esix.mh, hosts/esix.h: New files.
1901         * configure.hosts: Use them.
1902
1903 Mon Jul 26 13:22:15 1993  Ian Lance Taylor  (ian@cygnus.com)
1904
1905         * reloc.c (bfd_perform_relocation): Handle the case of
1906         complain_overflow_bitfield, rightshift > bitpos, and a negative
1907         number.
1908
1909 Mon Jul 26 14:40:10 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1910
1911         * elfcode.h: Reimplement segment writing.
1912         (elf_write_phdrs): Use precomputed e_phoff rather than making
1913         assumptions.
1914         (elf_build_phdrs): Disabled, for now.
1915         (assign_file_position_for_section): Don't change file offset for
1916         SHT_NOBITS.
1917         (assign_file_positions_for_symtab_and_strtabs): New function.
1918         (struct seg_info): New type.
1919         (map_program_segments): New function.
1920         (assign_file_positions_except_relocs): For executables, leave
1921         section headers &c for last, and properly align all sections with
1922         flag SHF_ALLOC set.
1923         (prep_headers): No longer abort when EXEC_P is set.
1924         (write_shdrs_and_ehdr): Deleted all code relating to program
1925         segments.
1926
1927         * elfcode.h (various): Deleted some unused code, and debugging
1928         "malloc(0)" calls.
1929         (write_relocs): Cache value of last symbol looked up, to save
1930         time if the symbol is referred to repeatedly.
1931         (elf_fake_sections): Check only SEC_RELOC flag, not number of
1932         relocs.
1933         (assign_section_numbers): Likewise.
1934
1935         * Makefile.in (ofiles): Stars in wildcards belong outside quotes.
1936
1937         * libelf.h (struct elf_backend_data): New field, maxpagesize.
1938         (struct elf_obj_tdata): New field, phdr.
1939         * elf32-target.h (elf32_bed): Initialize maxpagesize from
1940         ELF_MAXPAGESIZE.
1941         (ELF_MAXPAGESIZE): Default to 1.
1942         * elf64-target.h (elf64_bed, ELF_MAXPAGESIZE): Likewise.
1943         * elf32-sparc.c (ELF_MAXPAGESIZE): Define.
1944         (elf_sparc_howto_table): All relocs should have pcrel_offset=true.
1945         Most should have length field of `2'.
1946
1947         * reloc.c (bfd_perform_relocation): Handle 64-bit relocs.
1948
1949         * config/sparc-aout.mt (TARGET_BACKENDS): Define.
1950
1951 Mon Jul 26 08:56:16 1993  Ian Lance Taylor  (ian@cygnus.com)
1952
1953         * configure.in: Don't look in ${srcdir} for ${target_makefile_frag};
1954         the top level script has already adjusted for it.
1955
1956 Mon Jul 26 08:09:19 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1957
1958         * srec.c (srec_write_symbols):  Get CR LF in the right order.
1959
1960 Mon Jul 26 02:08:41 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
1961
1962         * hosts/vaxbsd.h: Include std-host.h.  Don't include <machine/param.h>.
1963
1964 Sat Jul 24 16:13:01 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1965
1966         * reloc.c (bfd_perform_relocation): Handle case of rightshift !=
1967         bitpos when overflow checking.
1968
1969 Fri Jul 23 10:20:27 1993  Doug Evans  (dje@canuck.cygnus.com)
1970
1971         * bfd.c (bfd_nonrepresentable_section, bfd_undefined_symbol,
1972         bfd_reloc_value_truncated, bfd_reloc_is_dangerous, bfd_assert):
1973         Send error messages to stderr.
1974
1975 Thu Jul 22 15:57:29 1993  Fred Fish  (fnf@deneb.cygnus.com)
1976
1977         * nlm{32,64}-target.h:  Remove.
1978         * nlm-target.h:  New file, merged from nlm{32,64}-target.h
1979         * libnlm.h (NLM_ARCH_SIZE):  Define to ARCH_SIZE.
1980         * nlm.c (ARCH_SIZE):  Remove define to zero.
1981         * nlm32-gen.c (ARCH_SIZE):  Define to 32.
1982         * nlm32-gen.c (JUMP_TABLE_PREFIX):  Define to nlm32.
1983         * nlm{32,64}-gen.c (nlm-target.h):  Include.
1984         * targets.c, libnlm.h, nlm.c, nlm{32,64}-gen.c, nlm{32,64}.c,
1985         nlmcode.h:  Convert prefixes from bfd_nlm<size> to just
1986         nlm<size>, and use macros select size.
1987
1988 Thu Jul 22 15:40:14 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
1989
1990         * Makefile.in (Makefile): add configure.in, drop redundant
1991           $(srcdir), drop redundant ./
1992
1993 Thu Jul 22 13:34:57 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1994
1995         * hpux-core.c: New file; backend for HP/UX style core files.
1996         * bfd.c (struct _bfd): Renamed hppa_core_data field to
1997         hpux_core_data.
1998         * bfd-in2.h: Updated.
1999         * hppa.c (make_bfd_asection, hppa_core_file_p,
2000         hppa_core_file_failing_command, hppa_core_file_failing_signal,
2001         hppa_core_file_matches_executable_p): Moved into hpux-core.c.
2002         Removed from target vector.
2003         * libhppa.h (struct hppa_core_struct and accessor macros): Moved
2004         into hpux-core.c.
2005         * targets.c: If HPUX_CORE is defined, add hpux_core_vec to
2006         target list.
2007         * config/hp300.mh (HDEFINES): Set to -DHPUX_CORE.
2008         (HDEPFILES): Set to hpux-core.o.
2009         * config/hppabsd.mh, config/hppahpux.mh: Likewise.
2010         * hosts/hp300.h (HOST_HP300HPUX): Define.
2011         * Makefile.in (OPTIONAL_BACKENDS): Added sco-core.o,
2012         aix386-core.o, hpux-core.o.
2013         (sco-core.o, aix386-core.o, hpux-core.o): New dependencies.
2014
2015         * reloc.c (enum complain_overflow): New enumeration with the
2016         various flavours of overflow checking.
2017         (srtuct reloc_howto_struct): Changed complain_on_overflow field
2018         from boolean to emum complain_overflow.  Removed obsolete absolute
2019         field.
2020         (HOWTO): Removed absolute argument.
2021         (bfd_perform_relocation): Do overflow checking on all types of
2022         fields.
2023         * bfd-in2.h: Updated accordingly.
2024         * all targets: Updated initialization of reloc howto tables.
2025
2026 Wed Jul 21 20:34:34 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2027
2028         * opncls.c (bfd_create): Don't use C++ keyword "template" as a C
2029         variable name.
2030
2031 Tue Jul 20 15:02:23 1993  Fred Fish  (fnf@deneb.cygnus.com)
2032
2033         * coff-m68k.c (m68k_howto2rtype):  Make arg CONST to match callers.
2034
2035         * elfcode.h:  Fix several illegal pointer combination warnings for
2036         usages of bfd_alloc and alloca.
2037
2038         * libnlm.h (nlm_obj_tdata):  Rename hidden struct members to avoid
2039         apparent Sun C preprocessor recursion.  Fix access macros.
2040         * nlmcode.h:  Remove spurious '&' before several array references.
2041
2042 Tue Jul 20 14:36:27 1993  Jim Kingdon  (kingdon@deneb.cygnus.com)
2043
2044         * Rename for DOS uniqueness: coff-m68k-un.c -> coff-u68k.c
2045         config/m68k-coffun.mt -> u68k-coff.mt.
2046         * Makefile.in, configure.in: Corresponding changes.
2047
2048 Tue Jul 20 16:21:52 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2049
2050         * elf32-sparc.c (elf_sparc_howto_table): Don't use "&" before
2051         function name; it's valid without, and some compilers give
2052         warnings with it there.
2053
2054 Tue Jul 20 08:21:15 1993  Fred Fish  (fnf@deneb.cygnus.com)
2055
2056         * bfd-in.h:  Apply some of the changes that were made to bfd-in2.h.
2057         * bfd.c (union tdata):  Add nlm_obj_data;
2058         * targets.c (enum target_flavour):  Add bfd_target_nlm_flavour.
2059
2060 Mon Jul 19 20:46:18 1993  Fred Fish  (fnf@deneb.cygnus.com)
2061
2062         * configure.in (*-*-netware, i[34]86-*-netware):  New configs.
2063         * Makefile.in (BFD32_BACKENDS):  Add nlm.o, nlm32.o, nlm32-gen.o.
2064         * Makefile.in (BFD64_BACKENDS):  Add nlm64.o, nlm64-gen.o.
2065         * Makefile.in (CFILES):  Add nlm{32,64}.c, nlm{32,64}-gen.c.
2066         * Makefile.in (nlm.o, nlm{32,64}.o, nlm{32,64}-gen.o:  New targets.
2067         * bfd-in2.h (INLINE):  Defines moved here.
2068         * {aoutx.h, elf.c, elfcode.h}:  Move INLINE defines to bfd-in2.h.
2069         * libelf.h (CAT4):  Move define to bfd-in2.h.
2070         * bfd-in2.h (CAT4):  Merge CAT4 macro with other CAT macros.
2071         * bfd-in2.h (union tdata):  Add nlm_obj_data.
2072         * bfd-in2.h (enum target_flavour):  Add bfd_target_nlm_flavour.
2073         * targets.c (bfd_nlm{32,64}_{big,little}_vec):  Add prototypes.
2074         * targets.c (target_vector):  Add bfd_nlm{32,64}_{big,little}_vec.
2075         * (libnlm.h, nlm.c, nlmcode.h, nlm{32,64}-gen.c,
2076         nlm{32,64}-target.h, nlm{32,64}.c, config/i386-nlm.mt):  New files
2077         for NLM support.
2078
2079 Mon Jul 19 15:09:01 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
2080
2081         * configure.{hosts,in}: add i[34]86-*-lynxos* support
2082
2083 Mon Jul 19 14:53:30 1993  Ken Raeburn  (raeburn@rtl.cygnus.com)
2084
2085         * elf.c, elfcode.h, libelf.h: Serious reorganization.
2086         Deleted `thunk' structure, merged into tdata, duplicate data
2087         eliminated.
2088         Rearranged functions, grouping by functionality.
2089         Broke up many functions in elfcode.h, re-ordered many parts of
2090         file writing to handle unpredictable state of section relocation
2091         table as provided by various applications.
2092         Still needs cleanup: Merge functions back together, split out
2093         data structure with only data that is used only when writing out
2094         object file.
2095
2096         * elf.c (bfd_elf_generic_reloc): New function, taken from
2097         coff-mips.c.
2098         * elf32-sparc.c (elf_sparc_howto_table): Use it, to work around
2099         bfd_perform_relocation lossage.
2100
2101         * Makefile.in (BFD_LIBS): Include coff-mips.o and coff-msym.o, so
2102         that gdb will link.
2103         (ofiles): Don't use sort or uniq; do it with sh constructs.
2104
2105 Sun Jul 18 19:42:14 1993  Jim Kingdon  (kingdon@rtl.cygnus.com)
2106
2107         * coffcode.h: Recognize I386PTXMAGIC.
2108         * aoutf1.h, libaout.h: Add M_386_DYNIX.
2109         * trad-core.c (TRAD_CORE_USER_OFFSET, TRAD_CORE_STACK_FILEPOS):
2110         New macros; use it if defined.
2111         * config/symmetry.mh, hosts/symmetry.h: New files.
2112
2113 Fri Jul 16 14:56:31 1993  Jim Kingdon  (kingdon@rtl.cygnus.com)
2114
2115         * Rename elf{32,64}-generic.c to *-gen.c for 14 char filenames.
2116         * Makefile.in: Change accordingly.
2117         (CFILES): Add elf64-gen.c.
2118
2119 Fri Jul 16 09:53:23 1993  Ian Lance Taylor  (ian@cygnus.com)
2120
2121         * coff-mips.c: Use MIPS_AOUT_{OZ}MAGIC rather than {OZ}MAGIC.
2122
2123 Thu Jul 15 16:02:07 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
2124
2125         * coff-m88k.c (howto_table): Corrected bitsize for R_PCR26L from
2126         16 to 26.
2127
2128 Wed Jul 14 15:29:56 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2129
2130         * hppa.c [HOST_HPPABSD]: Use hpux-style core files.
2131         * libhppa.h [HOST_HPPABSD]: Include hpux version of core.h
2132
2133 Wed Jul 14 09:30:48 1993  Doug Evans  (dje@canuck.cygnus.com)
2134
2135         * configure.in: Recognize h8300h-*-*.
2136
2137 Tue Jul 13 12:03:00 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
2138
2139         * coff-h8500.c (reloc_processing, rtype2howto): New relocation
2140         type R_H8500_HIGH_16.
2141         * coff-sh.c (r_imm32): Get the width of the reloc right.
2142
2143 Tue Jul 13 16:48:56 1993  Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
2144
2145         * configure.in: Add new target m68k-coffun to the dpx/2.
2146         * config/m68k-coffun.mt: New file, renamed from config/dpx2.mt.
2147
2148 Mon Jul 12 10:42:49 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
2149
2150         * reloc.c (enum bfd_reloc_code_real): Move SPARC_BASE13 reloc into
2151         sparc-aout-specific list.
2152
2153         * libelf.h (struct elf_obj_tdata): Add field `thunk'.
2154
2155         * config/sparc-elf.mt (TARGET_BACKENDS): New make variable.
2156
2157 Thu Jul  1 14:52:47 1993  Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr)
2158                           and Jim Kingdon (kingdon@cygnus.com)
2159
2160         * elfcode.h: Use memset not bzero.
2161         * trad-core.c: Don't include <sys/file.h>.
2162         * i386linux.h: Include <sys/file.h>.
2163         * coff-m68k-un.c: new file to handle names with underscores on
2164         svr3 machines.
2165         * coff-m68k.c (m68k_rtype2howto): added #ifdef ONLY_DECLARE_RELOCS
2166         to not duplicate the function in the executable.
2167         (TARGET_SYM, TARGET_NAME, NAMES_HAVE_UNDERSCORE): new macros needed
2168         by coff-m68k-un.c.
2169         * coffcode.h (MC68KBCSMAGIC): case added.
2170         * targets.c: Add m68kcoffun_vec.
2171         * configure.host: added support for Bull dpx/2.
2172         * config/dpx2.mh, hosts/dpx2.h: new files.
2173         * Makefile.in: added target coff-m68k-un.
2174
2175 Fri Jul  9 00:43:06 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2176
2177         * aoutf1.h: Add definition of MACHTYPE_OK.
2178
2179 Thu Jul  8 14:37:44 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
2180
2181         * reloc.c (bfd_perform_relocation): Don't subtract the addend
2182         again for coff.
2183
2184         * syms.c, bfd-in2.h: Doc fix.
2185
2186         * coffcode.h (CALC_ADDEND): Check for common section using the
2187         section flag as well as the symbol flag.
2188
2189 Thu Jul  8 13:43:52 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2190
2191         * hosts/i386bsd.h: Conditionalize HOST_STACK_END_ADDR on __bsdi__.
2192         i386bsd.c: Remove defines of N_TXT*; the versions in aout64.h should
2193         be sufficient.  Define TEXT_START_ADDR.
2194
2195 Wed Jul  7 10:56:21 1993  Ian Lance Taylor  (ian@cygnus.com)
2196
2197         * aoutx.h (translate_from_native_sym_flags): Removed statep
2198         argument.  Just let an indirect symbol point to the next symbol
2199         without forcing the next symbol to be undefined.  Changed all
2200         callers.
2201         * hp300hpux.c (slurp_symbol_table): Changed call to
2202         translate_from_native_sym_flags.
2203         * targets.c: Added hp300hpux_vec.
2204         * Makefile.in (hp300hpux.o): Added dependencies.
2205
2206 Tue Jul  6 13:24:55 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2207
2208         * reloc.c (enum bfd_reloc_code_real): Put simple power-of-two
2209         relocs together, and add 64-bit versions.
2210         (bfd_generic_get_relocated_section_contents): Argument to alloca
2211         is size_t.
2212
2213         * libbfd.c (bfd_xmalloc_by_size_t): New function.
2214         * opncls.c (bfd_cache_init, bfd_open_file): Add prototypes to
2215         declarations.
2216         (obstack_chunk_alloc): Use bfd_xmalloc_by_size_t.
2217         (new_bfd): Prototype-style definition, using DEFUN.
2218         (bfd_alloc_grow, bfd_alloc, bfd_zalloc, bfd_realloc): Size
2219         argument is type size_t, not bfd_size_type.
2220         * ieee.c (obstack_chunk_alloc): Use bfd_xmalloc_by_size_t.
2221         * bfd.c (bfd_default_error_trap, bfd_error_trap,
2222         bfd_error_nonrepresentabltrap): Prototypes.
2223         * libbfd-in.h (bfd_alloc, bfd_zalloc, bfd_realloc,
2224         bfd_alloc_grow): Adjusted prototypes for arg type change.
2225         * archive.c (get_elt_at_filepos, do_slurp_bsd_armap, normalize,
2226         do_slurp_coff_armap, bfd_construct_extended_name_table):
2227         Prototypes.
2228         * elfcode.h (elf_string_from_elf_strtab): Prototypes.
2229         * libelf.h (elf_string_from_elf_section, elf_get_str_section):
2230         Prototypes.
2231
2232         * Makefile.in (ALL_MACHINES): Renamed from BFD_MACHINES.
2233         (ofiles): New target.  Build a list of unique file names, in case
2234         any got duplicated.
2235         (TARGETLIB): Use list of files from ofiles.
2236         * configure.in: Set BFD_MACHINES and BFD_BACKENDS depending on
2237         minimal-bfd flag and target makefile frag contents.
2238
2239         * elfcode.h (elf_read): Delete static declaration, since function
2240         has moved.
2241         (elf_map_symbols): Write out section symbols for all sections, for
2242         now.
2243         (elf_symbol_from_bfd_symbol): Allow match if both symbols are
2244         section symbols for the same section.
2245         (elf_find_nearest_line): Don't print message, just return false.
2246
2247         * libelf.h (bfd_elf_locate_sh): Declaration deleted.
2248
2249 Mon Jul  5 16:48:11 1993  Doug Evans  (dje@canuck.cygnus.com)
2250
2251         * cpu-h8300.c (h8300_scan): Fix parsing of architecture string.
2252
2253 Fri Jul  2 18:27:00 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2254
2255         * Makefile.in (clean): Remove bfd.h and stmp-bfd.h.
2256         (realclean): Remove generated headers.
2257
2258 Fri Jul  2 14:51:51 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
2259
2260         * section.c (bfd_set_section_content):  Deny if file is not opened with
2261         the proper mode, set output_has_begun if file is openened for update.
2262         * aoutx.h (aout_*_set_section_content):  Remove checks that are now
2263         done in bfd_set_section_content.
2264
2265 Fri Jul  2 09:25:20 1993  Ian Lance Taylor  (ian@cygnus.com)
2266
2267         * hosts/std-host.h: Removed declarations of printf, fprintf,
2268         fcntl, fread and fwrite.  They are all error prone for one reason
2269         or another.  Changed declaration of memchr from char * to PTR.
2270
2271         * configure.in (mips-*-riscos*): New target; use riscos.
2272         * configure.host (mips-*-riscos*): New host; use riscos.
2273         * config/riscos.mh (HDEFINES): Add -G 4.
2274
2275         * libaout.h (GET_SWORD): Use the bfd_h_get_signed entry points
2276         rather than casting the result of bfd_h_get.
2277
2278 Fri Jul  2 10:13:48 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2279
2280         * configure.in, hosts/delta68.h, config/delta68.mh: Add stuff for
2281         Motorola Delta 68.
2282
2283 Wed Jun 30 06:02:43 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2284
2285         * targets.c (bfd_elf64_{big,little}_generic_vec): Declare, and
2286         include in search list if BFD64 is defined.
2287
2288         * libelf.h (CAT4): Added a version for Saber-C, ANSI mode.
2289         (bfd_elf64_*): Declarations for 64-bit versions of many routines.
2290
2291 Tue Jun 29 22:50:59 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2292
2293         * elf64-target.h, elf64-generic.c: New files.
2294         * Makefile.in (BFD64_BACKENDS): Include elf64-generic.o.
2295         (elf64-generic.o): List dependencies.
2296
2297         * Makefile.in: List target `all' explicitly before host/target
2298         makefile fragments are included, in case they define any new
2299         targets.
2300
2301         * elfcode.h (ELF_R_INFO, ELF_R_SYM): Define as 32- or 64-bit
2302         versions as appropriate.  Uses updated.
2303         (elf_debug_section): Declare before use.
2304         (elf_debug_file): New function.
2305         (bfd_section_from_shdr, bfd_shdr_from_section, elf_fake_sections):
2306         Alignment value in section header is n_bytes, not log2.
2307         (new_section_hook): Do nothing for now.
2308         (bfd_section_from_shdr): Use Elf_External_Rel[a], not 32-bit
2309         version explicitly.
2310         (elf_core_file_p): Simplify check for correct class (word size).
2311         (elf_make_sections, elf_fake_sections, elf_write_object_contents):
2312         Initialize all fields when creating data structures.
2313         (elf_locate_sh): Renamed from bfd_elfXX_locate_sh, made static.
2314         (elf_compute_section_file_positions): Set correct class in output
2315         file.
2316         (elf_write_object_contents): Section symbols have empty names in
2317         output file.
2318
2319         * libbfd.c (bfd_xmalloc, zalloc): Be sure to cast malloc, memset
2320         args to size_t before call.
2321         (bfd_add_to_string_table): Cast zalloc arg to bfd_size_type.
2322
2323 Tue Jun 29 10:49:42 1993  Ian Lance Taylor  (ian@cygnus.com)
2324
2325         * coff-mips.c (ecoff_find_nearest_line): If procedure has no line
2326         number information, return 0 for line number.
2327
2328 Mon Jun 28 10:45:02 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2329
2330         * aoutx.h (some_aout_object_p): If *oldrawptr is non-NULL, copy it
2331         into *rawptr.
2332
2333 Sun Jun 27 09:05:19 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2334
2335         * hosts/riscos.h: Define NBPG and UPAGES.
2336
2337 Sun Jun 27 16:28:26 1993  Ken Raeburn  (raeburn@cygnus.com)
2338
2339         * elfcode.h (elf_slurp_symbol_table): Don't use obj_raw_syms as
2340         lvalue; it contains a cast.
2341
2342 Fri Jun 25 17:09:55 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
2343
2344         * aoutx.h (hash, compare, struct stringtab_entry, add_to_stringtab):
2345         Use unsigned hash values for better hashing.
2346         (hash): Hash in the string length for long strings.
2347
2348 Thu Jun 24 15:47:51 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
2349
2350         * aoutx.h (compare): Replace 3 if's with a subtraction.
2351         (translate_to_native_sym_flags, add_to_stringtab): Reorder tests
2352         in decreasing order of success, as an optimization.
2353         (hash): Take a length arg; ignore chars after #25, for speed.
2354         (add_to_stringtab): Pass length to hash.
2355
2356 Thu Jun 24 17:25:51 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
2357
2358         * elf32-sparc.c (sparc_reloc_map): Add SPARC_WDISP22 reloc.
2359
2360         * elfcode.h (elf_new_section_hook): Do nothing for now.
2361         (elf_write_object_contents): Output common symbols the way ELF
2362         wants them.
2363
2364 Wed Jun 23 16:20:07 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
2365
2366         * libelf.h (struct elf_obj_tdata and associated macros): Moved
2367         here from elfcode.h.  A couple of size-specific structure pointers
2368         were changed to PTR; uses fixed appropriately.
2369         (elf32_symbol_type, elf64_symbol_type): Separated definitions.
2370         (bfd_elf_mkobject): Renamed from bfd_elf32_mkobject.
2371         (bfd_elf32_mkobject, bfd_elf64_mkobject, elf_mkobject): New
2372         temporary macros to ease name change.
2373         * elf.c (elf_read, elf_mkobject, elf_get_str_section,
2374         elf_string_from_elf_section, bfd_elf_find_section): Moved here
2375         from elfcode.h.
2376         * doc/Makefile.in (libbfd.h): Process elf.c too.
2377         * Makefile.in (elf.o): Note new dependencies.
2378
2379         * elfcode.h: Lots of stuff moved elsewhere.  Deleted some unused
2380         code, tweaked some debug hooks.
2381         (elf_slurp_reloca_table): Translate ELF section symbols into BFD
2382         section symbols.
2383
2384 Wed Jun 23 11:34:21 1993  Jim Kingdon  (kingdon@cygnus.com)
2385
2386         * hosts/riscos.h: New file.
2387
2388 Tue Jun 22 14:35:20 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
2389
2390         * elfcode.h (bfd_section_from_shdr, case SHT_PROGBITS): Even if
2391         section already exists, use its pointer to fill in rawdata slot.
2392
2393 Tue Jun 22 16:36:51 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2394
2395         * hosts/std-host.h: Return value of puts and fputs is int not void.
2396
2397 Tue Jun 22 14:25:58 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
2398
2399         * aoutx.h (howto_table_ext): Comment the field names.
2400         * reloc.c (bfd_perform_relocation): Fix max and min values.
2401
2402 Mon Jun 21 18:19:14 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
2403
2404         * elf32-target.h, elf32-hppa.c, elfcode.h: Use new
2405         size-independent elf internal data structures.
2406         * elfcode.h (put_word, get_word): Define as appropriate for
2407         architecture word size.  Structure swapping functions changed to
2408         use them as appropriate.
2409
2410         * configure.in: If compiling 64-bit back ends, do them before
2411         32-bit ones.
2412
2413         * libelf.h: Use new size-independent versions of elf internal data
2414         structures.
2415         (symbol_type): Reordered to put any fields dependent on target
2416         size at the end.
2417         (elf_backend_data): Renamed from elf##_backend_data and made
2418         size-independent.
2419         (elf_sect_thunk): Now size-independent.
2420
2421         * libbfd.c (bfd_log2): Now returns unsigned int.
2422
2423 Mon Jun 21 12:30:47 1993  Jim Kingdon  (kingdon@cygnus.com)
2424
2425         * Rename config/m88k-aout.mt to config/noop.mt.
2426         configure.in: Use it for mips-*-bsd*.
2427
2428 Sun Jun 20 20:32:19 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
2429
2430         * cpu-m68k.c (arch_info_struct): Eliminate "partially bracketed
2431         initializer" warning from gcc.
2432         * cpu-h8500.c (arch_info_struct): Likewise.
2433         * cpu-sh.c (arch_info_struct): Likewise.
2434
2435         * cpu-h8300.c (local_bfd_reloc_type_lookup, howto*_callback,
2436         howto_*): Unused functions and variables commented out.
2437         * cpu-z8k.c (local_bfd_reloc_type_lookup, howto*_callback,
2438         howto_*): Likewise.
2439         * cpu-h8500.c (compatible): Likewise.
2440         * cpu-sh.c (compatible): Likewise.
2441
2442         * hp300hpux.c (swap_std_reloc_in): Delete unused variables.
2443         Always set a valid length value, even for invalid input.
2444
2445         * srec.c (srec_write_symbols): Use sprintf_vma.
2446
2447         * bfd-in.h (uint64_typeLOW, uint64_typeHIGH, int64_type,
2448         uint64_type): Provide default definitions.
2449         * hosts/std-host.h (int64 stuff): Remove them from here.
2450
2451         * bfd-in.h (sprintf_vma): Define parallel to fprintf_vma.
2452
2453         * elf32-i386.c (elf_i386_reloc_type_lookup): Delete unused
2454         variable.  Added default case to switch.
2455
2456         * aoutx.h (translate_from_native_sym_flags): Before casting
2457         pointers to integers, make sure the integer type is wide enough.
2458         * coff-mips.c (ecoff_set_symbol_info): Ditto.
2459
2460         * section.c (bfd_get_section_contents): Since `count' is unsigned,
2461         don't bother comparing for less-than-zero.
2462         (bfd_set_section_contents): Ditto.
2463
2464         * elfcode.h (bfd_add_to_strtab): Now static.
2465         (sym_is_global): New function.
2466         (elf_map_symbols): Call it.  Now returns void.  Removed unused
2467         local variable.
2468         (bfd_section_from_shdr): Mark string tables other than for section
2469         and symbol names as normal sections having contents.
2470         (fix_up_strtabs): New function; fixes up ELF header fields for
2471         stab sections with string tables associated.
2472         (elf_write_object_contents): Map fix_up_strtabs over all BFD
2473         sections.  Reordered condition tests for symbol flags; default to
2474         local-object value instead of global-object.
2475         (elf_symbol_from_bfd_symbol): Hid conditionally-used variable
2476         inside condition test.
2477         (elf_print_symbol): Use fprintf_vma.
2478         (elf_idx_of_sym, bfd_shdr_from_section): Unused functions
2479         commented out.
2480
2481         * bfd-in.h (int64_type, uint64_type): Define these if we fall
2482         back to "long long" for HOST_64_BIT.
2483
2484         * libelf.h (elfNAME, ElfNAME): New versions to get desired results
2485         without using invalid ANSI C preprocessing tokens.
2486
2487         * elf32-target.h (bfd_elf32_new_section_hook): Delete macro.
2488         * libelf.h (bfd_elf32_new_section_hook): Declare.
2489         * elfcode.h (new_section_hook): Define here.
2490
2491         * hosts/sparc.h, hosts/std-host.h, hosts/i386bsd.h: Protect
2492         against multiple inclusions.
2493
2494         * hosts/news.h: Include hosts/std-host.h, not plain std-host.h.
2495
2496         * Makefile.in (bfd.h): Generate into current directory by grabbing
2497         64-bit definition (if any) from sysdep.h.
2498         * bfd-in.h: Put in marker for sysdep.h inclusion.
2499
2500 Fri Jun 18 19:57:23 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
2501
2502         * reloc.c (bfd_perform_relocation): Check for overflow on
2503         pc-relative relocations if the howto asked for it.
2504
2505 Fri Jun 18 16:00:20 1993  Jim Kingdon  (kingdon@cygnus.com)
2506
2507         * Makefile.in (stmp-bfd.h): Ignore nonzero exit status from grep.
2508
2509 Fri Jun 18 16:54:29 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2510
2511         * config/riscos.m{h,t}: New files.
2512         * configure.{host,in}: Use them.
2513
2514 Fri Jun 18 12:55:10 1993  K. Richard Pixley  (rich@cygnus.com)
2515
2516         * elf32-mips.c: comment change.  This is a mips file, not 88k.
2517
2518 Mon Jun 14 14:02:41 1993  Jim Kingdon  (kingdon@cygnus.com)
2519
2520         * cache.c (bfd_cache_init): Increment open_files and call close_one
2521         if necessary.
2522         (bfd_open_file): Don't increment open_files here.
2523
2524 Fri Jun 18 10:00:14 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2525
2526         * config/delta88.mh: Don't set CC.
2527
2528         * Makefile.in: Add elf32-{mips,m88k,generic}.
2529         elf32-{mips,m88k,generic}.c: New files.
2530         targets.c (target_vector): Include bfd_elf32_{mips,m88k,generic}_vec.
2531         elfcode.h (elf_object_p): Match elf32-generic for all machines which
2532         don't match a different target.
2533
2534 Fri Jun 18 03:12:12 1993  John Gilmore  (gnu@cygnus.com)
2535
2536         Eliminate "int8_type", "int16_type", "int32_type", and their
2537         variants from the BFD universe.  Leave the 64-bit types for now,
2538         since they are in flux.
2539
2540         * aoutx.h, hp300hpux.c:  Eliminate needless (int32_type) casts.
2541         * libaout.h (GET_SWORD):  Convert (int32_type) to (int).
2542         * ieee.c:  Convert uint8e_type => unsigned char.
2543         * oasys.c:  Extensive changes to eliminate obsolete types.
2544         These depend on changes in ../include/oasys.h as well.
2545         * hosts/*.h:  Remove declarations of all these types.
2546
2547 Mon Jun 14 14:02:41 1993  Jim Kingdon  (kingdon@cygnus.com)
2548
2549         * hosts/delta88.h: #if 0 out some declarations which conflict with
2550         system headers.
2551
2552 Mon Jun 14 17:08:18 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
2553
2554         * Makefile.in (install): remove parentdir cruft
2555
2556 Mon Jun 14 19:04:09 1993  Stu Grossman  (grossman@cygnus.com)
2557
2558         * hppa.c (hppa_get_symbol_info):  Remove redundant copy.
2559         * Expurgate random DEFUNs that have crept in.
2560
2561 Mon Jun 14 10:23:53 1993  Ian Lance Taylor  (ian@cygnus.com)
2562
2563         * coff-mips.c (ecoff_set_symbol_info): Constructor sections should
2564         only be aligned to a 4 byte boundary.
2565
2566 Sat Jun 12 16:13:17 1993  Jim Kingdon  (kingdon@cygnus.com)
2567
2568         * hosts/std-host.h (struct int64e_struct): Remove needless typedef
2569         keyword.
2570
2571 Fri Jun 11 14:25:34 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
2572
2573         * aoutf1.h (sunos4_write_object_contents): set flags to 1, breaking
2574         1927 but fixing some other important things.
2575
2576 Thu Jun 10 20:36:22 1993  Doug Evans  (dje@canuck.cygnus.com)
2577
2578         * hosts/std-host.h (int64e_type): Fix definition.
2579
2580 Thu Jun 10 11:48:28 1993  Ian Lance Taylor  (ian@cygnus.com)
2581
2582         * coff-mips.c (ecoff_sec_to_styp_flags): Use STYP_MIPS_INIT for
2583         section named _INIT.  Don't set STYP_TEXT unless SEC_CODE is set.
2584         (ecoff_styp_to_sec_flags): Treat a STYP_MIPS_INIT section like
2585         a STYP_TEXT section.
2586
2587 Wed Jun  9 16:48:13 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2588
2589         * Makefile.in (install, headers): don't put comments after a tab
2590         in the actions section of a rule
2591
2592 Wed Jun  9 15:00:01 1993  Ian Lance Taylor  (ian@cygnus.com)
2593
2594         * coff-mips.c (ecoff_mkobject_hook): Mark ZMAGIC files as D_PAGED.
2595         (ecoff_write_object_contents): If not D_PAGED, don't add the
2596         section headers to text_size.  If not D_PAGED, set the magic
2597         number to OMAGIC rather than ZMAGIC.  If creating a D_PAGED
2598         executable, the executable must fully occupy an even number of
2599         pages.
2600         (ecoff_set_symbol_info, make_bfd_asection, ecoff_little_vec,
2601         ecoff_big_vec): Consistently set section alignment power to 4,
2602         since ECOFF sections should be multiples of 16 bytes.
2603         (ecoff_little_vec, ecoff_big_vec): Added D_PAGED to object_flags.
2604         Made ar_pad_char and ar_max_namelen agree for both.
2605
2606 Tue Jun  8 20:28:02 1993  Mark Eichin  (eichin at tweedledumber)
2607
2608         * elfcode.h (elf_slurp_symbol_table): subtract section vma from
2609         symbol value, since bfd symbols are section relative, but ELF
2610         symbols aren't.
2611
2612 Tue Jun  8 12:08:27 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
2613
2614         * cpu-i960.c, cpu-h8300.c (compatible): Make static.
2615
2616 Tue Jun  8 14:27:56 1993  Jim Kingdon  (kingdon@rtl.cygnus.com)
2617
2618         * hosts/news.h, config/news.mh: New files.
2619
2620 Tue Jun  8 12:08:27 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
2621
2622         * bfd-in2.h, archures.c (bfd_mach_h8300[h]): new defines.
2623         * coff-h8300.c: More addressing modes.
2624         * coffcode.h (coff_set_arch_mach_hook): Cope with H8300 magic
2625         number.
2626         * cpu-h8300.c: Removed disassemble stuff. (h8300_scan): Recognise
2627         H8/300H name. (compatible): New function.
2628         * reloc16.c (bfd_coff_reloc16_get_relocated_sec): Cope with more
2629         addressing modes.
2630
2631 Tue Jun  8 10:30:13 1993  Ian Lance Taylor  (ian@cygnus.com)
2632
2633         * coff-mips.c (ecoff_compute_section_file_positions,
2634         ecoff_write_object_contents): Only round to page boundaries if
2635         D_PAGED flag is set for the output BFD.
2636
2637 Fri Jun  4 15:47:52 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
2638
2639         * coffcode.h (get_index, coff_slurp_symbol_table): Fix pointer
2640         casts to work on machine where sizeof(long) != sizeof(int) !=
2641         sizeof(char *).
2642         * coffgen.c (coff_get_normalized_symtab): Ditto.
2643         * cpu-h8300.c coff-h8300.c: Support for H8/300-H.
2644
2645 Fri Jun  4 15:24:27 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2646
2647         * coffgen.c (coff_write_symbols): For empty string table, write
2648         out 4 in correct byte order.  (from minyard@bnr.ca)
2649
2650         * elf32-hppa.c: Don't include libhppa.h for now; define
2651         BYTES_IN_WORD instead, until Utah sends a better fix.
2652         (hppa_elf_build_arg_reloc_stub): Use xmalloc and xrealloc instead
2653         of malloc and realloc.
2654
2655 Fri Jun  4 07:49:01 1993  Ian Lance Taylor  (ian@cygnus.com)
2656
2657         * configure.in (mips-*-ecoffl*): New target; use decstation.
2658         (mips-*-ecoff*): Added trailing '*'.
2659
2660         * coff-mips.c (ecoff_get_debug): Get the offset from the first PDR
2661         for the FDR, not from the first PDR in the file.
2662
2663 Thu Jun  3 16:41:10 1993  Stu Grossman  (grossman@cygnus.com)
2664
2665         * hppa.c (hppa_get_symbol_info):  New func needed for JUMP_TABLE.
2666
2667 Thu Jun  3 15:33:57 1993  David J. Mackenzie  (djm@rtl.cygnus.com)
2668
2669         * hppa.c (hppa_get_symbol_info): New function.
2670
2671 Thu Jun  3 13:07:42 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2672
2673         * elfcode.h (elf_map_symbols): Don't crash if no symbols have been
2674         allocated yet.
2675
2676         From Peter Hoogenboom (hoogen@schafer.cs.utah.edu):
2677         * libhppa.h (MAXCOMLEN): Define unconditionally.
2678         (_PA_RISC_ID): Only define if not already defined.
2679         * elf32-hppa.c: Include libhppa.h.
2680
2681         From Ralph Campbell:
2682         * hosts/mipsbsd.h (HOST_DATA_START_ADDR): Delete definition.
2683
2684         * elf32-hppa.h (symext_rootP, symext_lastP): Delete decls.
2685
2686 Thu Jun  3 00:23:53 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
2687
2688         * config/go32.mh: define EXTRALIBES to -lm (for binutils), also
2689         remove defines of __MSDOS__ and __GO32__ (these are in the
2690         compiler now).
2691
2692 Wed Jun  2 17:57:13 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2693
2694         From Utah:
2695         * hosts/hppabsd.h: Eliminate use of obsolete EXFUN.
2696         * config/hppabsd.mh: Don't use ranlib.
2697
2698 Tue Jun  1 04:15:57 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2699
2700         * elf.c: New file, for word-size independent code.
2701         * elfcode.h (elf_hash): Moved to there, renamed bfd_elf_hash.
2702         * Makefile.in: Include elf.o in standard objects.
2703
2704         * bfd-in.h (CAT3): Define here.
2705         * libaout.h, libelf.h: Not here.
2706
2707         * libelf.h (struct strtab): Define here.
2708         (bfd_elf_locate_sh): Declare here.
2709         * elfcode.h (struct strtab): Definition deleted.
2710
2711         * reloc.c (enum bfd_reloc_code_real): Added HPPA_PCREL_CALL_12.
2712
2713         * Makefile.in: Make "all", not "bfd.h", be the default target.
2714         (stmp-bfd.h): New target; prevents rebuilding world if bfd.h
2715         hasn't really changed.
2716
2717         Tue May 25 12:15:15 1993  Michael Meissner  (meissner@osf.org)
2718
2719         * elfcode.h (elf_hash): Provide elf standard hash function.
2720         (various): Key off of the machines use_rela_p field to determine
2721         whether to use REL or RELA relocations.
2722         (elf_swap_reloc_out, elf_swap_reloc_in): New functions.
2723         (elf_make_sections): Allocate a pointer to hold all data for a
2724         given section, and copy each fragment into the data region.
2725         Update the section's pointer with the REL implicit addends if the
2726         machine uses REL relocation.
2727
2728         * elf32-i386.c (elf_bfd_reloc_type_lookup): Rename to
2729         elf_i386_bfd_reloc_type_lookup, and use cpp to map the name back
2730         into was elf32-target.h expects.
2731         (elf_info_to_howto): Rename to elf_i386_info_to_howto.
2732         (elf_i386_bfd_reloc_type_lookup): Add relocation support.
2733         (elf_i386_info_to_howto): Add minimal relocation support.
2734
2735         * libelf.h (elf_backend_data): Add use_rela_p, elf_64_p,
2736         elf_info_to_howto_rel fields.
2737
2738         * elf32-target.h (elf_bed): Add support for new fields in
2739         elf_backend_data.
2740
2741         Sun May 30 16:38:24 1993  Peter Hoogenboom  (hoogen@fast.cs.utah.edu)
2742
2743         * elf32-hppa.c: Add symbol extension section support, fix
2744         relocation howto table, add stub generation support.
2745
2746         * elf32-hppa.h: Add symbol extension section support, fix
2747         relocation howto table, add stub generation support.
2748
2749         * elfcode.h (bfd_elf_locate_sh): New function to locate ELF
2750         section header.
2751
2752         * elfcode.h (bfd_add_to_strtab): Made non-static due to a call
2753         from elf32-hppa.c.
2754
2755         * elfcode.h (elf_idx_of_sym): Return STN_UNDEF instead of 0 when
2756         the symbol is not found.
2757
2758         * elfcode.h (elf_compute_section_file_positions): Not all section
2759         file positions were computed.
2760
2761         * elfcode.h (elf_get_sect_thunk): New function.
2762
2763         * hppa.c (sign_ext): Reimplement.
2764
2765         * hppa.c (round_down,round,round_up,L,R,LS,RS,LD,RD,LR,RR): Make
2766         these functions static.
2767
2768 Tue Jun  1 14:40:41 1993  Per Bothner  (bothner@rtl.cygnus.com)
2769
2770         * Makefile.in (bfd.h):  Move closer to headers - and after 'all'!
2771
2772         * aoutx.h (translate_from_native_sym_flags):  Don't set
2773         BSF_DEBUGGING for constructor symbols, only BSF_CONSTRUCTOR.
2774         * aoutx.h (translate_to_native_sym_flags):  Translate
2775         constructor symbols properly.
2776
2777 Thu May 27 16:09:04 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
2778
2779         * archures.c (bfd_default_arch_struct): use 4 byte alignment as a
2780         minimum.
2781         * aout-target.h (minimum_alignment): 8 byte alignment is right.
2782         (fix ld/2680)
2783
2784 Thu May 27 13:38:47 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2785
2786         * configure.in, Makefile.in: Build bfd-in2.h in source directory,
2787         from bfd-in.h and .c files.  Build bfd.h in build directory,
2788         substituting in requested target word size.  Insert word size into
2789         makefile, and maybe enable 64-bit targets.
2790
2791         * bfd-in.h, libbfd.c, demo64.c, targets.c: Define BFD64 if 64 bits
2792         are available.  Conditionalize on this.  Assume HOST_64_BIT
2793         will be defined if needed, so 64-bit targets are conditionalized
2794         only in the Makefile.
2795
2796 Tue May 25 14:03:56 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2797
2798         * libbfd.c (COERCE64): Rewrite to avoid out-of-range values.
2799
2800         * coff-sh.c (rtype2howto): Put error message on stderr.
2801         (extra_case): Delete unused variable.
2802
2803         * coff-mips.c (ecoff_print_symbol): Cast bfd_vma values to long
2804         before calling printf.
2805
2806         * elfcode.h: New file, almost completely derived from old elf32.c.
2807         * elf32.c: Now just define ARCH_SIZE and include elfcode.h.
2808         * Makefile.in (elf64.o): List dependencies, don't build by
2809         default.
2810         (elf64.c): Add to list of sources.
2811         (elf32.o): Update dependencies.
2812         * elf32-*.c: Updated type/macro/structure names.  Cleaned up
2813         namespace pollution; rename vectors.
2814         * targets.c, config/*-elf.mt: Updated.
2815         * All uses of 32-bit versions of structures, routines, and macros
2816         renamed.
2817
2818         * Makefile.in (archures.o, targets.o): Depend on Makefile.
2819
2820 Mon May 24 15:53:13 1993  Ken Raeburn  (raeburn@cygnus.com)
2821
2822         * elf32-i386.c (enum reloc_type): No comma after last enumerator.
2823
2824         * elf32.c (elf_string_from_elf_section): Handle index of zero
2825         specially.
2826         (bfd_section_from_shdr, elf_slurp_symbol_table): Don't need to do
2827         so here.
2828         (elf_write_object_contents): Deleted one unused variable and
2829         initialized another to avoid gcc warnings.
2830         (elf_set_section_contents): Delete unused variable.
2831
2832 Fri May 21 19:04:21 1993  Stu Grossman  (grossman@cygnus.com)
2833
2834         * i386lynx.c:  New module for Lynx variant of a.out.
2835         * Makefile.in (BFD_BACKENDS CFILES depends):  Add i386lynx.c.
2836         * gen-aout.c:  Get rid of defunct endian stuff, print out true
2837         pagesize.
2838         * targets.c (target_vector):  Add i386lynx_vec.
2839
2840 Fri May 21 17:02:22 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2841
2842         * configure.in: Use i386-sco.mt for i[36]86-*-isc*.
2843
2844 Fri May 21 13:44:18 1993  David J. Mackenzie  (djm@rtl.cygnus.com)
2845
2846         * aix386-core.c, aout-target.h, aoutx.h, coff-alpha.c,
2847         coff-mips.c, coffgen.c, elf32.c, ieee.c, libaout.h, libcoff-in.h,
2848         libelf.h, mipsbsd.c, oasys.c, sco-core.c, srec.c, tekhex.c,
2849         trad-core.c: Define a TARGET_get_symbol_info function or macro.
2850         Remove the bfd_print_symbol_nm case from TARGET_print_symbol.
2851
2852         * bfd-in.h: Don't define bfd_print_symbol_nm.
2853         Define symbol_info type.
2854         (JUMP_TABLE): Set _get_symbol_info element.
2855
2856         * syms.c (coff_section_type, bfd_symbol_info): New functions.
2857         (bfd_decode_symclass): Use coff_section_type.
2858
2859         * targets.c: Add bfd_get_symbol_info call.
2860
2861 Wed May 19 15:30:52 1993  Stu Grossman  (grossman@cygnus.com)
2862
2863         * coff-i386.c (coff_i386_reloc):  Use unsigned char to avoid
2864         complaints from ancient gcc's.
2865
2866 Wed May 19 15:51:19 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
2867
2868         * trad-core.c:  Check macro TRAD_CORE_EXTRA_SIZE_ALLOWED.
2869         hosts/i386linux.h:  Define it.
2870
2871 Mon May 17 15:00:33 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
2872
2873         * VERSION, bfd-in.h: Bump version number to 2.2.
2874
2875         * hppa.c (assemble_3, dis_assemble_3, assemble_12,
2876         dis_assemble_12, assemble_17, dis_assemble_17, assemble_21,
2877         dis_assemble_21, sign_ext, ones, sign_unext, low_sign_ext,
2878         low_sign_unext, round_down, round, round_up, L, R, LS, RS, LD, RD,
2879         LR, RR, hppa_field_adjust): New functions.
2880
2881 Mon May 17 10:04:16 1993  Ian Lance Taylor  (ian@cygnus.com)
2882
2883         * coff-mips.c (ecoff_set_symbol_info): Added support for indirect
2884         stabs symbols, including new indirect_ptr_ptr argument.
2885         (ecoff_slurp_symbol_table): Pass new argument in calls to
2886         ecoff_set_symbol_info.
2887
2888 Fri May 14 00:05:06 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2889
2890         * configure.in: For m68k sysv systems, use m68k-coff.
2891
2892         * config/hppa-elf.mt (TDEFINES): Don't define DEFAULT_VECTOR here.
2893         (TDEFAULTS): Define it here.  Use the new name.
2894
2895         * elf32-hppa.c (elf_hppa_backend_data): Delete; rely on default
2896         values instead.
2897
2898         * reloc.c (bfd_reloc_code_real_type): Add some HPPA reloc types.
2899
2900         * aix386-core.c (NO_GETS): Fix PROTO invocation to have correct
2901         number of arguments.
2902         (aix386_core_file_p): Initialize core_size to correct value.
2903
2904 Wed May 12 14:39:59 1993  Ian Lance Taylor  (ian@cygnus.com)
2905
2906         * Makefile.in (CC_FOR_BUILD): New variable, set to $(CC).
2907         (FLAGS_TO_PASS): Pass down CC_FOR_BUILD.
2908
2909         * bout.c (aout32_slurp_extended_name_table): Define to be
2910         _bfd_slurp_extended_name_table rather than bfd_true.
2911
2912         * coff-mips.c: Include libaout.h and aout/aout64.h to get
2913         definitions for N_SET[ATDB].
2914         (ecoff_howto_table): Moved near top of file.
2915         (ecoff_set_symbol_info): If a STABS symbol of type N_SET[ATDB] is
2916         seen, cook up a constructor section of the same name and put in a
2917         reloc pointing to the symbol.  This lets the GNU linker build
2918         global constructors and destructors without using collect.
2919
2920 Tue May 11 00:33:31 1993  John Gilmore  (gnu@cygnus.com)
2921
2922         * coff-m88k.c (m88kbcs_vec):  Symbols have underbars.
2923
2924 Mon May 10 05:55:45 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
2925
2926         * hosts/miniframe.h: New file.
2927         * configure.host: Use it.
2928
2929 Sun May  9 16:36:59 1993  Fred Fish  (fnf@cygnus.com)
2930
2931         * configure.in (hppa*-*-bsd):  Change to hppa*-*-bsd*
2932         * configure.in (hppa*-*-hpux):  Change to hppa*-*-hpux*
2933         * configure.in (m68*-hp-bsd):  Change to m68*-hp-bsd*
2934         * configure.in (m68*-*-hpux):  Change to m68*-*-hpux*
2935         * configure.in (*-*-bsd):  Change to *-*-bsd*
2936
2937 Wed May  5 16:08:32 1993  Per Bothner  (bothner@cygnus.com)
2938
2939         * elf32-hppa.c (elf_hppa_reloc_type_lookup):  Cast enums to
2940         int, for the sake of the old Portable C Compiler.
2941
2942 Mon May  3 14:37:01 1993  Stu Grossman  (grossman@cygnus.com)
2943
2944         * Makefile.in (CFILES):  Add cpu-sh.c and coff-sh.c.
2945
2946 Mon May  3 14:03:21 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
2947
2948         * configure.in: Get target name right for m68*-*-hpux.
2949
2950 Sun May  2 11:39:44 1993  Fred Fish  (fnf@cygnus.com)
2951
2952         * trad-core.c (NO_SIGNED_GET):  New macro.
2953         * trad-core.c (trad_core_vec):  Use new NO_SIGNED_GET instead of
2954         signed NO_GET, where appropriate.
2955
2956         * configure.in (i[34]86-*-linux*):  Add; bfd_target = i386-linux.
2957         * configure.in (*-*-linux*):  Remove until linux port for a
2958         non-i386/i486 system is actually available.
2959
2960 Fri Apr 30 20:04:10 1993  Stu Grossman  (grossman@cygnus.com)
2961
2962         * libhppa.h:  #undef e_* symbols which come from <machine/som.h>
2963         when compiling under HPUX.
2964
2965 Fri Apr 30 17:25:23 1993  Stu Grossman  (grossman@cygnus.com)
2966
2967         * The following patches are from Jeffrey Law <law@cs.utah.edu>.
2968         * hppa.c (hppa_core_file_p): Provide a temporary dummy routine
2969         for HOST_HPPABSD.
2970         * bfd/hosts/hppabsd.h: Fix declarations of malloc and free.
2971         * bfd/libhppa.h: Include sysdep here.  Conditionalize
2972         includes based on HOST_HPPAHPUX or HOST_HPPABSD.
2973         Provide definitions for MAXCOMLEN and _PA_RISC_ID suitable
2974         for BSD.
2975
2976 Fri Apr 30 17:34:11 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
2977
2978         * elf32-hppa.c: Don't include a.out.h.  Apparently not even the
2979         GNU version is needed.
2980
2981 Fri Apr 30 09:38:59 1993  Jim Kingdon  (kingdon@cygnus.com)
2982
2983         * coffcode.h: use dummy_reloc16_extra_cases rather than casting abort.
2984
2985 Thu Apr 29 11:30:32 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
2986
2987         * Makefile.in: Build elf32-hppa.o.
2988
2989         * syms.c (BSF_FUNCTION): New symbol flag.
2990
2991         * elf32-hppa.c: Fixed to work with elf32-target.h.
2992
2993         * hp300hpux.c (NAME, NAME_swap_exec_header_in): Fix for
2994         traditional C.
2995         * libaout.h (NAME): Don't define if already defined.
2996
2997         * libelf.h: Protect against multiple inclusions.
2998         (elf_symbol_type): Moved here, added new fields.
2999         (struct elf_backend_data): New field `global_sym'; I suspect this
3000         may be misplaced.
3001         * elf32.c (elf_symbol_type): Deleted from here.
3002         (struct elf_obj_tdata): New fields raw_syms and internal_syms, to
3003         point to backend versions of symbols.
3004         (obj_symbols, obj_raw_syms, obj_internal_syms): New macros.
3005         (elf_swap_phdr_out, elf_build_phdrs, elf_write_phdrs): New
3006         functions.
3007         (elf_write_object_contents): Write program headers if appropriate.
3008         (bfd_section_from_shdr): Unnamed sections get empty string for
3009         name, not "unnamed".  Handle SHT_NOBITS separately from
3010         SHT_PROGBITS, and set some different flags.
3011         (elf_file_p): New routine.
3012         (elf_object_p, elf_core_file_p): Call it.
3013         (elf_object_p): Handle EM_HPPA.
3014         (elf_symbol_from, elf_idx_of_sym): New functions.
3015         (elf_make_sections): Get symbol number right for relocations.  Set
3016         SHF_ALLOC, SHF_WRITE, SHF_EXECINSTR when appropriate.
3017         (elf_fake_sections): BSS section should be SHT_NOBITS, not
3018         SHT_PROGBITS.  Always generate symtab and strtab, not only if
3019         relocations are needed.  Set SHF_* flags as appropriate.
3020         (elf_compute_section_file_positions): Handle bfd_arch_hppa.
3021         (elf_write_object_contents): Fix off-by-one error in symbol count.
3022         Store a correct value for the symbol; write the size field
3023         properly; make some guesses about the type field.  Set section
3024         type correctly for string tables.
3025         (section_from_elf_index): Check for absolute and common sections
3026         first.
3027         (elf_section_from_bfd_section): Ditto.
3028         (elf_slurp_symbol_table): Use elf_symbol_type instead of asymbol.
3029         Use empty string instead of "unnamed" for nameless symbols.
3030         Handle STTY_FUNC type, and weirdness with "$global$" symbol for
3031         HPPA (only?).  Don't free raw symbols; keep the pointer around for
3032         later.
3033         (elf_set_arch_mach): Handle bfd_arch_hppa.
3034         (elf_find_nearest_line): Just return false.
3035         (elf_write_object_contents, elf_set_section_contents): Set
3036         output_has_begun field after computing file positions.
3037         (elf_set_section_contents): Write section contents immediately,
3038         rather than caching the whole file and writing it at close time.
3039
3040         * libhppa.h (enum hppa_reloc_field_selector_type, enum
3041         hppa_reloc_field_selector_typ_alt, enum hppa_reloc_expr_type, enum
3042         hppa_reloc_expr_type_alt): New enumerator types.
3043
3044         * config/hppa-elf.mt,. config/hppaosf.mh: HP PA/OSF support.
3045         * configure.in, configure.host: Use them.
3046
3047 Wed Apr 28 23:21:01 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3048
3049         * elf32-target.h: Allow overrides of armap defaults.
3050
3051         * elf32-hppa.c, elf32-hppa.h: New files.
3052
3053         * config/hp300hpux.mt: New file.
3054
3055 Tue Apr 27 05:39:40 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
3056
3057         * aix386-core.c (NO_GETS): New macro; NO_GET for signed values.
3058         (aix386_core_vec): Update for new fields.
3059
3060         * archive.c (bfd_generic_archive_p): Call target-specific
3061         slurp_armap code, instead of bfd_slurp_armap.
3062         (bfd_slurp_bsd_armap_f2): New function.
3063         * libbfd-in.h (bfd_slurp_bsd_armap_f2): Declare it.
3064         * aout-target.h (AR_PAD_CHAR): Define it if not already defined.
3065         (vec): Use it.
3066         * libaout.h (struct aoutdata): New field for subformat, for
3067         differentiating between highly similar a.out formats.
3068         * aoutx.h (NAME_swap_exec_header_in): New macro, defaults to local
3069         version of function.
3070         (swap_exec_header_in): Don't define if NAME_swap_exec_header_in is
3071         already defined.
3072         * hp300hpux.c: New file.
3073         * Makefile.in: Include it.
3074
3075 Mon Apr 26 13:24:43 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3076
3077         * Makefile.in, archures.c, coffcode.h, targets.c: Support for
3078         Hitachi SH.
3079
3080 Mon Apr 26 13:55:42 1993  Jim Kingdon  (kingdon@cygnus.com)
3081
3082         * trad-core.c (trad_unix_core_file_p): Check the file size.
3083
3084 Mon Apr 26 13:24:43 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3085
3086         * coff-alpha.c: Remove duplicate function and add warnings.
3087
3088 Mon Apr 26 11:25:58 1993  Ian Lance Taylor  (ian@cygnus.com)
3089
3090         * sco-core.c (sco_core_vec): Add initializers for new target
3091         fields.
3092
3093 Sat Apr 24 21:33:45 1993  Jim Kingdon  (kingdon@cygnus.com)
3094
3095         * coffcode.h [_LIT]: Recognize .lit section.
3096
3097 Fri Apr 23 19:00:36 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3098
3099         * coff-alpha.c, cpu-alpha.c, config/alphaosf.mt,
3100         config/alphaosf.mt, hosts/alphaosf.h:  New files.
3101
3102 Fri Apr 23 16:48:46 1993  Stu Grossman  (grossman@cygnus.com)
3103
3104         * Merge in HPPA/BSD changes from Utah.
3105         * hppa.c:  Use this for both HPUX & BSD.
3106         * targets.c:  Enable hppa_vec for both HPUX & BSD.
3107         * config/hppabsd.mt:  TDEFINES => TDEFAULTS.
3108         * hosts/hppabsd.h:  #define HOST_HPPABSD.
3109
3110 Wed Apr 21 01:50:10 1993  John Gilmore  (gnu@cygnus.com)
3111
3112         * libbfd.c:  Whitespace changes around byteswap macros.
3113         * libbfd-in.h:  Whitespace changes around byteswap declarations.
3114
3115 Tue Apr 20 15:59:07 1993  Stu Grossman  (grossman@cygnus.com)
3116
3117         * aoutf1.h (sunos4_core_file_p):  Don't default bfd_error to
3118         system_error anymore.  It confuses bfd_check_format().
3119
3120 Mon Apr 19 23:03:08 1993  Stu Grossman  (grossman@cygnus.com)
3121
3122         * bfd.c:  Add sgi_core_data to tdata union.
3123         * coff-mips.c:  Add Irix 4.x core file support.
3124         * hosts/irix4.h:  #define HOST_IRIX4.
3125
3126 Mon Apr 19 18:52:52 1993  Ken Raeburn  (raeburn@deneb.cygnus.com)
3127
3128         * aoutx.h (translate_from_native_sym_flags): Check that the
3129         symbol's section does get set.
3130         (slurp_symbol_table): Zero index means null-string name.
3131
3132         * aoutx.h (struct stringtab_entry, struct stringtab_data): New
3133         data structures.
3134         (hash, stringtab_init, add_to_stringtab, emit_strtab, compare):
3135         New functions.
3136         (write_syms): Use them, to reduce string table size.
3137
3138 Mon Apr 19 16:45:12 1993  Fred Fish  (fnf@cygnus.com)
3139
3140         * trad-core.c (trad_core_vec):  Add 6 new initializers to match
3141           new signed get/put fields.  Minor reformatting to label
3142           some fields.
3143
3144 Mon Apr 19 06:09:41 1993  Jim Kingdon  (kingdon@cygnus.com)
3145
3146         * bfd-in.h: Insert comment about SVR3 compiler warnings.
3147
3148         * hosts/{hp300,i386isc,i386v}.h: Remove unused #defines of {r,}index
3149         (bfd uses strchr and the broken SVR3.2 cpp loses with the defines).
3150
3151         * libbfd.c: bfd_put*: Remove casts to bfd_vma.
3152
3153 Fri Apr 16 17:49:27 1993  Jim Kingdon  (kingdon@cygnus.com)
3154
3155         * aoutf1.h (internal_sunos_core): Make c_stacktop a bfd_vma.
3156         (swapcore_sparc): Make sp a bfd_vma.
3157
3158 Thu Apr 15 09:09:18 1993  Jim Kingdon  (kingdon@cygnus.com)
3159
3160         * libbfd.c: Add signed versions of bfd_{h_,}{get,put}_signed_<size>.
3161         libbfd.c, libbfd-in.h: Add _do*signed*.
3162         targets.c, all targets: Add bfd*signed*.
3163         bfd-in.h: Add bfd_signed_vma.  Add comments.
3164
3165         * bfd-in.h (bfd_error), bfd.c (bfd_errmsgs): Add file_truncated.
3166
3167         * format.c (bfd_check_error): Check error return from
3168         _bfd_check_format routines.
3169
3170 Wed Apr 14 23:48:25 1993  Jim Kingdon  (kingdon@cygnus.com)
3171
3172         * rs6000-core.c (rs6000coff_core_p): Improve error checking and
3173         recognize .data section if present.
3174
3175 Thu Apr 15 01:00:29 1993  John Gilmore  (gnu@cygnus.com)
3176
3177         * aoutx.h (aout_*_adjust_sizes_and_vmas):  Avoid `sanity'
3178         check for the case where the user sets the address of the BSS
3179         section (and the file header can't specify this).  Let the user
3180         set it wherever they want, regardless of what goes in the header.
3181
3182         * ieee.c (ieee_slurp_sections):  Pass all ieee section names
3183         straight through into BFD sections.  Add comments.
3184
3185 Wed Apr 14 20:34:54 1993  John Gilmore  (gnu@cygnus.com)
3186
3187         Cleanup in preparation for better 64-bit host support.
3188
3189         * bfd-in.h (bfd_64_type):  Remove.
3190         * libbfd.c (_do_getb64, _do_putb64):  Use bfd_vma, not bfd_64_type.
3191
3192         * bfd-in.h (bfd_size):  Remove.
3193
3194         * bfd-in.h (bfd_offset):  Remove, after fixing ld/ldlang.[ch].
3195
3196         * bfd-in.h (bfd_word):  Remove.
3197         * reloc.c (reloc_howto_type):  Replace bfd_word with bfd_vma.
3198
3199         * bfd-in.h (rawdata_offset):  Remove.
3200         * reloc.c (arelent):  Replace rawdata_offset with bfd_size_type.
3201         (bfd_perform_relocation):  Lint.
3202         (enum bfd_reloc_status):  Comment cleanup.
3203
3204         * aout-adobe.c, cpu-h8300.c, mipsbsd.c, srec.c: lint -Wall.
3205
3206 Tue Apr 13 11:19:52 1993  Jim Kingdon  (kingdon@cygnus.com)
3207
3208         * aoutf1.h (swapcore_sparc): Guess the right value of USRSTACK.
3209
3210 Mon Apr 12 14:18:00 1993  John Gilmore  (gnu@cygnus.com)
3211
3212         * elf32.c:  Clean up old comments.
3213
3214 Fri Apr  9 10:43:20 1993  Ian Lance Taylor  (ian@cygnus.com)
3215
3216         * config/sun3.h: String argument to fprintf is const.
3217
3218         * coff-mips.c: Renamed PAGE_SIZE to ROUND_SIZE, to avoid confusion
3219         on systems which define PAGE_SIZE in <limits.h>.
3220
3221 Thu Apr  8 10:28:00 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
3222
3223         * trad-core.c (trad_unix_core_file_failing_signal): Use new macro
3224         TRAD_UNIX_CORE_FILE_FAILING_SIGNAL to allow host files to specify
3225         the core file failing signal.
3226         * hosts/decstation.h (TRAD_UNIX_CORE_FILE_FAILING_SIGNAL): Define
3227         to supply the core file failing signal.
3228
3229 Thu Apr  8 09:17:35 1993  Ian Lance Taylor  (ian@cygnus.com)
3230
3231         * coffcode.h (styp_to_sec_flags): Only set SEC_SHARED_LIBRARY for
3232         a STYP_NOLOAD | STYP_BSS section if BSS_NOLOAD_IS_SHARED_LIBRARY
3233         is defined.  On many COFF targets STYP_BSS is always STYP_NOLOAD.
3234         * coff-i386.h (BSS_NOLOAD_IS_SHARED_LIBRARY): Define.
3235
3236 Wed Apr  7 11:33:06 1993  Ian Lance Taylor  (ian@cygnus.com)
3237
3238         * coff-mips.c (PAGESIZE): Correct value.
3239
3240 Tue Apr  6 12:05:44 1993  Ian Lance Taylor  (ian@cygnus.com)
3241
3242         * coff-mips.c (ecoff_find_nearest_line): Address of first PDR is
3243         an offset (patch from Jean-Daniel Fekete <jdf@lri.lri.fr>).
3244
3245 Mon Apr  5 12:07:12 1993  Ian Lance Taylor  (ian@cygnus.com)
3246
3247         * coffcode.h (styp_to_sec_flags): Set SEC_SHARED_LIBRARY for a
3248         STYP_NOLOAD | STYP_BSS section.  Don't set SEC_NEVER_LOAD for a
3249         STYP_INFO section.
3250         (coff_compute_section_file_positions): Force vma and lma of _LIB
3251         section to be zero.
3252         (coff_set_section_contents): Count number of entries in new lma
3253         field, not in vma.
3254         * coffgen.c (make_a_section_from_file): Force lineno_count of
3255         SEC_SHARED_LIBRARY section to be zero, since it is non-zero on the
3256         SCO 3.2v4 shared library.
3257         * seclet.c (rel): Copy over any section with contents, not just
3258         loadable sections.
3259
3260         * coff-mips.c (ecoff_make_empty_symbol): Zero out newly allocated
3261         symbol.
3262
3263         * coff-i386.c (coff_i386_reloc): New function, to generate
3264         relocateable output correctly.
3265         (howto_table): Use coff_i386_reloc for all reloc types.
3266         (CALC_ADDEND): Use a more efficient hack to get the correct addend
3267         for a common symbol.
3268         (i386comm_value): Removed; no longer needed.
3269
3270 Sun Apr  4 15:08:48 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3271
3272         * coffcode.h (coff_set_section_contents): Don't write out
3273         sections without a filepos.
3274
3275 Fri Apr  2 14:35:05 1993  Ian Lance Taylor  (ian@cygnus.com)
3276
3277         * seclet.c (seclet_dump_seclet): Correct SEC_HAS_CONTENTS test.
3278
3279 Wed Mar 31 17:41:05 1993  Ian Lance Taylor  (ian@cygnus.com)
3280
3281         * reloc.c (bfd_reloc_code_real_type): Added BFD_RELOC_MIPS_GPREL.
3282         * libecoff.h (ecoff_data_type): Added gp_size field.
3283         * coff-mips.c (ecoff_mkobject_hook): Initialize gp_size to 8.
3284         (ecoff_set_symbol_info): Compare against gp_size, not hardcoded 8.
3285         Set flags to 0 for large common symbols.
3286         (ecoff_gprel_reloc): Handle non-zero addend for external symbols,
3287         which can occur for gas-generated relocs.
3288         (ecoff_bfd_reloc_type_lookup): Added BFD_RELOC_MIPS_GPREL case.
3289         * bfd.c (bfd_get_gp_size, bfd_set_gp_size): New functions.
3290         * Makefile.in (bfd.o): Now depends on coff/sym.h and libecoff.h.
3291
3292 Tue Mar 30 09:33:16 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3293
3294         * srec.c (srec_set_section_contents): Use lma field for load
3295         address.
3296         * section.c: Add declaration of lma field to section structure.
3297         * coffcode.h (coff_write_object_contents): Use lma field for load
3298         address.
3299         * bfd-in.h (bfd_set_section_vma): Set lma along with vma.
3300
3301         * aoutx.h (translate_from_native_sym_flags): Now handles indirect
3302         symbols in a better way. (translate_to_native_sym_flag): Set the
3303         N_INDR bit when necessary. (aout<>slurp_symbol_table): Maintain
3304         indirect state.
3305         * section.c: Added BFD_IND_SECTION_NAME and bfd_ind_section.
3306         (bfd_make_section): Cope with new builtin section.
3307         * syms.c (bfd_decode_symclass): Can now print indirect section
3308         info.
3309
3310 Wed Mar 24 13:36:33 1993  Per Bothner  (bothner@rtl.cygnus.com)
3311
3312         * aout-target.h (MY(object_p)):  Fail if MACHTYPE_OK is
3313         defined, and yields false.
3314         * aout-mipsbsd.c, i386bsd.c:  Define MACHTYPE_OK appropriately.
3315
3316         * archive.c (snarf_ar_hdr):  Add support for reading (only,
3317         so far) BSD-4.4-style extended headers.
3318         * archive.c:  Some more comments.
3319
3320 Wed Mar 24 02:05:10 1993  david d `zoo' zuhn  (zoo at poseidon.cygnus.com)
3321
3322         * Makefile.in: fix rule for dvi and info, so that the recursive
3323         makes does the right thing, instead of always info
3324
3325 Wed Mar 24 02:56:44 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3326
3327         * libbfd.c (bfd_seek): Disable optimized handling for archives and
3328         archive members; they need more special reatment.  For now, verify
3329         that computed and actual file positions correspond.
3330
3331 Tue Mar 23 08:45:33 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3332
3333         * mipsbsd.c: Renamed from aout-mipsbsd.c.
3334         (set_arch_mach): Delete non-MIPS code.
3335         (reloc_howto_type_lookup): Ditto.
3336         * Makefile.in: Adjusted.
3337
3338         * libbfd.c (bfd_tell): Update `where' field.
3339         (bfd_seek): Don't do anything if we're not changing the file
3340         position.  If FILE_OFFSET_IS_CHAR_INDEX is defined, check `where'
3341         field against a SEEK_SET request.  Call bfd_tell to re-update
3342         `where' field when done.
3343         (bfd_read, bfd_write) [FILE_OFFSET_IS_CHAR_INDEX]: Maintain
3344         `where' field.
3345         * hosts/sparc.h: Define FILE_OFFSET_IS_CHAR_INDEX.
3346
3347 Mon Mar 22 23:18:10 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3348
3349         * Makefile.in: added installcheck target
3350
3351 Mon Mar 22 14:57:18 1993  Ian Lance Taylor  (ian@cygnus.com)
3352
3353         * coff-mips.c (ecoff_set_symbol_info): Relocate encapsulated stabs
3354         if the type is not stNil.
3355
3356 Tue Mar 16 10:35:27 1993  Ken Raeburn  (raeburn@cygnus.com)
3357
3358         * elf32.c (elf_little_vec, elf_big_vec): Delete now-invalid
3359         forward declarations.
3360
3361         * elf32-sparc.c (elf_sparc_howto_table): Don't use CONST here,
3362         it's implied by the type.
3363
3364 Fri Mar 12 18:58:08 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3365
3366         * configure.host: recognize sparc-sun-solaris2* instead of sparc-sun-solaris*
3367
3368 Tue Mar  9 09:23:12 1993  Jim Kingdon  (kingdon@cygnus.com)
3369
3370         * rs6000-core.c: Add .ldinfo section.
3371
3372 Fri Mar 12 11:57:52 1993  Ian Lance Taylor  (ian@cygnus.com)
3373
3374         * Makefile.in (MAKEOVERRIDES): Define to be empty.
3375
3376 Fri Mar 12 08:32:11 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3377
3378         * section.c (bfd_set_section_contents): whitespace
3379         * seclet.c (seclet_dump_seclet): Don't try and fill sections with
3380         no contents.
3381
3382 Thu Mar 11 19:26:15 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3383
3384         * hosts/go32.h: don't define POSIX_UTIME
3385
3386 Tue Mar  9 10:52:01 1993  Fred Fish  (fnf@cygnus.com)
3387
3388         * elf32.c (elf_object_p):  Use ELF_ARCH stored in xvec to match
3389         against machine architecture stored in the ELF header, to resolve
3390         ambiguities.
3391         * elf32.c (bfd_section_from_shdr):  Bfd_make_section can return
3392         NULL, so only use results when non-NULL.
3393         * targets.c (elf32_m68k_vec, elf32_i860_vec):  Add extern decls
3394         and add to vector of targets.
3395
3396 Mon Mar  8 15:13:44 1993  Ian Lance Taylor  (ian@cygnus.com)
3397
3398         * coff-mips.c (ecoff_set_symbol_info): Encapsulated STABS symbols
3399         are always just debugging symbols.
3400
3401         * coff-mips.c (ecoff_[gs]et_sym_index): Moved macros from here...
3402         libecoff.h (ecoff_[gs]et_sym_index): ...to here.
3403
3404 Mon Mar  8 14:55:13 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3405
3406         * hppa.c (_PA_RISC_ID): Defined if not already defined (e.g., for
3407         hpux 7).  Patch from friedman@gnu.ai.mit.edu.
3408         (hppa_object_p): Only check for DL_MAGIC and SHL_MAGIC if they're
3409         defined, which they aren't in hpux 7.0.
3410
3411         * aix386-core.c: Include uinfo.h and coredump.h.  Patch from Minh
3412         Tran-Le, tranle@intellicorp.com.
3413
3414 Fri Mar  5 14:54:21 1993  Ian Lance Taylor  (ian@cygnus.com)
3415
3416         * coff-mips.c (ecoff_generic_reloc): If the addend is non-zero, go
3417         ahead and do the relocation.
3418         (ecoff_refhi_reloc): Don't to the relocation here, just remember
3419         what needs to be done.
3420         (ecoff_reflo_reloc): Do the REFHI relocation here.
3421
3422 Thu Mar  4 14:44:01 1993  Ian Lance Taylor  (ian@cygnus.com)
3423
3424         * coff-mips.c (ecoff_bfd_reloc_type_lookup): New function.
3425         (ecoff_write_object_contents): Added BFD_ASSERT calls to ensure
3426         relocs are reasonable.
3427         * coff-msym.c: Eliminated uses of DEFUN.
3428         (ecoff_swap_tir_out): New function.
3429
3430 Tue Mar  2 17:52:58 1993  Fred Fish  (fnf@cygnus.com)
3431
3432         (Ultrix 2.2 support from Michael Rendell <michael@mercury.cs.mun.ca>)
3433         * configure.host (vax-*-ultrix2*):  Add triplet.
3434         * hosts/vaxult2.h:  New file.
3435         * config/vaxult2.mh:  New file.
3436
3437         * aoutx.h (string.h):  Include for strchr and friends.
3438         * archive.c (string.h):  Include for memchr and friends.
3439         * elf32.c (string.h):  Include for strrchr and friends.
3440
3441 Sat Feb 27 00:44:24 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3442
3443         * aoutf1.c (sunos4_reloc_type_lookup): Unused; deleted.
3444         (MY_set_sizes): Use sunos4_set_sizes.
3445
3446         * elf32.c: Renamed from elf.c.  Several CPU-specific functions
3447         deleted, as well as elf-big and elf-little targets.
3448         * libelf.h: New file.
3449         * elf32-sparc.c, elf32-i386.c, elf32-i860.c, elf32-m68k.c: New
3450         files, new targets.
3451         * Makefile.in, config/*-elf.mt, targets.c: Adjusted.
3452
3453         * i386linux.c (TARGETNAME): Use hyphens instead of parentheses.
3454
3455         * coffcode.h (coff_compute_section_file_positions): Don't need
3456         variable "old_sofar" if compiling for i960.
3457
3458         * reloc.c (bfd_default_reloc_type_lookup): First argument is now a
3459         bfd pointer.
3460         * libbfd.h: Updated.
3461
3462         * ieee.c (exten, envi): "static" belongs first in declaration.
3463
3464 Fri Feb 26 17:37:34 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3465
3466         * srec.c: add support for symbolsrec, srecords with symbols in
3467         them.
3468
3469 Thu Feb 25 11:43:30 1993  John Gilmore  (gnu@cacophony.cygnus.com)
3470
3471         * ieee.c:  cast all arguments of ieee_write_byte to bfd_byte
3472         to avoid lint complaints.
3473
3474 Thu Feb 25 02:15:52 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3475
3476         * elf.c (elf_write_object_contents): Section ".shstrtab" should be
3477         type SHT_STRTAB.  Don't alter file offset for section 0.
3478         (reloc_type_names): Now an array instead of a macro.  Still inside
3479         "#if 0", since it's used only in debugging code also in "#if 0".
3480         (struct elf_reloc_map_elt, struct elf_reloc_map): New types.
3481         (sort_reloc_map): New function.
3482         (sparc_reloc_map): New variable.
3483         (elf_bfd_reloc_type_lookup): New function.
3484
3485 Tue Feb 23 12:17:16 1993  Ian Lance Taylor  (ian@cygnus.com)
3486
3487         * bfd-in.h (JUMP_TABLE): Added bfd_reloc_type_lookup and
3488         bfd_make_debug_symbol; they were already in the target structure.
3489         * Adjusted all uses of JUMP_TABLE.
3490         * coffgen.c, libcoff-in.h (coff_bfd_make_debug_symbol): Renamed
3491         from coff_make_debug_symbol.
3492         * libcoff.h: Updated accordingly.
3493
3494         * Minor cleanups provoked by gcc warnings:
3495         * aoutx.h (NAME(aout, reloc_type_lookup)),
3496         cpu-h8300.c (local_bfd_reloc_type_lookup),
3497         cpu-z8k.c (local_bfd_reloc_type_lookup): Added default case to
3498         switches.
3499         * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap),
3500         ieee.c (ieee_slurp_section_data),
3501         elf.c (elf_make_sections, elf_fake_sections,
3502         elf_compute_section_file_positions, elf_write_object_contents):
3503         Removed unused variables.
3504         * archures.c: Removed /* from within comment.
3505         * bout.c (b_out_squirt_out_relocs): Initialize r_extern.
3506         * oasys.c (oasys_write_data): Initialize i.
3507
3508 Mon Feb 22 18:40:06 1993  Per Bothner  (bothner@rtl.cygnus.com)
3509
3510         * libcoff.h (obj_raw_syment_coun):  New macro.
3511         * coffgen.c (coff_get_normalized_symtab):  Initialize
3512         raw_syment_count.
3513         * coffgen.c (coff_find_nearest_line):  Numerous little fixes.
3514
3515 Mon Feb 22 15:03:07 1993  Ian Lance Taylor  (ian@cygnus.com)
3516
3517         * coff-mips.c (ecoff_set_symbol_info): stBlock symbols are always
3518         debugging symbols.
3519         (ecoff_get_debug): Offset the fdr adr by the adr of the first pdr,
3520         for compatibility with tools from MIPS.
3521
3522         * config/bigmips.mt: New file; default vector is ecoff_big_vec.
3523         * config/irix3.mt, config/irix4.mt: Removed.
3524         * configure.in (mips-*-ecoff): New target; uses bigmips.mt.
3525         (mips-sgi-*, mips-big-*): Use bigmips rather than irix3.
3526
3527 Wed Feb 17 23:40:41 1993  John Gilmore  (gnu@cygnus.com)
3528
3529         * hosts/hp300bsd.h:  Add gross hack to determine whether we
3530         are running on BSD 4.3 or BSD 4.4, and use appropriate include
3531         files (and set other parameters) to match.
3532
3533 Wed Feb 17 12:28:13 1993  K. Richard Pixley  (rich@cygnus.com)
3534
3535         * trad-core.c (trad_unix_make_empty_symbol): wrap PARAMS around an
3536           ansi definition which otherwise confuses non-ansi compilers.
3537
3538         * aout-adobe.c (aout_adobe_object_p): eliminate a warning from vax
3539           ultrix cc by forward declaring getenv as is done in
3540           bfd_find_target.
3541
3542 Tue Feb 16 17:56:58 1993  K. Richard Pixley  (rich@cygnus.com)
3543
3544         * elf.c (elf_info_to_howto): cast an enum into unsigned char
3545           avoiding a fatal error in vax ultrix 4.2 cc.
3546
3547 Tue Feb 16 00:44:54 1993  John Gilmore  (gnu@cygnus.com)
3548
3549         * bfd-in.h, VERSION:  Roll to version 2.1.
3550
3551 Mon Feb 15 20:43:51 1993  John Gilmore  (gnu@cygnus.com)
3552
3553         * oasys.c (oasys_write_object_contents):  Lint.
3554         * srec.c:  Whitespace cleanup.
3555
3556 Fri Feb 12 14:23:07 1993  Ian Lance Taylor  (ian@cygnus.com)
3557
3558         * coffgen.c (coff_print_symbol): Print correct tagndx value;
3559         cleaned up output formatting a bit.
3560
3561 Fri Feb 12 08:28:56 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3562
3563         * coffcode.h (coff_set_arch_mach_hook): *FIXME* the H8/300 is always
3564         relaxable.  Should be moved somewhere else.
3565
3566 Thu Feb 11 14:09:42 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3567
3568         * aout-mipsbsd.c: Eliminated uses of DEFUN.
3569         (aout_mips_*_vec): Added seclet_link element.
3570
3571         * Makefile.in (BFD_BACKENDS, CFILES, aout-mipsbsd.o): Added
3572         support for aout-mipsbsd target.
3573
3574         * bout.c (get_value): Don't truncate 32-bit addend to 16 bits.
3575
3576 Fri Feb  5 08:08:43 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3577
3578         * cpu-h8500.c (scan_mach): return false if it's not an H8/500
3579
3580 Thu Feb  4 12:52:40 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3581
3582         Add support for the H8/500
3583
3584         * coff-h8500.c, cpu-h8500.c, archures.c, coffcode.h, targets.c
3585
3586 Thu Feb  4 12:35:02 1993  Ian Lance Taylor  (ian@cygnus.com)
3587
3588         * libecoff.h: New file.  Defines ECOFF backend data for gdb.
3589         * coff-mips.c: Now includes libecoff.h.
3590         (ecoff_data_type): Moved to libecoff.h.
3591         (ecoff_slurp_symbolic_info): Made globally visible so that gdb can
3592         call it.  If there is ever another ECOFF target, this and the
3593         swapping functions should be accessed via an ECOFF specific target
3594         vector.
3595         * Makefile.in (coff-mips.o): Depends on libecoff.h.
3596
3597 Wed Feb  3 09:14:36 1993  Ian Lance Taylor  (ian@cygnus.com)
3598
3599         * coffcode.h: Removed MIPS specific information, since coff-mips.c
3600         no longer includes this file.
3601
3602         * coff-msym.c (ecoff_swap_fdr_in, ecoff_swap_ext_in): Set reserved
3603         bits to 0 to make comparison test useful.
3604
3605         * config/irix3.mh, config/irix4.mh (HDEFINES): Set to -G 4 to
3606         avoid overflowing GP accessible sections in binutils/objdump.
3607
3608 Tue Feb  2 15:36:55 1993  Per Bothner  (bothner@cygnus.com)
3609
3610         * aoutx.h (NAME(aout,slurp_symbol_table)):  Made symbol
3611         reading more robust:  Fail if string index is out of string
3612         table range.
3613
3614 Tue Feb  2 11:43:25 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3615
3616         * bout.c (b_out_get_relocated_section_contents, cases PCREL24 and
3617         PCREL13): Don't take dst_address into account; the input file has
3618         already taken care of that.
3619
3620 Tue Feb  2 11:41:06 1993  Ian Lance Taylor  (ian@cygnus.com)
3621
3622         * coff-mips.c: Completed support for linker and binutils.
3623
3624 Mon Feb  1 14:45:38 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3625
3626         * bout.c (b_out_get_relocated_section_contents, case ABS32): Keep
3627         original addend from section contents.
3628
3629 Thu Jan 28 21:01:37 1993  John Gilmore  (gnu@cygnus.com)
3630
3631         Fix minor bugs reported by Carl Greco, <cgreco@parrot.creighton.edu>:
3632         * hosts/delta88.h (strtol):  Fix prototype.
3633         * config/m88k-coff.mt (SELECT_ARCHITECTURES):  Fix name.
3634
3635 Wed Jan 27 17:16:51 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3636
3637         * elf.c: Get rid of "#ifdef sparc".
3638         (RELOC_TYPE_NAMES): Never used (currently), so don't include it.
3639         (elf_sparc_howto_table): Renamed from elf_howto_table, and always
3640         used.
3641         (elf_info_to_howto): Use runtime conditionals on CPU type, not
3642         compile type conditionals on host CPU.
3643         (elf_little_vec, elf_big_vec): Use bfd_default_reloc_type_lookup,
3644         not null pointer.
3645         (reloc_type, RELOC_TYPE_NAMES): Include i386 values.
3646
3647 Tue Jan 26 11:43:14 1993  Ian Lance Taylor  (ian@cygnus.com)
3648
3649         * section.c (SEC_IS_COMMON): New section flag, needed for MIPS
3650         ECOFF which has two common sections.
3651         (bfd_com_section): Set SEC_IS_COMMON flag.
3652         * bfd-in.h (bfd_is_com_section): New macro to test SEC_IS_COMMON.
3653         * aoutx.h, archive.c, bout.c, coff-a29k.c, coff-m88k.c,
3654         coff-mips.c, coffgen.c, ieee.c, oasys.c, reloc.c, syms.: Use
3655         bfd_is_com_section macro rather than checking for equality to
3656         bfd_com_section.
3657
3658 Mon Jan 25 15:27:36 1993  Ian Lance Taylor  (ian@cygnus.com)
3659
3660         * coffcode.h (_bfd_coff_mkobject_hook): Pass aouthdr argument.
3661         (coff_mkobject_hook): Accept aouthdr argument.
3662         * coffgen.c (coff_real_object_p): Pass aouthdr to mkobject_hook.
3663         Handle NULL aouthdr argument.
3664         (coff_object_p): If there is no aouthdr, pass it as NULL to
3665         coff_real_object_p.
3666         * libcoff.h: Rebuilt for mkobject_hook changes.
3667
3668         * coffswap.h (coff_swap_aouthdr_in, coff_swap_aouthdr_in): Swap
3669         additional MIPS ECOFF fields.
3670
3671 Sat Jan 23 18:36:20 PST 1993  Ralph Campbell  (ralphc@pyramid.com)
3672
3673         * configure.host: added mips-dec-bsd*
3674         * configure.in: added mips-dec-bsd*
3675         * aout-mipsbsd.c: new file for mips-dec-bsd*
3676         * aout-target.h: don't define '' if 'MY_BFD_TARGET' is defined.
3677         * aoutx.h: added mips support.
3678         * archures.c: added mips support to bfd_default_scan().
3679         * cpu-mips.c: added support for R4000 (untested).
3680         * libaout.h: added MIPS1 & MIPS2 magic numbers.
3681         * reloc.c: fix typo's in comments. Added BFD_RELOC entries which I
3682                 hope will make it into include/bfd.h.
3683         * targets.c: added aout_mips_*_vec.
3684
3685 Wed Jan 20 17:15:52 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
3686
3687         * config/decstation.mt: Set DEFAULT_VECTOR to ecoff_little_vec.
3688
3689 Tue Jan 19 09:06:14 1993  Ian Lance Taylor  (ian@cygnus.com)
3690
3691         * bfd-in.h (bfd_asymbol_value): Add needed parentheses.
3692
3693         * libcoff-in.h: Update prototype for coff_count_linenumbers.
3694
3695 Fri Jan 15 18:13:17 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
3696
3697         * coff-msym.c (ecoff_swap_hdr_out, ecoff_swap_fdr_out,
3698         ecoff_swap_pdr_out, ecoff_swap_sym_out, ecoff_swap_ext_out,
3699         ecoff_swap_rndx_out, ecoff_swap_rfd_out, ecoff_swap_opt_in,
3700         ecoff_swap_opt_out, ecoff_swap_dnr_in, ecoff_swap_dnr_out): New
3701         functions.
3702         * coffswap.h: If NO_COFF_RELOCS is defined, don't define
3703         bfd_swap_reloc_in or coff_swap_reloc_out.
3704         * coff-mips.c: Added code to link and write out symbolic debugging
3705         information, and to swap relocs in and out.
3706
3707 Thu Jan 14 15:51:58 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3708
3709         * libcoff.h, coffgen.c (coff_count_linenumbers), coffcode.h
3710         (coff_write_object_contents): coff_count_linenumbers returns the
3711         number of line number records it found.
3712
3713         * coffgen.c (coff_write_linenumbers): only write out line numbers
3714         in the section they belong to.
3715
3716 Mon Jan 11 18:32:22 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
3717
3718         * targets.c (bfd_target): Added relocateable argument to
3719         _bfd_get_relocated_section_contents.  Added _bfd_seclet_link
3720         target vector for linker use.
3721         * bfd.c (bfd_seclet_link): New macro.
3722         * bfd-in.h (JUMP_TABLE): Added _bfd_seclet_link.
3723         * seclet.c (rel, seclet_dump_seclet): Added relocateable argument
3724         and boolean return value.  Made static.
3725         (bfd_generic_seclet_link): Renamed from seclet_dump.  Added
3726         relocateable argument.
3727         * reloc.c (bfd_generic_get_relocated_section_contents): Added
3728         relocateable argument (if relocateable, saves relocs).
3729         * bout.c (b_out_get_relocated_section_contents),
3730         reloc16.c (bfd_coff_reloc16_get_relocated_section_contents): Added
3731         relocateable argument (if relocateable, just calls
3732         bfd_generic_get_relocated_section_contents).
3733         * libcoff-in.h (bfd_coff_reloc16_get_value): Added relocateable
3734         argument to prototype.
3735         * All targets: Set new _bfd_seclet_link vector to
3736         bfd_generic_seclet_link.
3737
3738 Sat Jan  9 21:29:32 1993  Stu Grossman  (grossman at cygnus.com)
3739
3740         * coffgen.c:  #include seclet.h.
3741
3742 Sat Jan  9 19:48:14 1993  Stu Grossman  (grossman at cygnus.com)
3743
3744         * hppa.c (hppa_object_setup):  Get rid of all knowledge of stabs
3745         debug info.  Setup info about linker symbols only, and use
3746         standard bfd fields to hold the info.
3747         * (hppa_object_p):  Remove unneeded decls.
3748         * (hppa_new_section_hook):  Get rid of most of this.
3749         * libhppa.h (struct hppadata):  Remove ten pounds of useless ugly
3750         fat.  Remove all knowledge of stabs, remove redundant knowledge of
3751         linker symbols.
3752         * Remove macros for accessing fields which are now gone.
3753
3754 Fri Jan  8 15:20:00 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3755
3756         * coffcode.h (sec_to_styp_flags): allow SEC_NEVER_LOAD to turn on
3757         STYP_NOLOAD bit.
3758         * coff-z8k.c: delete unused reloc functions
3759
3760 Fri Jan  8 15:47:53 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
3761
3762         * bfd.c (struct _bfd): Added ecoff_tdata to tdata union.
3763         * targets.c (enum target_flavour): Added bfd_target_ecoff_flavour.
3764         * coff-msym.c: Use DEFUN for function definitons.
3765         * coff-mips.c: Added code to read and print symbols, and to find
3766         line numbers.
3767
3768         * coffcode.h: Moved many generic functions into coffgen.c.  Moved
3769         swapping functions into coffswap.h for ECOFF use.  Moved
3770         relocation functions, only used by h8300 and z8k, into reloc16.c.
3771         Added hooks for coffgen.c functions to backend data structure, and
3772         added hook functions.  Still more could be done.
3773         * coffswap.h: New file to hold COFF swapping routines.
3774         * coffgen.c: New file to hold generic COFF functions.
3775         * reloc16.c: New file to hold h8300 and z8k specific relocation
3776         functions.
3777         * libcoff-in.h: Added declarations for functions in coffgen.c.
3778         * libcoff.h: Rebuilt to incorporate changes.
3779         * coff-h8300.c: Function name changes.
3780         * coff-z8k.c: Function name changes.  Use coff_reloc16_extra_cases
3781         hook rather than defining EXTRA_CASES.
3782         * Makefile.in: Build new files coffgen and reloc16.  Added
3783         dependencies of coff-*.o on coffswap.h and seclet.h.
3784
3785 Thu Jan  7 16:16:26 1993  Per Bothner  (bothner@cygnus.com)
3786
3787         * ieee.c (ieee_slurp_sections):  Add cast to avoid warning
3788         about discarding const.
3789
3790 Wed Jan  6 00:16:49 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3791
3792         * archive.c, seclet.c, elf.c use bfd_xmalloc instead of malloc
3793
3794 Tue Jan  5 09:35:57 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3795
3796         * configure.in (post-target): If --with-minimal-bfd is specified,
3797         set MINIMIZE=1.
3798
3799 Mon Jan  4 07:20:01 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
3800
3801         * srec.c (srec_write_records): one of my boards wants a CR between
3802         records.
3803
3804 Wed Dec 30 12:46:30 1992  Ian Lance Taylor  (ian@cygnus.com)
3805
3806         * archive.c (do_slurp_coff_armap): set symdef_count correctly
3807         (it broke a couple of weeks ago).
3808
3809 Tue Dec 29 21:41:05 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3810
3811         * elf.c (bfd_elf_find_section): Switch back to "struct ..." for
3812         return type, so libbfd.h doesn't reference undefined typedefnames.
3813
3814 Tue Dec 29 13:54:35 1992  Ian Lance Taylor  (ian@cygnus.com)
3815
3816         * coffcode.h (coff_real_object_p): use name I386AIXMAGIC rather
3817         than I386SVMAGIC.
3818         (coff_pointerize_aux): don't pointerize a negative tagndx
3819         (sometimes generated by SCO 3.2v4 cc).
3820
3821         * bout.c (calljx_callback, callj_callback,
3822         b_out_get_relocated_section_contents): warn if relocating against
3823         an undefined symbol.
3824
3825 Mon Dec 28 14:30:55 1992  Stu Grossman  (grossman at cygnus.com)
3826
3827         * hppa.c:  Get rid of DEFUN, use more conventional prolog stuff.
3828         Make a bunch more routines be static.
3829         * hppa.c (fill_spaces):  Get rid of this, replace with much better
3830         written setup_sections().
3831         * (setup_sections):  New routine to create BFD sections for each
3832         space and subspace in SOM files.
3833         * (hppa_object_setup):  Use BFD sections created by
3834         setup_sections() to locate GDB symbol table info.
3835         * (make_unique_section):  New routine to create a BFD section.  It
3836         ensures that the given name is unique, and will generate a unique
3837         one if necessary.
3838         * (hppa_object_p):  Become much more paranoid about file header.
3839         * (make_bfd_asection):  Call bfd_make_section to do the dirty
3840         work.  Simplify code somewhat.
3841         * (hppa_core_file_p):  Use proper name for stack section.
3842         * libhppa.h:  Remove millicode_start, millicode_end decls.
3843
3844 Mon Dec 28 11:03:22 1992  Ken Raeburn  (raeburn@cygnus.com)
3845
3846         * Makefile.in (coff-we32k.o, coff-z8k.o): Note dependencies.
3847
3848         * reloc.c (bfd_perform_relocation): For normal 2- or 4-byte
3849         relocs, don't bother doing the adjustment if the value to add is
3850         zero.
3851
3852 Sun Dec 27 17:45:05 1992  Fred Fish  (fnf@cygnus.com)
3853
3854         * bfd.c (bfd_get_size):  New function that gets an upper bound
3855         on the possible size of any object in a bfd.
3856         * elf.c (bfd_elf_find_section, elf_get_str_section,
3857         elf_get_symtab_upper_bound):  Rewrite to avoid NULL pointer
3858         dereferences.
3859         * elf.c (elf_big_vec, elf_little_vec):  Document last three
3860         members initialized to NULL.
3861
3862 Thu Dec 24 17:49:09 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3863
3864         * hppa.c: change a 'const' to 'CONST', or else HP C compiler dies
3865
3866 Mon Dec 21 16:33:34 1992  Per Bothner  (bothner@rtl.cygnus.com)
3867
3868         * hosts/std-host.h:  New file.  Attempt at a generic/default
3869         set of definitions, to discourage porting to new hosts by copying.
3870         * hosts/news.h:  Removed.
3871         * hosts/sparc.h:  Use std-host.h.
3872         * bfd-in.h:  New macros bfd_asymbol_bfd and bfd_asymbol_flavour;
3873         perhaps we can later remove the the_bfd field from each symbol.
3874         * syms.c (struct symbol_cache_entry):  Remove unused field
3875         app_data.  Add comment noting that the_bfd is almost redundant,
3876         but not quite.
3877         * aoutx.h, coff-a29k.c, coff-i386.c, coff-i960.c, coffcode.h:
3878         Use new macros bfd_asymbol_bfd and bfd_asymbol_flavour.
3879         * hppa.c (fill_spaces):  Make slightly more rebust.
3880         * configure.in:  Allow std-host as the "default" host.
3881
3882 Mon Dec 21 17:24:13 1992  Stu Grossman  (grossman at cygnus.com)
3883
3884         * bfd.c:  Add struct hppa_core_data to tdata union.
3885         * hppa.c:  Conditionalize on HOST_HPPAHPUX instead of hp9000s800.
3886         Get rid of HPPA/BSD specific code.  That will go somewhere else
3887         someday.
3888         * (fill_spaces):  Don't spin forever and die if you don't find
3889         $MILLICODE$ subspace.
3890         * (hppa_object_p):  Make sure that we have a real honest-to-cthulu
3891         exec file!
3892         * (hppa_core_file_failing_signal, hppa_core_file_failing_command):
3893         Make these work for HPUX.
3894         * (make_bfd_asection):  New routine to make section creation a
3895         little easier.
3896         * (hppa_core_file_p):  Completely rewrite, leave out bugs.
3897         * libhppa.h:  #include the right system files.  Redefine all of
3898         the structs/macros for hacking core files to use more sensible
3899         HPUX core file structures.
3900         * targets.c (target_vector):  Conditionalize hppa_vec on
3901         HOST_HPPAHPUX, not hp9000s800.
3902         * hosts/hppahpux.h:  #include stdlib.h to get correct decls for
3903         malloc and realloc.  #define HOST_HPPAHPUX.
3904
3905 Mon Dec 21 12:40:10 1992  Ian Lance Taylor  (ian@cygnus.com)
3906
3907         * Patches from Minh Tran-le <mtranle@paris.intellicorp.com>.
3908         * configure.in (i386-*-isc*, i386-*-aix*): New targets.
3909         * configure.host (i386-*-isc*, i386-*-aix*): New hosts.
3910         * hosts/i386isc.h, config/i386isc.mh: New files for Interactive
3911         Unix.
3912         * hosts/i386aix.h, config/i386aix.mh: New files for AIX on PS/2.
3913         * aix386-core.c: New file for handling core files on AIX on PS/2.
3914         * targets.c: if AIX386_CORE, use aix386_core_vec.
3915         * coffcode.h (coff_real_object_p): check for I386SVMAGIC as well
3916         as I386MAGIC.
3917
3918 Fri Dec 18 10:20:27 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
3919
3920         * aoutf1.h (sunos4_write_object_contents): set flags to 0, fixing
3921         1927.
3922
3923 Thu Dec 17 19:35:32 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
3924
3925         * Makefile.in: added dvi target
3926
3927 Thu Dec 17 00:36:24 1992  John Gilmore  (gnu@cygnus.com)
3928
3929         * bfd.c:  Use right name for tekhex tdata struct.
3930         * tekhex.c:  Insert leading_char (0) into bfd_target struct.  Style.
3931         * libcoff.h:  Updated to get spacing change from coffcode.h.
3932         * trad-core.c:  leading_char is 0 (no symbols!), not '_'.
3933
3934 Tue Dec 15 15:40:30 1992  Per Bothner  (bothner@cygnus.com)
3935
3936         * archive.c (do_slurp_bsd_armap, do_slurp_coff_armap):  New
3937         functions, with the "guts" of the old bfd_slurp_bsd_armap
3938         and bfd_slurp_coff_armap, but assuming we've already checked
3939         if the armap is present or not.
3940         Also, rewrite a bit to avoid keeping around obstack data
3941         that we don't need.
3942         * archive.c (snarf_ar_header, _bfd_slurp_extended_name_table):
3943         Various fixes to correctly handle COFF_style archives names.
3944         (Note that because these have a trailing '/', the names can
3945         have embedded spaces.)
3946         * archive.c (bfd_slurp_armap):  New function, replaces old
3947         bfd_slurp_bsd_armap and bfd_slurp_coff_armap.  Recognizes
3948         _either_ format, and calls do_slurp_bsd_armap or
3949         do_slurp_coff_armap if either form of map is seen.
3950         * libbfd-in.h:  Changed bfd_slurp_bsd_armap and
3951         bfd_slurp_coff_armap into macro synonyms for bfd_slurp_armap.
3952         * elf.c (elf_slurp_armap, elf_write_armap):  Fix.
3953         * Makefile.in (AR_FLAGS):  Use rc instead of non-standard qc.
3954
3955 Mon Dec 14 17:08:08 1992  Stu Grossman  (grossman at cygnus.com)
3956
3957         * hppa.c:  #include "sysdep.h", not <sysdep.h>.
3958         * libhppa.h:  Make millicode_start and millicode_end be unsigned
3959         int to be same type as CORE_ADDR in GDB.  Why are these here?
3960
3961 Sat Dec 12 15:54:36 1992  Ian Lance Taylor  (ian@cygnus.com)
3962
3963         * coff-i386.c (CALC_ADDEND): if reloc is PC relative, add the
3964         vaddr of the section to the addend.
3965         * targets.c: if MINIMIZE is 1, and SCO_CORE is defined, add
3966         SCO_CORE to SELECT_VECS.
3967         (target_vector): add sco_core_vec.
3968         * sco-core.c (sco_core_vec): add leading underscore initializer.
3969         * configure.in (i[34]86-*-sco*): use target i386-sco.
3970         * config/i386-sco.mt: new file; define SCO_CORE.
3971
3972 Thu Dec 10 02:13:15 1992  John Gilmore  (gnu@cygnus.com)
3973
3974         * aout-adobe.c (aout_adobe_object_p):  Fix !strcmp thinko.
3975
3976 Fri Dec  4 14:02:49 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3977
3978         * coffcode.h (bfd_coff_std_swap_table): Now static and const.
3979
3980 Thu Dec  3 16:54:58 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
3981
3982         * hosts/i386linux.h: Include unistd.h.
3983
3984         * aoutx.h (print_symbol): aout_stab_name returns a constant
3985         string.
3986         * libaout.h (aout_stab_name): Fix prototype.
3987         * stab-syms.c (aout_stab_names): Array is now const.
3988         (aout_stab_name): Return value is now pointer to const.
3989
3990         * aoutx.h, archive.c, archures.c, coffcode.h, ctor.c, reloc.c,
3991         syms.c: Doc fixes.
3992
3993         * syms.c (asymbol): Added new field "app_data", for data
3994         particular to the application.  Some of the linker flags ought to
3995         get moved to this field someday.
3996
3997         * archures.c (bfd_default_scan): Recognize a few more numbers:
3998         80486, 80960, and 960.
3999
4000         * bfd-in.h (COFF_SWAP_TABLE): New is just address of
4001         bfd_coff_std_swap_table, cast to PTR.
4002         * bfd.c (bfd_coff_swap_*): Deleted macros.
4003         * targets.c (struct bfd_target): Deleted COFF-specific swapping
4004         routine pointers.
4005         * coffcode.h (type bfd_coff_backend_data): New structure type,
4006         contains pointers to the COFF-specific swapping routines.
4007         (bfd_coff_std_swap_table): New data structure, to be used when
4008         NO_COFF_SYMBOLS and NO_COFF_LINENOS are not defined.
4009         (bfd_coff_swap_*): New macros.
4010         * coff-mips.c (mips_coff_swap_table): New data structure.
4011         (ecoff_big_vec): Use it.
4012         * All COFF targets: Moved COFF_SWAP_TABLE to target-specific data.
4013         * All other targets: Deleted coff-specific vector entries.
4014
4015         * trad-core.c: Fixed some `PARAMS' uses that were missing
4016         parentheses.
4017
4018 Sun Nov 29 08:37:13 1992  Fred Fish  (fnf@cygnus.com)
4019
4020         * aoutx.h (some_aout_object_p):  Protect arg prototype in
4021         callback_to_real_object_p with PARAMS macro for non-ANSI compilers.
4022
4023 Sat Nov 28 04:01:21 1992  John Gilmore  (gnu@cygnus.com)
4024
4025         * aout-target.h, aoutf1.h, trad-core.c, coffcode.h, libaout.h,
4026         libbfd-in.h, bfd-in.h: Eliminate all PROTO calls, replace with
4027         PARAMS for readability.
4028
4029         * aoutx.h:  Add type to callback parameter.
4030         * coff-mips.c:  Don't call trad-core.h, not needed.
4031         * trad-core.c:  Incorporate trad-core.h declarations.  Fix comments.
4032         * trad-core.h:  Eliminate, unused.
4033
4034 Wed Nov 18 13:16:17 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4035
4036         * format.c (bfd_check_format): if default target isn't found
4037         then look through the entire list rather than return early.
4038
4039 Mon Nov 16 14:33:03 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4040
4041         * config/i960-coff.mt: reorder vec to match bfd_check_format (from Per)
4042
4043 Thu Nov 12 17:01:41 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4044
4045         * Makefile.in: pass down prefix and exec_prefix in FLAGS_TO_PASS
4046
4047 Thu Nov 12 09:46:47 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4048
4049         * coff-z8k.c: checkpoint, more addressing modes handled
4050         * coffcode.h (get_value): don't truncate reloc->addend field, it's
4051         a long now.
4052
4053 Wed Nov 11 23:57:55 1992  Brendan Kehoe  (brendan@cygnus.com)
4054
4055         * we32k.mt (TDEFAULTS): Use we32kcoff_vec, not i386coff_vec.
4056
4057 Tue Nov 10 14:04:38 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4058
4059         * Makefile.in: minor tweaks to make $(CC) command lines more consistent
4060
4061 Mon Nov  9 23:58:17 1992  John Gilmore  (gnu@cygnus.com)
4062
4063         * opncls.c (bfd_fdopenr, bfd_close):  Add doc about cacheing
4064         and about when file descriptors are closed.
4065
4066 Sat Nov  7 00:42:20 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
4067
4068         * bout.c (b_out_squirt_out_relocs): Make sure alignment relocs get
4069         written out correctly.
4070
4071 Thu Nov  5 15:34:19 1992  Ian Lance Taylor  (ian@cygnus.com)
4072
4073         * section.c: New section bit SEC_SHARED_LIBRARY.
4074         coffcode.h (styp_to_sec_flags): if STYP_NOLOAD && (STYP_TEXT ||
4075         STYP_DATA), set SEC_SHARED_LIBRARY.  This seems to be correct for
4076         i386-sysv.
4077
4078 Thu Nov  5 04:43:09 1992  John Gilmore  (gnu@cygnus.com)
4079
4080         * target.c (struct bfd_target):  Eliminate the SDEF and SDEF_FMT
4081         macros; use PARAMS to declare the function pointers involved.
4082
4083         * bfd-in.h, bfd.c, libbfd.h, reloc.c, seclet.h, section.c,
4084         targets.c: Rename struct bfd_seclet_struct to struct bfd_seclet.
4085
4086 Thu Nov  5 02:59:09 1992  John Gilmore  (gnu@cygnus.com)
4087
4088         Cleanup:  Replace all uses of EXFUN in the BFD sources, with PARAMS.
4089
4090         * archures.c, reloc.c, section.c, tekhex.c:  Use PARAMS in
4091         declaring pointers to functions.
4092         * cache.c, elf.c:  Move static function decls to top, use PARAMS.
4093         * seclet.h:  Declare external function with PARAMS.
4094
4095         * doc/chew.c (exfunstuff):  Eliminate.
4096         (paramstuff):  Replace exfunstuff with function to generate PARAMS.
4097         * doc/proto.str:  Use paramstuff rather than exfunstuff.
4098
4099         * libbfd.h:  Update, based on changes in source code and chew.
4100
4101 Wed Nov  4 22:47:29 1992  John Gilmore  (gnu@cygnus.com)
4102
4103         * libieee.h:  Add FIXME about removing limit on number of sections.
4104         * bfd-in.h:  Improve comments to make it clear that bfd.h is
4105         the wrong place to edit this file.
4106         * Makefile.in (install):  Install ansidecl.h and obstack.h in the
4107         same places where we install bfd.h.
4108
4109 Wed Nov  4 13:40:23 1992  Sean Eric Fagan  (sef@cygnus.com)
4110
4111         * coffcode.h (coff_swap_aux_out, coff_swap_aux_in):  check for
4112         symbol type before blindly modifying the auxent.  Specifically,
4113         only modify the endndx fields for types that need it, and don't
4114         set the array information for non-arrays.
4115
4116 Wed Nov  4 09:30:50 1992  Ken Raeburn  (raeburn@cygnus.com)
4117
4118         * aoutx.h (some_aout_object_p): Section list should be set up
4119         correctly anyways; don't have to set up "next" pointers manually.
4120
4121 Mon Nov  2 12:36:14 1992  Ian Lance Taylor  (ian@cygnus.com)
4122
4123         * config/delta88.mh, config/hp300.mh, config/hppahpux.mh,
4124         config/i386v.mh: removed -DUSG from HDEFINES.
4125         hosts/delta88.h, hosts/hp300.h, hosts/hppahpux.h, hosts/i386v.h:
4126         defined USE_UTIME.
4127         hosts/i386v.h: don't define POSIX_UTIME.
4128
4129 Fri Oct 30 16:13:52 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4130
4131         * ieee.c (ieee_slurp_sections): make a private copy of the
4132         section's name before truncating it.
4133
4134 Thu Oct 29 08:30:50 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4135
4136         * hppa.c: add symbol_leading_char entry in transfer vec
4137
4138 ,Wed Oct 28 16:11:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4139
4140         * ieee.c (get_symbol): can now cope when two symbols of a
4141         different class, but the same index number occur consecutively.
4142         (get_section_entry): nicer name for sections being forward
4143         referenced. (ieee_archive_p): don't free the filename string,
4144         since it was never malloced.
4145
4146 Wed Oct 28 13:42:09 1992  John Gilmore  (gnu@cygnus.com)
4147
4148         * coffcode.h (coff_write_object_contents):  Zero timestamp field.
4149
4150 Tue Oct 27 12:24:34 1992  Ian Lance Taylor  (ian@cygnus.com)
4151
4152         * coffcode.h (coff_swap_aux_out): set the fcnary info before
4153         optionally setting the dimen info, since they are in the same
4154         memory locations.  Also zero out external auxent.
4155         (coff_write_symbol): don't zero external auxent; now done in
4156         coff_swap_aux_out.
4157
4158 Fri Oct 23 13:55:35 1992  Ian Lance Taylor  (ian@cygnus.com)
4159
4160         * Check fclose return value for errors.
4161         libbfd.h: bfd_cache_close now returns a boolean.
4162         cache.c (bfd_cache_delete): return fclose success value.
4163         (bfd_cache_close): return bfd_cache_delete return value.
4164         opncls.c (bfd_close, bfd_close_all_done): return result of
4165         bfd_cache_close.
4166
4167 Fri Oct 23 10:32:36 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4168
4169         * seclet.c (rel): don't load sections without the SEC_LOAD bit.
4170
4171 Thu Oct 15 10:16:35 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4172
4173         * coff-m68k.c (m68k_howto2type, SELECT_RELOC): new function to
4174         work out a coff relocation type from a howto's attributes rather
4175         than using the input r_type field. This fixes PR1677 and allows
4176         conversion of a.out relocs to coff relocs.
4177
4178         * coffcode.h (coff_write_relocs): if supplied a relocation
4179         relative to an absolute symbol, use the right symbol index.
4180
4181         * reloc.c (bfd_perform_relocation): do a partial link for coff
4182         relocs right.
4183
4184 Fri Oct 23 08:15:56 1992  Ian Lance Taylor  (ian@cygnus.com)
4185
4186         * changes to support i386-sysv with shared libraries:
4187         * coffcode.h (sec_to_styp_flags): if TWO_DATA_SECS is defined,
4188         check for .data2; if _LIB is defined, check for it; map
4189         SEC_NEVER_LOAD to STYP_NOLOAD.
4190         (styp_to_sec_flags): map STYP_NOLOAD to SEC_NEVER_LOAD.
4191         (make_a_section_from_file): if TWO_DATA_SECS, accept .data2.
4192         (coff_write_object_contents): force vaddr of .lib to 0; set scnptr
4193         if section has contents, not just if it is loadable; if
4194         TWO_DATA_SECS, check for .data2
4195         (coff_set_section_contents): set vma of .lib section to number of
4196         .lib sections.
4197         * coff-i386.c: define TWO_DATA_SECS; use a special CALC_ADDEND;
4198         don't define coff_write_armap to bsd_write_armap.
4199         * hosts/i386v.h: don't include <utime.h>, since it is not provided
4200         by SVR3.2.
4201
4202 Thu Oct 22 22:40:20 1992  Brendan Kehoe  (brendan@lisa.cygnus.com)
4203
4204         * solaris2.h: Get the definition of alloca from alloca.h if we
4205         aren't using gcc.
4206
4207 Thu Oct 22 03:07:28 1992  John Gilmore  (gnu@cygnus.com)
4208
4209         * configure.in (i960-*-{aout,bout}):  Support these.
4210
4211 Wed Oct 21 03:46:34 1992  John Gilmore  (gnu@cygnus.com)
4212
4213         * config/a29k-aout.mt (DEFAULT_TARGET):  Set to one that exists.
4214
4215 Thu Oct 15 15:05:39 1992  Per Bothner  (bothner@cygnus.com)
4216
4217         * apollo68.h, apollov68.h, hp300.h, i386v.h, irix3.h: Remove
4218         no-longer-used definitions of L_SET and L_INCR.
4219         * i386linux.h:  Tweaks to smooth Linux build.
4220
4221 Thu Oct 15 01:32:22 1992  John Gilmore  (gnu@cygnus.com)
4222
4223         * seclet.h:  Add enum tag to bfd_seclet_enum_type.
4224
4225         * bfd-in.h (file_ptr):  Update comments, make FIXME re off_t.
4226
4227         * aout-adobe.c, aoutf1.h, archive.c, bout.c, coff-rs6000.c,
4228         coffcode.h, elf.c, ieee.c, libaout.h, libbfd.c, oasys.c,
4229         sco-core.c:  Lint:  Second argument of bfd_seek is always file_ptr.
4230         Third argument is SEEK_SET or SEEK_CUR.  Result is always 0 or -1.
4231
4232         * aout-adobe.c, aoutf1.h, aoutx.h, bout.c coff-m68k.c, coff-z8k.c,
4233         coffcode.h, elf.c, libaout.h, libbfd-in.h, srec.c:  Lint.
4234
4235 Fri Oct  9 03:46:37 1992  John Gilmore  (gnu@cygnus.com)
4236
4237         * configure.host:  New file, contains mapping of host configs
4238         to host support file names for bfd, binutils, opcodes.
4239         * configure.in:  Use it.
4240         * i386aout.c:  Cleanup, dump TARGET_IS_LITTLE_ENDIAN_P.
4241         * i386bsd.c:  Cleanup, reformat.
4242         * config/i386-bsd.mt:  Comment changes.
4243         * config/i386bsd.mh:  New file for core file support.
4244         * hosts/i386bsd.h:  Merge changes from Peter Schauer.
4245         * bout.c (ALIGN):  Rename to ALIGNER, since system header files
4246         on BSD 4.4 define ALIGN (sigh!).
4247
4248 Thu Oct  8 22:18:10 1992  Mark Eichin  (eichin at tweedledumber.cygnus.com)
4249
4250         * libaout.h (aout_backend_data): added exec_header_not_counted
4251         field. For ZMAGIC files only, when text_includes_header is set, by
4252         default the length of the exec header is counted in the text
4253         section size. For go32, exec header is mapped in but does *not*
4254         contribute to the size of section.
4255         * aoutx.h (aout_adjust_sizes_and_vmas): if exec_header_not_counted
4256         is not set, but ztih is, add the size of the exec header to the
4257         recorded size of the text section.
4258         * aoutf1.h (sunos4_aout_backend): clear exec_header_not_counted.
4259         * i386aout.c (i386aout_backend_data): set exec_header_not_counted.
4260         Also set text_includes_header.
4261         * aout-target.h (*_backend_data): cleare exec_header_not_counted
4262         by default in MY(backend_data).
4263
4264 Thu Oct  8 18:12:49 1992  Ken Raeburn  (raeburn@cygnus.com)
4265
4266         * aout-target.h (callback): Don't define this function if it won't be
4267         used.
4268
4269         * aoutx.h (some_aout_object_p): Restore old aout_data value if this
4270         type doesn't match.  Don't lose if file sections have already been
4271         created.
4272         (set_arch_mach): Set reloc_entry_size.
4273         (slurp_symbol_table): Use bfd_h_get_{16,8} for reaeding symbol data.
4274
4275         * hosts/i386bsd.h: New file.
4276         * configure.in: Recognize i[34]86-*-bsd host.
4277
4278         * aout-target.h (callback, write_object_contents): Delete unused
4279         variables.
4280
4281         * aoutx.h (reloc_type_lookup): New function.
4282         * aout-target.h (MY_reloc_howto_type_lookup): Use it as default.
4283         * aoutf1.h (sunos4_reloc_type_lookup): Deleted.
4284         (MY_reloc_howto_type_lookup): Don't define it.
4285
4286         * aoutx.h (adjust_sizes_and_vmas): Don't bother with padding for
4287         OMAGIC files.
4288         (slurp_symbol_table): Use header byte order, not target byte
4289         order, for reading symbol data.
4290
4291 Thu Oct  8 17:33:39 1992  John Gilmore  (gnu@cygnus.com)
4292
4293         * configure.in:  Undo some brain damage in the host section.
4294         * configure.in:  Reformat the target section, test many configs.
4295         * Makefile.in (make):  Remove obsolete `make make'.
4296         * aoutx.h (some_aout_object_p):  Make defines line up.
4297
4298 Thu Oct  8 08:52:48 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4299
4300         Now a bfd knows whether underscores are normally prepended
4301         to symbols in its file format.
4302
4303         * aout-adobe.c, aout-target.h, bout.c, coff-a29k.c, coff-h8300.c,
4304         coff-z8k.c: targets set so they have leading underscore
4305         * coff-i386.c, coff-i960.c, coff-m68k.c, coff-mips.c, coff-m88k.c,
4306         coff-rs6000.c, coff-we32k.c, elf.c, ieee.c, srec.c: targets set
4307         without leading underscore flag
4308         * targets.c: add symbol leading char to xvec description
4309         * bfd-in.h (bfd_get_symbol_leading_char): new macro.
4310
4311 Mon Oct  5 14:32:55 1992  Per Bothner  (bothner@cygnus.com)
4312
4313         * archive.c:  Make errno global.
4314         * archive.c (_bfd_write_archive_contents):  If read fails (and
4315         errno!=0) set bfd_error to malformed_archive (since this probably
4316         indicates a truncated archive), rather than system_call_error.
4317
4318 Mon Oct  5 03:33:39 1992  Mark Eichin  (eichin at tweedledumber.cygnus.com)
4319
4320         * Makefile.in: added rules for i386bsd.c
4321         * i386bsd.c: new file, supporting 386bsd.
4322         * configure.in: recognize i386-*-bsd target.
4323         * config/i386-bsd.mt: new file - 386bsd target configuration.
4324
4325 Thu Oct  1 17:51:07 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4326
4327         * configure.in: re-arrange host section to use *-*-* notation,
4328         clean up some of the target section as well
4329
4330         * seclet.c: cast result of bfd_get_relocated_section_contents to
4331         avoid compiler warnings
4332
4333 Tue Sep 29 13:24:09 1992  Ken Raeburn  (raeburn@cygnus.com)
4334
4335         * coffcode.h (coff_section_symbol): Create section if it doesn't
4336         already exist.
4337
4338         * bout.c: Removed some unused variables.
4339
4340 Tue Sep 29 08:30:21 1992  Ian Lance Taylor  (ian@cygnus.com)
4341
4342         * Portability fixes from p3:
4343         coffcode.h (coff_write_relocs): removed sanity check until it
4344         works on all targets (per advice from sac).
4345         config/hp9000.mh: new file to define USG.
4346         hppa.c: #undef hppa before the JUMP_TABLE.
4347         hosts/hppahpux.h: #define NATIVE_HPPAHPUX_COMPILER if not
4348         __STDC__.
4349         targets.c (bfd_target_list): if NATIVE_HPPAHPUX_COMPILER, make
4350         local variable target volatile to avoid mysterious bug in
4351         HP9000/700 cc.
4352
4353 Sat Sep 26 03:58:49 1992  John Gilmore  (gnu@cygnus.com)
4354
4355         * config/hppabsd.mh, config.hppahpux.mh:  Remove various bogosity.
4356         * hosts/hppahpux.h:  Remove bcopy and index circumventions.
4357
4358 Fri Sep 25 22:36:52 1992  John Gilmore  (gnu@cygnus.com)
4359
4360         * coff-z8k.c (func_da, func_jr):  Lint.
4361         * coffcode.h:  Use memset rather than bzero.
4362         * elf.c:  Use memcpy rather than bcopy.
4363         * tekhex.c:  Use memset rather than bzero.
4364
4365 Fri Sep 25 19:14:48 1992  John Gilmore  (gnu@cygnus.com)
4366
4367         Add Adobe a.out support.
4368
4369         * aout-adobe.c:  New file.  So far, only reads a.out.adobe.  FIXME.
4370         * config/adobe.mt:  Add.
4371         * configure.in (*-adobe-* target):  Add.
4372         * targets.c (a_out_adobe_vec):  Add.
4373         * Makefile.in:  add aout-adobe.c.
4374
4375         * configure.in:  Put two dashes in all entries to be matched.
4376         Add comments to remind people to do this.
4377         Reorder all entries that match manufacturer names, to occur
4378         last, so they will only be matched if no more specific match
4379         occurs.  Remove manufacturers `aout', `bout', `coff', and `elf'.
4380
4381 Fri Sep 25 15:03:22 1992  Brendan Kehoe  (brendan@rtl.cygnus.com)
4382
4383         * elf.c (section_from_elf_index): Return bfd_abs_section, not 0,
4384         since we should never have a NULL section.
4385         (elf_slurp_symbol_table): If st_shndx doesn't match any of our
4386         tests, set the section to bfd_abs_section.
4387
4388 Fri Sep 25 11:11:57 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4389
4390         * coff-z8k.c: getting closer
4391         * coffcode.h (coff_get_relocated_section_contents): allow
4392         EXTRA_CASES hooks for different arches to provide different reloc
4393         types.
4394         * seclet.h: #ifndef around it to allow multiple inclusion
4395         * srec.c: minor doc fix
4396
4397 Mon Sep 21 14:33:58 1992  Ian Lance Taylor  (ian@cygnus.com)
4398
4399         * hosts/hp9000.h, hosts/irix3.h: changes from WRS.
4400
4401 Sun Sep 20 08:48:25 1992  Fred Fish  (fnf@cygnus.com)
4402
4403         * configure.in:  Use i386-elf for all i386/i486 sysv4 hosts, not
4404         just ncr.
4405
4406 Thu Sep 17 06:40:46 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
4407
4408         * bout.c (b_out_slurp_reloc_table): Clear howto field before
4409         filling in reloc, in case immediately following code doesn't set
4410         it.
4411
4412 Fri Sep 11 15:37:06 1992  Ian Lance Taylor  (ian@cygnus.com)
4413
4414         * coffcode.h (coff_renumber_symbols): set the last renumbered
4415         symbol pointer to NULL, as expected by coff_write_linenumbers.
4416         (coff_write_relocs): apparently a non-zero addend is OK for reloc
4417         type R_IHCONST used on the 29k.
4418
4419 Thu Sep 10 13:28:24 1992  John Gilmore  (gnu@cygnus.com)
4420
4421         * opncls.c (bfd_fdopenr):  Determine whether to fdopen for
4422         update, based on how the underlying file was opened.  Obsoletes
4423         FASCIST_FDOPEN.
4424         * hosts/rs6000.h, hosts/tahoe.h, hosts/vaxbsd.h:  Remove
4425         all FASCIST_FDOPEN config defines.
4426
4427 Tue Sep  8 21:37:58 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
4428
4429         * sparc-opc.c: Moved to opcodes library, now that we have one.
4430         * Makefile: Don't compile it.
4431
4432 Tue Sep  8 10:10:34 1992  Ian Lance Taylor  (ian@cygnus.com)
4433
4434         * aoutx.h: adjust_sizes_and_vmas did not return anything.
4435
4436 Thu Sep  3 19:29:04 1992  Per Bothner  (bothner@rtl.cygnus.com)
4437
4438         * section.c (bfd_set_section_flags):  Remove a sanity check.
4439         It is unfortunately broken, and prevents strip from working.
4440
4441 Thu Sep  3 16:14:40 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
4442
4443         * sparc-opc.c (condr): Remove extraneous, but harmless, backlash
4444         created by last change.
4445
4446 Thu Sep  3 13:52:38 1992  Per Bothner  (bothner@rtl.cygnus.com)
4447
4448         * reloc.c (reloc_howto_struct):  Make size field be unsigned.
4449         * bfd-in.h:  Bump to version 2.0.
4450
4451 Thu Sep  3 09:05:37 1992  Stu Grossman  (grossman at cygnus.com)
4452
4453         * bout.c, cpu-z8k.c:  Use enums when initializing structs to keep
4454         braindamaged HP/Apollo compiler happy.
4455
4456 Wed Sep  2 02:53:29 1992  John Gilmore  (gnu@cygnus.com)
4457
4458         * format.c:  Fix description of search for matching target.
4459         * aoutx.h (some_aout_object_p):  Set SEC_CODE and SEC_DATA.
4460         * targets.c:  Update description of search for matching target.
4461         * Makefile.in (do_clean, clean):  Fix infant mortality typo.
4462         (docdir):  Set to ./doc, not ${srcdir}/doc, which has no makefile.
4463         (z8k and we32k files):  `*.o: *.c': avoid Sun Make bug.
4464
4465 Wed Sep  2 00:26:32 1992  Per Bothner  (bothner@rtl.cygnus.com)
4466
4467         * Makefile.in:  Added mostlyclean/clean/distclean rules.
4468
4469 Tue Sep  1 13:38:40 1992  Per Bothner  (bothner@cygnus.com)
4470
4471         * targets.c (target_vector):  Take out oasys (unless that is
4472         the default):  Because there is no magic number in archives,
4473         there can be annoying target mis-matches.
4474
4475 Mon Aug 31 10:11:37 1992  Jim Wilson  (wilson@sphagnum.cygnus.com)
4476
4477         * sparc-opc.c: Rigorously updated to match architecture manual.
4478
4479 Mon Aug 31 08:07:58 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4480
4481         * aoutx.h (aout<n>swap_ext_reloc_out), bout.c
4482         (b_out_squirt_out_relocs): fix bug 1506 where abs symbols attached
4483         to the built-in abs_section were not written out correctly.
4484
4485 Fri Aug 28 16:29:15 1992  Ian Lance Taylor  (ian@cygnus.com)
4486
4487         * archive.c (bfd_slurp_bsd_armap): if the symdef_count is too
4488         large, assume we're using a swapped byte order and fail with
4489         wrong_format rather than dumping core.
4490
4491 Fri Aug 28 15:38:03 1992  Ken Raeburn  (raeburn@cygnus.com)
4492
4493         * Renamed opc-sparc.c to sparc-opc.c for systems with short
4494         filename constraints.
4495         * Makefile.in: Updated to reflect change.
4496
4497 Thu Aug 27 13:05:28 1992  Brendan Kehoe  (brendan@cygnus.com)
4498
4499         Add preliminary support for the we32k:
4500
4501         * Makefile.in, archures.c, coffocode.h, configure.in, targets.c:
4502         Minor edits.
4503         * coff-we32k.c, cpu-we32k.c, config/we32k.mt, hosts/we32k.h: New files.
4504
4505 Wed Aug 26 14:20:16 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4506
4507         * bout.c: added support for relaxable alignment relocs.
4508
4509         * seclet.c (rel, seclet_dump_seclet, seclet_dump): get the app to
4510         pass down pointer to play area rather than use alloca
4511
4512         * cpu-z8k.c (compatible): made static to reduce name space
4513         polution.
4514
4515 Tue Aug 25 08:39:10 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4516
4517         Add basic support for the z8k:
4518
4519         * Makefile.in, archures.c, coffcode.h, configure.in, reloc.c,
4520         section.c, targets.c,
4521
4522         * syms.c: move mis-inserted patch.
4523
4524 Fri Aug 14 15:39:29 PDT 1992  Howard Chu  (hyc@hanauma.jpl.nasa.gov)
4525
4526         Documentation fixes:
4527         * ctors.c, format.c, section.c, reloc.c: append " -" to item tags.
4528         * reloc.c, section.c, syms.c, targets.c: add DOCDD before @node
4529                 comments.
4530         * reloc.c: break out addend item from surrounding text.
4531
4532         * doc.str (DOCDD): Defined. Adds text to output.
4533         (bodytext): Put bulletize before kill_bogus_lines.
4534         * chew.c (bulletize): End itemization after a blank line, to
4535         prevent following text from being swallowed up in an item.
4536
4537 Mon Aug 24 20:50:22 1992  Stu Grossman  (grossman at cygnus.com)
4538
4539         * configure.in:  Add sparclite as a target.
4540
4541 Mon Aug 24 12:06:31 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4542
4543         * ieee.c (ieee_get_symtab): always null terminate the symbol list,
4544         lint.
4545
4546         * coffcode.h (coff_add_missing_symbols): if symbols don't come
4547         from a coff file (csym is null), dont deref them
4548
4549         * ieee.c (parse_expression): get the answer right when adding an
4550         abs+(sec+off), (ieee_generic_stat_arch_elt): call ieee_object_p
4551         on elts so that filename is filled in.
4552
4553 Thu Aug 20 19:05:48 1992  Ken Raeburn  (raeburn@cygnus.com)
4554
4555         * bout.c (howto_align_table): New set of relocs, with enough
4556         data for "objdump -r" to work.
4557         (b_out_reloc_type_lookup): Recognize alignment relocs.
4558
4559 Tue Aug 18 12:57:45 1992  Ian Lance Taylor  (ian@cygnus.com)
4560
4561         * Makefile.in: added FLAGS_TO_PASS, and used it for all recursive
4562         invocations of make.  Also, always create installation
4563         directories.
4564
4565         * config/apollov68.mh: removed -g from CC definition.
4566
4567 Mon Aug 17 13:40:08 1992  Ken Raeburn  (raeburn@cygnus.com)
4568
4569         * config/decstation.mh (HDEFINES): Specify "-G 4" to avoid
4570         overflowing gp-offset range.
4571
4572 Mon Aug 17 11:44:28 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4573
4574         * srec.c (srec_set_section_contents): don't write out sections
4575         without the LOAD and ALLOC attributes
4576
4577 Mon Aug 17 11:55:07 1992  Ken Raeburn  (raeburn@cambridge.cygnus.com)
4578
4579         * archures.c, cpu-m68k.c, cpu-sparc.c: Undo 16 June changes.
4580         * libaout.h (struct aout_backend_data): New callback "set_sizes".
4581         * aout-target.h (callback): Don't set page/seg sizes.
4582         (mkobject): Ditto.
4583         (set_sizes): New routine.
4584         (backend_data): Point to it.
4585         * aoutf1.h (sunos4_set_sizes): Heed architecture when setting sizes.
4586         (sunos4_aout_backend): Point to it.
4587         * aoutx.h (set_arch_mach): Call set_sizes callback.
4588
4589 Fri Aug 14 19:22:18 1992  Per Bothner  (bothner@cygnus.com)
4590
4591         * aout-target.h:  Make _bfd_slurp_extended_name_table be
4592         the default.  Given that we *write* the suckers (for long
4593         archive member names), we really ought to be able to read them!
4594         * trad-core.c:  Don't include <machine/reg.h>.  It doesn't
4595         seem to be needed, and many machines don't have it.
4596
4597 Thu Aug 13 09:53:39 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4598
4599         * coff-m68k.c (vector): read and write archives in coff format.
4600
4601 Tue Aug 11 12:19:42 1992  Ken Raeburn  (raeburn@cygnus.com)
4602
4603         * opc-sparc.c: New file.
4604
4605 Sat Aug  8 23:15:35 1992  Fred Fish  (fnf@cygnus.com)
4606
4607         * bout.c (bfd_reloc_status_type, callj_callback):  Cast void*
4608         pointers to bfd_byte* before performing arithmetic on them.  Such
4609         use with bare void* pointers is a gcc extension.
4610         * cache.c (bfd_cache_delete):  Forward decl with prototype form.
4611         * archive (normalize):  Add to CONST to match actual usages with
4612         CONST.
4613
4614 Mon Aug  3 00:35:29 1992  Fred Fish  (fnf@cygnus.com)
4615
4616         * configure.in:  Recognize i486 host cpu, and use i386-elf
4617         for i486-ncr-sysv4.
4618
4619 Sat Aug  1 13:49:59 1992  Fred Fish  (fnf@cygnus.com)
4620
4621         * config/stratus.mt (CC):  Remove definition.
4622         * elf.c (bfd_section_from_shdr):  Test for the possibility that
4623         section_from_elf_index returns NULL and don't dereference it.
4624
4625 Mon Jul 20 02:46:09 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
4626
4627         * add hppa_data to bfd tdata (indirectly via sef).
4628
4629         * config/hppahpux.mh: hpux is -DUSG (patch by sef)
4630
4631 Sat Jul 18 15:50:11 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4632
4633         * configure.in: error messages to stderr, not stdout
4634
4635 Fri Jul 17 18:32:46 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
4636
4637         * bfd.c, cache.c, coff-a29k.c, coff-i386.c, coff-i960.c,
4638           coff-m68k.c, coff-m88k.c, demo64.c, libaout.h, libbfd.c,
4639           oasys.c, opncls.c, sunos.c, targets.c: removed rcsid's.
4640
4641 Fri Jul 17 17:06:56 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4642
4643         * configure.in: recognize hppa* instead of hppa
4644
4645 Thu Jul 16 16:39:25 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4646
4647         * coff-m68k.c: added R_RELLONG_NEG reloc type, and changed
4648         RTYPE2HOWTO to cope with same.
4649         * reloc.c (bfd_perform_relocation): added support for size of -2
4650         (subtract a word reloc type). Updated doc.
4651
4652 Thu Jul 16 16:28:09 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
4653
4654         * Makefile.in: merged changes from progressive, removed rcsid.
4655
4656         * archures.c, archive.c, Makefile.dos: removed rcsid.
4657
4658 Thu Jul 16 08:08:25 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4659
4660         * bfd-in.h : add BFD_IS_RELAXABLE flag
4661         * bout.c (bout_swap_exec_header_[in_out]): new field in exec
4662         header e_relaxable, major hackery in callbacks
4663         * libaout.h : add space for a_relaxable.
4664         * seclet.c (rel): don't relax empty sections
4665
4666
4667 Wed Jul 15 07:57:46 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4668
4669         * section.c (STD_SECTION): add some casts to the initializers for
4670         dumb compilers
4671
4672 Tue Jul 14 14:06:28 1992  Stu Grossman  (grossman at cygnus.com)
4673
4674         * rs6000-core.c (rs6000coff_core_p):  Greatly simplify expression,
4675         and add appropriate casts to keep (picayune) aix-cc happy.
4676
4677 Mon Jul 13 05:06:51 1992  John Gilmore  (gnu at cygnus.com)
4678
4679         * elf.c (elf_slurp_symbol_table):  Now 2nd arg is where to write
4680         symbol pointers.  Punt expensive & useless bfd_realloc.  Use
4681         malloc for raw symbols, and free it before returning.
4682         (bfd_section_from_shdr):  Do not slurp symbol table until politely
4683         asked.  Do not even slurp string tables.
4684         (elf_get_symtab_upper_bound):  Count 'em without reading them.
4685         (elf_get_symtab):  This is how to politely ask.  Schlurp!
4686         This should probably just *become* elf_slurp_symbol_table, FIXME.
4687
4688 Wed Jul  8 16:24:33 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4689
4690         * archive.c (bsd_write_armap): write the timestamp of the
4691         archive header to be just a little bit later than the timestamp of
4692         the file, otherwise the linker will complain that the index is
4693         out of date.
4694
4695 Tue Jul  7 00:23:23 1992  Fred Fish  (fnf@cygnus.com)
4696
4697         * configure.in: Add m68k-ericsson-*.
4698
4699 Sat Jul  4 03:29:41 1992  John Gilmore  (gnu at cygnus.com)
4700
4701         * syms.h:  Define BSF_FILE, update BSF_SECTION_SYM desc.
4702         * elf.c:  Remove unconditional debug printf's.
4703         (elf_write_object_contents, elf_slurp_symbol_table):  Handle
4704         BSF_SECTION_SYM <=> STT_SECTION, BSF_FILE <=> STT_FILE.
4705         (elf_slurp_symbol_table):  Hand out symbols in forward, not
4706         reverse order.  Simplify duplicate code.
4707
4708 Fri Jul  3 20:23:34 1992  Fred Fish  (fnf@cygnus.com)
4709
4710         * elf.c:  Remove "(void)" casts from function calls where the
4711         return value is ignored, in accordance with GNU coding standards.
4712
4713 Tue Jun 30 16:49:12 1992  Fred Fish  (fnf@cygnus.com)
4714
4715         * hppa.c:  Apply John's standard fix to avoid "empty translation
4716         unit" warnings from some ANSI-C compilers.
4717
4718 Thu Jun 25 04:39:25 1992  John Gilmore  (gnu at cygnus.com)
4719
4720         * hosts/solaris2.h:  Configure same as sysv4.
4721
4722 Tue Jun 23 21:54:44 1992  Fred Fish  (fnf@cygnus.com)
4723
4724         * libbfd.h, libbfd-in.h (bfd_seek):  Make prototype match definition.
4725         * reloc.c (bfd_default_reloc_type_lookup):  Make cast on return
4726         type match actual return type.
4727         * elf_print_symbol (section_name):  Make CONST.
4728
4729 Mon Jun 22 17:35:24 1992  Per Bothner  (bothner@cygnus.com)
4730
4731         * i386linux.c, hosts/i386linux.h, config/i386-linux.mt:
4732         New files, for Linux (a free Unix clone for 386 machines).
4733         * Makefile.in, configure.in, targets.c:  Update accordingly.
4734
4735 Fri Jun 19 20:23:21 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4736         Lints for bfd_reloc_code_type->bfd_reloc_code_real_type, and
4737         correct calling of howto special functions and fixes from Raeburn
4738         for gas<>bfdness
4739         * archures.c: nuke bfd_reloc_code_type
4740         * bout.c, cpu-h8300.c, coff-i960.c, coff-m88k.c: special function lint
4741         * coffcode.h (styp_to_sec_flags): STYP_INFO is marked as
4742         SEC_NEVER_LOAD, various other bfdgas newness
4743         * reloc.c->libbfd.h: change protype of bfd_default_reloc_type_lookup
4744         * targets.c: change jump table vector to above
4745
4746
4747 Fri Jun 19 19:00:45 1992  John Gilmore  (gnu at cygnus.com)
4748
4749         * elf.c (bfd_elf_find_section):  Mark as INTERNAL_FUNCTION so
4750         its prototype will be included in libbfd.h.  Change result type
4751         to struct * (rather than equivalent typedef) so it can be used in
4752         the prototype, where they typedef won't be known.
4753         * libbfd.h:  Updated version.
4754
4755 Fri Jun 19 15:21:56 1992  Stu Grossman  (grossman at cygnus.com)
4756
4757         * Makefile.in, archures.c, configure.in, cpu-hppa.c, hppa.c, libhppa.h,
4758         targets.c:  HPPA merge.
4759
4760 Fri Jun 19 12:21:38 1992  John Gilmore  (gnu at cygnus.com)
4761
4762         * configure.in:  Separate Solaris2 from SYSV4 on SPARC.
4763         * config/solaris2.mh:  Kludge around Sun compiler bug.
4764
4765 Wed Jun 17 14:02:46 1992  Stu Grossman  (grossman at cygnus.com)
4766
4767         * libaout.h (aout_backend_data):  Change defs of two bitfields to
4768         be unsigned chars instead to get around rs6000 compiler problem.
4769
4770 Wed Jun 17 13:55:31 1992  Fred Fish  (fnf@cygnus.com)
4771
4772         * elf.c (bfd_section_from_shdr, elf_slurp_symbol_table):
4773         Correct misconception that there can be only one symbol table.
4774         Only call elf_slurp_symbol_table on the full symbol table, not
4775         the dynamic one which is only a subset of the full one.
4776
4777 Wed Jun 17 15:54:57 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
4778
4779         * coffcode.h (coff_compute_section_file_positions): For I960,
4780         don't align sections in file.
4781
4782 Tue Jun 16 06:28:21 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
4783
4784         * targets.c (struct bfd_target): Added field for target-specific
4785         (but not file-specific) data, for distinguishing minor
4786         characteristics between (e.g.) a.out formats.
4787
4788         * section.c (struct sec): New field user_set_vma indicates vma
4789         field should be heeded, not assumed to be unset.
4790         (STD_SECTION): Initialize that field of standard sections to zero.
4791         * bfd-in.h (bfd_set_section_vma): Set user_set_vma to true.
4792
4793         * coffcode.h (coff_write_relocs): Write out swapped reloc, not
4794         pre-swapped version.
4795
4796         * archures.c (struct bfd_arch_info): Fixed order of comment and
4797         field decl.  New fields indicate size of page and segment for
4798         architecture.
4799         * cpu-m68k.c (N): Fill in values.
4800         * cpu-sparc.c (arch_info_struct): Ditto.
4801
4802         * libaout.h (struct aout_backend_data): Various bits of data (not
4803         all used currently) with characteristics of a.out implementation.
4804         Important field for now is text_includes_header, indicating that
4805         the text section starts immediately after the file header, which
4806         gets mapped in with it.
4807         (struct aout_data): New fields indicate whether vma has been
4808         adjusted yet (not yet used), and what magic number will be used in
4809         the output file (should go away in favor of vma_adjusted).
4810         (WRITE_HEADERS): Code for dealing with section sizes and related
4811         header fields replaced with call to adjust_sizes_and_vmas.
4812         * aoutx.h (some_aout_object_p): Fill in magic number field.
4813         Set WP_TEXT flag for ZMAGIC as well as NMAGIC files.
4814         (set_arch_mach): Set page size and segment size once CPU
4815         type is known.
4816         (adjust_sizes_and_vmas): New function; has much code moved
4817         from set_section_contents and WRITE_HEADERS.  Sets or adjusts vma
4818         and size parameters, as well as many header fields, after deciding
4819         on magic number for output file.  Checks to ensure that this
4820         adjustment has only been done once.
4821         (set_section_contents): Call adjust_sizes_and_vmas instead of
4822         doing much of the work here.
4823
4824         * aout-target.h (MY_make_debug_symbol, MY_backend_data): Provide
4825         default (null) values of these fields.
4826         * aoutf1.h (sunos4_write_object_contents): Don't override a_text
4827         value in exec header.
4828         (sunos4_aout_backend, MY_backend_data): Define backend data
4829         indicating file header is included in text section.
4830
4831         * aoutf1.h (MY_reloc_howto_type_lookup): Fix typo.
4832
4833         * hosts/sparc.h (abort, exit): Hide these names if compiling with
4834         gcc version 2, to avoid warnings.
4835
4836 Mon Jun 15 12:26:56 1992  Fred Fish  (fnf@cygnus.com)
4837
4838         * config/ncr3000.mh (INSTALL, RANLIB):  Don't use /usr/ucb/install,
4839         it's broken on ncr 3000's.  Use simple "true" for RANLIB.
4840
4841 Sat Jun 13 09:16:43 1992  Michael Tiemann  (tiemann@rtl.cygnus.com)
4842
4843         * configure.in (m680[01234]0-wrs-*): Fix typo in match pattern.
4844
4845 Fri Jun 12 19:48:34 1992  John Gilmore  (gnu at cygnus.com)
4846
4847         * section.c (STD_SECTION):  Remove extra semicolon in declarations.
4848         * configure.in:  Rewrite target parsing to use simple format.
4849         Handle sparc-sun-solaris2 configuration.
4850         * aout64.h:  Avoid ANSI C brain death warning.
4851         * elf.c:  Avoid trigraph (???) or /* in comments.
4852
4853 Fri Jun 12 14:51:14 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
4854
4855         * config/sysv4.mh: new file, RANLIB=echo
4856
4857         * configure.in: handle Solaris2 as -sysv4 or -solaris2
4858
4859 Thu Jun 11 00:52:03 1992  John Gilmore  (gnu at cygnus.com)
4860
4861         * elf.c (elf_obj_tdata):  Merge elf_obj_tdata_struct and
4862         elf_core_tdata_struct into a single common struct.  Core files
4863         wouldn't have worked at all without this.
4864         (bfd_elf_find_section):  New function for GDB's undercover use
4865         to find string sections that BFD hides from it.
4866         (elf_get_str_section):  Avoid multiple alloc&reads for same data;
4867         lint.
4868         (elf_object_p, elf_core_file_p):  Allocate internal file header
4869         storage dynamically.
4870         * bfd.c (union {...} tdata):  Remove elf_core_tdata_struct.
4871         * demo64.c:  Prevent "empty translation unit" warnings from idiots.
4872
4873 Tue Jun  9 17:15:26 1992  Fred Fish  (fnf at cygnus.com)
4874
4875         * config/{i386v4.mh, ncr3000.mh}:  Update RANLIB, add INSTALL.
4876
4877 Sat Jun  6 17:02:51 1992  John Gilmore  (gnu at cygnus.com)
4878
4879         * configure.in:  Handle Solaris2 as *-sun-sysv4 or as *-sun-sunos5.
4880
4881 Sun May 31 05:45:00 1992  david d `zoo' zuhn (zoo@cygnus.com)
4882
4883         * configure.in: handle m680[01234]0 as aliases for m68k
4884
4885 Tue May 26 16:50:59 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4886
4887         * coff-a29k.c: do byte relocs correctly
4888         * coffcode.h (styp_to_sec_flags): never load INFO sections
4889         * seclet.c (rel): don't relocate INFO sections
4890
4891 Wed May 20 08:18:18 1992  Ken Raeburn  (Raeburn@Cygnus.COM)
4892
4893         * section.c (bfd_*_symbol, bfd_*_section): Initialize statically.
4894         Make the symbols unmodifiable.
4895         (bfd_section_init): Deleted.
4896         * init.c (bfd_init): Don't call bfd_section_init.
4897
4898         * section.c (bfd_set_section_contents): Ensure that range to be
4899         written is within section boundaries.
4900         (bfd_get_section_contents): Likewise.  Don't bother dispatching if
4901         size is zero.
4902
4903         * libbfd.c (bfd_xmalloc): Text of error message should be const.
4904
4905         * coff-i960.c (howto_table): Deleted.
4906         (howto_rellong, howto_iprmed, howto_optcall): New vars;
4907         interesting entries from old howto_table.
4908         (RTYPE2HOWTO): Adjusted to use switch.
4909         (coff_i960_reloc_type_lookup): New function.
4910
4911         * coffcode.h (coff_new_section_hook): Allocate storage for aux
4912         records for section symbol.
4913         (make_abs_section): Unused; deleted.
4914         (renumber_symbols): Re-order symbols so undefined symbols come
4915         last, as COFF format desires.
4916         (coff_write_symbol): Put C_FILE symbols in debug section always.
4917         (coff_section_symbol): New function; creates a symbol with the
4918         same name as a section, and sets up aux records for it.
4919         (coff_add_missing_symbols): New function; adds section symbols to
4920         symbol table if they aren't there already.  Should someday also
4921         add a dummy C_FILE symbol if none is present.
4922         (coff_write_object_contents): Add missing symbols before preparing
4923         symbol table to be written.
4924         (coff_slurp_reloc_table): Verify that symbol indices read in are
4925         in a reasonable range.
4926         * libcoff-in.h (struct coff_tdata): New field conv_table_size.
4927         (obj_conv_table_size): Accessor macro.
4928
4929         * bout.c (b_out_reloc_type_lookup): New function.  Handles three
4930         reloc types on i960.
4931
4932         * bfd-in.h (bfd_get_section_name): New macro.  Like
4933         bfd_section_name, but returns rvalue, not lvalue.
4934         (bfd_get_section_vma, bfd_get_section_alignment): Similar.
4935         (bfd_get_section_flags): Now returns rvalue.
4936
4937         * reloc.c (enum bfd_reloc_code_real): Add several new values, some
4938         general, some specific to sparc or i960.
4939
4940         * aoutx.h (set_section_contents): Set VMA for each section based
4941         on previous section.  If text section VMA doesn't appear to have
4942         been set, make a best guess from the type of file.
4943
4944         * aout-target.h (MY_reloc_howto_type_lookup): Define as zero if
4945         not defined.
4946         (MY(vec)): Initialize reloc_type_lookup field.
4947
4948         * aoutx.h (howto_table_*): Export as aout_#_*_howto_table.
4949         (bfd_error_trap, bfd_error_vector): Extern, not common.
4950
4951         * aoutf1.h (sunos4_reloc_type_lookup): New function.  Handles a
4952         few types of relocs for sparc; will need enhancement.
4953
4954         * bout.c (callj_callback): Use DEFUN macro in definition.
4955         * coff-i960.c (optcall_callback): Likewise.
4956
4957         * targets.c (bfd_target): Added fields reloc_type_lookup and
4958         _bfd_make_debug_symbol.  Also minor comment changes.
4959         * syms.c (bfd_make_debug_symbol): New dispatching macro.
4960         * reloc.c (bfd_reloc_type_lookup): Take a BFD ptr as arg rather
4961         than arch info, and dispatch with BFD_SEND.  Callers changed.
4962         * archures.c (struct bfd_arch_info): Deleted field
4963         reloc_type_lookup.
4964         * cpu-*.c: Don't initialize that field.
4965
4966         * bfd-in.h (enum bfd_error): Add new value "bad_value".
4967         * bfd.c (bfd_errmsgs): Now const; added entry for bad_value.
4968         (bfd_errmsg): Now returns ptr to const.
4969         * bfd-in.h (bfd_errmsg): Fix prototype.
4970
4971         * cache.c (BFD_CACHE_MAX_OPEN): Fix typo in doc.
4972         * reloc.c (bfd_generic_relax_section): Ditto.
4973
4974         * section.c (Section Output doc): Improve description of use of
4975         output_section and output_offset.
4976
4977 Tue May 19 23:42:10 1992  D. V. Henkel-Wallace  (gumby@cygnus.com)
4978
4979         * sco-core.c: new file from net.
4980         * aoutx.h (translate_to_native_sym_flags): bugfix from net:
4981           Now we have the hairy linker, it's possible to move symbols from
4982           one section into another.  Actually make that work!
4983
4984 Sat May 16 17:57:59 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
4985
4986         * hosts/sun3.h: fix declaration of free.
4987
4988 Tue May 12 14:08:59 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
4989
4990         * coff-a29k.c (perform_reloc): fix bug in jmp/call evaluation
4991         * coff-h8300.c (reloc_processing): all relocs are relative to
4992         section start.
4993         * opncls.c: don't use fdopen on DOS systems
4994
4995         short patches from Glenn Kasten (glenn@ready.com)
4996         * target.c: enabled oasys support
4997         * oasys.c:  Insert . when UNDERSCORE_HACK is enabled,
4998         fix problem where a relocation which crossed a modification byte
4999         boundary did not work. Fix problem where a relocation near the end
5000         of a data record did not work.
5001
5002
5003 Tue May  5 18:11:25 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5004
5005         * archive.c (bfd_slurp_coff_armap): old versions of BFD wrote
5006         archvie header string counts the endian way, this heuristic sees
5007         how big an archive string to read by trying it one way and if the
5008         string table is unreasonably big, trying it the other. *FIXME*.
5009         * opncls.c (bfd_fdopenr): can't do fdopens on VMS
5010
5011 Tue May  5 14:18:24 1992  Per Bothner  (bothner@rtl.cygnus.com)
5012
5013         * bfd-in.h:  Increase version number to 1.97, for consistency
5014         with ../binutils.
5015         * Makefile.in:  docdir is ./doc, not ${srcdir}/doc.
5016
5017 Mon May  4 11:49:15 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5018
5019         * bfd-in.h: bump version to 1.96
5020          Major change; changed calling convention for
5021          bfd_get_relocated_section_contents so that caller allocates
5022          memory for section data.
5023         * coffcode.h (bfd_coff_get_relocated_section_contents), reloc.c,
5024         seclet.c, targets.c, bfd.c: reflect new convention.
5025         * coffcode.h (styp_to_sec_flags): if styp_flags is not a special
5026         case, then use reasonable default values for SEC_* flags.
5027
5028 Fri May  1 12:58:34 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5029
5030         * coffcode.h (coff_write_object_contents): use RELSZ to work out
5031         size of output reloc struct.
5032         * targets.c, Makefile.in: comment out tekhex for the moment.
5033         * ieee.c: if some places where null pointers were used instead of &bfd_abs_section.
5034         * configure.in: tandem target is st2000
5035         * coff-m68k.c: rename static howto_table to global
5036         m68kcoff_howto_table.
5037         * bout.c: remove unnecessary abort
5038         * coff-a29k.c: various changes to the way relocations work to cope
5039         with the "new order" and latent bugs.
5040         * coffcode.h: lint
5041
5042 Wed Apr 29 12:37:07 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5043
5044         * aoutx.h (aout_swap_ext_reloc_out, aout_swap_std_reloc_out)
5045         bout.c (b_out_squirt_out_relocs): treat abs sumbols the right way.
5046         * reloc.c (bfd_perform-relocation): don't relocate refs to
5047         absolute symbols if doing a partial link.
5048
5049 Fri Apr 24 07:35:26 1992  Stu Grossman  (grossman at cygnus.com)
5050
5051         * configure.in:  Add a29k-amd-udi.
5052
5053 Thu Apr 23 18:37:55 1992  Fred Fish  (fnf@cygnus.com)
5054
5055         * aoutx.h (aout_<bits>_swap_exec_header_in):  Zero out the
5056         internal_exec structure before initializing the fields that
5057         are used, so that the unused fields are in a known state.
5058
5059 Wed Apr 22 09:36:08 1992  Fred Fish  (fnf@cygnus.com)
5060
5061         * tekhex.c (struct data_struct):  Convert from typedef that
5062         typedefs nothing to a normal structure declaration.
5063         * tekhex.c (pass_over):  Prototype args for function that
5064         second arg points to.
5065
5066 Mon Apr 20 22:22:51 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
5067
5068         * Makefile.in: remove old style staging.  Do not print recursion
5069           lines.
5070
5071         * Makefile.in: rework CFLAGS so that CFLAGS can be passed from the
5072           Makefile command line.  Remove MINUS_G.  Default CFLAGS to -g.
5073           Pass CFLAGS.
5074
5075 Fri Apr 17 09:15:31 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5076
5077         * bfd.c, Makefile.in: added tekhex
5078         * aoutx.h (set_section_contents): pages should be padded to the
5079         size of a page, not the size of a segment.
5080         * configure.in: added go32 host and i386-aout target.
5081         * i386aout.c, libaout.h: now works for go32 target
5082         * ieee.c: fix bit rot.
5083         * seclet.c: support for padding seclet type.
5084
5085 Wed Apr 15 18:11:58 1992  K. Richard Pixley  (rich@rtl.cygnus.com)
5086
5087         * Makefile.in: added .NOEXPORT:
5088
5089 Tue Apr 14 14:34:42 1992  Fred Fish  (fnf@cygnus.com)
5090
5091         * elf.c (bfd_add_strtab, bfd_add_2_to_strtab):  CONST spreads
5092         like ooze.
5093         * elf.c (elf_compute_section_file_positions,
5094         elf_write_object_contents):  Return boolean, not NULL (which
5095         can be void *).
5096         * elf.c (bfd_section_from_shdr):  Ifdef-out debugging code.
5097         Also ifdef-out code that aborts on unhandled section types.
5098
5099 Fri Apr 10 22:29:18 1992  Fred Fish  (fnf@cygnus.com)
5100
5101         * configure.in:  Recognize ncr3000 config
5102         * Makefile.in (MINUS_G):  Pass on to recursive makes.
5103         * hosts/ncr3000.h, config/ncr3000.mh:  Add host config files.
5104
5105 Thu Apr  2 17:42:45 1992  John Gilmore  (gnu at cygnus.com)
5106
5107         * Makefile.in:  Now that we have sym.h and symconst.h, compile
5108         coff-msym.c on all systems.
5109         * config/{decstation.mh, irix3.mh, irix4.mh}:  Remove coff-msym.o dep.
5110         * coff-msym.c:  Update include files and comments; add weakext bit.
5111
5112 Wed Apr  1 23:16:38 1992  John Gilmore  (gnu at cygnus.com)
5113
5114         * archive.c, bfd.c, bout.c, coffcode.h, init.c, reloc.c,
5115         section.c, srec.c, syms.c, coff-h8300.c:  Lint.
5116
5117 Sun Mar 29 09:37:59 1992  John Gilmore  (gnu at cygnus.com)
5118
5119         * bout.c, coff-a29k.c, coff-i960.c:  Lint.
5120         * configure.in:  Add new host and target configs.
5121         * elf.c (bfd_prstatus, bfd_fpregset):  Avoid typename of register
5122         structs, which vary; just use member name.
5123         (elf_object_p, elf_core_file_p):  Lint, fix comments.
5124         * config/sparc-elf.mt, hosts/sysv4.h:  New config files.
5125
5126 Sat Mar 28 13:07:02 1992  Fred Fish  (fnf@cygnus.com)
5127
5128         * elf.c (elf_object_p, elf_core_file_p):  Fix to use only a single
5129         local, disposable, copy of the external form of section header
5130         table and program header table entries.
5131
5132 Thu Mar 26 16:59:58 1992  John Gilmore  (gnu at cygnus.com)
5133
5134         * Makefile.in:  Set MINIMIZE back to 0 for a real release.
5135
5136 Tue Mar 24 15:57:03 1992  K. Richard Pixley  (rich@cygnus.com)
5137
5138         * configure.in: config/irix4.m[ht], hosts/irix4.h: add support for
5139           irix4.
5140
5141 Mon Mar 23 22:37:34 1992  Stu Grossman  (grossman at cygnus.com)
5142
5143         * coff-msym.c (ecoff_swap_rfd_in):  remove & for array ref.
5144
5145 Tue Mar 17 14:12:25 1992  Per Bothner  (bothner@rtl.cygnus.com)
5146
5147         * bout.c (b_out_slurp_reloc_table):  Use BFD_ASSERT macro,
5148         not internal bfd_assert function (twice).
5149
5150 Tue Mar 17 10:45:12 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5151
5152         * aout-target.h: change ar_max_namelen to 15 (the right value)
5153         * coff-a29k, coffcode.h: more hangovers from the bfd_abs_section
5154         change
5155
5156 Mon Mar 16 14:57:22 1992  Steve Chamberlain  (sac@rtl.cygnus.com)
5157
5158         * archive.c (bfd_generic_archive_p): check for bout archives too.
5159         * bout.c: make it work again.
5160
5161 Sat Mar 14 17:30:40 1992  Fred Fish  (fnf@cygnus.com)
5162
5163         * elf.c (elf_corefile_note):  Call bfd_xmalloc() instead of bare
5164         malloc().
5165         * reloc.c (bfd_generic_get_relocated_section_contents):  Call
5166         bfd_xmalloc() instead of bare malloc().
5167
5168 Fri Mar 13 15:44:37 1992  K. Richard Pixley  (rich@cygnus.com)
5169
5170         * Makefile.in: pass down MAKEINFO on info.
5171
5172 Fri Mar 13 07:41:13 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5173
5174         * config/mt-<foo> now <foo>.mt, config/mh-<foo> now <foo>.mh.
5175         host/h-<foo> now just <foo>.
5176         * configure.in: reflect changes
5177
5178 Thu Mar 12 11:15:02 1992  Per Bothner  (bothner@cygnus.com)
5179
5180         * libbfd-in.h (set_tdata):  Make change of Feb 27 in the
5181         actual source file, not just the generated libbfd.h.
5182
5183 Sat Mar  7 10:33:41 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
5184
5185         * coff-i960.c (icoff_little_vec): add COFF_SWAP_TABLE so we can run
5186         gdb on little-endian 960 code.
5187         * archive.c (compute_and_write_armap): indirect symbols should go
5188         into the archive header too.
5189
5190 Fri Mar  6 21:55:16 1992  K. Richard Pixley  (rich@cygnus.com)
5191
5192         * Makefile.in: added check target.
5193
5194 Thu Mar  5 23:51:42 1992  John Gilmore  (gnu at cygnus.com)
5195
5196         * coff-msym.c:  Move this file from gdb/ecoff.c.  It
5197         handles byte-swapping for ECOFF (MIPS symbol) files.
5198         * config/mh-decstation, config/mh-irix3:  Add coff-msym.o
5199         to the files built on MIPS-based hosts.
5200         * Makefile.in:  Add rule for coff-msym.
5201
5202 Thu Mar  5 21:36:05 1992  K. Richard Pixley  (rich@cygnus.com)
5203
5204         * Makefile.in: added clean-info target.  MINIMIZE=1.
5205
5206 Sun Mar  1 22:32:58 1992  Per Bothner  (bothner@cygnus.com)
5207
5208         * coff-rs6000.c:  Move core file functions into separate
5209         new file rs6000-core.c.  This is needed because reading
5210         core files depends on native include files that conflict
5211         with ../include/coff/rs6000.h.
5212         * config/mh-rs6000:  Add rs6000-core.o to HDEPFILES.
5213
5214 Thu Feb 27 22:19:55 1992  Per Bothner  (bothner@cygnus.com)
5215
5216         * aoutx.h (NAME(aout,print_symbol)): Don't print
5217         symbol addresss for undefined symbols.
5218         * coff-rs6000.c:  Various updates (due to target-
5219         independent changes).
5220         * libbfd.h:  Ditto (tdata field is now a union).
5221         * hosts/h-sparc.h:  Removed prototype for bogus function
5222         'emset' (presumably should have been 'memset' - which is there).
5223
5224 Thu Feb 27 11:46:33 1992  John Gilmore  (gnu at cygnus.com)
5225
5226         * configure.in (mips-big-* target):  Same is Iris.
5227
5228 Thu Feb 27 09:24:56 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
5229
5230         * aoutx.h (translate_from_native_sym_flags): when creating an
5231         alias symbol, fill in the section as undefined, rather than
5232         leaving it blank. If an output section can't be found for a
5233         symbol, then don't core dump.
5234
5235 Wed Feb 26 18:04:40 1992  K. Richard Pixley  (rich@cygnus.com)
5236
5237         * Makefile.in, configure.in: removed traces of namesubdir,
5238           -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
5239           copyrights to '92, changed some from Cygnus to FSF.
5240
5241 Wed Feb 26 19:40:59 1992  Steve Chamberlain  (sac at thepub.cygnus.com)
5242
5243         * bfd.c: lint
5244         * coff-h8300.c: fix stupid reloc subtraction bug
5245         * coffcode.h (coff_swap_aux_out): only swap a tvndx by 2 bytes,
5246         since that's how wide it is. (coff_slurp_symbol_table): always zero out
5247         the symbol.flags and done_lineno fields.
5248
5249 Tue Feb 25 14:29:24 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5250
5251         * coffcode.h (coff_write_symbol): write out the correct number of
5252         auxents.
5253         * cpu-h8300.c: fix disassembly bug
5254
5255 Fri Feb 21 21:39:56 1992  John Gilmore  (gnu at cygnus.com)
5256
5257         * bfd-in.h (bfd_errmsg), coffcode.h (coff_swap_aux_in,
5258         section_from_bfd_index), cpu-h8300.c (howto*_callback),
5259         reloc.c, section.c (bfd_map_over_sections), targets.c
5260         (bfd_target_list):  Protolint.
5261         * libbfd.h:  Update to match a libbfd-in.h from a month ago.
5262
5263 Fri Feb 21 10:57:54 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5264
5265         * coffcode.h (coff_swap_aux_in): lint, (coff_print_symbol): prints
5266         out tagndx too.
5267         * aoutx.h (swap_std_reloc_out, swap_ext_reloc_out): use the output
5268         section of a symbol rather than the section of a reffed symbol to
5269         determine the r_index of an emmitted reloc.
5270
5271 Thu Feb 20 18:10:34 1992  Per Bothner  (bothner at cygnus.com)
5272
5273         * PORTING: New (preliminary) porting guide.
5274
5275 Wed Feb 19 21:39:37 1992  John Gilmore  (gnu at cygnus.com)
5276
5277         * bout.c (callj_callback), coff-a29k.c (a29k_reloc), coff-m88k.c
5278         (howto_hvrt16):  lint.
5279
5280 Mon Feb 17 12:02:17 1992  Per Bothner  (bothner at cygnus.com)
5281
5282         * hp300bsd.c (new), config/mt-hp300bsd:  Make hp300bsd
5283         a full configuration (with possible cross-development),
5284         instead of using host-aout.c.
5285
5286 Sun Feb 16 13:01:49 1992  Per Bothner  (bothner at cygnus.com)
5287
5288         * aout-target.h (MY(write_object_contents):
5289         Set obj_reloc_entry_size (abfd).
5290         * gen-aout.c:  Change to emit a .c files, not a .h file.
5291
5292 Thu Feb 13 20:11:47 1992  Fred Fish  (fnf at cygnus.com)
5293
5294         * elf.c (elf_slurp_symbol_table):  Remove obsolete use of
5295         BSF_ABSOLUTE and replace with bfd_abs_section reference.
5296
5297 Thu Feb 13 17:22:44 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5298
5299         * coffcode.h (get_normalized_symtab): fixed bug where symbols
5300         with more than one auxent can cause nasty core dumps.
5301
5302         * coffcode.h, libcoff.c: added new fielded to coff_symbol_struct
5303         "done_lineno" so that a symbol which appears twice in the symbol
5304         table only gets it's linenumbers relocated once. Modifed
5305         (coff_write_native_symbol) and (coff_make_empty_symbol) to make
5306         use of it.
5307
5308 Tue Feb  4 15:39:55 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5309
5310         * aoutx.h: (translate_from_native_sym_flags): fix constructor
5311         stuff to use the New Order.
5312
5313 Fri Jan 31 01:34:45 1992  Stu Grossman  (grossman at cygnus.com)
5314
5315         * ieee.c:  Change type of envi[] to unsigned char.
5316
5317         * configure.in:  fix vax ultrix configuration.
5318
5319         * elf.c (bfd_section_from_shdr):  Deal with null return from
5320         bfd_make_section().  (elf_object_p):  Select endianess properly.
5321
5322 Fri Jan 31 01:19:55 1992  John Gilmore  (gnu at cygnus.com)
5323
5324         * hosts/h-tahoe.h, h-vaxbsd.h:  Fix stack in core files.
5325
5326 Thu Jan 30 23:51:07 1992  John Gilmore  (gnu at cygnus.com)
5327
5328         * Makefile.in:  host-aout.c doesn't depend on aout-params.h.
5329         * aout-target.h:  Use TARGET_BIG_ENDIAN_P to set up vector.
5330         * host-aout.c:  Don't use aout-params.h; configure these systems
5331         in their xm files, not in a randomly generated file.
5332         * hosts/h-hp300bsd.h, h-tahoe.h, h-vaxbsd.h, h-vaxult.h:
5333         Specify byte order.
5334         * hosts/h-vaxbsd.h:  Define the form of exec and core files.
5335
5336 Thu Jan 30 13:02:41 1992  Per Bothner  (bothner at cygnus.com)
5337
5338         * config/mt-tahoe, config/mt-vax:  Change DEFAULT_VECTOR to
5339         host_aout_vec here as well.
5340
5341 Thu Jan 30 11:41:45 1992  Stu Grossman  (grossman at cygnus.com)
5342
5343         * host-aout.c:  Change TARGETNAME to "a.out" to be compatible with
5344         gdb.  config/mt-hp300bsd:  Change DEFAULT_VECTOR to host_aout_vec
5345         to prevent undefined symbol.
5346
5347 Thu Jan 30 07:26:53 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5348
5349         Various lints found on PersSony
5350         * aoutx.h: cast an enum
5351         * coff-a29k.c: many ints in reloc structure turned to enum
5352         * coffcode.h: more enums
5353         * cpu-h8300.c: more enums
5354         * opncls.c: more enums
5355
5356 Thu Jan 30 01:19:56 1992  John Gilmore  (gnu at cygnus.com)
5357
5358         * configure.in:  Make Tahoe configuration work again.
5359         * bfd-in.h:  Remove trailing comma from enum declaration.
5360         * ieee.c:  Can't put byte values >0x7F into a signed char.
5361
5362 Tue Jan 28 21:10:51 1992  Fred Fish  (fnf at cygnus.com)
5363
5364         * Makefile.in:  Add dependencies for various coff-*.o files.
5365
5366         * elf.c:  Remove extraneous paren from core_prpsinfo and
5367         core_prpstatus macros, rename core_prpstatus to core_prstatus.
5368         Replace references to old section "size" member with new
5369         "_raw_size" member.  Implement elf_make_empty_symbol, which
5370         is now used.
5371
5372 Tue Jan 28 14:51:40 1992  Stu Grossman  (grossman at cygnus.com)
5373
5374         * trad-core.c, bfd.c, ../include/bfd.h:  Various fixes for PMAX
5375         core reading.
5376
5377 Tue Jan 28 10:46:32 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5378
5379         * coffcode.h (bfd_coff_relax_section): now static.
5380         (bfd_coff_get_relocated_section_contents): various type lints.
5381
5382 Mon Jan 27 19:44:08 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5383
5384         New entry point in the transfer vector - bfd_relax_section.
5385
5386         * aout-target.h: add to vector, call generic_relax
5387         * bfd-in.h: add to vector
5388         * bfd.c: add #define for vector
5389         * bout.c: add to vector, call generic_relax
5390         * coffcode.h: add to vector, also now has coff specific relax code
5391         for the relaxable H8/300 relocs. Also clean up abs section cruft.
5392         * elf.c: call generic_relax
5393         * ieee.c: call new vector, clean up some bugs due to the creation
5394         of bfd_abs_section
5395         * libbfd.h: add bfd_generic_relax_section EXFUN
5396         * oasys.c: call generic_relax
5397         * reloc.c: implement generic_relax
5398         * seclet.c: moved much of this into coffcode.h
5399         * srec.c: call generic_relax
5400         * targets.c: define new transfer vector
5401
5402 Fri Jan 24 14:40:17 1992  Steve Chamberlain  (sac at rtl.cygnus.com)
5403
5404         * everything: now modified to use smaller reloc type. Self hosts
5405         on sun3 & sun4.
5406
5407 Sat Jan 18 17:00:16 1992  Fred Fish  (fnf at cygnus.com)
5408
5409         * config/mh-stratus, config/mt-i860-elf, hosts/h-stratus:
5410         New files for stratus.
5411
5412         * configure.in:  Add configuration fragments for stratus.
5413
5414 Wed Jan 15 10:02:43 1992  Fred Fish  (fnf at cygnus.com)
5415
5416         * aoutx.h (NAME(aout,find_nearest_line)): Declare various filename
5417         variables as CONST since they are set to point to a const char
5418         string.  Fixes compiler complaints.
5419
5420 Fri Jan 10 17:44:53 1992  Fred Fish  (fnf at cygnus.com)
5421
5422         * hosts/h-amix.h hosts/h-i386v4.h:  Change abort() to a function
5423         returning void.
5424
5425 Fri Jan 10 14:33:32 1992  Per Bothner  (bothner at cygnus.com)
5426
5427         * aoutx.h (NAME(aout,find_nearest_line)):  Recognize N_SOL
5428         symbols, so that we can emit the correct file name even
5429         if it's an include file.
5430
5431 Thu Jan  2 16:43:34 1992  John Gilmore  (gnu at cygnus.com)
5432
5433         * coff-i960.c:  Add COFF_SWAP_TABLE to little_vec as well as big_vec.
5434         (Reported by john@labtam.labtam.oz.au (John Carey)).
5435
5436 Wed Jan  1 04:23:06 1992  Fred Fish  (fnf at cygnus.com)
5437
5438         * elf.c:  Change all '#if HAVE_PROCFS' to '#ifdef HAVE_PROCFS'.
5439
5440         * config/mh-amix, config/mh-i386v4:  Remove HDEFINES that was
5441         being used to -DHAVE_PROCFS.
5442
5443         * hosts/h-amix, hosts/h-i386v4:  Add '#define HAVE_PROCFS'.  Move
5444         '#include "fopen-same.h"' to end of file to match other h-* files.
5445
5446 Fri Dec 20 12:06:17 1991  Fred Fish  (fnf at cygnus.com)
5447
5448         * configure.in:  Change svr4 references to sysv4.  Add case
5449         "unknown" for target vendor and infer some targets based
5450         on the specified operating system.
5451
5452 Wed Dec 18 17:17:59 1991  Stu Grossman  (grossman at cygnus.com)
5453
5454         * bfd-in.h, libaout.h:  ANSIfy enums.
5455
5456 Wed Dec 18 16:12:25 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5457
5458         * archive.c (normalize): created version for VMS which removes the
5459         VMS directory crap from the front and end of a filename, eg turn
5460         [-.foo]bar.obj;123 into bar.obj
5461         (bfd_construct_extended_name_table): now writes index into an
5462         extended name table in decimal - the same base used to read an
5463         extended name table.
5464
5465 Wed Dec 18 14:40:39 1991  Per Bothner  (bothner at cygnus.com)
5466
5467         * aout-encap.c:  Fix to use aout-target.h.
5468         * aoutf1.h:  Use standard MY_object_p and MY_callback
5469         in aout-target.h.  Remove target-specific versions.
5470         * host-aout.c:  Re-write to use aout-target.h.
5471         * gen-aout.c:  New files use with host-aout.c to generate
5472         host-specific a.out-related parameters.
5473         * Makefile.in:  host-aout.o depends on aout-params.h, which is
5474         generated by gen-aout.
5475         * aout-target.h:  Make a little more flexible.
5476         * libaout.h, aout-target.h:  Removed WORK_OUT_FILE_POSTIONS
5477         macro.  Instead, inline it in aout-target.h.
5478         * newsos3.c:  Define N_SHARED_LIB(x) as 0 to avoid
5479         a gcc -Wall warning.
5480         * archive.c:  Add missing commas in DEFUN macro (2 places).
5481         * elf.c, coffcode.h, aoutf1.h:  Use ANSI functions instead of
5482         Berkeley ones, now that libiberty has them:
5483         bcopy->memcpy, bzero->memset, bcmp->memcmp.
5484         * aoutx.h:  Various touch-ups:  Re-formatting, fix a cast,
5485         remove unused variable.
5486
5487 Tue Dec 17 19:48:59 1991  Fred Fish  (fnf at cygnus.com)
5488
5489         * elf.c (elf_core_file_matches_executable_p):  Enclose corename
5490         and execname inside HAVE_PROCFS ifdef since they are unused
5491         when it is not defined.
5492
5493 Mon Dec 16 12:00:10 1991  Fred Fish  (fnf at cygnus.com)
5494
5495         * elf.c:  Flag all sections as either code or data.  We can't
5496         be sure what they are anyway, since ELF doesn't fit the
5497         traditional model of text+data+bss very well.  Add new local
5498         function elf_read() to simplify code.  Record entry point in
5499         the bfd structure.
5500
5501 Thu Dec 12 21:01:22 1991  John Gilmore  (gnu at cygnus.com)
5502
5503         * hosts/h-*.h:  Configure fopen using ../include/fopen-*.h
5504         rather than N copies of the same lines.
5505
5506 Wed Dec 11 16:39:45 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5507
5508         * cpu-h8300.c: disassemble branch displacements correctly
5509         * coff-h8300.c: put reloc offsets out in 32bits
5510
5511         * makefile.dos, configdj.bat: New files from DJ
5512         * cache.c: fopen with new macros is needed for DOS.
5513         * ieee.c: environ renamed to envi to stop an include file
5514         conflict.
5515         * opncls.c, coff-rs6000.c: more fopens with macros.
5516
5517 Tue Dec 10 04:07:24 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
5518
5519         * Makefile.in: infodir belongs in datadir.
5520
5521 Sat Dec  7 16:39:23 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5522
5523          * Makefile.in: fix where docdir lives
5524
5525          * aoutx.h, archive.c, archures.c, bfd.c, cache.c, coff-m88k.c,
5526          coffcode.h, core.c, ctor.c, elf.c, format.c, ieee.c, init.c,
5527          libbfd.c, libbfd.h, libcoff.h, opncls.c, reloc.c, section.c,
5528          srec.c, syms.c, targets.c : all new documentation and lint
5529          removal.
5530
5531
5532 Sat Dec  7 07:22:09 1991  John Gilmore  (gnu at cygnus.com)
5533
5534         * coffcode.h, srec.c:  Lint.
5535
5536 Fri Dec  6 22:58:48 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
5537
5538         * Makefile.in: install using INSTALL_DATA, added standards.text
5539           support.
5540
5541         * configure.in: mark directory as target dependent.  configure
5542           nows works in objdir always so make file existence checks
5543           against ${srcdir}.
5544
5545 Thu Dec  5 22:46:19 1991  K. Richard Pixley  (rich at rtl.cygnus.com)
5546
5547         * Makefile.in: idestdir and ddestdir go away.  Added copyrights
5548           and shift gpl to v2.  Added ChangeLog if it didn't exist. docdir
5549           and mandir now keyed off datadir by default.
5550
5551 Wed Dec  4 10:14:17 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5552
5553         * aoutf1.h (sunos_<size>_object_p, sunos4_callback): moved the
5554         computation of arch and machine type so it's worked out before
5555         some_aout_object_p is called.
5556         * aoutx.h: (some_aout_object_p): don't set arch and mach to
5557         unknown.
5558         * archures.c: add extra field 'section_align_power' to hold
5559         default section alignment in object files.
5560         * cpu-a29k.c, cpu-h8300.c, cpu-i386.c, cpu-i960.c, cpu-m68k.c,
5561         cpu-m88k.c, cpu-mips.c, cpu-rs6000.c, cpu-sparc.c, cpu-vax.c:
5562         initialize the new field.
5563         * bout.c (b_out_callback): replace the text size, since aout
5564         fries them.
5565         * aoutx.h: Documentation in the new style
5566
5567 Wed Dec  4 02:00:30 1991  John Gilmore  (gnu at cygnus.com)
5568
5569         * bfd.c (bfd_get_mtime):  Don't cache mtime any more; only
5570         use the saved value if mtime_set is already set (intended
5571         for archive files, though apparently not used yet).
5572
5573 Tue Dec  3 22:54:50 1991  John Gilmore  (gnu at cygnus.com)
5574
5575         * targets.c:  Revise comments about how to configure the target
5576         vector, to match reality.  Remove mention of obsolete methods.
5577         Remove long lists of capitalized macros that turn into the same
5578         thing in lowercase.  Normal vector simply lists all known
5579         lowercase xvec names; all other cases are handled by SELECT_VECS.
5580
5581         * config/mt-i386-coff:  Set DEFAULT_VECTOR to real identifier,
5582         not macro name.
5583
5584         * config/mt-i960-{coff,bout}:  Use SELECT_VECS to make a short
5585         list of supported targets.
5586
5587 Tue Dec  3 14:06:15 1991  Per Bothner  (bothner at cygnus.com)
5588
5589         * archive.c (bsd_write_armap):  The pad byte sometimes added to
5590         the string table in a __.SYMDEF member is now
5591         counted as part of the size of the string table.
5592         This is compatible with the old ranlib, as well as Sun's.
5593
5594 Tue Dec  3 10:53:30 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5595
5596         * srec.c: Rewrote to fix many bugs; now gets the record type
5597         right, doesn't choke on input, sets the start address in an S9 and
5598         fills in the filename on an S0.
5599
5600 Sat Nov 30 21:19:15 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5601
5602         * cpu-h8300.c: Add support for MEMIND addressing mode
5603
5604         * coff-a29k.c: defined RELOC_PROCESSING to take the #ifdef out of
5605         coffcode.h
5606         * coffcode.h: use the new macro if available
5607
5608         * elf.c (elf_corefile_note): cast malloc to avoid warning.
5609         * Makefile.in: Fixed dependencies due to file rename
5610
5611         * aout-encap.c, aoutf1.h, aoutx.h, archive.c, bout.c, coff-a29k.c,
5612         coff-h8300.c, coff-i386.c, coff-i960.c, coff-m68k.c, coff-m88k.c,
5613         coff-mips.c, coff-rs6000.c, cpu-h300.c, elf.c, i386aout.c,
5614         newos3.c, stab-syms.c, syms.c: All these files have had their
5615         #includes altered to point to the new places.
5616
5617 Fri Nov 29 20:04:49 1991  Fred Fish  (fnf at cygnus.com)
5618
5619         * config/mh-i386v4, config/mh-i386-elf, hosts/h-i386v4.h:  New files.
5620
5621         * configure.in:  Add vendor "ncr" as supported per-target vendor.
5622         Add svr4 case for i386 per-host case.
5623
5624         * elf.c (elf_object_p, elf_core_file_p):  Add missing "break" to
5625         ELFDATA2LSB cases.
5626
5627 Fri Nov 29 12:16:51 1991  Per Bothner  (bothner at cygnus.com)
5628
5629         * syms.c (bfd_decode_symclass):  Return 'A'
5630         for symbols that are both absolute and global.
5631         * archive.c (bfd_special_undocumented_glue):  Return NULL
5632         if bfd_ar_hdr_from_filesystem returns NULL.
5633
5634 Tue Nov 26 09:10:55 1991  Steve Chamberlain  (sac at cygnus.com)
5635
5636         * Makefile.in: added coff-h8300
5637         * configure.in: now h8 is a coff target
5638         * cpu-h8300.c: fix various disassembly problems
5639         * libcoff.h: took out some code which has been #0ed for a long
5640         time.
5641         * targets.c: added h8 coff
5642         * coff-a29k.c, coff-i386.c, coff-i960.c, coff-m68k.c, coff-m88k.c
5643         added new macro RTYPE2HOWTO to take a load of #ifdefs out of
5644         coffcode.h
5645         * coffcode.h: Started to change the way machine dependencies are
5646         handled, from the nest of #ifdefs to macros defined in the
5647         including coff-<foo>.c
5648
5649 Fri Nov 22 08:11:42 1991  John Gilmore  (gnu at cygnus.com)
5650
5651         * aoutx.h (some_aout_object_p):  Set the `executable' bit
5652         if the entry point is contained in the text segment, even if the
5653         text segment is at location 0.
5654
5655         * coff-mips.c, coffcode.h:  Peter Schauer's patch to kludge in
5656         nonstandard MIPS sections (.rdata, .sdata, etc).
5657
5658         * aoutx.h, bfd.c, coffcode.h, ieee.c, oasys.c, targets.c: CONST lint.
5659         * libbfd-in.h, libbfd.h, aoutx.h, coffcode.h, elf.c, libaout.h:
5660         Rename ALIGN to BFD_ALIGN to avoid conflict with BSD <sys/param.h>.
5661         * libbfd.c:  Lint.
5662         * host-aout.c, trad-core.c:  Fix write_armap prototypes.  Lint.
5663
5664 Thu Nov 21 19:56:40 1991  Per Bothner  (bothner at cygnus.com)
5665
5666         * stab-syms.c, syms.c:  Moved bfd_stab_name() and bfd_stab_names[]
5667         from syms.c to new file stab-syms.c.  Also, since GNU extended
5668         type codes such as N_SETT are no longer in ../include/stab.def,
5669         include them manually.
5670         * stab-syms.c, aoutx.h: Renamed bfd_stab_name() and
5671         bfd_stab_names[] to aout_stab_name() and aout_stab_names[].
5672         * libaout.h: Added prototype for aout_stab_name().
5673         * Makefile.in:  Update Makefile for new stab-syms.[co].
5674
5675 Thu Nov 21 11:50:49 1991  John Gilmore  (gnu at cygnus.com)
5676
5677         * libaout.h (WORK_OUT_FILE_POSITIONS):  One more try at this
5678         rather complicated seeming problem.  Eliminate LOGICAL_ versions,
5679         just make N_XXX work by excluding the header from the text segment.
5680         * aoutx.h:  Fix comments to match.
5681
5682 Tue Nov 19 18:49:01 1991  Per Bothner  (bothner at cygnus.com)
5683
5684         * libaout.h (WORK_OUT_FILE_POSITIONS):  Use new LOGICAL_TXTADDR,
5685         LOGICAL_TXTOFF, LOGICAL_TXTSIZE macros to figure out numbers
5686         for the "logical" text segment (i.e. never consider the exec
5687         header to be part of the text segment).  This change is
5688         needed for consistency with various other parts of bfd and ld.
5689         * aoutx.h (NAME(aout,soe_aout_object_p)):  Fix comment,
5690         and move calculation of obj_textsec(abfd)->size to libaout.h.
5691         * bfd-in.h:  Removed bogus ';'.
5692
5693         * Makefile.in:  Add MINIMIZE flag to select lean
5694         or bloated target_vector.
5695         * targets.c:  Use new MINIMIZE macro, and add trad_core if needed.
5696         * newsos3.c:  Fixes to ../include/aout64.h remove need
5697         for special N_TXTOFF macro, but require N_HEADER_IN_TEXT.
5698
5699 Mon Nov 18 12:00:59 1991  Per Bothner  (bothner at cygnus.com)
5700
5701         * aout-target.h, aoutf1.h, newsos3.c:  Make aout-target.h
5702         handle both little and big-endian targets, with little
5703         the default unless TARGET_IS_BIG_ENDIAN_P is defined.
5704         * host-aout.c:  Add FIXME note.
5705
5706 Sun Nov 17 13:29:39 1991  Per Bothner  (bothner at cygnus.com)
5707
5708         * targets.c:  Make the default target_vector contain
5709         just &DEFAULT_VECTOR.  This makes executables a lot smaller.
5710         Old behavior can be gotten by defining ALL_TARGETS.
5711         * aoutf1.h, demo64.c, i386aout.c, newsos3.c, sunos.c:
5712         Factored out common code into new file aout-target.h.
5713         Saves a lot of duplicate code for a.out variants.
5714
5715 Fri Nov 15 13:00:43 1991  Per Bothner  (bothner at cygnus.com)
5716
5717         Get 'make headers' to work when configured with +subdirs.
5718         * Makefile.in: Add $(subdir) to docdir path.
5719         * doc/Makefile.in (protos): Add $(srcdir) prefix
5720         to name of sed scripts.
5721
5722 Thu Nov 14 19:49:10 1991  Per Bothner  (bothner at cygnus.com)
5723
5724         * aoutx.h (NAME(aout,print_symbol)):  Fix thinko.
5725         * syms.c (bfd_stab_names):  Turn on new GNU_EXTRA_STABS macro
5726         to include names of N_SETT etc.
5727
5728 Thu Nov 14 19:11:13 1991  Fred Fish  (fnf at cygnus.com)
5729
5730         * elf.c:  Add minimal support for ELF symbol tables.  Generates
5731         canonical bfd symbol tables from ELF symbol tables.  Change the
5732         name of some functions from bfd_<name> to elf_<name>.
5733
5734         * syms.c:  Trivial fix to comment to remove a redundant "to".
5735
5736 Wed Nov 13 17:02:01 1991  John Gilmore  (gnu at cygnus.com)
5737
5738         * coff-{i386,m68k,m88k}.c:  Change name of file format to standard
5739         form that GDB recognizes as COFF.
5740
5741 Wed Nov 13 09:09:41 1991  Steve Chamberlain  (sac at cygnus.com)
5742
5743         * ieee.c (ieee_object_p):  cast NULL correctly.
5744         * configure.in: added harris host
5745
5746         * coff-a29k.c: Lots of changes, most from David Wood.
5747
5748 Tue Nov 12 07:21:41 1991  John Gilmore  (gnu at cygnus.com)
5749
5750         * coff-m88k.c (coff_write_armap):  Just #undef it.
5751
5752 Mon Nov 11 20:30:18 1991  Steve Chamberlain  (sac at cygnus.com)
5753
5754         * Makefile.in: standardize on MINUS_G to disable debugging
5755         * coff-m88k.c: create coff armaps instead of bsd ones.
5756         * opncls.c (bfd_close_all_done), (bfd_close): Mask out random bits
5757         when calling chmod.
5758
5759 Mon Nov 11 19:07:32 1991  Fred Fish  (fnf at cygnus.com)
5760
5761         * elf.c:  Additions to support ELF format core files.
5762         * config/mh-amix:  Add -DHAVE_PROCFS to HDEFINES, since host
5763         has support for /proc (all the include files in particular).
5764
5765 Mon Nov 11 18:36:47 1991  Per Bothner  (bothner at cygnus.com)
5766
5767         * aoutx.h (NAME(aout,find_nearest_line)):  Handle the case
5768         of two N_SO stabs, one for directory, and one for filename.
5769
5770         * bfd-in.h (print_vma):  Factor out duplicate definition.
5771
5772         Exit a little more gracefully when malloc returns NULL.
5773         * libbfd.c: New function bfd_xmalloc (malloc wrapper).
5774         * opncls.c, syms.c, bout.c, aoutx.h:  Replace malloc by bfd_xmalloc.
5775         * libbfd.h: Rre-generated due to libbfd.c update.
5776
5777 Sat Nov  9 13:45:01 1991  Fred Fish  (fnf at cygnus.com)
5778
5779         * config/mt-m68k-elf:  Define DEFAULT_VECTOR as elf_big_vec.
5780
5781         * elf.c (elf_object_p):  Don't try to create a bfd section for
5782         the first ELF section header.  It is just a placeholder.
5783
5784 Sat Nov  9 03:04:26 1991  John Gilmore  (gnu at cygnus.com)
5785
5786         * coff-rs6000.c, config/mh-rs6000:  Make it work on archive and
5787         core files, when compiling native.
5788         * hosts/h-rs6000.h:  Define FASCIST_FDOPEN for bfd_fdopenr.
5789
5790         FIXME:  The aoutf1.h change below needs to be reversed back
5791         to the way it was.
5792
5793 Thu Nov  7 11:03:55 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
5794
5795         * coffcode.h: Defined new macros [PUT|GET]LINENO_LNNO for
5796         manipulation of lnno fields in lineno structs in a coff-<f>.h
5797         independent way. Override it in coff-<f>.h to your favourite
5798         number if you don't have a 16bit lnno field. (coff_swap_lineno_in)
5799         (coff_swap_lineno_out): modified to use the new macros.
5800
5801 Mon Nov  4 11:38:33 1991  Steve Chamberlain  (sac at cygnus.com)
5802
5803         * aoutf1.h (sunos4_callback): Now defaults to 68020 rather than
5804         unknown arch when the magic number doesn't specify the
5805         architecture, since some OSs (eg old sun3s) don't set the number, and
5806         020 is probably the right answer anyway.
5807
5808 Sun Nov  3 12:07:08 1991  Per Bothner  (bothner at cygnus.com)
5809
5810         * hosts/h-news.h, hosts/h-rtbsd.h:
5811         Get rid of MISSING_VFPRINTF, since libiberty provides one.
5812         * bfd-in.h (bfd_print_symbol_type_hopw enum):   Add new option
5813         bfd_print_symbol_nm, for use by nm.
5814         * aoutx.h (NAME(aout,print_symbol)):  Add code for new
5815         bfd_print_symbol_nm option, to print in nm format.
5816         * coffcode.h (coff_print_symbol), ieee.c (ieee_print_symbol)
5817         oasys.c (oasys_print_symbol):  Provide stub implementations
5818         for bfd_print_symbol_nm.
5819         * syms.c:  New function bfd_decode_symclass, used by nm printer.
5820         New function bfd_stab_name to look up string name of stab code.
5821
5822 Sat Nov  2 14:26:03 1991  Steve Chamberlain  (steve at cygnus.com)
5823
5824         * Makefile.in: Added ctor.c
5825         * archures.c (bfd_default_arch_struct) added
5826         bfd_default_reloc_type_lookup.
5827         * coffcode.h: removed a load of #if 0ed code.
5828         (coff_compute_file_section_positions): now works out the section
5829         alignment and size correctly in all cases.
5830         (coff_get_symtab): looks for constructor symbols and calls the
5831         right function when they're found. (coff_canonicalize_reloc):
5832         knows when a section is full of constructors and does the right
5833         thing.
5834         * cpu-m88k.c: Added default_reloc_type lookup to the architecture
5835         description.
5836         * libbfd-in.h: (bfd_default_reloc_type_lookup) defun  added.
5837         * libcoff.h: removed #if 0ed code
5838         * reloc.c: (bfd_reloc_code_real_type) added BFD_RELOC_CTOR for
5839         arch independent constructor relocation type.
5840         (bfd_reloc_type_lookup): removed the comment "this will go away"
5841         since it won't. (bfd_howto_32): stolen from 88k, this is a 32bit
5842         reloc which is used when BFD_RELOC_CTOR falls through to give a
5843         default 32bit reloc for constructors.
5844         (bfd_default_reloc_type_lookup): added.
5845         * aoutf1.h: fixed SEGMENT_SIZE typo.
5846
5847 Thu Oct 31 18:23:06 1991  John Gilmore  (gnu at cygnus.com)
5848
5849         * coff-rs6000.c:  Change name to "aixcoff-rs6000", to avoid
5850         matching prefix "coff".
5851         * coffcode.h (coff_swap_aux_in, coff_swap_aux_out):  Handle
5852         rs/6000 csect records.
5853
5854 Sun Oct 27 16:56:58 1991  Steve Chamberlain  (steve at cygnus.com)
5855
5856         * coff-m88k.c, targets.c: change name of m88k_bcs to m88kbcs
5857         * configure.in: add motorola delta88 cases
5858         * libbfd.h, libbfd-in.h, archive.c, ieee.c, elf.c, srec.c: fix
5859         write_armap prototype
5860         * libbfd.c: add doc on bfd_write_bigendian_4byte_int
5861
5862 Fri Oct 25 02:48:19 1991  John Gilmore  (gnu at cygnus.com)
5863
5864         * Rename COFF-related files in `coff-ARCH.c' form.
5865         coff-a29k.c, coff-i386.c, coff-i960.c, coff-m68k.c, coff-m88k.c,
5866         coff-mips.c, coff-rs6000.c to be exact.
5867
5868         * Makefile.in:  Only supply TARGET_DEFAULTS to targets.c, reducing
5869         make output clutter.
5870         * config/mt-*:  Ditto.
5871
5872 Thu Oct 24 22:40:07 1991  John Gilmore  (gnu at cygnus.com)
5873
5874         RS/6000 support, by Metin G. Ozisik, Mimi Phûông-ThÃ¥o Võ, and
5875         John Gilmore.  Archive support from Damon A. Permezel.
5876
5877         * Makefile.in:  Add cpu-rs6000.c and rs6000coff.c.
5878         * configure.in:  Add rs6000 case.
5879         * targets.c:  Add rs6000 vector.
5880         * archures.c:  Add rs6000, fix comment on romp.
5881         * bfd-in.h (enum bfd_error):  Add no_debug_section error.
5882         * libcoff-in.h (struct coff_tdata):  Remove unused string_table.
5883         * bfd.c (bfd_errmsgs):  Add no_debug_section error message.
5884         * section.c (bfd_make_section):  Return NULL on attempt to create
5885         a section twice.
5886         * coffcode.h (bfd_swap_reloc_in):  Handle r_type and r_size.
5887         (bfd_swap_aouthdr_in):  Handle lots more members.
5888         (make_a_section_from_file):  If section has already been seen,
5889         just return false rather than overwriting it.
5890         (coff_real_object_p):  Understand incoming magic numbers.
5891         (coff_set_flags):  Understand outgoing magic numbers.
5892         (coff_compute_section_file_positions):  outgoing aouthdr magic #.
5893         (build_debug_section):  Add fn for reading debug string section.
5894         (get_normalized_symtab):  Handle symbol names in debug string section.
5895         Remove unused obj_string_table.
5896         (coff_slurp_symbol_table):  Handle rs6000-specific storage classes.
5897         * aoutx.h (translate_from_native_sym_flags, N_SET*):  Check for
5898         existing section before making one.
5899         * cpu-rs6000.c:  New file.
5900         * rs6000coff.c:  New file.
5901
5902 Thu Oct 24 02:03:24 1991  Fred Fish  (fnf at cygnus.com)
5903
5904         * elf.c: Add partial support for ELF format corefiles. Still needs
5905         support for extracting registers from corefiles.
5906
5907         * config/t-m68k-elf:  Set DEFAULT_VECTOR to elf_big_vec.
5908
5909         * config/{h-amix,h-dgux,h-irix3,h-ultra3}: For systems where
5910         RANLIB is defined as echo, send the output to /dev/null to help
5911         reduce clutter in the output from doing a make.
5912
5913 Mon Oct 21 17:48:48 1991  John Gilmore  (gnu at cygnus.com)
5914
5915         * hosts/h-vaxult.h:  Remove malloc/free decls covered in stdlib.h.
5916         Fix HOST_PAGE_SIZE and HOST_SEGMENT_SIZE.  From David Taylor.
5917
5918 Mon Oct 21 09:34:11 1991  Steve Chamberlain  (steve at rtl.cygnus.com)
5919
5920         * coffcode.h (coff_compute_section_file_positions): make it pad
5921         section size out if there are alignment restrictions so that the
5922         image will be ok on a system where section positions are worked
5923         out by accumulating sizes rather than from the section headers.
5924         * targets.c (proto write_armap). Changed orl_count to unsigned.
5925         * opncls.c (bfd_close_all_done). Added so that generative
5926         programs like gas can close a bfd without causing bfd confusion.
5927         * libbfd.h (changed becuase of protos)
5928         * amdcoff.c: messed with the way that jmp displacements are
5929         calcualated. This may not yet be totally correct.
5930         * archive.c (coff_write_armap): rewrote the way that ranlibs are
5931         written out.
5932         * coffcode.h (fixup_symbol_value): now doesn't core dump if a non
5933         abs symbol has no section (like a register symbol).
5934         (coff_write_symbol) now zeros auxent before filling it up to help
5935         with sensitive applications.
5936         * libbfd.c (bfd_write_bigendian_4byte_int): added.
5937
5938 Wed Oct 16 22:58:45 1991  John Gilmore  (gnu at cygnus.com)
5939
5940         * bfd.c:  Make sure we don't get a macro strerror().
5941         * opncls.c (bfd_fdopenr):  If FASCIST_FDOPEN, use "r", not "r+".
5942         * trad-core.c (trad_unix_core_file_failing_command):  Suppress
5943         attempt to recover command, ifdef NO_CORE_COMMAND.
5944         * hosts/h-tahoe.h:  Add FASCIST_FDOPEN and NO_CORE_COMMAND;
5945         revamp HOST_*, etc.
5946         * hosts/h-i386v.h:  Use <utime.h>, not <sys/utime.h>, unlike POSIX.
5947
5948 Wed Oct 16 12:43:49 1991  Per Bothner  (bothner at cygnus.com)
5949
5950         * archive.c (bsd_write_argmap): The size of the ranlib structures
5951         should not include the size field itself.
5952         * aoutx.h, libaout.h (NAME(aout, sizeof_headers)):  Use
5953         adata(abfd)->exec_bytes_size field instead of constant macro,
5954         because aoutx.h compiles to a simple .o file shared by
5955         all 32-bits a.out targets.
5956
5957 Wed Oct 16 11:11:05 1991  John Gilmore  (gnu at cygnus.com)
5958
5959         * configure.in:  Allow i386-sco-sysv.
5960         * bout.c:  Remove unused i960_align; lint dummy core file handlers.
5961         * cpu-h8300.c:  lint.
5962
5963         * host-aout.c:  New strategy.  We use common code, include files,
5964         and data structures to handle the file, but set a few parameters
5965         from the host's config file (page size, text start addr, etc).
5966         * libaout.h:  Define HP BSD machine types.
5967         * aoutf1.h:  Handle reading a.outs with these types.
5968
5969         * trad-core.c:  Pass the u.u_ar0 value as the negative of the
5970         virtual-memory-address of the .reg section.  We can't just make a
5971         section for "all the regs and nothing else" because only GDB knows
5972         exactly where the regs are (scattered around the upage and stack).
5973         Clean up memory allocation.  Remove big- and little-endian
5974         vectors, replace with single vector; this only runs on the host,
5975         in host byte order.  Replace byteswap routines with aborts in case
5976         anyone calls them.
5977         * targets.c:  There's only one trad_core_vec now.
5978         * aoutf1.h (sunos_core_file_p):  VMA of .reg* now needs to be 0.
5979
5980 Tue Oct 15 08:29:03 1991  John Gilmore  (gnu at cygnus.com)
5981
5982         * hosts/h-amix.h (free):  Fix prototype.
5983
5984         * aoutx.h:  Don't use NULL as an integer, for braindead systems
5985         that declare it as (void *)0.  (From Peter Schauer.)
5986
5987 Mon Oct 14 17:20:47 1991  Per Bothner  (bothner at cygnus.com)
5988
5989         * opncls.c (bfd_fdopenr):  Add parentheses to avoid reported
5990         problem with bad Ultrix system headers.
5991         * aoutx.h (NAME(aout,set_section_contents)):  Try to handle the
5992         various kinds of alignments for the various kinds of
5993         magic numbers.
5994
5995 Mon Oct 14 14:23:10 1991  John Gilmore  (gnu at cygnus.com)
5996
5997         * doc/Makefile:  Don't assume . is on the path (from James Clark).
5998
5999 Fri Oct 11 22:45:14 1991  John Gilmore  (gnu at cygnus.com)
6000
6001         * Makefile.in:  Avoid Sun Make VPATH bugs.
6002         * targets.c:  Declare trad_core vectors extern.
6003
6004 Fri Oct 11 13:03:02 1991  Per Bothner  (bothner at cygnus.com)
6005
6006         * coffcode.h: Moved ALIGN macro to libbfd.h. Removed i960_align.
6007         * libbfd.h: Moved ALIGN macro here.
6008         * bout.c (b_out_callback): Replace i960_align by align_power.
6009
6010         * libaout.h (struct aoutdata):  Added fields page_size,
6011         segment_size and exec_bytes_size.  These help generic code
6012         (in aoutx.h and libaout.h) to figure out where to align
6013         the various segments in a demand paged file.
6014         * libaout.h (WRITE_HEADER):  Use new (struct aoutdata) fields
6015         to decide if the exec header counts in a_text (text segment size).
6016         Also, assume D_PAGED flag is set; don't set it here.
6017         * bout.c (b_out_callback): Add initialization of
6018         adata fields page_size, segment_size, and exec_bytes_size.
6019         * host-aout.c (NAME(host_aout, callback) and
6020         NAME(host_aout,mkobject): Ditto.
6021         * i386aout.c (aout386_callback) and new aout386_mkobject): Ditto.
6022         * newos3.c (newsos3_callback) and new newsos_mkobject): Ditto.
6023         * aoutf1.c (sunos4_callback) and new sunos_mkobject): Ditto.
6024         * aoutx.h (NAME(aout,some_aout_object_p)): Don't subtract
6025         EXEC_BYTES_SIZE from the a_test size; this is only appropriate
6026         for some systems (mainly sunos), so do it in the callback instead.
6027         Same routine: Add stuff to the THIS_IS_ONLY_DOCUMENTATION comment.
6028         * aoutx.h (NAME(aout,set_section_contents): Change the way
6029         filepos and size of sections are carried out to support
6030         older styles of demand paged executables.
6031
6032
6033 Fri Oct 11 12:33:36 1991  Steve Chamberlain  (steve at cygnus.com)
6034
6035         * bfd-in.h: Added more macros to COFF_SWAP_TABLE.
6036         * bfd.c: Added macros to enable gas to swap coff records.
6037         * coffcode.h: Make the coff_swap_*_out routines return the number
6038         of bytes swapped, and cleaned up their prototypes.
6039         * configure.in: Added ebmon/coff support
6040         * ecoff.c: Changed null definitions of coff_swap_*_out to conform
6041         to new prototypes
6042         * targets.c: Added new entry points for coff swapping
6043
6044 Fri Oct 11 03:01:52 1991  John Gilmore  (gnu at cygnus.com)
6045
6046         Restructure configuration scheme for bfd, binutils, ld.
6047
6048         * include/sys/h-*.h:  Move to bfd/hosts/h-*.h.
6049         * configure.in:  Revise to symlink sysdep.h to hosts/h-xxx.h.
6050         Change some config names to match other dirs.
6051         * *.c:  Include bfd.h before sysdep.h, so ansidecl and PROTO()
6052         get defined first.
6053         * Makefile.in:  Use -I. to get sysdep.h.  Remove refs to
6054         ../include/sysdep.h.
6055         * cpu-i960.c:  Strncmp needed a length arg.
6056         * ecoff.c:  Don't ever call trad_unix_core_file_p from here.
6057         * i386aout.c:  Remove dead N_TXTOFF override.
6058         * trad-core.c:  Don't disable the whole file if SUN4_SYS.
6059         * config/:  Rename some config files to match up h-*.h names.
6060         Remove all the HOST_SYS definitions from the config files.
6061         * hosts/h-amix.h, h-i386v.h:  Define POSIX_UTIME, not USG.
6062         * hosts/h-hp9000.h:  Remove USG comment.
6063         * hosts/h-rs6000.h:  Include <stdlib.h> for malloc.
6064         * hosts/h-news.h, h-sparc-64.h:  New config files that had
6065         previously been kludged in the <sysdep.h> file.
6066
6067 Thu Oct 10 17:54:08 1991  John Gilmore  (gnu at cygnus.com)
6068
6069         * config/*:  trad-core support is HOST dependent, not target
6070         dependent.  Target config files only set DEFAULT_VECTOR and/or
6071         other vector elements.  Exception:  when host-aout.c is in use,
6072         in which case we're forced to assume we're native (hp, vax,
6073         tahoe).  Rename XDEPFILES to HDEPFILES.
6074         * Makefile.in:  Rename XDEPFILES.
6075         * config/h-sun*:  Don't force static linking.
6076         * trad-core.c:  Document how to use it nowadays.
6077         * i386aout.c, newsos3.c:  Clean up.
6078         * i386coff.c:  Allow 386 coff files to be used as core files too
6079         (for reading core files from embedded systems).
6080
6081 Tue Oct  8 15:30:39 1991  John Gilmore  (gnu at cygnus.com)
6082
6083         * Add i386aout.c for a.out support on the i386.
6084
6085 Tue Oct  8 12:18:54 1991  Roland H. Pesch  (pesch at cygnus.com)
6086
6087         * reloc.c, section.c, syms.c, targets.c: correct info-node
6088         structure in *doc* comments.
6089         doc/Makefile: stop hiding complaints from makeinfo.
6090
6091 Sun Oct  6 19:10:06 1991  John Gilmore  (gnu at cygnus.com)
6092
6093         * aoutx.h (...some_aout_object_p):  Take a third parameter,
6094         the internal_exec struct, and avoid ever looking at an
6095         external_exec.  All callers changed to read the entire
6096         external_exec struct, swap and check its magic number,
6097         swap in the whole structure, and pass the swapped-in version to
6098         some_aout_object_p.
6099         * bout.c:  Bring into modern era.  Use single _object_p routine
6100         for big- aand little-endian.  Provide internal and external
6101         exec header structs.  Use separate swap-in and swap-out routines.
6102
6103         * libaout.h:  Move struct internal_exec from ../include/aout64.h
6104         to here.  Add obj_symbol_entry_size to struct aoutdata.
6105         * aoutx.h (...some_aout_object_p):  Set obj_symbol_entry_size.
6106
6107         * ../include/aout64.h:  Change EXTERNAL_LIST_SIZE to
6108         EXTERNAL_NLIST_SIZE.  Callers changed.
6109
6110 Fri Oct  4 18:18:46 1991  John Gilmore  (gnu at cygnus.com)
6111
6112         * bfd.c:  Remove strerror() to libiberty.
6113
6114         * elf.c:  Remove elf_set_section_contents, use generic one.  Lint.
6115         * libbfd-in.h, libbfd.c:  Add bfd_generic_set_section_contents.
6116         * libbfd.c (bfd_generic_{get,set}_section_contents):  Check that
6117         last byte of transfer, not first byte, is within the section.
6118
6119         * host-aout.c:  Remove `BSD' archive support.  Lint.
6120
6121         * archures.c: Rename `struct bfd_arch_info_struct' to `struct
6122         bfd_arch_info'.  Rename `typedef bfd_arch_info_struct_type' to
6123         `bfd_arch_info_type'.  All uses changed.
6124         * reloc.c:  Rename `bfd_reloc_status_enum_type' to
6125         `bfd_reloc_status_type'.  Rename `bfd_reloc_code_enum_real_type'
6126         to `bfd_reloc_code_real_type'.  (This seems to be a misnomer,
6127         it needs a better name.)  All uses changed.
6128         * targets.c:  Rename `enum target_flavour_enum' to `enum
6129         target_flavour', and remove the `_enum' from all of the enum
6130         values themselves.  All uses changed.
6131
6132         * configure.in, config/h-i386mach:  i386 mach host.
6133         * config/t-i386-aout:  Use host-aout.c.
6134
6135         * trad-core.c:  Give it its own xvec's to make it independent
6136         of other file formats.
6137         * ecoff.c, host-aout.c:  Remove refs to trad-core.
6138         * config/t-dec3100, t-hp300bsd, t-tahoe, t-vax:  Define TRAD_CORE.
6139         * targets.c:  #ifdef TRAD_CORE, include it in the vector.
6140
6141 Fri Oct  4 17:38:03 1991  Steve Chamberlain  (steve at cygnus.com)
6142
6143         * reloc.c: Extended NEWHOWTO macro
6144         * ieee.c: Changed the way 8bit pcrel is done
6145         * cpu-h8300.c: got the registers in the right order
6146
6147 Thu Oct  3 19:39:55 1991  John Gilmore  (gnu at cygnus.com)
6148
6149         * bfd-in.h:  enum boolean => enum bfd_boolean for SVR4.  Gumby's
6150         prediction is vindicated!
6151
6152         * bfd-in.h, libbfd-in.h, doc/Makefile, doc/tolibbfd, doc/intobfd:
6153         Remove refs to howto.c, since Steve forgot.
6154
6155 Thu Oct  3 07:49:21 1991  Steve Chamberlain  (steve at cygnus.com)
6156
6157         * elf.c: took the abort out of set_arch_mach so that objdump -i will
6158         still work. Now allows any architecture/machine to be set.
6159
6160 Wed Oct  2 13:50:35 1991  Steve Chamberlain  (steve at cygnus.com)
6161
6162         * howto.c deleted and moved code to reloc.c
6163
6164         * libbfd.h, libbfd-in.h removed $id stuff for real
6165
6166         * cpu-h8300.c Made it match various different spellings of h8300.
6167
6168         * archures.c: Took out the first char filter which made it only
6169         look for a cpu/arch match when the first chars of supplied and
6170         tested names were the same.
6171
6172         * targets.c removed oasys stuff, pending someone to fix the bugs
6173         in it.
6174
6175
6176 Tue Oct  1 12:29:44 1991  John Gilmore  (gnu at cygnus.com)
6177
6178         * Makefile.in, configure.in, targets.c, elf.c:  Add preliminary
6179         ELF support good enough for GDB.
6180         * configure.in, config/h-amix, config/t-m68k-elf:  Handle
6181         m68k-cbm-svr4 host and target.
6182         * config/t-m68k-coff, t-m88k-coff, t-m88k-aout:  Make files nonempty
6183         so `diff' and `patch' can cope.
6184
6185 Tue Oct  1 11:24:31 1991  Steve Chamberlain  (steve at cygnus.com)
6186
6187         * archures.c: removed texinfo error
6188
6189         * init.c: added texinfo hooks, and removed initialization error
6190         message.
6191
6192         * libcoff-in.h, libbfd-in.h removed $id field so cvs can merge
6193         without complaints.
6194
6195 Tue Oct  1 05:02:53 1991  John Gilmore  (gnu at cygnus.com)
6196
6197         * cpu-i960.c:  Avoid numerical count of initializers.
6198
6199         Vax Ultrix changes from David Taylor <taylor@think.com>:
6200         * host-aout.c:  Make little-endian vector really little-endian.
6201         * configure.in:  Separate vax and tahoe cases, handle ultrix.
6202         * config/t-vax:  Add trad-core.o.
6203         * config/h-vaxult:  New host system.
6204
6205 Mon Sep 30 15:13:46 1991  Steve Chamberlain  (steve at cygnus.com)
6206
6207         * bfd-in.h VERSION, change version number to 0.18, this makes a
6208         gap, but now is the same as the linker version number.
6209
6210         * cpu-a29k.c, cpu-i386.c, cpu-m68k.c, cpu-mips.c, cpu-vax.c,
6211         cpu-h8300.c, cpu-i960.c, cpu-m88k.c, cpu-sparc.c: added. These
6212         files will eventually contain processor specific bits for bfd,
6213         like strange relocation information and dis/assembly.  So far only
6214         the H8 has been even partially done.  This work also ties in with
6215         the change in handling architectures.
6216
6217         * amdcoff.c: (a29k_reloc) fix error message.
6218
6219         * aout-f1.h: (choose_reloc_size) now calls bfd_get_arch to
6220         discover the architecture of the bfd. (sunos4_callback) calls the
6221         function bfd_set_arch_mach rather than stuffing stuff directly
6222         into the bfd. (sunos4_write_object_contents), changed names of
6223         accessor functions.
6224
6225         * aoutx.h: (set_arch_mach) now calls bfd_default_set_arch_mach to
6226         setup the environment.
6227
6228         * archive.c: (bfd_slurp_coff_armap) coff archives always have the
6229         headers in big endian format, regardless of the endianess of the
6230         host or target.
6231
6232         * archures.c: totally changed. Now an architecture is represented
6233         with a pointer to an info structure rather than an enumerated type
6234         and a long. The old info is available as two elements in the
6235         structure.  Future enhancements to architecure support will
6236         involve pointers to methods being placed into the info structure.
6237
6238         * bfd.c: changed the definition of the bfd structure for the new
6239         architecture stuff.
6240
6241         * bout.c: (b_out_set_arch_mach) changed to use the new
6242         architecture mechanism.
6243
6244         * coffcode.h: (coff_set_arch_mach, coff_set_flags) changed to use
6245         the new architecture mechanism.
6246
6247         * configure.in: added h8 stuff.
6248
6249         * ieee.c: too many changes to note.  Now ieee files written with
6250         bfd gas and ld can be read by gld and ieee only linkers and
6251         simulators.
6252
6253         * libbfd.c, libbfd.h: changed prototype of bfd_write.
6254
6255         * newsos3.c: (newos3_callback) now calls bfd_set_arch_mach rather
6256         than fixing the structure directly.
6257
6258         * oasys.c: (oasys_object_p) now calls bfd_default_set_arch_mach rather
6259         than fixing the structure directly.
6260
6261         * opncls.c: (new_bfd) makes sure that bfd_init has been called
6262         before opening a bfd.
6263
6264         * srec.c: (srec_set_arch_mach) now calls bfd_default_set_arch_mach
6265         rather than fixing the structure directly.
6266
6267         * targets.c: (target_vector) now by defining SELECT_VECS (perhaps
6268         in the t/hmake file) a user can select which backends they want
6269         linked with bfd without changing the source.
6270
6271         * init.c: new, looks after initializing modules.
6272
6273         * howto.c: for future use, will allow an application to work out
6274         what cookie to use as a handle on a relcoatio howto.
6275
6276 Mon Sep 30 13:31:15 1991  John Gilmore  (gnu at cygnus.com)
6277
6278         * srec.c:  Better error checking, partly from Peter Schauer.
6279         (srec_object_p):  Avoid assuming any file that starts with 'S' is
6280         an S-record file!  (Check for 3 uppercase-hex digits after it.)
6281         (ISHEX):  Define new macro for checking supposedly hex characters.
6282         (pass_over):  Treat as EOF any S-record line that:
6283             *  doesn't have hex in either size character
6284             *  produces a size larger than 0x7F
6285             *  has an unrecognized type number
6286
6287 Thu Sep 26 15:27:29 1991  John Gilmore  (gnu at cygnus.com)
6288
6289         * aoutf1.h, aoutx.h, bout.c, coffcode.h, host-aout.c, oasys.c,
6290         opncls.c:  Lint (saber actually).
6291
6292 Thu Sep 26 11:24:24 1991  Per Bothner  (bothner at cygnus.com)
6293
6294         * libaout.h (WRITE_HEADERS): Set header's a_text field always.
6295         * newsos3.c: Fixed two types: newos3 -> newsos3.
6296         * reloc.c (bfd_perform_relocation): Fix pc-relative relocation
6297         to use correct segment.
6298
6299 Mon Sep 23 18:24:34 1991  Per Bothner  (bothner at cygnus.com)
6300
6301         * aoutx.h (print_symbol):  Handle missing symbol->name.
6302
6303 Fri Sep 20 12:26:01 1991  Stu Grossman  (grossman at cygnus.com)
6304
6305         * aoutf1.h (swapcore_sparc):  Change name of USRSTACK, fix comment
6306         at top of routine.
6307
6308 Tue Sep 17 17:23:49 1991  Stu Grossman  (grossman at cygnus.com)
6309
6310         * oasys.c, configure.in, config/h-irix3, config/t-irix3:
6311         add sgi/irix support.
6312
6313 Thu Sep 12 14:29:09 1991  John Gilmore  (gnu at cygint.cygnus.com)
6314
6315         Changes for the AMD 29000 Ultracomputer port from David Wood.
6316         (wood@nyu.edu).
6317
6318         * opncls.c (bfd_fdopenr):  Handle NO_FCNTL.
6319
6320         * Makefile.in:  Make subdirs work by using $(INCDIR) in the
6321         crude dependencies.
6322
6323         * coffcode.h (coff_real_object_p):  Pass information about the
6324         current file's coff symbol format to BFD via the coff_data struct.
6325         (coff_find_nearest_line):  obj_icof => coff_data.
6326         (coff_swap_sym_{in,out}):  Check that SYMNMLEN == E_SYMNMLEN.
6327         (coff_swap_aux_{in,out}):  Check that FILNMLEN == E_FILNMLEN
6328         and DIMNUM == E_DIMNUM.
6329         * configure.in:  Handle a29k-*-* hosts, and targets
6330         a29k-*-coff, a29k-*-aout, and a29k-*-sym1.
6331         * libcoff-in.h:  Add local_n_btmask, local_n_btshft,
6332         local_n_tmask, local_n_tshift, local_symesz, local_auxesz,
6333         local_linesz to `coff_data' (tdata) struct.
6334         (coff_data, coff_data_type, coff_tdata):  Rename struct icofdata.
6335         * config/h-ultra3:  Handle a29k-*-* hosts as Ultracomputers.
6336
6337 Thu Sep 12 14:07:22 1991  Roland H. Pesch  (pesch at cygint.cygnus.com)
6338
6339         * Makefile.in: $(MAKE) for make, $(docdir) for doc
6340         * doc/Makefile: redundant dependencies for Sun-make VPATH bug
6341
6342 Tue Sep 10 20:34:12 1991  John Gilmore  (gnu at cygint.cygnus.com)
6343
6344         * aoutf1.h (sunos4_core_file_p):  Release the right storage in
6345         error case.
6346         (sunos4_core_file_matches_executable_p):  Fix header comparison.
6347         * aoutx.h:  Avoid shifts of 32 bits, undefined in C.  Lint.
6348         * bout.c, icoff.c, ieee.c, libbfd.c, oasys.c:  gcc -O -W lint.
6349
6350 Wed Sep  4 00:44:52 1991  John Gilmore  (gnu at cygint.cygnus.com)
6351
6352         Allow GDB to patch object files.
6353
6354         * aoutf1.h (sunos_core_file_p):  Set SEC_HAS_CONTENTS on all sections.
6355         * trad-core.h (trad_unix_core_file_p):  Ditto.
6356         * aoutx.h (aout_set_section_contents):  On first output, check
6357         abfd->direction and complain if erroneous.
6358
6359         * Makefile.in:  Add crude dependencies.
6360
6361 Tue Sep  3 13:46:19 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6362
6363         * config/* aoutx.h configure* shortened all the h/tmake-xxxx
6364         to h/t-xxxx files so that everything will work on System V.
6365
6366 Fri Aug 23 13:51:06 1991  John Gilmore  (gnu at cygint.cygnus.com)
6367
6368         * aoutx.h:  Add information on host-aout.c and how to configure
6369         to use it, to the manual.
6370         * configure.in:  Tix typo.
6371         * ecoff.c:  If compiling for DEC3100, use trad_unix core files,
6372         else dummy out the core file support.
6373         * trad-core.c (trad_unix_core_file_p):  If HOST_DATA_START_ADDR is
6374         specified, use it to locate the data section.
6375         * coffcode.h (coff_write_symbols):  Declare buffer as bfd_bytes
6376         rather than as chars (lint).
6377
6378 Thu Aug 22 22:20:19 1991  Stu Grossman  (grossman at cygint.cygnus.com)
6379
6380         * aoutx.h, coffcode.h:  saberized.
6381
6382 Thu Aug 22 11:27:06 1991  Roland H. Pesch  (pesch at cygint.cygnus.com)
6383
6384         * bfd.texinfo: some cleanup, reincorporated more intro matter from
6385         bfd.doc
6386         bfd.c, targets.c: minor rewording of doc segments
6387
6388
6389 Wed Aug 21 19:13:22 1991  John Gilmore  (gnu at cygint.cygnus.com)
6390
6391         * trad-core.c (trad_unix_core_file_p):  Use HOST_TEXT_START_ADDR,
6392         etc, rather than TEXT_START_ADDR.
6393         * host-aout.c:  Remove #if 0 around whole thing.
6394         Update to modern (32/64-bit) a.out naming conventions.
6395         Include a large chunk of ../include/a.out.gnu.h to get macros that
6396         are not defined by the system include files.
6397         (host_aout_{32,64}_write_object_contents):  Use the WRITE_HEADERS
6398         macro used by the other a.out implementations.
6399         * Makefile.in:  Give dependencies to OPTIONAL_BACKENDS.
6400
6401 Wed Aug 21 14:33:06 1991  Roland H. Pesch  (pesch at cygint.cygnus.com)
6402
6403         * Makefile.in: use targets "bfd.dvi" and "bfd.ps" instead of
6404         texdoc and psdoc; make these depend on generated .texi's
6405
6406         * scanit, (new) unPROTO: turn PROTO macros into ANSI declarations in
6407         doc
6408
6409         * bfd.c, reloc.c, syms.c: minor spelling/wording fixes in doc
6410         portions
6411
6412         * Makefile.in, awkscan-ip, awkscan-p, intobfd,
6413         libbfd.h, libcoff.h, tolibcoff; new bfd-in.h, libbfd-in.h,
6414         libcoff-in.h: (a) use separate files for invariant parts of bfd.h,
6415         libbfd.h, and libcoff.h; (b) in generated parts of same, use less
6416         obtrusive marks indicating .c origins.
6417
6418         * bfd.texinfo: generalize most references to linker
6419
6420 Tue Aug 20 15:18:02 1991  Roland H. Pesch  (pesch at cygint.cygnus.com)
6421
6422         * Makefile.in: include core.p in PROTOS (building better bfd.h)
6423         * archures.c: remove empty foo() definition (crept in at vn1.9)
6424
6425 Mon Aug 19 13:48:22 1991  Roland H. Pesch  (pesch at cygint.cygnus.com)
6426
6427         * bfd.texinfo: use @setchapternewpage on instead of lots of
6428         @page's; minor rephrasing in Introduction.
6429
6430         * aoutx.h, archive.c, archures.c, bfd.c, bfd.texinfo, cache.c,
6431         coffcode.h, core.c, format.c, ieee.c, libbfd.c, libbfd.h, libcoff.h,
6432         oasys.c, opncls.c, reloc.c, section.c, syms.c, targets.c (documentation
6433         segments): used BFD (caps) more consistently as a name in
6434         discourse, fixed a few other minor typos and uses of fonts
6435
6436
6437 Thu Aug  8 16:47:43 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6438
6439         * coffcode.h: fixed bug where string table size wasn't being swapped.
6440
6441 Thu Aug  1 16:35:28 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6442
6443         * section.c: added SEC_CONSTRUCTOR_TEXT|DATA|BSS flags
6444
6445         * syms.c: added BSF_CONSTRUCTOR, BSF_WARNING and BSF_INDIRECT
6446         flags. (bfd_print_symbol_vandf) now knows what to do with the
6447         above flags.
6448
6449         * aoutx.h: made translate_from_native_sym_flags and
6450         translate_to_native_sym_flags produce the above flags.
6451
6452
6453 Wed Jul 31 09:53:52 1991  John Gilmore  (gnu at cygint.cygnus.com)
6454
6455         * all files:  update copyright notices for GPL version 2.
6456         Install header comments and attribute most modules to their
6457         authors.  BFD's name is now officially "Binary File Descriptor",
6458         so remove any conflicting pejoratives.
6459         archures.h:  Consists solely of comments; remove it.
6460
6461 Fri Jul 26 18:11:34 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6462
6463         * Makefile.in, bfd.c: Made it compile again.
6464
6465 Fri Jul 19 08:17:09 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6466
6467         * newsos3.c, targets.c, coffcode.h: new patches from David Wood
6468
6469
6470 Mon Jul 15 16:27:42 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6471
6472         * aoutf1.h archive.c bfd.c coffcode.h core.c ecoff.c ieee.c
6473         bfd.texinfo oasys.c opncls.c reloc.c srec.c: More documentation on
6474         lint fixes.
6475
6476         * amdcoff.c bfd.texinfo Makefile.in : Folded in changes for amd
6477         29k coff by David Wood (wood@lab.ultra.nyu.edu).
6478
6479 Thu Jul  4 09:53:16 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6480
6481         * Everything: created some new files, core.c format.c, reloc.c,
6482         section.c and syms.c to split the functionality a bit better.
6483         Cleaned up the rest of the files a bit, and added some
6484         documentation.
6485
6486
6487 Mon Jul  1 13:29:47 1991  David Wood (wood at david.ultra.nya.edu)
6488
6489         * opncls.c, ../include/sys/h-sun3.h ../include/sys/h-sun4.h: fcntl
6490         really takes 3 arguments, patched code and ammended prototypes.
6491
6492 Fri Jun 14 13:19:40 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6493
6494         * ../include/bfd.h (struct bfd_target): Added new field
6495         "align_power_min" which contains the minimum alignment for a
6496         section. This is used in coff_new_section_hook. The field
6497         insertion necessitates an update of all backends..
6498
6499         * aoutf1.h jump table field inserted
6500
6501         * archive.c(snarf_ar_hdr)(bfd_slurp_coff_armap) can now parse dgux style extended
6502         filenames too.
6503
6504         * bout.c(b_out_squirt_out_relocs) fix to assertion tests. Jump
6505         table field inserted.
6506
6507         * coffcode.h(just about everything) Now patches up symbol tables
6508         using a different mechanism. The Intel major bug has been fixed,
6509         and the linker can self host on the Aviion and be debugged with
6510         gdb.
6511
6512         * ecoff.c: new include and jump table patch, i386coff.c: new
6513         include and jump table patch,  icoff.c: new include and jump table
6514         patch, ieee.c: can now read archives containing ieee modules.,
6515         libcoff.h: added (combined_entry_type), libieee.h: uped max
6516         sections to 20, m68kcoff.c: new include and jump table patch,
6517         m88kbcs.c: new include and jump table patch, oasys.c: various bugs
6518         fixed. opncls.c: added bfd_alloc_grow and bfd_alloc_finish.
6519         srec.c: jump table patch. trad-code.c fixed #IF typeo
6520
6521 Fri Jun  7 12:35:46 1991  Sean Fagan  (sef at cygint.cygnus.com)
6522
6523         * coffcode.h (coff_swap_aux_in): added else case to deal with
6524         filenames less than 9 characters.
6525
6526
6527 Thu Jun  6 18:27:38 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6528
6529         * ../include/oasys.h oasys.c (oasys_archive_p): fixed so it works
6530
6531         * srec.c: now allows any number of sections to be created in a
6532         file. Outputs addresses of the right length.
6533
6534 Thu May 30 15:30:10 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6535
6536         * bfd.c (bfd_check_format): Fixed problem where when a defaulted
6537         target didn't match, the format got set to the attempted match,
6538         breaking a future test.
6539
6540         *../include/i386coff.h : fixed typo in type field with size
6541
6542         * i386coff.c icoff.c m88k-bcs.c ecoff.c ../include/bfd.h : Added
6543         support in the jump table for the swapping routines exported to
6544         gdb. Now gdb works with the 386.
6545
6546 Tue May 28 17:21:43 1991  John Gilmore  (gnu at cygint.cygnus.com)
6547
6548         * Merge in changes from gdb-3.95 release.
6549         Makefile.in:  Allow hmake and tmake files to add OFILES.
6550         aoutf1.h:
6551         bfd.c:  support specific targets as well as searching.  When
6552         searching, take default target in preference to others.
6553         bfd.doc:  typos
6554         ieee.c, oasys.c:  Avoid using the "tdata" macros left of assignment.
6555         liba.out.h:  Don't hard-code file offsets; use N_ macros for them.
6556         libbfd.h:  Support specific targets as well as searching.
6557         opncls.c:  Support specific targets as well as searching.
6558         targets.c:  Search is short-circuited if default target matches.
6559         liboasys.c, libieee.c:  Undo bothner changes that make macros
6560         work to the left of assignment, but which depend on the
6561         representations of different pointer types being the same.
6562
6563 Fri May 24 18:56:52 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6564
6565         * i386coff.c: created.
6566         * coffcode.h: added support for 386.
6567         * Makefile.in: added support for 386.
6568         * ../include/i386coff.h: created
6569
6570 Wed May 22 07:26:38 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6571
6572         * coffcode.h: removed all put_x_<sizes>
6573         * libbfd.c: Changed #ifdef __GNUC__ to #ifdef HOST_64_BIT, Added
6574         DEFUNS
6575
6576
6577 Tue May 21 08:58:58 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6578         (bothner)
6579         * opncls.c: Changed obstack_chunk_alloc use xmalloc
6580
6581 Mon May 20 17:12:17 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6582
6583         * everything: Removed sysdep.h from bfd.h and put back into files
6584         from which it was split out. Now 64 bit version is built with a
6585         -DHOST_64_BIT="long long" on the compile line.
6586
6587 Fri May 17 19:35:26 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6588
6589         Changed all the [get|put][name] routines to use  [get|put]_[size
6590         in bytes].
6591
6592         Put in support for 64 bit work. Now two versions of bfd may be
6593         generated, according to the state of TARGET_64_BIT, one which is
6594         32 bit only, and one which is 64/32 bits.
6595         Created new back end 'demo64' to test 64 bit functionality.
6596
6597         Renamed some files to work on DOS.
6598
6599         * archive.c: lint * bfd.c: prototypes and lint. * ecoff.c: added
6600         64bit transfer  * icoff.c: added 64bit transfer * ieee.c: name
6601         chage, 64 bit transfer. * liba.out.h: Split out common code from
6602         sunos and newsos into liba.out. Name changes and prototype mods. *
6603         libbfd.c: lint and prototypes, extra 64bit swaps. * libbfd.h:
6604         prototypes for new functions. * libcoff.h: lint * libieee.h: make
6605         work on DOS * liboasys.h: make work on DOS * m88k-bcs.c: Name
6606         change and 64bit stuff.* newsos3.c: common code removed, new jump
6607         table. * oasys.c: Name change * opncls.c: Portability fixes *
6608         srec.c: Name changes * sunos.c: Removed comon code. * targets.c:
6609         Added demo * aout32, aout64.c include  aoutx.h * bout.c: used to
6610         be called b.out.c * coffcode.h: used to be called coff-code.h, now
6611         64bit ized. * demo64.c: 64 bit a.out back end
6612
6613 Thu May 16 16:02:07 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6614         from bothner
6615         * libieee.h: Make ieee_data and ieee_ar_data macros usable
6616         on LHS of assignment, even when using old compilers.
6617         * liboasys.h: Ditto for oasys_data and oasys_ar_data.
6618         * m68kcoff.c: Add enum-to-int casts to accomodate old compilers.
6619         * newsos3.c: Fix definitions of SEGMENT_SIZE and TEXT_START_ADDR.
6620         * opncls.c: Define S_IXUSR, S_IXGRP, S_IXOTH if undefined.
6621         * targets.c: Add declaration of newsos3_vec.
6622
6623 Mon May 13 10:03:29 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6624
6625         * aout.c: fixxed some of the problems with filepos calculation.
6626         (swap_ext_reloc): fixed problem with creation of relocs.
6627         (aout_set_section_contents): fixed filepos problem
6628
6629         * coff-code.h: (swap_filehdr_in, swap_filehdr_out) add.
6630         (swap_filehdr) delete. Changed all the usage of bfd_h_put_x.
6631         (swap_aouthdr_in, swap_aouthdr_out) add. (swap_aouthdr) delete.
6632         (coff_real_object_p) cleaned up, added MIPS. (coff_object_p)
6633         cleaned up. (coff_write_object_contents) cleaned up.
6634
6635         * ecoff.c: Totally different. Now supports ecoff fully.
6636
6637         * icoff.c: fixed problems in relocation callout.
6638
6639         * libcoff.h: (struct icofdata) removed hdr structure from tdata.
6640
6641         * m68kcoff.c: updated target vector.
6642
6643         * sunos.c: (choose_reloc_size) added: (sunos4_callback) calls
6644         choose_reloc_size. (sunos4_write_object_contents) now calls
6645         choose_reloc_size so outputs relocs correctly, also calculates the
6646         size of the sections correctly.
6647
6648
6649
6650 Fri May 10 16:58:53 1991  John Gilmore  (gnu at cygint.cygnus.com)
6651
6652         Merge Per Bothner's changes to modularize BFD a.out a bit.
6653
6654         * libbfd.h, libbfd.c (bfd_generic_get_section_contents):  Add.
6655         * ieee.c:  Cast enums to int before comparing them, for brain-
6656         dead compilers.
6657         * coff-code.h:  Remove coff_get_section_contents, and use the
6658         generic one instead.
6659
6660         * aout.c:  Derive new module from sunos.c, containing generic
6661         support code for all kinds of a.out files.
6662
6663         * sunos.c: Remove all code that goes in aout.c.  Split out
6664         machine dependent followup in sunos4_object_p into
6665         sunos4_callback.  Use JUMP_TABLE(aout) for the transver vector,
6666         and redefine only the names we CHANGE, not all the names.  Drop
6667         the little-endian vector, and rename the vector as sunos4 rather
6668         than generic.
6669
6670         * b.out.c:  Use aout.c routines for most of the work.  Slight
6671         changes for the new regime.  Remove close_and_cleanup and
6672         get_section_contents in favor of generics.  New transfer vector
6673         regime.
6674
6675         * newsos.c:  New support for Sony NEWS, another a.out format.
6676
6677         * ecoff.c:  Remove close_and_cleanup.  New tvec regime.
6678         * icoff.c, m88k-bcs.c:  Add write_contents to tvec.
6679         * ieee.c, oasys.c:  Remove close_and_cleanup, add write_contents
6680         to tvec.
6681         * opncls.c (bfd_close):  Call format-dependent write_contents
6682         routine, if writing, before calling target-dependent
6683         close_and_cleanup routine (which is now always generic, I think).
6684         * srec.c:  Use bfd_alloc instead of malloc.  Remove
6685         close_and_cleanup and move code from it to
6686         srec_write_object_contents.  Add write_contents to tvec.
6687         * targets.c:  Remove a.out little vector, replace a.out big
6688         vector with SunOS vector.  FIXME:  Need Vax support again now.
6689
6690         * libbfd.h:  Add write_contents format-dependent-vector to the
6691         bfd_target vector.  Supply a generic close_and_cleanup routine.
6692         * liba.out.h:  Handle the new aout.c split.  Add prototypes for
6693         all routines defined in aout.c.  Rename "sunos" things to "aout"
6694         things.  Add a few fields where needed for various formats.
6695         * Makefile.in:  Add aout.c and newsos.c.
6696
6697         * archive.c, ieee.c, oasys.c:  Lint.
6698
6699 Fri May 10 12:34:48 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6700
6701         * ../include/bfd.h
6702         changed forward declaration struct stat; to reduce warnings. Changed
6703         comment on bfd_h_<x>_x.
6704
6705         * ../include/m68kcoff.h, ../include/intel-coff.h,
6706         ../include/m88k-bcs.h
6707         Now there are two incarnations of relocs, linenos and syments. One for
6708         internal digestion, and one full of char arrays for I/O. The original
6709         names have gone to detect errors.
6710
6711         * Makefile.in, m68kcoff.c, targets.c
6712         Test new structure code with a 68k coff implementaion
6713
6714         * coff-code.h, icoff.c, coffswap.c, libcoff.h
6715         Fixed all the places where there were problems with the size and
6716         alignments of structures on disk and structures in memory. #ifed out
6717         all the code in coffswap.c, since it should be done using the target
6718         swap routines now.
6719
6720 Thu May  9 11:00:45 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6721
6722         * ieee.c (do_one, ieee_slurp_section_data): now supports the load
6723         multiple reloc command.
6724
6725         * sunos.c (sunos4_set_section_contents): Made it so that sections
6726         are always padded to their alignment size.
6727
6728 Sat May  4 15:49:43 1991  John Gilmore  (gnu at cygint.cygnus.com)
6729
6730         * archive.c, bfd.c, coff-code.h, opncls.c, sunos.c, trad-core.c:
6731         Clean up types and such (saber C problems).
6732         * ecoff.c:  Clean up types and such.  Remove routines that are
6733         not used.  Fix up reading and swapping of shorts from files.
6734
6735    Notes on bfd-0.5.2-patch1a, from Per Bothner:
6736
6737         * a.out.vax.c: Remove two bogus "static" from prototypes.
6738
6739         * ecoff.c: Got rid of lots of non-working junk (that had
6740         been copied directly from coff-code.h).
6741         Updated to be consistent with updates to icoff.c and coff-code.h.
6742
6743         * libbfd.h: Added definitions for S_IXUSR, S_IXGRP, and S_IXOTH
6744         if they're missing (as they are in (BDS-4.3-based) NewsOS-3).
6745
6746         * sunos.c (n_txtoff): (Re-)Add support for sony. This is a kludge,
6747         but until the target_vector is automatically generated,
6748         it's as good as any. Note that the text offset is the only
6749         difference between NewsOS and SunOs (including magic numbers).
6750         (Most of the sunos_* routines should to renamed bsd_*
6751         and move to a bsd.c file. Then (and when the target_vector
6752         is automatically generated) it might make sense to create
6753         a separate Sony target.)
6754
6755         * sysdep.h: Don't declare fread and fwrite. Causes trouble
6756         on some systems, and doesn't help on others.
6757         Similarly, only define X_OK if not already defined.
6758
6759         * trad-core.c: Don't include sys/stat.h - at least
6760         on NewsOS 3, it has already been included.
6761
6762 Tue Mar  5 01:47:57 1991  John Gilmore  (gnu at cygint.cygnus.com)
6763
6764         * coff-code.h (bfd_coff_swap_sym, bfd_coff_swap_aux,
6765         bfd_coff_swap_lineno):  Export the routines that byte-swap COFF
6766         symbol tables if necessary when reading them in, so gdb can use
6767         them.  Add "bfd_coff_" to the names so they won't conflict with
6768         names in calling programs.  FIXME-soon:  if coff-code.h is
6769         included in two BFD modules, this will cause duplicate
6770         definitions; the routines should be exported to a separate,
6771         common, module (probably along with a mess of other ones).
6772
6773 Sat Mar  2 12:11:26 1991  John Gilmore  (gnu at cygint.cygnus.com)
6774
6775         Improve modtime support.
6776
6777         * bfd.h:  Add boolean mtime_set, and declare bfd_get_mtime.
6778         Remove #define for bfd_get_mtime.  Remove gratuitous comment.
6779         * bfd.c (bfd_get_mtime):  New fn, caches mtime, gets if not cached.
6780         BUG:  archive members still do not get correct mod times.
6781
6782         Improve floating point support for core files.
6783
6784         * sunos.c (struct core):  Change void *fpa_dummy to double fp_stuff.
6785         (sunos4_core_file_p):  Create a second registers section in the
6786         core file, called ".reg2", for the float registers.
6787
6788 Thu Feb 14 15:49:06 1991  Gumby Vinayak Wallace  (gumby at cygint.cygnus.com)
6789
6790         * many changes to improve archive handling; found a logic flaw in
6791           bfd_check_format which only just happened to work by cooncidence.
6792
6793 Thu Feb 14 07:53:16 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6794
6795         * bfd.c (bfd_perform_relocation): fixed to use output_offsets
6796         correctly.
6797
6798         * bfd.h: changed type of udata in asymbol to void *, like it
6799         should be. Added bfd_reloc_dangerous enum member.
6800
6801         * coff-code.h: Fixed it so that internally generated symbols get
6802         their values relocated correctly in all cases. Removed calls to
6803         xmalloc.
6804
6805         * icoff.c: Not understanding the destination symbol of a reloc is
6806         not a failure any more, just 'dangerous'. This allows linking of
6807         b.out and coff images.
6808
6809         * sunos.c: Cleaned up the way that ZMAGIC section sizes are
6810         calculated.
6811
6812
6813 Tue Feb 12 13:25:46 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6814
6815         * sunos.c (translate_to_native_sym_flags): fixed
6816         sym_pointer->n_value so that symbols on the way out get their
6817         section relative values calculated correctly.
6818
6819         * coff-code.h (mangle_symbols): fixed problem where tags were not
6820         being relocated for structs, enums, unions. Also various lints.
6821
6822 Mon Feb 11 19:52:26 1991  Gumby Vinayak Wallace  (gumby at cygint.cygnus.com)
6823
6824         * archive.c (get_elt_at_filepos): system_call_error returned
6825           incorrectly.
6826
6827 Sun Feb 10 23:18:40 1991  Gumby Vinayak Wallace  (gumby at cygint.cygnus.com)
6828
6829         * Resolve the use of no_error and system_call_error.
6830           The bfd library itself now will never set bfd_error to
6831           no_error.
6832
6833           The code still needs to be combed to make sure all the error
6834           codes are correct.  I suspect they are not always set correctly.
6835
6836         * The names of all the messages have _ prepended because the sun
6837           bundled compiler can't distinguish from a macro which takes an
6838           argument and the same identifier in a non-macro context.
6839
6840         * The reason for the above being that entry points which used to
6841           be trampoline functions are now just macros which expand to a
6842           direct call through the bfd's xfer vector.
6843
6844         * (../include/intel-coff.h) F_AR32WR: fix this constant.  Why
6845           must gas have its own version of everything (the gas version
6846           had the correct value)
6847
6848 Tue Feb  5 11:46:53 1991  Steve Chamberlain  (steve at cygint.cygnus.com)
6849
6850         * b.out.c: Added patches supplied by chrisb@mipon2.intel.com to
6851         properly support i960 architecture and output correct reloc stuff.
6852
6853         * bfd.h: added prototype for bfd_printable_arch_mach, added
6854         BFD_FAIL
6855
6856         * coff-code.h: Applied patches from chrisb to support i960
6857         architecture, zero relocs and swap them correcly and conditionally
6858         compiled the timestamp.
6859
6860         * sunos.c: Made the default section alignment 2^3 so that doubles
6861         are done properly. Fixed the same reloc bug that was in b.out.c
6862
6863         * sysdep.h: Now compiles on a Posix box
6864
6865 Wed Jan 30 21:36:26 1991  John Gilmore  (gnu at cygint.cygnus.com)
6866
6867         * icoff.c:  Fix comment on big-endian version.
6868         * coff-code.h:  Make HAS_RELOC really work (it's backwards from
6869         F_RELFLG).  Set F_AR32WR in output files if little endian
6870         architecture.
6871
6872 Tue Jan 29 20:56:10 PST 1991 steve@cygnus.com
6873
6874         * archures.c fixed =/== typo
6875
6876         * sunos.c added architecture stuff for output. Fixed
6877         bug where files where vma(data) != size(text)
6878         were processed wrong.
6879
6880         * coff-code.h added a lint cast
6881
6882         * (../include/a.out.sun4.h) fixed it so zmagic
6883         worked
6884
6885 Mon Jan 28 19:15:29 PST 1991 steve@cygnus.com
6886
6887         * archive.c removed loads of includes, and fixed bug where string
6888         table didn't have a null at the end.
6889
6890         * bfd.c fixed includes, added symbols argument to
6891         canonicalize_reloc entry point.
6892
6893         * libbfd.c fixed includes and added some lint patches.
6894
6895         * targets.c added both sorts of intel coff.
6896
6897         * b.out.c fixed included, changed was the canonical
6898         relocs were done.
6899
6900         * icoff.c added support for callj and big and little
6901         enidian tables.
6902
6903         * opncls.c added chmod+xing for files with EXEC_P set.
6904
6905         * sunos.c fixed includes. Changed default section
6906         alignement to words. Fixed relocation stuff to work with
6907         new scheme
6908
6909         * bfd.h various new types added, prototype for new
6910         reloc calls, changed bfd->iostream to a void *
6911         to including files don't need stdio.h.
6912
6913         * libcoff.h added conversion table to tie relocs to
6914         canonical symbols
6915
6916         * sysdep.h created
6917
6918         * coff-code.h fixed includes. Added code to support
6919         big and little endian formats. Various lints. Better
6920         processing of symbols. Changed reloc stuff to new
6921         order
6922
6923         * libbfd.h fixed includes
6924
6925
6926 Mon Jan 21 11:53:51 PST 1991 steve@cygnus.com
6927
6928         * bfd.h changed name of alignment entry in sec_struct to
6929         alignment_power, because of conflicting uses within bfd.
6930         Now it should be obvious that it's a 2**n alignment
6931         specifier. Removed start_pad, end_alignment, block, minsize,
6932         output_file_alignment, subsection_alignment and original_vma fields.
6933         Added align_power() macro. Fixed bfd_section_alignment
6934         acessor macros. Added bfd_symbol_same_target macro.
6935
6936         * b.out.c (b_out_write_object_contents) fixed to use
6937         new alignment member. Fixed (callj_callback) to use section
6938         relative symbols properly.
6939
6940         * sunos.c (sunos4_object_p) fixed to use new alignment_power.
6941         Fixed (translate_from_native_sym_flags) to correctly make
6942         symbols section relative.
6943
6944         * bfd.c (bfd_errmsg) fixed various enum cast problems.
6945         (bfd_make_section) took out initialization of obsolete members.
6946         (bfd_print_symbol_vandf) added
6947
6948         * opncls.c (bfd_create) created.
6949
6950         * coff-code.h (coff_new_section_hook) took away refs
6951         to obsolete members. (make_a_section_from_file) added
6952         conversion between alignment types. (coff_symbol_from)
6953         added. (coff_count_linenumbers) only counts linenumbers
6954         if symbol is of coff-type. (coff_mangle_symbols) only
6955         heavily mangles symbols if symbol is coff-type.
6956         (coff_write_symbols) various lints. (coff_write_object_contents)
6957         various lints and modification for alignment conversion.
6958         (coff_slurp_relocs) fixed for use with new asection shape.
6959
6960 Sat Jan 19 16:10:42 PST 1991 steve@cygnus.com
6961
6962         * archive.c lots of lint
6963
6964         * b.out.c added callj relocation support, upgrated reloc howto.
6965         Fixed so that asymbol and reloc records are output
6966         correctly.
6967
6968         * bfd.c lots of lint, support for new bfd entry point
6969         bfd_print_symbol.
6970
6971         * bfd.h changed definition of asymbol to contain pointer to
6972         owning bfd, removed target dependencies.
6973
6974         * cache.c took out print statements, put in BFD_ASSERT calls.
6975
6976         * coff-code.h various lints, corrected linenumber output
6977         functionality. Added support for new style asymbols and
6978         bfd_print_symbol. Fixed so that asymbol and
6979         reloc records are handled correctly. Added timestamp.
6980
6981         * icoff.c Added support for new howto shape.
6982
6983         * liba.out.h Added support for new asymbol shape
6984
6985         * libbfd.c various lints
6986
6987         * libbfd.h various lints
6988
6989         * libcoff.h added support for new asymbol shape.
6990
6991         * sunos.c  various lints. Added support for new asymbol shape
6992         and bfd_print_symbol.
6993
6994 Wed Jan 16 21:38:09 PST 1991 steve@cygnus.com
6995
6996         * b.out.c removed prototype of sunos4_ennativate_symtab, lots of
6997         pointer lint. Added support for callj relocation. Fixed bug where
6998         the last 32 bytes of the text section were overwritten by data. Fixed bug
6999         where archives of b.out didn't work due bfd_slurp_extended_name_table
7000         returning false.
7001
7002         * sunos.c added support for n_other field. Braced the howto table so
7003         that it won't be affected by any lengthing of the howto struct typedef.
7004         Various lints
7005
7006         * bfd.h added support for n_other field, added special_function
7007         reloc type, modified bfd_perform_relocation prototype. Added bfd_h_get_x
7008         macros.
7009
7010         * bfd.c upgraded bfd_perform_relocation, various lints.
7011
7012 Wed Jan 16 01:55:53 1991  John Gilmore  (gnu at rtl)
7013
7014         * ChangeLog:  Started ChangeLog for BFD.
7015         * ToDo:  Create file for suggestions.
7016
7017         * Makefile:  Support easy loading into Saber C.
7018         Add dependencies for icoff.o and bcs88kcoff.o.
7019         Rename coff.c to coff-code.h.  Change callers.
7020
7021         * bfd.c (bfd_check_format):  Allow the check_format routines
7022         to return the desired target vector, rather than just a Boolean.
7023         bfd.h (bfd_check_format):  Change function pointer return type.
7024         archive.c (bfd_generic_archive_p):  change callee.
7025         b.out.c (b_out_little_object_p, b_out_big_object_p,
7026         b_out_real_object_p):  change callee.
7027         libbfd.c (_bfd_dummy_target):  Dummy routine replacing bfd_false
7028         in check_format transfer vectors that need a filler.
7029         libbfd.h (bfd_generic_archive_p, _bfd_dummy_target):  Fix decls.
7030         bcs88kcoff.c:  change callee.
7031         coff-code.h (coff_real_object_p, coff_big_object_p):  change callee.
7032         icoff.c:  change callee.
7033         sunos.c (sunos4_object_p, sunos4_core_file_p):  change callee.
7034
7035         * libbfd.c (zalloc):  It should actually zero the storage!
7036         This was commented out for some reason.
7037
7038         * libbfd.h:  Add malloc, xmalloc, memcpy, and fatal decls.
7039         This is so callers can avoid <stdlib.h> which doesn't exist
7040         on older systems.
7041
7042         * bfd.c (map_over_sections):  Add debugging code, since I
7043         noticed the section count for sunos core files was bad, but only
7044         GDB had detected the problem.
7045         (bfd_set_section_lineno_size, bfd_set_section_linenos,
7046         bfd_get_section_linenos):  Remove obsolete functions.
7047         (bfd_apply_relocations):  Use longs, not ints, for the math.
7048
7049         * bfd.h:  Declare enum boolean and struct bfd_target as well
7050         as typedefs for them.  Remove obsolete
7051         bfd_get_section_lineno_size.
7052
7053         * cache.c:  Make the "fdopen" support work.  Keep better track
7054         of how many files are open.  Centralize the opening of files
7055         and be sure bfd_open[rw] actually try to open the file.  Evade
7056         linked list initialization problems.
7057
7058         * b.out.c, coff-code.h, opncls.c, sunos.c:  lint.
7059
7060         * coff-code.h (coff_slurp_symbol_table):  Null-terminate symtab names.
7061
7062         * cplus-dem.c:  Delete file, since it is not part of BFD.
7063
7064         * opncls.c (bfd_openr):  Eliminate misplaced #if 0 code.
7065         (bfd_openr, bfd_openw):  Actually open the file, give error now.
7066
7067         * sunos.c (sunos4_core_file_p):  Set section count.
7068         (sunos4_set_section_linenos, stab_names, fprint_name):  Eliminiate
7069         obsolete definitions.
7070         (_write_symbol_table):  Initialize <idx> counter.
7071         (foop):  Eliminate debugging code.
7072 \f
7073 Local Variables:
7074 mode: indented-text
7075 left-margin: 8
7076 fill-column: 74
7077 version-control: never
7078 End: