Title | liveanalysis (Liveness analysis pass for Machine-SUIF) |
Author | Nikolaos Kavvadias 2004, 2005, 2006, 2007, 2008, 2009 2010, 2011, 2012, 2013, 2014 |
Contact | nikos@nkavvadias.com |
Website | http://www.nkavvadias.com |
Release Date | 01 October 2014 |
Version | 1.0.1 |
Rev. history | |
v1.0.1 | 2004-10-01 Correct minor documentation issue. |
v1.0.0 | 2004-10-01 Initial release. |
liveanalysis is a liveness analysis pass built to be used with the SUIF2/ MachSUIF2 compiler infrastructure. This pass generates a textual representation for the liveness information in a given control-flow graph. It reports the live-in and live-out sets, while the kill and gen set can also be reported by setting the REPORT_KILL_GEN_SET compile-time switch.
This pass uses the cfa, bvd and machine libraries of Machine-SUIF. It works for the SUIFvm instruction set as well as other MachSUIF backends. The liveanalysis pass has been tested with MachSUIF 2.02.07.15.
The liveanalysis distribution includes the following files:
/liveanalysis | Top-level directory |
AUTHORS | List of liveanalysis authors. |
LICENSE | The modified BSD license governs liveanalysis. |
README.rst | This file. |
README.html | HTML version of README. |
README.pdf | PDF version of README. |
VERSION | Current version of the project sources. |
liveanalysis.cpp | Implementation of the liveanalysis pass. |
liveanalysis.h | C++ header file containing declarations and prototypes for the above. |
rst2docs.sh | Bash script for generating the HTML and PDF versions of the documentation (README). |
suif_main.cpp | Entry point for building the standalone program do_liveanalysis that implements the pass. |
suif_pass.cpp | Define the SUIF pass built as the dynamically loadable library libliveanalysis.so. |
suif_main.h | C++ header file for the above. |
Unpack the liveanalysis archive wherever you like, e.g. in $MACHSUIFHOME/cfa/liveanalysis. You don't need to modify anything in the Makefile, if you have a working MachSUIF 2 installation.
The program binary (do_liveanalysis) will be installed at $NCIHOME/bin and the shared library (libliveanalysis.so) at $NCIHOME/solib, where NCIHOME is the SUIF 2 top-level directory.
The pass accepts an input file in CFG form to operate. Textual output is generated, written to stdout by default.
Usage synopsys: