this.e_srcOutCalleeContext = srcOutCalleeContext;
this.e_srcOutCallerContext = srcOutCallerContext;
+ assert !(e_srcOutCalleeContext && e_srcOutCallerContext);
+
this.e_tdSrc = tdSrc;
this.e_hrnSrcID = hrnSrcID;
this.e_hrnDstID = hrnDstID;
} else {
+ assert !(e_srcOutCalleeContext && e_srcOutCallerContext);
+
if( e_srcOutCalleeContext ) {
- assert !e_srcOutCallerContext;
if( calleeReachableNodes.contains( e_hrnSrcID ) ) {
return null;
}
- } else {
- if( !calleeReachableNodes.contains( e_hrnSrcID ) ) {
- return null;
- }
- }
- if( e_srcOutCallerContext ) {
- assert !e_srcOutCalleeContext;
+ } else if( e_srcOutCallerContext ) {
if( !hrnSrc.isOutOfContext() ) {
return null;
}
+
} else {
+
+ if( !calleeReachableNodes.contains( e_hrnSrcID ) ) {
+ return null;
+ }
if( hrnSrc.isOutOfContext() ) {
return null;
}
+
}
rsn = hrnSrc;
BUILDSCRIPT=~/research/Robust/src/buildscript
#DEBUGFLAGS= -disjoint-debug-callsite MDRunner t3 100
-DEBUGFLAGS= -disjoint-debug-callsite calcGoodFeature calcGoodFeature 100
+#DEBUGFLAGS= -disjoint-debug-callsite calcGoodFeature calcGoodFeatureTask 100
+#DEBUGFLAGS= -disjoint-debug-callsite getRows calcGoodFeature 4
+#SNAPFLAGS= -disjoint-debug-snap-method calcGoodFeatureTask 5 10 true
+#SNAPFLAGS= -disjoint-debug-snap-method calcGoodFeature 5 1 true
BSFLAGS= -recover -justanalyze -disjoint -disjoint-k 1 -disjoint-write-dots final -disjoint-alias-file aliases.txt normal -enable-assertions
all:
- $(BUILDSCRIPT) $(BSFLAGS) $(DEBUGFLAGS) *.java
+ $(BUILDSCRIPT) $(BSFLAGS) $(DEBUGFLAGS) $(SNAPFLAGS) *.java
clean:
rm -f *.bin