Context-Sensitivity Matters, But Context Does Not

  • Authors:
  • Jens Krinke

  • Affiliations:
  • FernUniversität in Hagen, Hagen, Germany

  • Venue:
  • SCAM '04 Proceedings of the Source Code Analysis and Manipulation, Fourth IEEE International Workshop
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Whether context-sensitive program analysis is more effective than context-insensitive analysis is an ongoing discussion. There is evidence that context-sensitivity matters in complex analyses like pointer analysis or program slicing. One might think that the context itself matters, because empirical data shows that context-sensitive program slicing is more precise and under some circumstances even faster than context-insensitive program slicing. Based on some experiments, we will show that this is not the case. The experiment requires backward slices to return to call sites specified by an abstract call stack. Such call stacks can be seen as a poor man's dynamic slicing: For a concrete execution, the call stack is captured, and static slices are restricted to the captured stack. The experiment shows that there is no significant increase in precision of the restricted form of slicing compared to the unrestricted traditional slicing. The reason is that a large part of an average slice is due to called procedures.