Title :
Hybrid incremental alias algorithms
Author :
Marlowe, Thomas J. ; Ryder, Barbara G.
Author_Institution :
Dept. of Math. & Comput. Sci., Seton Hall Univ., South Orange, NJ, USA
Abstract :
Two scalar variables are said to be aliases, if, at some time during program execution, they both may refer to the same storage location. Two structured variables (arrays, records, etc.) are aliased, if at some point during execution their contents overlap. The need for precise interprocedural alias information, especially for arrays, has prevented compilers for parallel hardware from extracting much of the parallelism that actually is present in scientific programs. Despite the utility of static analysis information, the cost of keeping it consistent with the current state of an evolving program must be shown reasonable to ensure its use in practice. Incremental data flow algorithms are designed to efficiently update data flow information after changes, rather than exhaustively recalculate solutions. The authors offer algorithms for scalar aliasing which have efficient and precise incremental versions and show promise of extensibility to more precise array aliasing techniques, which will aid in compiling for parallel. These analysis algorithms can be performed in parallel, and can be used to aid the analysis of separately compiled modules. The authors also discuss first steps in adapting the algorithm for incremental array aliasing, and possible applications to constant or range propagation
Keywords :
data structures; parallel algorithms; parallel programming; program compilers; array aliasing techniques; data flow algorithms; data flow information; incremental array aliasing; incremental versions; precise interprocedural alias information; program execution; range propagation; records; scalar aliasing; scientific programs; separately compiled modules; static analysis information; storage location; structured variables; Aggregates; Algorithm design and analysis; Computer science; Concurrent computing; Data analysis; Displays; Flow graphs; Hardware; Information analysis; Parallel algorithms;
Conference_Titel :
System Sciences, 1991. Proceedings of the Twenty-Fourth Annual Hawaii International Conference on
Conference_Location :
Kauai, HI
DOI :
10.1109/HICSS.1991.184005