In this page you can donwload RALF, and everything that is needed to run the
framework. You can also find a handful of tools that we have used in the
implementation and test of new register allocators.
If you have any new tool or have any suggestions for improvement, then please mail the
authors.
|
The complete implementation of RALF, including the gcc compiler for the StrongARM
processor, and the source files. This program has pre-compiled binaries that run on
the linux (x86 machines) operating system.
|
|
The compiler that we have used to support RALF. Unzip it in the root directory to
install (It install the linker in /usr/local/arm* directories). We
strongly suggest you follow this directory structure to avoid path clashes.
|
|
The mira grammar, in the javacc format.
|
|
The ford grammar, in the javacc format.
|
|
Implementation of the linear scan register allocator. To run it, use the
command: java Main < file.mira .
|
|
Implementation of three different register allocators, a debugger that performs
the translation validation between mira and ford files, a program that outputs
the control flow graph in the .dot format and several scripts that set your
environment up for ralf.
|
|
The Stanford suite of benchmarks, used in Ralf's technical report. The gcc
version used by Ralf has a bug when dealing with arrays. It may cause
inconsistent outputs for programs like matmul.c or
queen.c .
|