Quantcast

On the sequential nature of interprocedural program-analysis problems

Research paper by Thomas Reps

Indexed on: 01 Nov '96Published on: 01 Nov '96Published in: Acta Informatica



Abstract

 In this paper, we study two interprocedural program-analysis problems—interprocedural slicing and interprocedural dataflow analysis—and present the following results:• Interprocedural slicing is log-space complete for ?.• The problem of obtaining “meet-over-all-valid-paths” solutions to interprocedural versions of distributive dataflow-analysis problems is ?-hard.• Obtaining “meet-over-all-valid-paths” solutions to interprocedural versions of distributive dataflow-analysis problems that involve finite sets of dataflow facts (such as the classical “gen/kill” problems) is log-space complete for ?.These results provide evidence that there do not exist fast (??-class) parallel algorithms for interprocedural slicing and precise interprocedural dataflow analysis (unless ?=??). That is, it is unlikely that there are algorithms for interprocedural slicing and precise interprocedural dataflow analysis for which the number of processors is bounded by a polynomial in the size of the input, and whose running time is bounded by a polynomial in the logarithm of the size of the input. This suggests that there are limitations on the ability to use parallelism to overcome compiler bottlenecks due to expensive interprocedural-analysis computations.