Commit graph

34 commits

Author SHA1 Message Date
Mark Alexander
7d146b765c * interf.c (sim_open): Use revamped memory_read, which makes
byte-swapping unnecessary.  Add -sparclite-board option for
	emulating RAM found on typical SPARClite boards.  Print
	error message for unrecognized option.
	* erc32.c: Change RAM address and size from constants to variables,
	to allow emulation of SPARClite board RAM.
	(fetch_bytes, store_bytes): New helper functions for revamped
	mememory_read and memory_write.
	(memory_read, memory_write): Rewrite to store bytes in target
	byte order instead of storing words in host byte order; this
	greatly simplifies support of little-endian programs.
	(get_mem_ptr): Remove unnecessary byte parameter.
	(sis_memory_write, sis_memory_read): Store words in target
	byte order instead of host byte order.
	(byte_swap_words): Remove, no longer needed.
	* sis.h ((byte_swap_words): Remove declaration, no longer needed.
	(memory_read): Add new sz parameter.
	* sis.c (run_sim): Use revamped memory_read, which makes
	byte-swapping unnecessary.
	* exec.c (dispatch_instruction): Use revamped memory_read, which
	makes byte-swapping and double-word fetching unnecessary.
	* func.c (sparclite_board): Declare new variable.
	(get_regi): Handle little-endian data.
	(bfd_load): Recognize little-endian SPARClite as having
	little-endian data.
1998-06-02 22:43:46 +00:00
Doug Evans
17f382c9bf * erc32.c (close_port): Don't close stdin; it kills GDB.
(byte_swap_words): New function.
	* sis.h: (byte_swap_words): Declare.
	* interf.c (run_sim): Always fetch instructions as big-endian.
	* sis.c (run_sim): Ditto.
Move this c/l entry from ../ChangeLog.
1998-05-16 23:07:01 +00:00
Mark Alexander
f1a0162a28 * sis.h (uint64, int64): Define.
* exec.c (SDIV, SDIVCC, UDIV, UDIVCC): Define new opcodes.
	* (mul64): Simplify calculation of negative result.
	* (div64): New helper function for 64-bit division.
	* (dispatch_instruction): Add emulation of SDIV, SDIVCC, UDIV,
	and UDIVCC.
1998-05-15 06:23:04 +00:00
Tom Tromey
5da9ce07eb * configure: Regenerated to track ../common/aclocal.m4 changes.
* config.in: Ditto.
	* acconfig.h: New file.
	* configure.in: Reverted change of Apr 24; use sinclude again.
1998-04-26 22:03:55 +00:00
Tom Tromey
b1df34b9ed * configure: Regenerated to track ../common/aclocal.m4 changes.
* config.in: Ditto.
	* configure.in: Don't call sinclude.
1998-04-24 20:39:48 +00:00
Mark Alexander
ecd4a90b86 * erc32.c (sim_stop): Handle SIGINT gracefully.
* interf.c (sim_open): Don't catch SIGINT; GDB will do that for us.
1998-04-09 02:40:31 +00:00
Mark Alexander
e2324e2944 * exec.c (dispatch_instruction): Change how carry out is calculated
in DIVSCC.  Add emulation of SMULCC, UMUL, and UMULCC.
1998-04-09 01:42:44 +00:00
Andrew Cagney
278bda4050 Cleanup INLINE support for simulators using common framework.
Make IGEN responsible for co-ordinating inlining of generated files.
By default, aclocal.m4 disabled all inlining.
1998-04-04 12:33:11 +00:00
Andrew Cagney
d8f5304972 Do top level sim-hw module for device tree.
Add to aclocal.m4, update all configure files.
1998-03-27 11:42:16 +00:00
Andrew Cagney
412c4e940e Add config support for the size of the target address and OF cell. 1998-01-31 14:07:23 +00:00
Doug Evans
462cfbc4eb * aclocal.m4: Recognize --enable-maintainer-mode.
*/configure: Regenerated.
1998-01-20 06:37:00 +00:00
Andrew Cagney
92f91d1ff0 Remove need to update <targ>/Makefile.in when adding optional options
to <targ>/configure.in.
Simplify logic used to select target [default] endianness.
1997-09-23 01:25:26 +00:00
Andrew Cagney
794e9ac96a Simplify logic behind the generic configuration option --enable-sim-alignment. 1997-09-22 02:49:57 +00:00
Andrew Cagney
b45caf050c Add support for --enable-sim-alignment to simulator common aclocal.m4
Add support for --alignment={strict,nonstrict,forced} to simulator common
run-time options.
For v850 use, make the default NONSTRICT_ALIGNMENT.
1997-09-22 00:24:46 +00:00
Andrew Cagney
8811705410 Fix doco on enable-sim-inline. 1997-08-27 22:43:18 +00:00
Andrew Cagney
fafce69ab1 Add ABFD argument to sim_create_inferior. Document.
Add file sim-hload.c - generic load for hardware only simulators.
Review each simulators sim_open, sim_load, sim_create_inferior so that
they more closely match required behavour.
1997-08-27 04:44:41 +00:00
Andrew Cagney
7230ff0faa Flush defunct sim_kill. 1997-08-26 02:05:18 +00:00
Andrew Cagney
247fccdeb5 Add ABFD argument to sim_open call. Pass through to sim_config so
that image properties such as endianness can be checked.

More strongly document the expected behavour of each of the sim_*
interfaces.

Add default endian argument to simulator config macro
SIM_AC_OPTION_ENDIAN.  Use in sim_config.
1997-08-25 23:14:25 +00:00
David Edelsohn
2d03fffed8 * interf.c (sim_open): Undo patch to add -E support. 1997-04-22 18:05:31 +00:00
David Edelsohn
26277668db * interf.c (sim_open): Ignore -E arg.
(start_address): New static local.
	(sim_load): Return SIM_RC.  New arg abfd.  Set start_address from bfd.
	(sim_create_inferior): Return SIM_RC.  Delete arg start_address.
1997-04-17 10:05:50 +00:00
Ian Lance Taylor
61473a55c5 * Makefile.in (install-sis): Depend upon installdirs. Use
$(program_transform_name) directly, rather than using
	$(INSTALL_XFORM).
1997-04-15 19:19:43 +00:00
David Edelsohn
999977eaed * interf.c (sim_open): New arg `kind'. 1997-04-02 23:32:28 +00:00
David Edelsohn
fbda74b1c1 * aclocal.m4: Check for stdlib.h, string.h, strings.h, unistd.h.
(sim-debug): Allow arguments.  Define WITH_DEBUG in addition to
	-DDEBUG.
	* configure: Regenerated to track ../common/aclocal.m4 changes.
1997-04-02 23:17:50 +00:00
Andrew Cagney
a35e91c3c7 New file common/sim-config.c sets/checks simulator configuration options.
Update common/aclocal.m4 to better work with sim-config.[hc].
1997-04-02 05:04:25 +00:00
David Edelsohn
323d0e9d8f * interf.c (sim_open): New SIM_DESC result. Argument is now in
argv form.
	(other sim_*): New SIM_DESC argument.
1997-03-13 20:47:43 +00:00
Stu Grossman
295dbbe44c * configure configure.in Makefile.in: Update to new configure
scheme which is more compatible with WinGDB builds.
	* configure.in:  Improve comment on how to run autoconf.
	* configure:  Re-run autoconf to get new ../common/aclocal.m4.
	* Makefile.in:  Use autoconf substitution to install common
	makefile fragment.
1997-01-23 22:09:52 +00:00
Rob Savoye
a665caa644 * configure.in: Look for libtermcap.a.
* Makefile.in: Only link in -ltermcap if it exists.
	* erc32.c: Update to version 2.6a. Fix uart handling.
	* exec.c: Update to version 2.6a. Add sparclite support.
	* float.c: Update to version 2.6a. Convert comments to
	preprocessor warnings. Add __setfpucw() for i385 hosts so floating
	point exceptions work.
	* func.c: Update to version 2.6a. Fix uart handling, add support
	for user error traps.
	* help.c: Update to version 2.6a. Add help note on user error
	traps.
	* interf.c: Update to version 2.6a. Fix uart handling, and add
	sparclite support.
	* examples/gccx: Use sparclite cross compiler, not native gcc.
	* examples/srt0.S: Use "mov" rather than "wr" for manipulating
	the psr register.
1996-12-04 00:56:56 +00:00
David Edelsohn
77f4c99cb4 * run.c: Deleted, using one in ../common now. 1996-11-20 21:06:21 +00:00
David Edelsohn
d70e3e2b7b * Makefile.in: Delete stuff moved to ../common/Make-common.in.
(SIM_{OBJS,EXTRA_LIBS,EXTRA_LIBDEPS,EXTRA_ALL,EXTRA_INSTALL}): Define.
	(SIM_{EXTRA_CLEAN,EXTRA_CFLAGS}): Define.
	* configure.in: Simplify using macros in ../common/aclocal.m4.
	Call AC_CHECK_HEADERS(stdlib.h).
	* configure: Regenerated.
	* config.in: New file.
	* func.c (sim_set_callbacks): Delete, moved to
	* interf.c (sim_set_callbacks): here.
	(sim_callback): New global.
	Rewrite all calls to printf_filtered to go through callback.
	(sim_size,sim_trace): New functions.
	(sim_{insert,remove}_breakpoint): #if 0 out.
	* sis.c: #include "config.h".  #include <stdlib.h> if present.
	(main): Coerce fprintf arg to INIT_DISASSEMBLE_INFO to fprintf_ftype.
	* sis.h: #include "callback.h".
1996-11-20 09:38:10 +00:00
Jason Molenda
38e4433bfb * Makefile.in (clean): Remove config.log. 1996-10-02 07:57:18 +00:00
Stu Grossman
fad4a760fd * erc32.c (port_init): Disable this for __GO32__ (got no pty's
there either...).
1996-09-08 23:35:50 +00:00
Stu Grossman
b7b3111471 * erc32.c (mec_reset mec_read mec_write memory_read memory_write),
sis.h:  Get rid of all uses of long long's.
	* (close_port read_uart write_uart uarta_tx):  Don't seg fault
	when can't open pty's.
	* exec.c:  Add two new instructions: smul, and divscc.
	* interf.c (flush_windows):  New routine to flush the register
	windows out to the stack just before returning to GDB.  Makes
	backtraces work much better.
1996-07-04 00:51:22 +00:00
Ian Lance Taylor
f64c2f5715 * Makefile.in (end.h): Use explicit ./ when running end. 1996-06-03 16:34:24 +00:00
Rob Savoye
f4d2ff34be New sparc simulator from the ESA. 1996-05-20 02:46:07 +00:00