Optimizing compiler design for modularity and extensibility

被引:6
作者
Carroll, S [1 ]
Ko, W [1 ]
Yankelevsky, M [1 ]
Polychronopoulos, C [1 ]
机构
[1] Univ Illinois, Ctr Supercomp Res & Dev, Urbana, IL 61801 USA
来源
LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING | 2003年 / 2624卷
关键词
D O I
10.1007/3-540-35767-X_1
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Implementing an optimizing compiler for a new target architecture has traditionally been a complex design/development effort requiring a large time scale. Existing machine descriptions and approaches based on pre-existing internal representations (IR) are not sufficient to build truly modular and extensible compilers. This paper describes the features of the Extensible Compiler Interface (ECI) implemented in the PROMIS compiler, which tackles several major problems concerning the reuse of compiler components, retargeting as well as extending existing compilers with new functionality. One of the main design issues is maintaining analysis information calculated by one module after another potentially unknown module modifies the IR. Another problem is expanding existing modules (or passes) to work with processor-specific instructions and data types added by the compiler developers. Our approach to compiler extensibility through the proposed ECI tackles and solves the above problems, and provides a simple yet powerful API for adding arbitrary functionality or entirely new optimizations to existing compilers. A case study is presented in which the components of a parallelizing compiler are reused to build a compiler for a vector architecture, thereby demonstrating the utility and convenience of ECI.
引用
收藏
页码:1 / 17
页数:17
相关论文
共 15 条
[1]  
Appel A., 1998, The Zephyr Compiler Infrastructure
[2]  
COHEN WE, 1994, THESIS PURDUE U
[3]  
FRASER C, 1992, BURG FAST OPTIMAL IN
[4]  
HOLLOWAY G, 2000, EXTENDERS GUIDE OPTI
[5]  
Johnson S. C., 1978, UNIX PROGRAMMERS MAN, V2, P353
[6]  
KO W, 2001, THESIS U ILLINOIS UR
[7]  
LESK ME, 1975, 39 ATT BELL LAB
[8]  
SAITO H, 2000, INT J PARALLEL PROGR, V28
[9]  
SAITO H, 1999, LECT NOTES COMPUTER, V1575
[10]  
Smith M, 1996, P 1 SUIF COMP WORKSH