DocumentCode :
3081292
Title :
Register liveness analysis for optimizing dynamic binary translation
Author :
Probst, Mark ; Krall, Andreas ; Scholz, Bernhard
Author_Institution :
CD Lab. for Compilation Techniques, Tech. Univ. Wien, Austria
fYear :
2002
fDate :
2002
Firstpage :
35
Lastpage :
44
Abstract :
Dynamic binary translators compile machine code from a source architecture to a target architecture at run time. Due to the hard time constraints of just-in-time compilation only highly efficient optimization algorithms can be employed. Common problems are an insufficient number of registers on the target architecture and the different handling of condition codes in source and target architecture. Without optimizations useless stores and computations are generated by the dynamic binary translator and cause significant performance losses. In order to eliminate these useless operations, a very fast liveness analysis is required. We present a dynamic liveness analysis algorithm that trades precision for fast execution and conducted experiments with the SpecInt95 benchmark suite using our PowerPC to Alpha translator. The optimizations reduced the number of stores by about 50 percent. This resulted in a speed-up of 10 to 30 percent depending on the target machine. The dynamic liveness analysis results are very close to the most precise solution.
Keywords :
data flow analysis; optimising compilers; binary translators; dynamic liveness analysis; just-in-time compilation; liveness analysis; optimizations; target architecture; Algorithm design and analysis; Computer architecture; Constraint optimization; Dynamic compiler; Heuristic algorithms; Iterative algorithms; Laboratories; Performance loss; Registers; Time factors;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Reverse Engineering, 2002. Proceedings. Ninth Working Conference on
ISSN :
1095-1350
Print_ISBN :
0-7695-1799-4
Type :
conf
DOI :
10.1109/WCRE.2002.1173062
Filename :
1173062
Link To Document :
بازگشت