In this paper we describe interprocedural static single assignment form (ISSA) with optimizations as implemented in the Bauhaus project. We explain our framework which uses an abstract program representation enabling us to use different pointer analyses ranging from fast but imprecise to slow but precise ones. Our implementation includes the computation of (may and must) side effects and optimiza- tions like pruning definitions with simple linear-time algo- rithms. This paper also provides comprehensive test results and statistics for a large test suite.
Citation:
Stefan Staiger, Gunther Vogel, Steffen Keul, Eduard Wiebe, "Interprocedural Static Single Assignment Form," wcre, pp.1-10, 14th Working Conference on Reverse Engineering (WCRE 2007), 2007