A program data flow analysis procedure
Communications of the ACM
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
Profile assisted register allocation
SAC '00 Proceedings of the 2000 ACM symposium on Applied computing - Volume 2
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Local variable access behavior of a hardware-translation based Java virtual machine
Journal of Systems and Software
Aliased register allocation for straight-line programs is NP-complete
Theoretical Computer Science
Graph coloring on coarse grained multicomputers
Discrete Applied Mathematics
A Branch-and-Cut algorithm for graph coloring
Discrete Applied Mathematics - Special issue: IV ALIO/EURO workshop on applied combinatorial optimization
Optimal register allocation for SSA-form programs in polynomial time
Information Processing Letters
On minimizing register usage of linearly scheduled algorithms with uniform dependencies
Computer Languages, Systems and Structures
Memory-optimal evaluation of expression trees involving large objects
Computer Languages, Systems and Structures
MTPSO algorithm for solving planar graph coloring problem
Expert Systems with Applications: An International Journal
A cellular learning automata-based algorithm for solving the vertex coloring problem
Expert Systems with Applications: An International Journal
ACM Transactions on Embedded Computing Systems (TECS)
Generating optimal contiguous evaluations for expression DAGs
Computer Languages
Scheduling expression DAGs for minimal register need
Computer Languages
Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems
Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems
Automatica (Journal of IFAC)
Aliased register allocation for straight-line programs is NP-complete
ICALP'07 Proceedings of the 34th international conference on Automata, Languages and Programming
Improved loop tiling based on the removal of spurious false dependences
ACM Transactions on Architecture and Code Optimization (TACO) - Special Issue on High-Performance Embedded Architectures and Compilers
Constraint-Based register allocation and instruction scheduling
CP'12 Proceedings of the 18th international conference on Principles and Practice of Constraint Programming
Spill code placement for SIMD machines
SBLP'12 Proceedings of the 16th Brazilian conference on Programming Languages
Optimal register allocation in polynomial time
CC'13 Proceedings of the 22nd international conference on Compiler Construction
Scheduling independent liveness analysis for register binding in high level synthesis
Proceedings of the Conference on Design, Automation and Test in Europe
The constraint of difference and total dual integrality
Proceedings of the 17th Panhellenic Conference on Informatics
ColPack: Software for graph coloring and related problems in scientific computing
ACM Transactions on Mathematical Software (TOMS)
ACM Transactions on Embedded Computing Systems (TECS)
A decoupled non-SSA global register allocation using bipartite liveness graphs
ACM Transactions on Architecture and Code Optimization (TACO)
The complexity of register allocation
Discrete Applied Mathematics
Hi-index | 0.01 |
Register allocation may be viewed as a graph coloring problem. Each node in the graph stands for a computed quantity that resides in a machine register, and two nodes are connected by an edge if the quantities interfere with each other, that is, if they are simultaneously live at some point in the object program. This approach, though mentioned in the literature, was never implemented before. Preliminary results of an experimental implementation in a PL/I optimizing compiler suggest that global register allocation approaching that of hand-coded assembly language may be attainable.