coffcode.h, elf.c, ieee.c, libaout.h, libbfd.c, oasys.c,
sco-core.c: Lint: Second argument of bfd_seek is always file_ptr.
Third argument is SEEK_SET or SEEK_CUR. Result is always 0 or -1.
to host support file names for bfd, binutils, opcodes.
* configure.in: Use it.
* i386aout.c: Cleanup, dump TARGET_IS_LITTLE_ENDIAN_P.
* i386bsd.c: Cleanup, reformat.
* config/i386-bsd.mt: Comment changes.
* config/i386bsd.mh: New file for core file support.
* hosts/i386bsd.h: Merge changes from Peter Schauer.
* bout.c (ALIGN): Rename to ALIGNER, since system header files
on BSD 4.4 define ALIGN (sigh!).
* aoutx.h (some_aout_object_p): Restore old aout_data value if this type
doesn't match. Don't lose if file sections have already been created.
(set_arch_mach): Set reloc_entry_size.
(slurp_symbol_table): Use bfd_h_get_{16,8} for reaeding symbol data.
* hosts/i386bsd.h: New file.
* configure.in: Recognize i[34]86-*-bsd host.
* aout-target.h (callback, write_object_contents): Delete unused variables.
* aoutx.h (reloc_type_lookup): New function.
* aout-target.h (MY_reloc_howto_type_lookup): Use it as default.
* aoutf1.h (sunos4_reloc_type_lookup): Deleted.
(MY_reloc_howto_type_lookup): Don't define it.
* aoutx.h (adjust_sizes_and_vmas): Don't bother with padding for OMAGIC files.
(slurp_symbol_table): Use header byte order, not target byte order, for reading
symbol data.
Thu Oct 8 08:52:48 1992 Steve Chamberlain (sac@thepub.cygnus.com)
Now a bfd knows whether underscores are normally prepended
to symbols in its file format. Helps with error messages.
* aout-adobe.c, aout-target.h, bout.c, coff-a29k.c, coff-h8300.c,
coff-z8k.c: targets set so they have leading underscore
* coff-i386.c, coff-i960.c, coff-m68k.c, coff-mips.c, coff-m88k.c,
coff-rs6000.c, coff-we32k.c, elf.c, ieee.c, srec.c: targets set
without leading underscore flag
* targets.c: add symbol leading char to xvec description
* bfd-in.h (bfd_get_symbol_leading_char): new macro.
* Portability fixes from p3:
coffcode.h (coff_write_relocs): removed sanity check until it
works on all targets (per advice from sac).
config/hp9000.mh: new file to define USG.
hppa.c: #undef hppa before the JUMP_TABLE.
hosts/hppahpux.h: #define NATIVE_HPPAHPUX_COMPILER if not
__STDC__.
targets.c (bfd_target_list): if NATIVE_HPPAHPUX_COMPILER, make
local variable target volatile to avoid mysterious bug in
HP9000/700 cc.
* aout-adobe.c: New file. So far, only reads a.out.adobe. FIXME.
* config/adobe.mt: Add.
* configure.in (*-adobe-* target): Add.
* targets.c (a_out_adobe_vec): Add.
* Makefile.in: add aout-adobe.c.
* configure.in: Put two dashes in all entries to be matched.
Add comments to remind people to do this.
Reorder all entries that match manufacturer names, to occur
last, so they will only be matched if no more specific match
occurs. Remove manufacturers `aout', `bout', `coff', and `elf'.
* coff-z8k.c: getting closer
* coffcode.h (coff_get_relocated_section_contents): allow
EXTRA_CASES hooks for different arches to provide different reloc
types.
* seclet.h: #ifndef around it to allow multiple inclusion
* srec.c: minor doc fix
* coffcode.h (coff_renumber_symbols): set the last renumbered
symbol pointer to NULL, as expected by coff_write_linenumbers.
(coff_write_relocs): apparently a non-zero addend is OK for reloc
type R_IHCONST used on the 29k.
update, based on how the underlying file was opened. Obsoletes
FASCIST_FDOPEN.
* hosts/rs6000.h, hosts/tahoe.h, hosts/vaxbsd.h: Remove
all FASCIST_FDOPEN config defines.
* archive.c (bfd_slurp_bsd_armap): if the symdef_count is too
large, assume we're using a swapped byte order and fail with
wrong_format rather than dumping core.
* targets.c, config/i960-bout.mt, hosts/*: added
HOST_BIG_ENDIAN_DEFAULT_VECTOR and
HOST_LITTLE_ENDIAN_DEFAULT_VECTOR because bout archive format
depends on the endianness of the host. Added #define
HOST_BIG_ENDIAN_P and #undef HOST_BIG_ENDIAN_P to a number of
configuration files in hosts/ (it was already in some).
from a coff file (csym is null), dont deref them
* ieee.c (parse_expression): get the answer right when adding an
abs+(sec+off), (ieee_generic_stat_arch_elt): call ieee_object_p
on elts so that filename is filled in.
Tue Aug 18 12:57:45 1992 Ian Lance Taylor (ian@cygnus.com)
* Makefile.in: added FLAGS_TO_PASS, and used it for all recursive
invocations of make. Also, always create installation
directories.
* config/apollov68.mh: removed -g from CC definition.
* libaout.h (struct aout_backend_data): New callback "set_sizes".
* aout-target.h (callback): Don't set page/seg sizes.
(mkobject): Ditto.
(set_sizes): New routine.
(backend_data): Point to it.
* aoutf1.h (sunos4_set_sizes): Heed architecture when setting sizes.
(sunos4_aout_backend): Point to it.
* aoutx.h (set_arch_mach): Call set_sizes callback.
the default. Given that we *write* the suckers (for long
archive member names), we really ought to be able to read them!
* trad-core.c: Don't include <machine/reg.h>. It doesn't
seem to be needed, and many machines don't have it.
pointers to bfd_byte* before performing arithmetic on them. Such
use with bare void* pointers is a gcc extension.
* cache.c (bfd_cache_delete): Forward decl with prototype form.
* archive (normalize): Add to CONST to match actual usages with
CONST.
* elf.c (bfd_section_from_shdr, elf_section_from_bfd_section,
section_from_elf_index): Add SHT_BEPROGBITS case for i860 in
big endian mode.
* elf.c (bfd_section_from_shdr): Test for the possibility that
section_from_elf_index returns NULL and don't dereference it.
* bout.c (bout_swap_exec_header_[in_out]): new field in exec
header e_relaxable, major hackery in callbacks
* libaout.h : add space for a_relaxable.
* seclet.c (rel): don't relax empty sections
Lints for bfd_reloc_code_type->bfd_reloc_code_real_type, and
correct calling of howto special functions and fixes from Raeburn
for gas<>bfdness
* archures.c: nuke bfd_reloc_code_type
* bout.c, cpu-h8300.c, coff-i960.c, coff-m88k.c: special function lint
* coffcode.h (styp_to_sec_flags): STYP_INFO is marked as
SEC_NEVER_LOAD, various other bfdgas newness
* reloc.c->libbfd.h: change protype of bfd_default_reloc_type_lookup
* targets.c: change jump table vector to above
its prototype will be included in libbfd.h. Change result type
to struct * (rather than equivalent typedef) so it can be used in
the prototype, where they typedef won't be known.
* libbfd.h: Updated version.
Correct misconception that there can be only one symbol table.
Only call elf_slurp_symbol_table on the full symbol table, not
the dynamic one which is only a subset of the full one.
(The bfd library was slurping in the first ELF symbol table it
found and then ignoring any others. For dynamically linked
executables, this happened to be the dynamic symbol table, which
is a subset of the full symbol table and only contains the
symbols that need to be used in dynamic linking.)
Various changes to get linker working again for a.out:
* don't set/adjust section file positions or vmas more than once
* use correct page size and segment size when calculating them
* deal with some variations in a.out implementations
Tested on sun4 and sun4->sun3 so far, will be testing further but
needed to get wider exposure&testing. See ChangeLog for details.
Also:
* coffcode.h (coff_write_relocs): Write out swapped reloc, not
pre-swapped version.
* hosts/sparc.h (abort, exit): Hide these names if compiling with
gcc version 2, to avoid warnings.
* don't set/adjust section file positions or vmas more than once
* use correct page size and segment size when calculating them
* deal with some variations in a.out implementations
Tested on sun4 and sun4->sun3 so far, will be testing further but
needed to get wider exposure&testing. See ChangeLog for details.
Also:
* coffcode.h (coff_write_relocs): Write out swapped reloc, not
pre-swapped version.
* hosts/sparc.h (abort, exit): Hide these names if compiling with
gcc version 2, to avoid warnings.
* configure.in: Rewrite target parsing to use simple format.
Handle sparc-sun-solaris2 configuration.
* aout64.h: Avoid ANSI C brain death warning.
* elf.c: Avoid trigraph (???) or /* in comments.
elf_core_tdata_struct into a single common struct. Core files
wouldn't have worked at all without this.
(bfd_elf_find_section): New function for GDB's undercover use
to find string sections that BFD hides from it.
(elf_get_str_section): Avoid multiple alloc&reads for same data; lint.
(elf_object_p, elf_core_file_p): Allocate internal file header
storage dynamically.
* bfd.c (union {...} tdata): Remove elf_core_tdata_struct.
* demo64.c: Prevent "empty translation unit" warnings from idiots.
* working reloc lookup support
* better support for creation of COFF files from scratch
* misc doc changes, macro tweaks, "const" additions, typo fixes, etc.
* one or two ugly kludges that should get cleaned up (but what's one
or two more, in BFD?)
See ChangeLog for details.
* working reloc lookup support
* better support for creation of COFF files from scratch
* misc doc changes, macro tweaks, "const" additions, typo fixes, etc.
* one or two ugly kludges that should get cleaned up (but what's one
or two more, in BFD?)
See ChangeLog for details.
* coff-a29k.c (perform_reloc): fix bug in jmp/call evaluation
* coff-h8300.c (reloc_processing): all relocs are relative to
section start.
* opncls.c: don't use fdopen on DOS systems
short patches from Glenn Kasten (glenn@ready.com)
* target.c: enabled oasys support
* oasys.c: Insert . when UNDERSCORE_HACK is enabled,
fix problem where a relocation which crossed a modification byte
boundary did not work. Fix problem where a relocation near the end
of a data record did not work.
Major change; changed calling convention for
bfd_get_relocated_section_contents so that caller allocates
memory for section data.
* coffcode.h (bfd_coff_get_relocated_section_contents), reloc.c,
seclet.c, targets.c, bfd.c: reflect new convention.
* coffcode.h (styp_to_sec_flags): if styp_flags is not a special
case, then use reasonable default values for SEC_* flags.
* ieee.c: if some places where null pointers were used instead of &bfd_abs_section.
* configure.in: tandem target is st2000
* coff-m68k.c: rename static howto_table to global
m68kcoff_howto_table.
* bout.c: remove unnecessary abort
bout.c (b_out_squirt_out_relocs): treat abs sumbols the right way.
* reloc.c (bfd_perform-relocation): don't relocate refs to
absolute symbols if doing a partial link.
structure before initializing the fields that are used, so that the unused
fields are in a known state. Two of these structures are memcmp'd so
any fields not explicitly initialized must be set to a known state.