CS 6013 - Modern Compilers, Theory and Practice

Assignment 5: Alias Analysis

This assignment is the fourth part of a multi part project to write an optimizing compiler for Minijava. Our goal is to do alias analysis of MiniIR programs.

Use JTB and JavaCC, to write in Java one or more visitors which implement intra-procedural flow sensitive may alias analysis. Your main file should be called Alias.java, if P.aminiIR contains a program to be analyzed in aminiIR form, then

java Alias < P.miniIR

should print a series of "Yes" or "No" (each in a new line) corresponding to each query in P.aminiIR. Note, your program must take input program from standard input (the alias queries are part of the input) and write to standard output (so that we can use redirection). To check that a program is in aMiniIR form, you could tie the aMiniIR.jj and Main.java to build a parser.

Grading policy
Your homework will be graded for a total of 100 marks. 20 marks for the contributed testcases and 80 marks for the TAs testcases. Students can get upto 10 bonus points by contributing good testcases. Details can be found here.
[ under development ]