Jeff Law [Sun, 18 May 1997 22:57:49 +0000 (22:57 +0000)]
* interp.c (load_mem_big): Remove function. It's now a macro
defined elsewhere.
(compare_simops): New function.
(sim_open): Sort the Simops table before inserting entries
into the hash table.
* mn10300_sim.h: Remove unused #defines.
(load_mem_big): Define.
Another 20% so performance improvement for the mn10300 simulator.
Jeff Law [Fri, 16 May 1997 22:39:08 +0000 (22:39 +0000)]
* callback.c (os_close): Mark the descriptor as being
available if the close succeeded.
(os_open): Pass 0644 as the mode of the file being created.
Bring Bob's changes over from the mec branch.
Jeff Law [Fri, 16 May 1997 16:34:52 +0000 (16:34 +0000)]
* elf-m10300.c (elf32_mn10300_relax_section): Read in all
the symbols associated with each BFD.
(mn10300_elf_relax_delete_bytes): Don't adjust the same symbol
more than once.
* elf-m10200.c: Likewise.
* elf32-m32r.c: Likewise.
* elf32-sh.c: Likewise.
Ian Lance Taylor [Fri, 16 May 1997 16:13:33 +0000 (16:13 +0000)]
* elflink.h (elf_link_add_object_symbols): Don't decrease the
alignment of a common symbol. If two symbols that look like
common symbols are found in two shared libraries, and the size is
different, use the larger size, and warn if --warn-common. If a
common symbol overrides a definition in a shared library, set the
size to the larger size, and warn if --warn-common.
Nick Clifton [Thu, 15 May 1997 17:05:24 +0000 (17:05 +0000)]
Fixed bug in previous delta. If no cpu type was specified on the command
line then the code used to default to setting an architecture of ARMv4T
rather than ARMv3M in the BFD library. This has now been corrected.
Peter Schauer [Thu, 15 May 1997 15:01:54 +0000 (15:01 +0000)]
* config/rs6000/tm-rs6000.h (SIG_FRAME_LR_OFFSET): Define.
* rs6000-tdep.c (frameless_function_invocation): Mark frames
with a zero PC as frameless to improve backtraces from core dumps
caused by dereferencing a NULL function pointer.
(frameless_function_invocation, frame_saved_pc, rs6000_frame_chain):
Handle frameless functions interrupted by a signal.
* sparc-tdep.c (sparc_init_extra_frame_info, sparc_frame_saved_pc):
Handle frameless functions interrupted by a signal.
Nick Clifton [Wed, 14 May 1997 17:00:43 +0000 (17:00 +0000)]
Added support for storing ARM Procedure Calling Standard variant, and ARM
architecture variant in the BFD and COFF structures. This goes towards
fixing PRs 11709 and 11326 and will integrate with future updates to LD and
GCC.
Jeff Law [Wed, 14 May 1997 15:01:33 +0000 (15:01 +0000)]
* mn10200-tdep.c (mn10200_skip_prologue): Don't look at the debug
symbols to find the end of the prologue.
* mn10300-tdep.c (mn10300_skip_prologue): Likewise.
Ian Lance Taylor [Tue, 13 May 1997 03:30:20 +0000 (03:30 +0000)]
* scripttempl/elfmips.sc: Remove.
* scripttempl/elf.sc: Set ENTRY based on target. Permit
TEXT_DYNAMIC to control .dynamic segment. Permit
SHLIB_TEXT_START_ADDR to set start of shared object. Support
INITIAL_READONLY_SECTIONS. Put .stub in .text. Only put
.gnu.linkonce.t* in .text when relocating. Support
OTHER_TEXT_SECTIONS. Support SHLIB_DATA_ADDR as well as
DATA_ADDR. Support OTHER_GOT_SYMBOLS and OTHER_GOT_SECTIONS.
* emulparams/elf32b4300.sh (SCRIPT_NAME): Set to elf.
(DATA_ADDR): Don't set.
(INITIAL_READONLY_SECTIONS): Rename from OTHER_READONLY_SECTIONS.
(OTHER_TEXT_SECTIONS): Set.
(OTHER_GOT_SECTIONS): Rename from OTHER_READWRITE_SECTIONS.
(MACHINE): Set to empty string.
* emulparams/elf32l4300.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32elmip.sh: Likewise.
* emulparams/elf32bmip.sh: Likewise. Also:
(TEXT_DYNAMIC): Set.
* emulparams/elf32lmips.sh: Likewise.
* Makefile.in (eelf32bmips.c): Depend upon elf.sc rather than
elfmips.sc.
(eelf32ebmips.c, eelf32elmips.c, eelf32lmip.c): Likewise.
Wed May 7 16:18:30 1997 Manfred Hollstein <manfred@s-direktnet.de>
* gas/m88k/init.{s,d}: New checks for proper padding of
.init sections.
* gas/m88k/m88.exp: Run them.
* gas/m68k/t2.d: New file for check of presence of section
symbols on the m68k-motorola-sysv.
* gas/m68k/all.exp: Run t2 if [istarget m68*-motorola-sysv].
* gas/mips/lifloat.s: Update for recent changes to floating point
handling.
* gas/mips/lif-empic.d, gas/mips/lif-svr4pic.d: Likewise.
* gas/mips/lif-xgot.d, gas/mips/lifloat.d: Likewise.
* config/obj-coff.c (write_object_file): Just pass NULL to
md_do_align, not the address of a char holding NOP_OPCODE.
Fixes a problem with the m88k SVR3 .init section as used by gcc.
* config/tc-mips.c (macro): Handle constants for M_LI_D and
M_LI_DD.
(mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
than an address if the floating point value looks sufficiently
simple.
PR 12237.
* configure: Default CXX to c++, not gcc.
* Makefile.in (CXX): Set to c++, not gcc.
(CXX_FOR_TARGET): When cross, transform c++, not gcc.
This is to that $(CXX) and $(CXX_FOR_TARGET) can be used to link C++
programs as well as just compile C++ code.
Jeff Law [Tue, 6 May 1997 19:27:22 +0000 (19:27 +0000)]
* interp.c: Improve hashing routine to avoid long list
traversals for common instructions. Add HASH_STAT support.
Rewrite opcode dispatch code using a big switch instead of
cascaded if/else statements. Avoid useless calls to load_mem.
From Sean McNeil <sean@mcneil.com>:
* emultempl/pe.em (sort_by_file_name): Sort by archive name
first.
(sort_sections): Sort all sections, not just sections in the same
archive.
Jeff Law [Tue, 6 May 1997 00:35:42 +0000 (00:35 +0000)]
* mn10300_sim.h (struct _state): Add space for mdrq register.
(REG_MDRQ): Define.
* simops.c: Don't abort for trap. Add support for the extended
instructions, "getx", "putx", "mulq", "mulqu", "sat16", "sat24",
and "bsch".