|
ABSTRACT
The AVIV retargetable code generator produces optimized machine code for target processors with different instruction set architectures AVIV optimizes for minimum code size.
Retargetable code generation requires the development of heuristic algorithms for instruction selection, resource allocation, and scheduling. AVIV addresses these code generation subproblems concurrently, whereas most current code generation systems address them sequentially. It accomplishes this by converting the input application to a graphical (Split-Node DAG) representation that specifies all possible ways of implementing the application on the target processor. The information embedded in this representation in then used to set up a heuristic branch-and-bound step that performs functional unit assignment, operation grouping, register bank allocation, and scheduling concurrently. While detailed register allocation is carried out as a second step, estimates of register requirements are generated during the first step to ensure high quality of the final assembly code.
We show that near-optimal code can be generated for basic blocks for different architectures within reasonable amounts of CPU time. Our framework thus allows us to accurately evaluate the performance of different architectures on application code.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
 |
2
|
George Hadjiyiannis , Silvina Hanono , Srinivas Devadas, ISDL: an instruction set description language for retargetability, Proceedings of the 34th annual conference on Design automation, p.299-302, June 09-13, 1997, Anaheim, California, United States
[doi> 10.1145/266021.266108]
|
| |
3
|
Stanford Compiler Group. The SUIF Library, 1.0 edition, 1994.
|
| |
4
|
SPAM Research Group. SPAM Compiler User's Manual, 1.0 edition, 1997.
|
| |
5
|
G. Chaitin, M. Auslander, A. Chandra, J. Cocke, M. Hopkins, and P. Markstein. Register Allocation via Coloring. Computer Languages, 6:47-57, 1981.
|
| |
6
|
|
| |
7
|
P. Paulin et al. FlexWare: A Flexible Firmware Development Environment for Embedded Systems. In Code Generation for Embedded Processors, pages 67-84. Kluwer Academic Publishers, 1995.
|
| |
8
|
D. Lanneer et al. CHESS: Retargetable Code Generation for Embedded DSP Processors. In Code Generation for Embedded Processors, pages 85-102. Kluwer Academic Publishers, 1995.
|
| |
9
|
T. Wilson et al. An ILP-Based Approach to Code Generation. In Code Generation for Embedded Processors, pages 103- 1 18. Kluwer Academic Publishers, 1995.
|
| |
10
|
C. Liem, T. May, and P. Paulin. Instruction-Set Matching and Selection for DSP and ASIP Code Generation. In Proceedings of the European Design and Test Conference, pages 31-37, Feb 1994.
|
| |
11
|
M. Freericks. The nML Machine Description Formalism. Technical report, TU Berlin, 1993.
|
CITED BY 29
|
|
|
|
|
Naji Ghazal , Richard Newton , Jan Rabaey, Predicting performance potential of modern DSPs, Proceedings of the 37th conference on Design automation, p.332-335, June 05-09, 2000, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
George Hadjiyiannis , Pietro Russo , Srinivas Devadas, A methodology for accurate performance evaluation in architecture exploration, Proceedings of the 36th ACM/IEEE conference on Design automation, p.927-932, June 21-25, 1999, New Orleans, Louisiana, United States
|
|
|
|
|
|
Jianjiang Ceng , Weihua Sheng , Manuel Hohenauer , Rainer Leupers , Gerd Ascheid , Heinrich Meyr , Gunnar Braun, Modeling Instruction Semantics in ADL Processor Descriptions for C Compiler Retargeting, Journal of VLSI Signal Processing Systems, v.43 n.2-3, p.235-246, June 2006
|
|
|
|
|
|
|
|
|
|
|
|
Florian Brandner , Dietmar Ebner , Andreas Krall, Compiler generation from structural architecture descriptions, Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems, September 30-October 03, 2007, Salzburg, Austria
|
|
|
|
|
|
Ashok Halambi , Peter Grun , Vijay Ganesh , Asheesh Khare , Nikil Dutt , Alex Nicolau, EXPRESSION: a language for architecture exploration through compiler/simulator retargetability, Proceedings of the conference on Design, automation and test in Europe, p.100-es, January 1999, Munich, Germany
|
|
|
|
|
|
Manuel Hohenauer , Hanno Scharwaechter , Kingshuk Karuri , Oliver Wahlen , Tim Kogel , Rainer Leupers , Gerd Ascheid , Heinrich Meyr , Gunnar Braun , Hans van Someren, A Methodology and Tool Suite for C Compiler Generation from ADL Processor Models, Proceedings of the conference on Design, automation and test in Europe, p.21276, February 16-20, 2004
|
|
|
Jianjiang Ceng , Manuel Hohenauer , Rainer Leupers , Gerd Ascheid , Heinrich Meyr , Gunnar Braun, C Compiler Retargeting Based on Instruction Semantics Models, Proceedings of the conference on Design, Automation and Test in Europe, p.1150-1155, March 07-11, 2005
|
|
|
|
INDEX TERMS
Primary Classification:
D.
Software
D.3
PROGRAMMING LANGUAGES
D.3.4
Processors
Subjects:
Code generation
Additional Classification:
B.
Hardware
B.7
INTEGRATED CIRCUITS
B.8
Performance and Reliability
C.
Computer Systems Organization
D.
Software
D.3
PROGRAMMING LANGUAGES
D.3.4
Processors
Subjects:
Compilers
G.
Mathematics of Computing
G.4
MATHEMATICAL SOFTWARE
Subjects:
Algorithm design and analysis
J.
Computer Applications
General Terms:
Algorithms,
Design,
Experimentation,
Languages,
Measurement,
Performance,
Theory
Keywords:
MPEG4,
codec,
design automatian,
flip-flops,
level converters,
low power,
placement,
synthesis,
voltage scaling
|