Designing programming languages for analyzability: a fresh look at pointer data structures

Laurie Jane Hendren, Guang R. Gao · 2003

A programming language mechanism and associated compiler techniques which significantly enhance the analyzability of pointer-based data structures frequently used in nonscientific programs are proposed. The approach is based on exploiting two important properties of pointer data structures: structural inductivity and speculative traversability. Structural inductivity facilitates the application of a static interference analysis method for such pointer data structures based on path matrices, and speculative traversability is utilized by a novel loop unrolling technique for while loops that exploit fine-grain parallelism by speculatively traversing such data structures. The effectiveness of this approach is demonstrated by applying it to a collection of loops found in typical nonscientific C programs.>

Read the paper · More papers on PaperTik