摘要
许多编译优化技术都依赖于数组的逻辑结构,然而在实际的应用中,有相当多的数组是无结构的一维数组,从而妨碍了编译器的优化工作。提出了一种新的数组逻辑结构猜想算法,它能将无结构的一维数组自动变换成具有多维逻辑结构的数组,从而使编译器的优化工作成为可能。首先给出一个引理,指出猜想后的多维数组应满足的基本性质,然后基于该引理给出了猜想数组的逻辑结构应遵循的两条基本规则,最后基于这两条基本规则给出了猜想数组逻辑结构的算法。实验结果验证了所提出的数组逻辑结构猜想算法的有效性。
Many powerful parallelizing compiling techniques rely on the logic structures of arrays. However, in real applications, lots of arrays are flat one-dimensional arrays and hence may disable some compiling optimizations. This paper presents a new framework and algorithms for guessing the logical multi-dimensional array structures from the flat one-dimensional arrays automatically, and makes powerful compiling optimizations possible. We first give a lemma that points out the basic property which the guessed multi-dimensional arrays should satisfy, then based on this lemma we give two basic rules that should be followed in guessing logic structures of arrays, and finally based on the two rules we present the algorithms for guessing logic structures of arrays. The experimental results show the algorithms for guessing the logical multi-dimensional array structures are effective.
出处
《国防科技大学学报》
EI
CAS
CSCD
北大核心
2004年第1期29-35,共7页
Journal of National University of Defense Technology
基金
国家自然科学基金重点资助项目(69933030)
国家杰出青年科学基金资助项目(69825104)
关键词
数组
逻辑结构
访问矩阵
下标表达式向量
偏移向量
维长向量
数据结构
logical structures of arrays
access matrix
subscript expression vectors
offset vectors
subscript range vectors