From: jjenista Date: Fri, 18 Nov 2011 00:11:32 +0000 (+0000) Subject: fixed double negate bug, 3rd case of def reach works now X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=7b2023f04642b6e81bb7f9a8de5ea6af59bba1e6;p=IRC.git fixed double negate bug, 3rd case of def reach works now --- diff --git a/Robust/src/Analysis/Disjoint/DefiniteReachState.java b/Robust/src/Analysis/Disjoint/DefiniteReachState.java index 25e6a2f0..321d290e 100644 --- a/Robust/src/Analysis/Disjoint/DefiniteReachState.java +++ b/Robust/src/Analysis/Disjoint/DefiniteReachState.java @@ -73,6 +73,12 @@ public class DefiniteReachState { } return hash; } + public String toString() { + if( isKnown == DefReachKnown.UNKNOWN ) { + return "unknown"; + } + return knownSrc.toString(); + } } private static MultiViewMapBuilder FuBuilder; private static BitSet viewFufull; @@ -182,10 +188,10 @@ public class DefiniteReachState { for( MultiKey fullKeyB : Fu.get( viewFu0, MultiKey.factory( b ) ).keySet() ) { - if( !R.get( viewR01, - MultiKey.factory( a, - ((FuSource)fullKeyB.get( 1 )).knownSrc - ) ).isEmpty() + if( R.get( viewR01, + MultiKey.factory( a, + ((FuSource)fullKeyB.get( 1 )).knownSrc + ) ).isEmpty() ) { allEntriesOk = false; break; @@ -706,6 +712,10 @@ public class DefiniteReachState { } s.append( "}\n" ); + s.append( "Fu = {\n" ); + s.append( Fu.toString( 2 ) ); + s.append( "}\n" ); + s.append( "Fd = {\n" ); s.append( Fd.toString( 2 ) ); s.append( "}\n" );