1 Fri Jul 26 18:11:34 1991 Steve Chamberlain (steve at cygint.cygnus.com)
3 * Makefile.in, bfd.c: Made it compile again.
5 Fri Jul 19 08:17:09 1991 Steve Chamberlain (steve at cygint.cygnus.com)
7 * newsos3.c, targets.c, coffcode.h: new patches from David Wood
10 Mon Jul 15 16:27:42 1991 Steve Chamberlain (steve at cygint.cygnus.com)
12 * aoutf1.h archive.c bfd.c coffcode.h core.c ecoff.c ieee.c
13 bfd.texinfo oasys.c opncls.c reloc.c srec.c: More documentation on
16 * amdcoff.c bfd.texinfo Makefile.in : Folded in changes for amd
19 Thu Jul 4 09:53:16 1991 Steve Chamberlain (steve at cygint.cygnus.com)
21 * Everything: created some new files, core.c format.c, reloc.c,
22 section.c and syms.c to split the functionality a bit better.
23 Cleaned up the rest of the files a bit, and added some
27 Mon Jul 1 13:29:47 1991 David Wood (wood at david.ultra.nya.edu)
29 * opncls.c, ../include/sys/h-sun3.h ../include/sys/h-sun4.h: fcntl
30 really takes 3 arguments, patched code and ammended prototypes.
32 Fri Jun 14 13:19:40 1991 Steve Chamberlain (steve at cygint.cygnus.com)
34 * ../include/bfd.h (struct bfd_target): Added new field
35 "align_power_min" which contains the minimum alignment for a
36 section. This is used in coff_new_section_hook. The field
37 insertion necessitates an update of all backends..
39 * aoutf1.h jump table field inserted
41 * archive.c(snarf_ar_hdr)(bfd_slurp_coff_armap) can now parse dgux style extended
44 * bout.c(b_out_squirt_out_relocs) fix to assertion tests. Jump
47 * coffcode.h(just about everything) Now patches up symbol tables
48 using a different mechanism. The Intel major bug has been fixed,
49 and the linker can self host on the Aviion and be debugged with
52 * ecoff.c: new include and jump table patch, i386coff.c: new
53 include and jump table patch, icoff.c: new include and jump table
54 patch, ieee.c: can now read archives containing ieee modules.,
55 libcoff.h: added (combined_entry_type), libieee.h: uped max
56 sections to 20, m68kcoff.c: new include and jump table patch,
57 m88kbcs.c: new include and jump table patch, oasys.c: various bugs
58 fixed. opncls.c: added bfd_alloc_grow and bfd_alloc_finish.
59 srec.c: jump table patch. trad-code.c fixed #IF typeo
61 Fri Jun 7 12:35:46 1991 Sean Fagan (sef at cygint.cygnus.com)
63 * coffcode.h (coff_swap_aux_in): added else case to deal with
64 filenames less than 9 characters.
67 Thu Jun 6 18:27:38 1991 Steve Chamberlain (steve at cygint.cygnus.com)
69 * ../include/oasys.h oasys.c (oasys_archive_p): fixed so it works
71 * srec.c: now allows any number of sections to be created in a
72 file. Outputs addresses of the right length.
74 Thu May 30 15:30:10 1991 Steve Chamberlain (steve at cygint.cygnus.com)
76 * bfd.c (bfd_check_format): Fixed problem where when a defaulted
77 target didn't match, the format got set to the attempted match,
78 breaking a future test.
80 *../include/i386coff.h : fixed typo in type field with size
82 * i386coff.c icoff.c m88k-bcs.c ecoff.c ../include/bfd.h : Added
83 support in the jump table for the swapping routines exported to
84 gdb. Now gdb works with the 386.
86 Tue May 28 17:21:43 1991 John Gilmore (gnu at cygint.cygnus.com)
88 * Merge in changes from gdb-3.95 release.
89 Makefile.in: Allow hmake and tmake files to add OFILES.
91 bfd.c: support specific targets as well as searching. When
92 searching, take default target in preference to others.
94 ieee.c, oasys.c: Avoid using the "tdata" macros left of assignment.
95 liba.out.h: Don't hard-code file offsets; use N_ macros for them.
96 libbfd.h: Support specific targets as well as searching.
97 opncls.c: Support specific targets as well as searching.
98 targets.c: Search is short-circuited if default target matches.
99 liboasys.c, libieee.c: Undo bothner changes that make macros
100 work to the left of assignment, but which depend on the
101 representations of different pointer types being the same.
103 Fri May 24 18:56:52 1991 Steve Chamberlain (steve at cygint.cygnus.com)
105 * i386coff.c: created.
106 * coffcode.h: added support for 386.
107 * Makefile.in: added support for 386.
108 * ../include/i386coff.h: created
110 Wed May 22 07:26:38 1991 Steve Chamberlain (steve at cygint.cygnus.com)
112 * coffcode.h: removed all put_x_<sizes>
113 * libbfd.c: Changed #ifdef __GNUC__ to #ifdef HOST_64_BIT, Added
117 Tue May 21 08:58:58 1991 Steve Chamberlain (steve at cygint.cygnus.com)
119 * opncls.c: Changed obstack_chunk_alloc use xmalloc
121 Mon May 20 17:12:17 1991 Steve Chamberlain (steve at cygint.cygnus.com)
123 * everything: Removed sysdep.h from bfd.h and put back into files
124 from which it was split out. Now 64 bit version is built with a
125 -DHOST_64_BIT="long long" on the compile line.
128 Fri May 17 19:35:26 1991 Steve Chamberlain (steve at cygint.cygnus.com)
130 Changed all the [get|put][name] routines to use [get|put]_[size
133 Put in support for 64 bit work. Now two versions of bfd may be
134 generated, according to the state of TARGET_64_BIT, one which is
135 32 bit only, and one which is 64/32 bits.
136 Created new back end 'demo64' to test 64 bit functionality.
138 Renamed some files to work on DOS.
140 * archive.c: lint * bfd.c: prototypes and lint. * ecoff.c: added
141 64bit transfer * icoff.c: added 64bit transfer * ieee.c: name
142 chage, 64 bit transfer. * liba.out.h: Split out common code from
143 sunos and newsos into liba.out. Name changes and prototype mods. *
144 libbfd.c: lint and prototypes, extra 64bit swaps. * libbfd.h:
145 prototypes for new functions. * libcoff.h: lint * libieee.h: make
146 work on DOS * liboasys.h: make work on DOS * m88k-bcs.c: Name
147 change and 64bit stuff.* newsos3.c: common code removed, new jump
148 table. * oasys.c: Name change * opncls.c: Portability fixes *
149 srec.c: Name changes * sunos.c: Removed comon code. * targets.c:
150 Added demo * aout32, aout64.c include aoutx.h * bout.c: used to
151 be called b.out.c * coffcode.h: used to be called coff-code.h, now
152 64bit ized. * demo64.c: 64 bit a.out back end
158 Thu May 16 16:02:07 1991 Steve Chamberlain (steve at cygint.cygnus.com)
160 * libieee.h: Make ieee_data and ieee_ar_data macros usable
161 on LHS of assignment, even when using old compilers.
162 * liboasys.h: Ditto for oasys_data and oasys_ar_data.
163 * m68kcoff.c: Add enum-to-int casts to accomodate old compilers.
164 * newsos3.c: Fix definitions of SEGMENT_SIZE and TEXT_START_ADDR.
165 * opncls.c: Define S_IXUSR, S_IXGRP, S_IXOTH if undefined.
166 * targets.c: Add declaration of newsos3_vec.
169 Mon May 13 10:03:29 1991 Steve Chamberlain (steve at cygint.cygnus.com)
171 * aout.c: fixxed some of the problems with filepos calculation.
172 (swap_ext_reloc): fixed problem with creation of relocs.
173 (aout_set_section_contents): fixed filepos problem
175 * coff-code.h: (swap_filehdr_in, swap_filehdr_out) add.
176 (swap_filehdr) delete. Changed all the usage of bfd_h_put_x.
177 (swap_aouthdr_in, swap_aouthdr_out) add. (swap_aouthdr) delete.
178 (coff_real_object_p) cleaned up, added MIPS. (coff_object_p)
179 cleaned up. (coff_write_object_contents) cleaned up.
181 * ecoff.c: Totally different. Now supports ecoff fully.
183 * icoff.c: fixed problems in relocation callout.
185 * libcoff.h: (struct icofdata) removed hdr structure from tdata.
187 * m68kcoff.c: updated target vector.
189 * sunos.c: (choose_reloc_size) added: (sunos4_callback) calls
190 choose_reloc_size. (sunos4_write_object_contents) now calls
191 choose_reloc_size so outputs relocs correctly, also calculates the
192 size of the sections correctly.
196 Fri May 10 16:58:53 1991 John Gilmore (gnu at cygint.cygnus.com)
198 Merge Per Bothner's changes to modularize BFD a.out a bit.
200 * libbfd.h, libbfd.c (bfd_generic_get_section_contents): Add.
201 * ieee.c: Cast enums to int before comparing them, for brain-
203 * coff-code.h: Remove coff_get_section_contents, and use the
206 * aout.c: Derive new module from sunos.c, containing generic
207 support code for all kinds of a.out files.
209 * sunos.c: Remove all code that goes in aout.c. Split out
210 machine dependent followup in sunos4_object_p into
211 sunos4_callback. Use JUMP_TABLE(aout) for the transver vector,
212 and redefine only the names we CHANGE, not all the names. Drop
213 the little-endian vector, and rename the vector as sunos4 rather
216 * b.out.c: Use aout.c routines for most of the work. Slight
217 changes for the new regime. Remove close_and_cleanup and
218 get_section_contents in favor of generics. New transfer vector
221 * newsos.c: New support for Sony NEWS, another a.out format.
223 * ecoff.c: Remove close_and_cleanup. New tvec regime.
224 * icoff.c, m88k-bcs.c: Add write_contents to tvec.
225 * ieee.c, oasys.c: Remove close_and_cleanup, add write_contents
227 * opncls.c (bfd_close): Call format-dependent write_contents
228 routine, if writing, before calling target-dependent
229 close_and_cleanup routine (which is now always generic, I think).
230 * srec.c: Use bfd_alloc instead of malloc. Remove
231 close_and_cleanup and move code from it to
232 srec_write_object_contents. Add write_contents to tvec.
233 * targets.c: Remove a.out little vector, replace a.out big
234 vector with SunOS vector. FIXME: Need Vax support again now.
236 * libbfd.h: Add write_contents format-dependent-vector to the
237 bfd_target vector. Supply a generic close_and_cleanup routine.
238 * liba.out.h: Handle the new aout.c split. Add prototypes for
239 all routines defined in aout.c. Rename "sunos" things to "aout"
240 things. Add a few fields where needed for various formats.
241 * Makefile.in: Add aout.c and newsos.c.
243 * archive.c, ieee.c, oasys.c: Lint.
245 Fri May 10 12:34:48 1991 Steve Chamberlain (steve at cygint.cygnus.com)
248 changed forward declaration struct stat; to reduce warnings. Changed
249 comment on bfd_h_<x>_x.
251 * ../include/m68kcoff.h, ../include/intel-coff.h,
252 ../include/m88k-bcs.h
253 Now there are two incarnations of relocs, linenos and syments. One for
254 internal digestion, and one full of char arrays for I/O. The original
255 names have gone to detect errors.
257 * Makefile.in, m68kcoff.c, targets.c
258 Test new structure code with a 68k coff implementaion
260 * coff-code.h, icoff.c, coffswap.c, libcoff.h
261 Fixed all the places where there were problems with the size and
262 alignments of structures on disk and structures in memory. #ifed out
263 all the code in coffswap.c, since it should be done using the target
266 Thu May 9 11:00:45 1991 Steve Chamberlain (steve at cygint.cygnus.com)
268 * ieee.c (do_one, ieee_slurp_section_data): now supports the load
269 multiple reloc command.
271 * sunos.c (sunos4_set_section_contents): Made it so that sections
272 are always padded to their alignment size.
274 Sat May 4 15:49:43 1991 John Gilmore (gnu at cygint.cygnus.com)
276 * archive.c, bfd.c, coff-code.h, opncls.c, sunos.c, trad-core.c:
277 Clean up types and such (saber C problems).
278 * ecoff.c: Clean up types and such. Remove routines that are
279 not used. Fix up reading and swapping of shorts from files.
281 Notes on bfd-0.5.2-patch1a, from Per Bothner:
283 * a.out.vax.c: Remove two bogus "static" from prototypes.
285 * ecoff.c: Got rid of lots of non-working junk (that had
286 been copied directly from coff-code.h).
287 Updated to be consistent with updates to icoff.c and coff-code.h.
289 * libbfd.h: Added definitions for S_IXUSR, S_IXGRP, and S_IXOTH
290 if they're missing (as they are in (BDS-4.3-based) NewsOS-3).
292 * sunos.c (n_txtoff): (Re-)Add support for sony. This is a kludge,
293 but until the target_vector is automatically generated,
294 it's as good as any. Note that the text offset is the only
295 difference between NewsOS and SunOs (including magic numbers).
296 (Most of the sunos_* routines should to renamed bsd_*
297 and move to a bsd.c file. Then (and when the target_vector
298 is automatically generated) it might make sense to create
299 a separate Sony target.)
301 * sysdep.h: Don't declare fread and fwrite. Causes trouble
302 on some systems, and doesn't help on others.
303 Similarly, only define X_OK if not already defined.
305 * trad-core.c: Don't include sys/stat.h - at least
306 on NewsOS 3, it has already been included.
308 Tue Mar 5 01:47:57 1991 John Gilmore (gnu at cygint.cygnus.com)
310 * coff-code.h (bfd_coff_swap_sym, bfd_coff_swap_aux,
311 bfd_coff_swap_lineno): Export the routines that byte-swap COFF
312 symbol tables if necessary when reading them in, so gdb can use
313 them. Add "bfd_coff_" to the names so they won't conflict with
314 names in calling programs. FIXME-soon: if coff-code.h is
315 included in two BFD modules, this will cause duplicate
316 definitions; the routines should be exported to a separate,
317 common, module (probably along with a mess of other ones).
319 Sat Mar 2 12:11:26 1991 John Gilmore (gnu at cygint.cygnus.com)
321 Improve modtime support.
323 * bfd.h: Add boolean mtime_set, and declare bfd_get_mtime.
324 Remove #define for bfd_get_mtime. Remove gratuitous comment.
325 * bfd.c (bfd_get_mtime): New fn, caches mtime, gets if not cached.
326 BUG: archive members still do not get correct mod times.
328 Improve floating point support for core files.
330 * sunos.c (struct core): Change void *fpa_dummy to double fp_stuff.
331 (sunos4_core_file_p): Create a second registers section in the
332 core file, called ".reg2", for the float registers.
334 Thu Feb 14 15:49:06 1991 Gumby Vinayak Wallace (gumby at cygint.cygnus.com)
336 * many changes to improve archive handling; found a logic flaw in
337 bfd_check_format which only just happened to work by cooncidence.
339 Thu Feb 14 07:53:16 1991 Steve Chamberlain (steve at cygint.cygnus.com)
341 * bfd.c (bfd_perform_relocation): fixed to use output_offsets
344 * bfd.h: changed type of udata in asymbol to void *, like it
345 should be. Added bfd_reloc_dangerous enum member.
347 * coff-code.h: Fixed it so that internally generated symbols get
348 their values relocated correctly in all cases. Removed calls to
351 * icoff.c: Not understanding the destination symbol of a reloc is
352 not a failure any more, just 'dangerous'. This allows linking of
353 b.out and coff images.
355 * sunos.c: Cleaned up the way that ZMAGIC section sizes are
359 Tue Feb 12 13:25:46 1991 Steve Chamberlain (steve at cygint.cygnus.com)
361 * sunos.c (translate_to_native_sym_flags): fixed
362 sym_pointer->n_value so that symbols on the way out get their
363 section relative values calculated correctly.
365 * coff-code.h (mangle_symbols): fixed problem where tags were not
366 being relocated for structs, enums, unions. Also various lints.
368 Mon Feb 11 19:52:26 1991 Gumby Vinayak Wallace (gumby at cygint.cygnus.com)
370 * archive.c (get_elt_at_filepos): system_call_error returned
373 Sun Feb 10 23:18:40 1991 Gumby Vinayak Wallace (gumby at cygint.cygnus.com)
375 * Resolve the use of no_error and system_call_error.
376 The bfd library itself now will never set bfd_error to
379 The code still needs to be combed to make sure all the error
380 codes are correct. I suspect they are not always set correctly.
382 * The names of all the messages have _ prepended because the sun
383 bundled compiler can't distinguish from a macro which takes an
384 argument and the same identifier in a non-macro context.
386 * The reason for the above being that entry points which used to
387 be trampoline functions are now just macros which expand to a
388 direct call through the bfd's xfer vector.
390 * (../include/intel-coff.h) F_AR32WR: fix this constant. Why
391 must gas have its own version of everything (the gas version
392 had the correct value)
394 Tue Feb 5 11:46:53 1991 Steve Chamberlain (steve at cygint.cygnus.com)
397 properly support i960 architecture and output correct reloc stuff.
399 * bfd.h: added prototype for bfd_printable_arch_mach, added
402 * coff-code.h: Applied patches from chrisb to support i960
403 architecture, zero relocs and swap them correcly and conditionally
404 compiled the timestamp.
406 * sunos.c: Made the default section alignment 2^3 so that doubles
407 are done properly. Fixed the same reloc bug that was in b.out.c
409 * sysdep.h: Now compiles on a Posix box
411 Wed Jan 30 21:36:26 1991 John Gilmore (gnu at cygint.cygnus.com)
413 * icoff.c: Fix comment on big-endian version.
414 * coff-code.h: Make HAS_RELOC really work (it's backwards from
415 F_RELFLG). Set F_AR32WR in output files if little endian
420 * archures.c fixed =/== typo
422 * sunos.c added architecture stuff for output. Fixed
423 bug where files where vma(data) != size(text)
424 were processed wrong.
426 * coff-code.h added a lint cast
428 * (../include/a.out.sun4.h) fixed it so zmagic
433 * archive.c removed loads of includes, and fixed bug where string
434 table didn't have a null at the end.
436 * bfd.c fixed includes, added symbols argument to
437 canonicalize_reloc entry point.
439 * libbfd.c fixed includes and added some lint patches.
441 * targets.c added both sorts of intel coff.
443 * b.out.c fixed included, changed was the canonical
446 * icoff.c added support for callj and big and little
449 * opncls.c added chmod+xing for files with EXEC_P set.
451 * sunos.c fixed includes. Changed default section
452 alignement to words. Fixed relocation stuff to work with
455 * bfd.h various new types added, prototype for new
456 reloc calls, changed bfd->iostream to a void *
457 to including files don't need stdio.h.
459 * libcoff.h added conversion table to tie relocs to
464 * coff-code.h fixed includes. Added code to support
465 big and little endian formats. Various lints. Better
466 processing of symbols. Changed reloc stuff to new
469 * libbfd.h fixed includes
474 * bfd.h changed name of alignment entry in sec_struct to
475 alignment_power, because of conflicting uses within bfd.
476 Now it should be obvious that it's a 2**n alignment
477 specifier. Removed start_pad, end_alignment, block, minsize,
478 output_file_alignment, subsection_alignment and original_vma fields.
479 Added align_power() macro. Fixed bfd_section_alignment
480 acessor macros. Added bfd_symbol_same_target macro.
482 * b.out.c (b_out_write_object_contents) fixed to use
483 new alignment member. Fixed (callj_callback) to use section
484 relative symbols properly.
486 * sunos.c (sunos4_object_p) fixed to use new alignment_power.
487 Fixed (translate_from_native_sym_flags) to correctly make
488 symbols section relative.
490 * bfd.c (bfd_errmsg) fixed various enum cast problems.
491 (bfd_make_section) took out initialization of obsolete members.
492 (bfd_print_symbol_vandf) added
494 * opncls.c (bfd_create) created.
496 * coff-code.h (coff_new_section_hook) took away refs
497 to obsolete members. (make_a_section_from_file) added
498 conversion between alignment types. (coff_symbol_from)
499 added. (coff_count_linenumbers) only counts linenumbers
500 if symbol is of coff-type. (coff_mangle_symbols) only
501 heavily mangles symbols if symbol is coff-type.
502 (coff_write_symbols) various lints. (coff_write_object_contents)
503 various lints and modification for alignment conversion.
504 (coff_slurp_relocs) fixed for use with new asection shape.
508 * archive.c lots of lint
510 * b.out.c added callj relocation support, upgrated reloc howto.
511 Fixed so that asymbol and reloc records are output
514 * bfd.c lots of lint, support for new bfd entry point
517 * bfd.h changed definition of asymbol to contain pointer to
518 owning bfd, removed target dependencies.
520 * cache.c took out print statements, put in BFD_ASSERT calls.
522 * coff-code.h various lints, corrected linenumber output
523 functionality. Added support for new style asymbols and
524 bfd_print_symbol. Fixed so that asymbol and
525 reloc records are handled correctly. Added timestamp.
527 * icoff.c Added support for new howto shape.
529 * liba.out.h Added support for new asymbol shape
531 * libbfd.c various lints
533 * libbfd.h various lints
535 * libcoff.h added support for new asymbol shape.
537 * sunos.c various lints. Added support for new asymbol shape
538 and bfd_print_symbol.
542 * b.out.c removed prototype of sunos4_ennativate_symtab, lots of
543 pointer lint. Added support for callj relocation. Fixed bug where
544 the last 32 bytes of the text section were overwritten by data. Fixed bug
545 where archives of b.out didn't work due bfd_slurp_extended_name_table
548 * sunos.c added support for n_other field. Braced the howto table so
549 that it won't be affected by any lengthing of the howto struct typedef.
552 * bfd.h added support for n_other field, added special_function
553 reloc type, modified bfd_perform_relocation prototype. Added bfd_h_get_x
556 * bfd.c upgraded bfd_perform_relocation, various lints.
558 Wed Jan 16 01:55:53 1991 John Gilmore (gnu at rtl)
560 * ChangeLog: Started ChangeLog for BFD.
561 * ToDo: Create file for suggestions.
563 * Makefile: Support easy loading into Saber C.
564 Add dependencies for icoff.o and bcs88kcoff.o.
565 Rename coff.c to coff-code.h. Change callers.
567 * bfd.c (bfd_check_format): Allow the check_format routines
568 to return the desired target vector, rather than just a Boolean.
569 bfd.h (bfd_check_format): Change function pointer return type.
570 archive.c (bfd_generic_archive_p): change callee.
571 b.out.c (b_out_little_object_p, b_out_big_object_p,
572 b_out_real_object_p): change callee.
573 libbfd.c (_bfd_dummy_target): Dummy routine replacing bfd_false
574 in check_format transfer vectors that need a filler.
575 libbfd.h (bfd_generic_archive_p, _bfd_dummy_target): Fix decls.
576 bcs88kcoff.c: change callee.
577 coff-code.h (coff_real_object_p, coff_big_object_p): change callee.
578 icoff.c: change callee.
579 sunos.c (sunos4_object_p, sunos4_core_file_p): change callee.
581 * libbfd.c (zalloc): It should actually zero the storage!
582 This was commented out for some reason.
584 * libbfd.h: Add malloc, xmalloc, memcpy, and fatal decls.
585 This is so callers can avoid <stdlib.h> which doesn't exist
588 * bfd.c (map_over_sections): Add debugging code, since I
589 noticed the section count for sunos core files was bad, but only
590 GDB had detected the problem.
591 (bfd_set_section_lineno_size, bfd_set_section_linenos,
592 bfd_get_section_linenos): Remove obsolete functions.
593 (bfd_apply_relocations): Use longs, not ints, for the math.
595 * bfd.h: Declare enum boolean and struct bfd_target as well
596 as typedefs for them. Remove obsolete
597 bfd_get_section_lineno_size.
599 * cache.c: Make the "fdopen" support work. Keep better track
600 of how many files are open. Centralize the opening of files
601 and be sure bfd_open[rw] actually try to open the file. Evade
602 linked list initialization problems.
604 * b.out.c, coff-code.h, opncls.c, sunos.c: lint.
606 * coff-code.h (coff_slurp_symbol_table): Null-terminate symtab names.
608 * cplus-dem.c: Delete file, since it is not part of BFD.
610 * opncls.c (bfd_openr): Eliminate misplaced #if 0 code.
611 (bfd_openr, bfd_openw): Actually open the file, give error now.
613 * sunos.c (sunos4_core_file_p): Set section count.
614 (sunos4_set_section_linenos, stab_names, fprint_name): Eliminiate
615 obsolete definitions.
616 (_write_symbol_table): Initialize <idx> counter.
617 (foop): Eliminate debugging code.