bug fix: The result of the pointer analysis is broken when it tries to do something...
authoryeom <yeom>
Wed, 2 May 2012 00:32:02 +0000 (00:32 +0000)
committeryeom <yeom>
Wed, 2 May 2012 00:32:02 +0000 (00:32 +0000)
Robust/src/Analysis/Disjoint/PointerMethod.java
Robust/src/Analysis/Pointer/Pointer.java

index aaab9a8..5ab2314 100644 (file)
@@ -92,7 +92,6 @@ public class PointerMethod {
     case FKind.FlatElementNode:
     case FKind.FlatSetElementNode:
     case FKind.FlatNew:
     case FKind.FlatElementNode:
     case FKind.FlatSetElementNode:
     case FKind.FlatNew:
-    case FKind.FlatLiteralNode:
     case FKind.FlatCall:
     case FKind.FlatReturnNode:
     case FKind.FlatBackEdge:
     case FKind.FlatCall:
     case FKind.FlatReturnNode:
     case FKind.FlatBackEdge:
index 8b0ce00..184cf65 100644 (file)
@@ -468,7 +468,11 @@ nextdelta:
 
     case FKind.FlatCall:
       return processFlatCall(bblock, index, (FlatCall) node, delta, newgraph);
 
     case FKind.FlatCall:
       return processFlatCall(bblock, index, (FlatCall) node, delta, newgraph);
-
+    
+     /* yonghun - 
+      * Pointer Analysis does not care about a flat literal node, just ignores it.
+      * Right now(2011/05/01) we do not attempt to model a flat literal node 
+      * for checking runtime pointers. 
     case FKind.FlatLiteralNode:
       // jjenista - the heap analysis abstraction---when used to verify points-to
       // analysis results against runtime pointers---will eventually need this to
     case FKind.FlatLiteralNode:
       // jjenista - the heap analysis abstraction---when used to verify points-to
       // analysis results against runtime pointers---will eventually need this to
@@ -476,7 +480,8 @@ nextdelta:
       // allocated string.  For now it will pass through like Pointer used to, but
       // the checks versus runtime pointers will fail for string literals.
       return delta;
       // allocated string.  For now it will pass through like Pointer used to, but
       // the checks versus runtime pointers will fail for string literals.
       return delta;
-
+     */
+      
     default:
       throw new Error("Unrecognized node:"+node + " of kind " + node.kind());
     }
     default:
       throw new Error("Unrecognized node:"+node + " of kind " + node.kind());
     }