[PATCH v4 00/13] Update of the SPARC SIS simulator

Jiri Gaisler
2015-03-17T21:03:08Z

Fourth version of this patch set. The patch numbering has changed
as some of the original 22 patches have been merged.

-----------------------------------------------------------------

This is a 22-part patch that brings the sis simulator into working
order, and adds support for emulation of the leon2 and leon3 cpus.

The sis simulator was written by me in the mid 90's, to emulate the erc32
processor (SPARC V7). It was included into gdb by Cygnus (Stan Shebs?),
and adapted to also emulate the Fujitsu Sparlite processor. The simulator
has not been actively maintained for about 15 years, and suffered some
bit-rot. It's primary use has been for RTEMS development. The erc32
processor is now becoming obsolete, and being replaced by leon2 and
leon3 cpus in many ESA and NASA missions. These patches will
allow sis to be useful again, and support the newer leon2/3 processor.

Jiri Gaisler (13):
sim/erc32: Added -v command line switch for verbose output
sim/erc32: Removed type mismatch compiler warnings
sim/erc32: Switched emulated memory to host endian order.
sim/erc32: Use memory_iread() function for instruction fetching.
sim/erc32: Fix a few compiler warnings
sim/erc32: Use gdb callback for UART I/O when linked with gdb.
sim/erc32: Access memory subsystem through struct memsys.
sim/erc32: Move local extern declarations into sis.h.
sim/erc32: Add support for LEON3 processor emulation.
sim/erc32: Add support for LEON2 processor emulation.
sim/erc32: Updated documentation.
sim/erc32: Add data watchpoint support
Add watchpoint support to gdb simulator interface.

gdb/remote-sim.c | 69 +++
include/gdb/remote-sim.h | 24 +
sim/arm/wrapper.c | 25 +
sim/avr/interp.c | 25 +
sim/bfin/Makefile.in | 1 +
sim/common/sim-watch-remote.c | 48 ++
sim/cr16/interp.c | 25 +
sim/cris/Makefile.in | 1 +
sim/erc32/Makefile.in | 8 +-
sim/erc32/NEWS | 108 -----
sim/erc32/README.gdb | 67 ---
sim/erc32/README.leon2 | 53 +++
sim/erc32/README.leon3 | 53 +++
sim/erc32/README.sis | 252 ++++------
sim/erc32/erc32.c | 405 ++++++++--------
sim/erc32/exec.c | 344 +++++++++++---
sim/erc32/func.c | 288 ++++++++----
sim/erc32/grlib.c | 101 ++++
sim/erc32/grlib.h | 57 +++
sim/erc32/help.c | 2 +-
sim/erc32/interf.c | 365 +++++++++++----
sim/erc32/leon2.c | 986 +++++++++++++++++++++++++++++++++++++++
sim/erc32/leon3.c | 1020 +++++++++++++++++++++++++++++++++++++++++
sim/erc32/sim-main.c | 26 ++
sim/erc32/sis.c | 115 +++--
sim/erc32/sis.h | 113 ++++-
sim/erc32/startsim | 4 -
sim/frv/Makefile.in | 1 +
sim/h8300/Makefile.in | 1 +
sim/iq2000/Makefile.in | 1 +
sim/lm32/Makefile.in | 1 +
sim/m32c/gdb-if.c | 25 +
sim/m32r/Makefile.in | 1 +
sim/m68hc11/Makefile.in | 1 +
sim/mcore/interp.c | 25 +
sim/microblaze/Makefile.in | 2 +-
sim/mips/Makefile.in | 1 +
sim/mn10300/Makefile.in | 1 +
sim/moxie/interp.c | 25 +
sim/msp430/Makefile.in | 1 +
sim/ppc/gdb-sim.c | 25 +
sim/rl78/gdb-if.c | 25 +
sim/rx/gdb-if.c | 25 +
sim/sh/interp.c | 25 +
sim/sh64/Makefile.in | 1 +
sim/v850/Makefile.in | 3 +-
46 files changed, 3936 insertions(+), 839 deletions(-)
create mode 100644 sim/common/sim-watch-remote.c
delete mode 100644 sim/erc32/NEWS
delete mode 100644 sim/erc32/README.gdb
create mode 100644 sim/erc32/README.leon2
create mode 100644 sim/erc32/README.leon3
create mode 100644 sim/erc32/grlib.c
create mode 100644 sim/erc32/grlib.h
create mode 100644 sim/erc32/leon2.c
create mode 100644 sim/erc32/leon3.c
create mode 100644 sim/erc32/sim-main.c
delete mode 100644 sim/erc32/startsim

--
1.9.1