Skip to topic | Skip to bottom
Home
Tiger
Tiger.Nolimipsr1.31 - 21 Mar 2007 - 15:21 - BenoitPerrot?topic end

Start of topic | Skip to actions

Nolimips

Summary

Nolimips is a MIPS-based simulator with "infinitely many registers". It consists of an assembler which reads MIPS assembly code, and of a virtual machine which executes the instructions processed by the assembler. For the moment Nolimips does not produce nor execute binary code, but ELF writer and loader are planned.

The main purpose of Nolimips is to help students of compilers courses to evaluate the output from their "high-level language into MIPS assembler code" compilers, before and after register allocation.

Its main features are:

  • minimal support of MIPS instruction set,
  • built-in system calls (string printing and reading, etc.),
  • unlimited registers ($x0, $x1, etc.),
  • gdb-like interactive shell.

Files

Subversion repository

The subversion repository is browsable here

Documentation

Tasks

General

  • Use `#!nolimips [OPTIONS]' on first line for specifying options to tests. Coming soon.
  • Augment test suite (with mips-gcc generated programs?).

Shell

  • Improve command parsing.
  • Search for possibilities of command and labels completion.

Assembler

  • Generate byte code.
  • Look at antlr and other LL-(k) parser generator, to check their usability, portability and improvements.

Virtual machine

  • Handle exceptions more correctly.
  • Emulate virtual memory.
  • Look at debug dedicated hardware.

Links

Contact

Send any questions or comments to <benoit.perrot (AT) lrde.epita.fr>

-- BenoitPerrot? - 21 Mar 2007
to top


Tiger.Nolimips moved from Projects.Nolimips on 21 Dec 2005 - 16:46 by AkimDemaille - put it back
You are here: Tiger > Nolimips

to top

Copyright © 1999-2010 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback