inria-00192219, version 1
Fast Liveness Checking for SSA-Form Programs
Benoit Boissinot a, 1Sebastian Hack b, 1Daniel Grund c, 2Benoît De Dinechin d, 3Fabrice Rastello b, 1
(2007)
Abstract: Liveness analysis is an important analysis in optimizing compilers. Liveness information is used in several optimizations and is mandatory during the code-generation phase. Two drawbacks of conventional liveness analyses are that their computations are fairly expensive and their results are easily invalidated by program transformations. We present a method to check liveness of variables that overcomes both obstacles. The major advantage of the proposed method is that the analysis result survives all program transformations except for changes in the control-flow graph. For common program sizes our technique is faster and consumes less memory than conventional data-flow approaches. Thereby, we heavily make use of SSA-form properties, which allow us to completely circumvent data-flow equation solving. We evaluate the competitiveness of our approach in an industrial strength compiler. Our measurements use the integer part of the SPEC2000 benchmarks and investigate the liveness analysis used by the SSA destruction pass. We compare the net time spent in liveness computations of our implementation against the one provided by that compiler. The results show that in the vast majority of cases our algorithm, while providing the same quality of information, needs less time: an average speed-up of 16%.
- a – Ecole Normale Supérieure de Lyon
- b – INRIA
- c – Saarland University
- d – STMicroelectronics
- 1: Laboratoire de l'Informatique du Parallélisme (LIP)
- Université de Lyon – CNRS : UMR5668 – INRIA – École Normale Supérieure - Lyon – Université Claude Bernard - Lyon I
- 2: Compiler Design Lab
- Saarland University
- 3: STMicroelectronics (Crolles) (ST-CROLLES)
- STMicroelectronics
- Domain : Computer Science/Data Structures and Algorithms
- Keywords : Liveness Analysis – SSA form – Dominance – Compilers – JIT-compilation
- inria-00192219, version 1
- http://hal.inria.fr/inria-00192219
- oai:hal.inria.fr:inria-00192219
- From: Benoit Boissinot
- Submitted on: Tuesday, 27 November 2007 11:03:26
- Updated on: Tuesday, 27 November 2007 11:21:45






Associated documents
Export