Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Register allocation for GaAs computer systems
Proceedings of the Twenty-First Annual Hawaii International Conference on Architecture Track
Genetic programming (videotape): the movie
Genetic programming (videotape): the movie
Optimizing for reduced code space using genetic algorithms
Proceedings of the ACM SIGPLAN 1999 workshop on Languages, compilers, and tools for embedded systems
Journal of the ACM (JACM)
The Generation of Optimal Code for Arithmetic Expressions
Journal of the ACM (JACM)
Code Generation for Expressions with Common Subexpressions
Journal of the ACM (JACM)
Compiling for SIMD Within a Register
LCPC '98 Proceedings of the 11th International Workshop on Languages and Compilers for Parallel Computing
Register allocation & spilling via graph coloring
SIGPLAN '82 Proceedings of the 1982 SIGPLAN symposium on Compiler construction
Automatically Tuned Linear Algebra Software
Automatically Tuned Linear Algebra Software
REPRESENTING BOOLEAN FUNCTIONS WITH IF-THEN-ELSE DAGs
REPRESENTING BOOLEAN FUNCTIONS WITH IF-THEN-ELSE DAGs
Hi-index | 0.02 |
This paper explores new compilation methods, including Genetic Algorithms (GAs) and a new adaptation of Sethi-Ullman numbering, to aggressively restructure basic block code and allocate registers so that the number of registers used does not exceed the number available. Although the approach applies to a wide range of target architectures, it is investigated primarily for nanocontrollers, which have a combination of properties that make avoiding spills particularly difficult, but mandatory.