Change all uses.
(xcoff_swap_ldhdr_in): New static function.
(xcoff_swap_ldsym_in): New static function.
(xcoff_link_add_symbols): If we just created a descriptor, pass it
to _bfd_generic_link_add_one_symbol, to save a hash lookup.
(xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols
rather than normal symbol table.
(xcoff_mark): When considering called symbols, check whether the
descriptor is from a dynamic object, rather than the symbol
itself.
(xcoff_build_ldsyms): Likewise.
Cast realloc and malloc return values. If malloc or realloc fail,
set bfd_error_no_memory.
* bfd-in.h (bfd_get_file_window): Change type to boolean.
* bfd-in2.h: Rebuild.
NOTE: Only the BigEndian build has the simulator included, because a
LittleEndian simulator is not constructed at the moment (it should
work, but has not been tested fully).
the run-time support code (interp.c) to provide better tracing, and
also to add profiling and architecture specific support. At the moment
the simulator has a fixed size, fixed address memory area, and
simulates a subset of the IDT monitor calls (enough to execute test
programs).
The other major feature (could even be a bug) is that the simulator
makes use of the GCC "long long" extension. Work has been started to
make this a build configuration option... but there is still a lot of
this to be done.
Jamie. Basically had case statement in the wrong place...
* (mips_load): Remove unnecessary `db tty0' command. It's all
handled by mips_initialize now.
spaces when reading CC and CXX from Makefile. When doing a
Canadian Cross, use plausible default values for numerous
variables.
* configure.in: When doing a Canadian Cross, don't try to
configure tools whose configure script can't handle it.
monitor board.
The mips_initialize() code seemed to have a "funny" switch
statement. I also removed an unnecessary switch into debug monitor
mode just before the call to mips_initialize() in mips_load().
powerpc*-*-aix*. Add code to create appropriate exports files,
and pass appropriate compilation flags, and test against
appropriate expected output.
* ld-shared/xcoff.dat: New file.
* ld-shared/main.c: Put #ifndef XCOFF_TEST around tests that can
not be linked using XCOFF. Use shlib_shlibvar1 as a sample
function pointer, rather than shlib_mainvar.
* ld-shared/sh1.c: Likewise.
* ld-shared/shared.dat: Update for change from using shlib_mainvar
to using shlib_shlibvar1.
* ld-shared/sun4.dat: Likewise.
the created .tc section to 2.
(xcoff_mark): Don't keep a .loader reloc for a call to an
undefined symbol when creating a shared library.
(xcoff_build_ldsyms): When creating a shared library, generate
global linkage code for a call to an undefined symbol.
is to allow the simulator initialisation code to make use of the host
callback facilities. Had discussed this with sac, and it should be a
harmless change since none of the other simulators really make use of
the call, and it does not return a result.
Added some new interfaces, and a new entry in the target vector. Under the new
interfaces, mmap will be used if available, otherwise malloc/seek/read, as
before. Old interfaces all still intact.
Most configurations (including all used by "--enable-targets=all") simply
changed to call the default routine for that entry in the target vector. I
might've missed some targets only included in special configurations.
Support for a.out symbol and string table reading now goes through new
interfaces, and will use mmap when available.
Linker hooks (e.g., avoiding reallocation under malloc) not ready yet.