| Post-compilation optimization for multiple gains with pattern matching |
| Full text |
Pdf
(273 KB)
|
| Source
|
ACM SIGPLAN Notices
archive
Volume 40 , Issue 12 (December 2005)
table of contents
COLUMN: Technical correspondence
table of contents
Pages: 14 - 23
Year of Publication: 2005
ISSN:0362-1340
|
|
Authors
|
|
Rajeev Kumar
|
Indian Institute of Technology Kharagpur, Kharagpur, WB, India
|
|
Amit Gupta
|
Indian Institute of Technology Kharagpur, Kharagpur, WB, India
|
|
B. S. Pankaj
|
Indian Institute of Technology Kharagpur, Kharagpur, WB, India
|
|
Mrinmoy Ghosh
|
Indian Institute of Technology Kharagpur, Kharagpur, WB, India
|
|
P. P. Chakrabarti
|
Indian Institute of Technology Kharagpur, Kharagpur, WB, India
|
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 2, Downloads (12 Months): 25, Citation Count: 0
|
|
|
ABSTRACT
Many existing retargetable compilers for ASIPs and domain-specific processors generate low quality code since the compiler is not able to fully utilize the intricacies of ISA of these processors. Hence, there is a need to further optimize the code produced by these compilers. In this paper, we introduce a new post-compilation optimization technique which is based on finding repeating instruction patterns in generated code and replacing them with their optimized equivalents. The instruction patterns to be found are represented by finite state machines which allow encapsulation of multiple patterns in just one representation, and instructions in a pattern to be not necessarily lexically adjacent. We also present a conflict resolution algorithm to select an optimization whenever a set of instructions fall under two or more different patterns of which only one can be applied on the basis of code size, cycle count or switching activity improvement. We tested this technique on the compiled binaries of ARM and Intel processors for code size improvement. We discuss the possible applications of this strategy in design space exploration (DSE) of embedded processors.
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
|
|
 |
3
|
|
 |
4
|
|
 |
5
|
|
 |
6
|
|
 |
7
|
|
 |
8
|
Jens Ernst , William Evans , Christopher W. Fraser , Todd A. Proebsting , Steven Lucco, Code compression, Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation, p.358-365, June 16-18, 1997, Las Vegas, Nevada, United States
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
 |
12
|
|
| |
13
|
M. Ghosh. Compiler Backend Generation and a Post-Compilation Optimization Technique for Extensible Architecture. MS Thesis. Computer Sc. & Engineering Department, IIT Kharagpur, 2004.
|
| |
14
|
|
 |
15
|
|
 |
16
|
|
| |
17
|
K. D. Kissell. MIPS16: High-density MIPS for the embedded market. In Proc. Real Time Systems (RTS97), 1997.
|
| |
18
|
D. A. Lamb. Construction of a peephole optimizer. Software - Practice and Experience, 11(6): 638--647, June 1981.
|
 |
19
|
|
| |
20
|
|
| |
21
|
|
 |
22
|
|
| |
23
|
|
| |
24
|
S. Nystrom, J. Runeson, and J. Sjodin. Code compression techniques for embedded systems, 2000.
|
| |
25
|
B. S. Pankaj and A. Gupta. Porting NET and a Post Compilation Optimization Technique. B. Tech. Project Report. Computer Sc. & Engineering Dept., IIT Kharagpur, May 2004.
|
 |
26
|
|
 |
27
|
|
 |
28
|
|
 |
29
|
|
| |
30
|
M. Zastre. Compacting object code via parameterized procedural abstraction. Master's thesis, University Victoria, 1995.
|
 |
31
|
|
|