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:
parent
19972d0a8e
commit
e6713ae685
|
@ -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
|
||||
|
|
|
@ -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());
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue