Event Details

Program Analysis Using Binary Decision Diagrams

Presenter: Mr. Ondrej Lhotak - School of Computer Science, McGill University, Montreal, Quebec
Supervisor:

Date: Fri, March 11, 2005
Time: 14:30:00 - 15:30:00
Place: EOW 430

ABSTRACT

Abstract

Program analysis is a fundamental component of optimizing compilers and, more recently, tools for understanding, maintaining, and verifying software. These applications require interprocedural analyses that produce precise results at a reasonable computational cost.

This talk will present new techniques for implementing efficient, precise program analyses using binary decision diagrams (BDDs), a data structure widely used in model checking to compactly represent large state sets. Specifically, I will present Jedd, a language extension to Java that abstracts BDDs as relations, a high-level representation appropriate for implementing non-trivial program analyses. Two applications of Jedd will also be presented. First, I will give a brief overview of Paddle, a framework of interrelated analyses including points-to analysis, call graph construction, and several dependent client analyses. Second, I will explain our analysis of the cflow construct in the AspectJ aspect-oriented extension to Java, which has already enabled significant speedups on benchmarks using this feature, and opens the door to future work on static analysis of aspect-oriented programs.

For Further Information Contact
Dr. P. Agathoklis (721-8618)