generalization of memory access maps

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2472 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
This commit is contained in:
msridhar1 2008-01-25 02:22:42 +00:00
parent 19972d0a8e
commit e6713ae685
6 changed files with 16 additions and 5 deletions

View File

@ -16,4 +16,5 @@ Export-Package: com.ibm.wala.core.tests.basic,
com.ibm.wala.core.tests.util,
com.ibm.wala.eclipse.headless,
com.ibm.wala.examples.drivers,
com.ibm.wala.examples.properties
com.ibm.wala.examples.properties,
com.ibm.wala.demandpa.driver

View File

@ -52,6 +52,7 @@ import com.ibm.wala.demandpa.alg.statemachine.DummyStateMachine;
import com.ibm.wala.demandpa.alg.statemachine.StateMachineFactory;
import com.ibm.wala.demandpa.flowgraph.IFlowLabel;
import com.ibm.wala.demandpa.util.MemoryAccessMap;
import com.ibm.wala.demandpa.util.SimpleMemoryAccessMap;
import com.ibm.wala.eclipse.util.CancelException;
import com.ibm.wala.ipa.callgraph.AnalysisCache;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
@ -204,7 +205,7 @@ public abstract class AbstractPtrTest extends TestCase {
final CallGraph cg = cgBuilder.makeCallGraph(options);
// System.err.println(cg.toString());
MemoryAccessMap fam = new MemoryAccessMap(cg, false);
MemoryAccessMap fam = new SimpleMemoryAccessMap(cg, false);
SSAPropagationCallGraphBuilder builder = Util.makeVanillaZeroOneCFABuilder(options, analysisCache, cha, scope);
DemandRefinementPointsTo fullDemandPointsTo = new DemandRefinementPointsTo(cg, new ThisFilteringHeapModel(builder,cha), fam, cha, options,
getStateMachineFactory());

View File

@ -43,11 +43,17 @@ import com.ibm.wala.demandpa.alg.DemandRefinementPointsTo;
import com.ibm.wala.demandpa.alg.refinepolicy.AlwaysRefineFieldsPolicy;
import com.ibm.wala.demandpa.alg.refinepolicy.NeverRefineCGPolicy;
import com.ibm.wala.demandpa.alg.refinepolicy.SinglePassRefinementPolicy;
import com.ibm.wala.demandpa.driver.WalaUtil;
import com.ibm.wala.eclipse.util.CancelException;
import com.ibm.wala.ipa.cha.ClassHierarchyException;
public class RefineFieldsPtrTest extends AbstractPtrTest {
@Override
protected void setUp() throws Exception {
WalaUtil.initializeTraceFile();
}
public void testNastyPtrs() throws ClassHierarchyException, IllegalArgumentException, CancelException, IOException {
doPointsToSizeTest(TestInfo.SCOPE_FILE, TestInfo.TEST_NASTY_PTRS, 10);
}

View File

@ -46,6 +46,7 @@ import com.ibm.wala.demandpa.alg.statemachine.DummyStateMachine;
import com.ibm.wala.demandpa.flowgraph.IFlowLabel;
import com.ibm.wala.demandpa.util.CallGraphMapUtil;
import com.ibm.wala.demandpa.util.MemoryAccessMap;
import com.ibm.wala.demandpa.util.SimpleMemoryAccessMap;
import com.ibm.wala.eclipse.util.CancelException;
import com.ibm.wala.ipa.callgraph.AnalysisCache;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
@ -149,7 +150,7 @@ public class CompareToZeroOneCFADriver {
final CallGraph cg = CallGraphTestUtil.buildRTA(options, new AnalysisCache(), cha, scope);
// System.err.println(cg.toString());
MemoryAccessMap fam = new MemoryAccessMap(cg, false);
MemoryAccessMap fam = new SimpleMemoryAccessMap(cg, false);
final IDemandPointerAnalysis dmp = makeDemandPointerAnalysis(options, cha, scope, cg, fam);

View File

@ -50,6 +50,7 @@ import com.ibm.wala.demandpa.alg.statemachine.StateMachineFactory;
import com.ibm.wala.demandpa.flowgraph.IFlowLabel;
import com.ibm.wala.demandpa.genericutil.Predicate;
import com.ibm.wala.demandpa.util.MemoryAccessMap;
import com.ibm.wala.demandpa.util.SimpleMemoryAccessMap;
import com.ibm.wala.eclipse.util.CancelException;
import com.ibm.wala.ipa.callgraph.AnalysisCache;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
@ -157,7 +158,7 @@ public class DemandCastChecker {
System.err.println("done");
// System.err.println(cg.toString());
MemoryAccessMap fam = new MemoryAccessMap(cg, false);
MemoryAccessMap fam = new SimpleMemoryAccessMap(cg, false);
DemandRefinementPointsTo fullDemandPointsTo = new DemandRefinementPointsTo(cg, new ThisFilteringHeapModel(heapModel,cha), fam, cha, options,
makeStateMachineFactory());
fullDemandPointsTo.setRefinementPolicyFactory(chooseRefinePolicyFactory(cha));

View File

@ -47,6 +47,7 @@ import com.ibm.wala.demandpa.alg.refinepolicy.SinglePassRefinementPolicy;
import com.ibm.wala.demandpa.alg.statemachine.DummyStateMachine;
import com.ibm.wala.demandpa.flowgraph.IFlowLabel;
import com.ibm.wala.demandpa.util.MemoryAccessMap;
import com.ibm.wala.demandpa.util.SimpleMemoryAccessMap;
import com.ibm.wala.eclipse.util.CancelException;
import com.ibm.wala.ipa.callgraph.AnalysisCache;
import com.ibm.wala.ipa.callgraph.AnalysisOptions;
@ -109,7 +110,7 @@ public class TestAgainstSimpleDriver {
CallGraph cg = CallGraphTestUtil.buildRTA(options, new AnalysisCache(), cha, scope);
// System.err.println(cg.toString());
MemoryAccessMap fam = new MemoryAccessMap(cg, false);
MemoryAccessMap fam = new SimpleMemoryAccessMap(cg, false);
// System.err.println(fam.toString());
IDemandPointerAnalysis dmp = makeDemandPointerAnalysis(options, cha, scope, cg, fam);