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 ]