small changes on test cases. disable -noloop option from makefile.
authoryeom <yeom>
Wed, 22 Jun 2011 17:21:40 +0000 (17:21 +0000)
committeryeom <yeom>
Wed, 22 Jun 2011 17:21:40 +0000 (17:21 +0000)
Robust/src/Tests/ssJava/flowdown/makefile
Robust/src/Tests/ssJava/flowdown/test.java

index eda4afd88b6f950e40b262b0ba7e85c7973e3c92..bcb8fdc937503ee9a8b4cf1ddeeb5b8e61d38a54 100644 (file)
@@ -3,7 +3,7 @@ BUILDSCRIPT=../../../buildscript
 PROGRAM=test
 SOURCE_FILES=test.java
 
-BSFLAGS= -32bit -ssjava -printlinenum -mainclass $(PROGRAM)  -heapsize-mb 1000 -garbagestats -joptimize -noloop -optimize -debug #-nooptimize #src-after-pp #-debug
+BSFLAGS= -32bit -ssjava -printlinenum -mainclass $(PROGRAM)  -heapsize-mb 1000 -garbagestats -joptimize -optimize -debug #-nooptimize #src-after-pp #-debug
 
 default: $(PROGRAM)s.bin
 
index b0ac6246b0921523b343a6d76b2abfe2ca6ec791..01d2f0b7cbb1ccc7772d28e2af542ca3b52cb15e 100644 (file)
@@ -1,5 +1,5 @@
 @LATTICE("testL<testM,testM<testH")
-@METHODDEFAULT("methodL<methodH,methodH<methodT,THISLOC=methodT,GLOBALLOC=methodT")
+@METHODDEFAULT("methodL<methodH,methodH<methodT,methodH<methodC,methodC*,THISLOC=methodT,GLOBALLOC=methodT")
 public class test{
 
     @LOC("testH") int fieldH;
@@ -13,7 +13,13 @@ public class test{
 
     public static void main (@LOC("methodH") String args[]){       
        @LOC("methodH") test t=new test();
-       t.doit();
+       
+       @LOC("methodC") int i=0;
+       SSJAVA:
+       while(i<100){
+           t.doit();
+           i++;
+       }
     }
     
     public void doit(){
@@ -171,13 +177,15 @@ class Foo{
        b=a; // value flows from [fm_H,FA] to [fm_H,FB]
     }
 
-    // callee has a constraint that arg1 is higher than arg2
+    // callee has a constraint that arg1 is higher than arg2    
+    @RETURNLOC("fm_L")
     public int doSomethingArgs(@LOC("fm_H")int argH,
                               @LOC("fm_M1")int argL){  
        @LOC("fm_L") int value=argL+argH+50;
        return value;
     }
 
+    @RETURNLOC("fm_M1")
     public int doSomethingRtn(){
        return a+b; // going to return LOC[local.t,field.FB]
     }
@@ -189,7 +197,8 @@ class Foo{
        @LOC("L") int result=param1+param2;
     }
     
-    @LATTICE("M<H,X<H")
+    @RETURNLOC("M")
+    @LATTICE("M<H,X<H,THISLOC=H")
     public int callerConstraints(@LOC("H") int param1, @LOC("M") int param2){
 
        @LOC("X") int returnValue=100;