You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Jeff Law 832f05e865 vr5900-r5900. 29 years ago
..
.Sanitize Support tx19 sanitation. 29 years ago
ChangeLog Remove need to update <targ>/Makefile.in when adding optional options 29 years ago
Makefile.in Remove need to update <targ>/Makefile.in when adding optional options 29 years ago
README.Cygnus Initial check-in of the MIPS simulator. Work still needs to be done on 31 years ago
config.in Get configure to define RETSIGTYPE 29 years ago
configure Remove need to update <targ>/Makefile.in when adding optional options 29 years ago
configure.in vr5900-r5900. 29 years ago
gencode.c Add handling for 3900's SDBBP, DERET, and RFE insns. 29 years ago
interp.c * sim/mips/interp.c: Correct some HASFPU problems. 29 years ago
support.h Add r5900 30 years ago
tconfig.in * Makefile.in: Delete stuff moved to ../common/Make-common.in. 30 years ago

README.Cygnus

> README.Cygnus
-------------------------------------------------------------------------------

The following are the main reasons for constructing the simulator as a
generator:

1) Avoid large fixed decode source file, with lots of #ifs controlling
the compilation. i.e. keep the source cleaner, smaller and easier
to parse.

2) Allow optimum code to be created, without run-time checks on
instruction types. Ensure that the simulator engine only includes
code for the architecture being targetted. e.g. This avoids
run-time checks on ISA conformance, aswell as increasing
throughput.

3) Allow updates to the instruction sets to be added quickly. Having a
table means that the information is together, and is easier to
manipulate. Having the table generate the engine, rather than the
run-time parse the table gives higher performance at simulation
time.

4) Keep all the similar simulation code together. i.e. have a single
place where, for example, the addition code is held. This ensures that
updates to the simulation are not spread over a large flat source
file maintained by the developer.

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

To keep the simulator simple (and to avoid the slight chance of
mis-matched files) the manifests describing an engine, and the
simulator engine itself, are held in the same source file.

This means that the engine must be included twice, with the first pass
controlled by the SIM_MANIFESTS definition.

-------------------------------------------------------------------------------
> EOF README.Cygnus