Exploiting regularity of user-defined types to improve precision of program analyses

  • Authors:
  • Xiaolong Tang;Jaakko Järvi

  • Affiliations:
  • Texas A&M University, College Station, TX;Texas A&M University, College Station, TX

  • Venue:
  • Proceedings of the 27th Annual ACM Symposium on Applied Computing
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Traditional compilers do not effectively optimize code involving operations on values of user-defined types. We show that user-defined types that are both "regular" and "composite" (roughly corresponding to what is casually known as "value semantics") can be analyzed efficiently and effectively. The notion of regularity comes from generic programming and C++. Is routinely used by programmers for reasoning about generic code. Stepanov suggests that compilers too should take advantage of regularity for optimizations. This paper exploits the properties of regular composite objects to produce concise procedure summaries for summary-based analyses, thus taking a step towards Stepanov's goal. We use the LLVM framework to implement the analysis.