TRICK: tracking and reusing compiler's knowledge

  • Authors:
  • Sandya Mannarswamy;Shruti Doval;Hariharan Sandanagobalane;Mahesha Nanjundaiah

  • Affiliations:
  • Hewlett Packard, Bangalore, India;Hewlett Packard, Bangalore, India;Hewlett Packard, Bangalore, India;Hewlett Packard, Bangalore, India

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Compilers, during compilation, analyze the application being compiled and build up extensive knowledge about the program. This knowledge is essential for the compiler to produce correct object code. Though some part of this knowledge is retained in the generated object files as symbol table information to be used by the linker and/or debugger, most of it is discarded after the compilation is done. In this paper, we introduce the TRICK framework, which is an attempt to retain and reuse this internal information generated by the compiler as part of its program analysis, in building new tools or enhancing existing tools as well for reuse by the compiler for continuous program optimization. We present examples of how development and maintenance of various program analysis tools can be simplified by using the TRICK framework describing tools developed by our group as well as how TRICK framework can be employed in continuous program optimization by the compiler. TRICK framework can be part of both static and dynamic compilation system, though our current usage model is in the context of a static compilation system,