Local Microcode Compaction Techniques
ACM Computing Surveys (CSUR)
Issues of the design of a low level microprogramming language for global microcode compaction
MICRO 14 Proceedings of the 14th annual workshop on Microprogramming
MIDL - a microinstruction description language
MICRO 14 Proceedings of the 14th annual workshop on Microprogramming
Heuristics for the global optimization of microprograms
MICRO 13 Proceedings of the 13th annual workshop on Microprogramming
A machine independent approach to the production of optimized horizontal microcode.
A machine independent approach to the production of optimized horizontal microcode.
Formalization and automatic derivation of code generators.
Formalization and automatic derivation of code generators.
Methods of compacting microprograms
Methods of compacting microprograms
The optimization of horizontal microcode within and beyond basic blocks: an application of processor scheduling with resources
Problem-Solving Methods in Artificial Intelligence
Problem-Solving Methods in Artificial Intelligence
Microcode development for microprogrammed processors
MICRO 18 Proceedings of the 18th annual workshop on Microprogramming
Graph based retargetable microcode compilation in the MIMOLA design system
ACM SIGMICRO Newsletter
Graph based retargetable microcode compilation in the MIMOLA design system
MICRO 20 Proceedings of the 20th annual workshop on Microprogramming
Postpass Code Optimization of Pipeline Constraints
ACM Transactions on Programming Languages and Systems (TOPLAS)
Processor modeling and code selection for retargetable compilation
ACM Transactions on Design Automation of Electronic Systems (TODAES)
Embedded software in real-time signal processing systems: design technologies
Readings in hardware/software co-design
Finding effective optimization phase sequences
Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems
Fast searches for effective optimization phase sequences
Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation
Fast and efficient searches for effective optimization-phase sequences
ACM Transactions on Architecture and Code Optimization (TACO)
Using de-optimization to re-optimize code
Proceedings of the 5th ACM international conference on Embedded software
Exhaustive Optimization Phase Order Space Exploration
Proceedings of the International Symposium on Code Generation and Optimization
In search of near-optimal optimization phase orderings
Proceedings of the 2006 ACM SIGPLAN/SIGBED conference on Language, compilers, and tool support for embedded systems
VISTA: VPO interactive system for tuning applications
ACM Transactions on Embedded Computing Systems (TECS)
Evaluating Heuristic Optimization Phase Order Search Algorithms
Proceedings of the International Symposium on Code Generation and Optimization
The Complexity of Horizontal Word Encoding in Microprogrammed Machines
IEEE Transactions on Computers
Practical exhaustive optimization phase order exploration and evaluation
ACM Transactions on Architecture and Code Optimization (TACO)
Improving both the performance benefits and speed of optimization phase sequence searches
Proceedings of the ACM SIGPLAN/SIGBED 2010 conference on Languages, compilers, and tools for embedded systems
Eliminating false phase interactions to reduce optimization phase order search space
CASES '10 Proceedings of the 2010 international conference on Compilers, architectures and synthesis for embedded systems
Exploiting phase inter-dependencies for faster iterative compiler optimization phase order searches
Proceedings of the 2013 International Conference on Compilers, Architectures and Synthesis for Embedded Systems
Hi-index | 0.00 |
The designer of an optimizing compiler must concern himself with the order in which optimization phases are performed; a pair of phases may be interdependent in the sense that each phase could benefit from information produced by the other. In a compiler for a horizontal target architecture, one such phase-ordering problem occurs between code-generation and compaction. Presented here is an overview of a research effort at Carnegie-Mellon University which has examined solutions to this problem. One aspect of the code generation problem-that of generating constants “intelligently”-is discussed in detail. A technique, called constant-unfolding, is described that can be used to produce code sequences that generate constants in “unusual” ways during execution; such code sequences can lead to more compact code when the literal field of the microinstruction is a “bottleneck”.