1993 · 153 citations · 27 references
ComputingComputer ScienceCompilersData StructuresProgramming LanguagesControl-flow AnalysisData-flow AnalysisAliasesInterprocedural AnalysisPointer Analysis
We present a new interprocedural modification side effects algorithm for C programs, that can discern side effects through general-purpose pointer usage. Ours is the first complete design and implementation of such an algorithm. Preliminary performance findings support the practicality of the technique, which is based on our previous approximation algorithm for pointer aliases [LR92]. Each indirect store through a pointer variable is found, on average, to correspond to a store into 1.2 locations. This indicates that our program-point-specific pointer aliasing information is quite precise when used to determine the effects of these stores.
27
Mark Weiser · IEEE Transactions on Software Engineering · 1984 · 3.2K citations
Optimizing supercompilers for supercomputers
Michael Wolfe · 2020 · 840 citations
Interprocedural slicing using dependence graphs
Susan Horwitz, Thomas Reps, David Binkley · ACM SIGPLAN Notices · 2004 · 376 citations