Efficiently computing static single assignment form and the control dependence graph
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Practical improvements to the construction and destruction of static single assignment form
Software—Practice & Experience
Static single assignment form for machine code
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
Code generator optimizations for the ST120 DSP-MCU core
CASES '00 Proceedings of the 2000 international conference on Compilers, architecture, and synthesis for embedded systems
Fast copy coalescing and live-range identification
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Efficient static single assignment form for predication
Proceedings of the 34th annual ACM/IEEE international symposium on Microarchitecture
Register allocation & spilling via graph coloring
SIGPLAN '82 Proceedings of the 1982 SIGPLAN symposium on Compiler construction
Optimistic Register Coalescing
PACT '98 Proceedings of the 1998 International Conference on Parallel Architectures and Compilation Techniques
On the Complexity of Register Coalescing
Proceedings of the International Symposium on Code Generation and Optimization
Interference graphs for procedures in static single information form are interval graphs
SCOPES '07 Proceedingsof the 10th international workshop on Software & compilers for embedded systems
An optimistic and conservative register assignment heuristic for chordal graphs
CASES '07 Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems
Advanced conservative and optimistic register coalescing
CASES '08 Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems
Comparison and evaluation of back-translation algorithms for static single assignment forms
Computer Languages, Systems and Structures
Revisiting Out-of-SSA Translation for Correctness, Code Quality and Efficiency
Proceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization
LCPC'06 Proceedings of the 19th international conference on Languages and compilers for parallel computing
Hi-index | 0.00 |
Static Single Assignment form is an intermediate representationthat usesinstructions to merge values ateach confluent point of the control flow graph. instructionsare not machine instructions and must be renamedback to move instructions when translating out of SSAform.Without a coalescing algorithm, the out of SSAtranslation generates many move instructions.Leung andGeorge use a SSA form for programs represented as native machine instructions, including the use of machinededicated registers.For this purpose, they handlerenaming constraints thanks to a pinning mechanism.Pinningarguments and their corresponding definitionto a common resource is also a very attractive techniquefor coalescing variables.In this paper, extending thisidea, we propose a method to reduce the -related copiesduring the out of SSA translation, thanks to a pinning-basedcoalescing algorithm that is aware of renaming constraints.We implemented our algorithm in the STMicro-electronicsLinear Assembly Optimizer.Our experimentsshow interesting results when comparing to the existingapproaches of Leung and George, Sreedhar etal., and Appel and George for register coalescing.