Index of /classes/cmpe202/spim

      Name                    Last modified       Size  Description

[DIR] Parent Directory 04-Jan-1999 16:21 - [   ] BLURB 30-Aug-1993 08:34 2k [   ] Configure 18-Jan-1993 07:00 3k [DIR] Documentation/ 23-Sep-1996 16:17 - [DIR] Tests/ 23-Sep-1996 16:17 - [   ] VERSION 30-Aug-1993 07:59 1k [DIR] bin/ 23-Sep-1996 16:17 - [DIR] man/ 23-Sep-1996 16:17 - [CMP] src.tar.gz 16-Feb-1994 13:14 141k GZIP compressed docume> [   ] trap.handler 15-Jan-1993 14:21 3k

SPIM is copyrighted by James R. Larus and distributed under the
following conditions:

    You may make copies of SPIM for your own use and modify those copies.

    All copies of SPIM must retain my name and copyright notice.

    You may not sell SPIM or distributed SPIM in conjunction with a
    commerical product or service without the expressed written consent of
    James Larus.

THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.

This directory contains SPIM--an assembly language MIPS R2000/R3000
simulator.  The files are:

BLURB
	A short description of SPIM.

Configure
	A shell script to configure SPIM.

IMakefile
	Input to the xmkmf program, which produces a Makefile.

Makefile.std
	The descriptor file for make utility program.  Use this file if you
	do not have xmkmf.

README	This file.

VERSION
	Version number of system.


buttons.c, buttons.h
	X-interface code for command buttons.

data.c, data.h
	Code to handle data directives.

inst.c, inst.h
	Code to build instructions and manipulate symbol table.

mem.c, mem.h
	Code to maintain memory.

mips-syscall.c, mips-syscall.h
	Code to handle system calls and exceptions.

op.h
	Definition of operations.

parser.y, parser.h
	Assembly command parser (YACC).

read-aout.c, read-aout.h
	Code to read MIPS a.out executables.

reg.h
	Register access macros.

run.c, run.h
	Instruction simulator.

scanner.l, scanner.h
	Lexical analyzer (LEX).

spim-syscall.h
	System call numbers.

spim-utils.c, spim-utils.h
	Misc. routines.

spim.c, spim.h
	Top-level interface.

sym-tbl.c, sym-tbl.h
	Symbol table.

windows.c, windows.h
	X-interface code to build windows.

xspim.c, xspim.h
	Top-level X-interface.


trap.handler
	Standard trap handler.


Tests
	Subdirectory contain torture tests to verify that SPIM works.

Documentation/spim.tex
	TeX document that describes SPIM.

Documentation/spim.ps
	Postscript version of TeX document.

Documentation/SPIM_and_LINUX
	Describes changes to SPIM to run under LINUX on PC's.

Documentation/cycle.ps
	Describes Anne Roger's cycle-level simulator (cl-spim, cl-xspim).


To make SPIM, run the shell script Configure:

	% Configure

and edit the first few lines of Imakefile to set the parameters for
your machine.  Then type:

	% xmkmf
	% make test

(Note: on RS6000's running AIX, you should edit the Makefile to use the xlc
compiler rather than cc.)

If you want an X-window version of SPIM, also type:

	% make xspim 

If you do not have X-windows or the program xmkmf, edit the makefile
in Makefile.std and type:

	% make -f Makefile.std test
	% make -f Makefile.std xspim



This release (5.2) of SPIM and XSPIM has been compiled and tested on the
following systems:

	DECStation 3100 running Ultrix 4.2A using cc and gcc
	SPARCstation IPX running Sun OS using cc and gcc
	RS6000 running AIX 3.2 using xlc
	HP 720 (Snake) running HP-UX using cc and gcc



Although SPIM is free software, it cost time and money to produce.  If
you use SPIM and work in industry, you can help support development of
software of this sort by having your company make a unrestricted
donation to my research program.  To do this, mail me check (address
attached) payable to ``Computer Sciences Fund -- University of
Wisconsin Foundation.''  The foundation's federal taxpayer
identification number is 39-074-3975.

James Larus
larus@cs.wisc.edu
Computer Sciences Department
1210 West Dayton Street
University of Wisconsin
Madison, WI 53706 USA
608-262-9519



This directory also contains a cycle-level SPIM simulator developed by
Anne Rogers and and Scott Rosenberg of Princeton.

The following copyright applies to all new files in cl-spim and cl-xspim:

SPIM S20 MIPS Cycle Level simulator.
Copyright (C) 1991-1992 by Anne Rogers (amr@cs.princeton.edu) and
Scott Rosenberg (scottr@cs.princeton.edu)
ALL RIGHTS RESERVED.

CL-SPIM is distributed under the following conditions:

  You may make copies of CL-SPIM for your own use and modify those copies.

  All copies of CL-SPIM must retain our names and copyright notice.

  You may not sell CL-SPIM or distributed CL-SPIM in conjunction with a
  commerical product or service without the expressed written consent of
  Anne Rogers.

THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.


New files for cl-spim and cl-xspim, cycle level simulators:

cl-cycle.[ch]
	pipeline simulation

cl-except.[ch]
	exception and signal handling

cl-tlb.[ch]
	virtual memory simulation

cl-cache.[ch]
	instruction and data caching simulation


To make cl-spim or cl-xspim, type:

	% make cl-spim
	% make cl-xspim

$Header: /home/primost/larus/Software/SPIM/RCS/README,v 1.10 1993/07/02 15:32:01 larus Exp larus $