##===- TEST.dsprecision.Makefile ---------------------------*- Makefile -*-===## # # This recursively traverses the programs, running -aa-eval on them with various # different aa implementations. # ##===----------------------------------------------------------------------===## RELDIR := $(subst $(PROJ_OBJ_ROOT),,$(PROJ_OBJ_DIR)) # We require the programs to be linked with libdummy include $(LEVEL)/Makefile.dummylib $(PROGRAMS_TO_TEST:%=Output/%.$(TEST).report.txt): \ Output/%.$(TEST).report.txt: Output/%.lib.bc $(LOPT) @echo > $@ -($(LOPT) -basicaa -aa-eval -disable-output $<) > Output/$*.basicaa.out 2>&1 @echo -n "BASIC MA: " >> $@ -@grep 'may alias responses' Output/$*.basicaa.out >> $@ @echo >> $@ @echo -n "BASIC NOMR: " >> $@ -@grep 'no mod/ref responses' Output/$*.basicaa.out >> $@ @echo >> $@ @echo -n "BASIC JUSTREF: " >> $@ -@grep '[0-9] ref responses' Output/$*.basicaa.out >> $@ @echo >> $@ @echo -n "BASIC JUSTMOD: " >> $@ -@grep 'mod responses' Output/$*.basicaa.out >> $@ @echo >> $@ @echo -n "BASIC MR: " >> $@ -@grep 'mod & ref responses' Output/$*.basicaa.out >> $@ @echo >> $@ @ -($(LOPT) -steens-aa -disable-ds-field-sensitivity -aa-eval \ -disable-output $<) > Output/$*.steensfiaa.out 2>&1 @echo -n "STEENS-FI MA: " >> $@ -@grep 'may alias responses' Output/$*.steensfiaa.out >> $@ @echo >> $@ @echo -n "STEENS-FI NOMR: " >> $@ -@grep 'no mod/ref responses' Output/$*.steensfiaa.out >> $@ @echo >> $@ @echo -n "STEENS-FI JUSTREF: " >> $@ -@grep '[0-9] ref responses' Output/$*.steensfiaa.out >> $@ @echo >> $@ @echo -n "STEENS-FI JUSTMOD: " >> $@ -@grep 'mod responses' Output/$*.steensfiaa.out >> $@ @echo >> $@ @echo -n "STEENS-FI MR: " >> $@ -@grep 'mod & ref responses' Output/$*.steensfiaa.out >> $@ @echo >> $@ @ -($(LOPT) -steens-aa -aa-eval -disable-output $<) > Output/$*.steensfsaa.out 2>&1 @echo -n "STEENS-FS MA: " >> $@ -@grep 'may alias responses' Output/$*.steensfsaa.out >> $@ @echo >> $@ @echo -n "STEENS-FS NOMR: " >> $@ -@grep 'no mod/ref responses' Output/$*.steensfsaa.out >> $@ @echo >> $@ @echo -n "STEENS-FS JUSTREF: " >> $@ -@grep '[0-9] ref responses' Output/$*.steensfsaa.out >> $@ @echo >> $@ @echo -n "STEENS-FS JUSTMOD: " >> $@ -@grep 'mod responses' Output/$*.steensfsaa.out >> $@ @echo >> $@ @echo -n "STEENS-FS MR: " >> $@ -@grep 'mod & ref responses' Output/$*.steensfsaa.out >> $@ @echo >> $@ @ -($(LOPT) -anders-aa -aa-eval -disable-output $<) > Output/$*.andersaa.out 2>&1 @echo -n "ANDERS MA: " >> $@ -@grep 'may alias responses' Output/$*.andersaa.out >> $@ @echo >> $@ @echo -n "ANDERS NOMR: " >> $@ -@grep 'no mod/ref responses' Output/$*.andersaa.out >> $@ @echo >> $@ @echo -n "ANDERS JUSTREF: " >> $@ -@grep '[0-9] ref responses' Output/$*.andersaa.out >> $@ @echo >> $@ @echo -n "ANDERS JUSTMOD: " >> $@ -@grep 'mod responses' Output/$*.andersaa.out >> $@ @echo >> $@ @echo -n "ANDERS MR: " >> $@ -@grep 'mod & ref responses' Output/$*.andersaa.out >> $@ @echo >> $@ @ -($(LOPT) -ds-aa -aa-eval -disable-output $<) > Output/$*.dsaa.out 2>&1 @echo -n "DS MA: " >> $@ -@grep 'may alias responses' Output/$*.dsaa.out >> $@ @echo >> $@ @echo -n "DS NOMR: " >> $@ -@grep 'no mod/ref responses' Output/$*.dsaa.out >> $@ @echo >> $@ @echo -n "DS JUSTREF: " >> $@ -@grep '[0-9] ref responses' Output/$*.dsaa.out >> $@ @echo >> $@ @echo -n "DS JUSTMOD: " >> $@ -@grep 'mod responses' Output/$*.dsaa.out >> $@ @echo >> $@ @echo -n "DS MR: " >> $@ -@grep 'mod & ref responses' Output/$*.dsaa.out >> $@ @echo >> $@ $(PROGRAMS_TO_TEST:%=test.$(TEST).%): \ test.$(TEST).%: Output/%.$(TEST).report.txt @echo "---------------------------------------------------------------" @echo ">>> ========= '$(RELDIR)/$*' Program" @echo "---------------------------------------------------------------" @cat $< # Define REPORT_DEPENDENCIES so that the report is regenerated if analyze or # dummylib is updated. # REPORT_DEPENDENCIES := $(DUMMYLIB) $(LOPT)