Class JvmValueBamCpaRun
- java.lang.Object
-
- proguard.analysis.cpa.defaults.CpaRun<BamCpa<CfaNodeT,CfaEdgeT,SignatureT>,AbstractStateT>
-
- proguard.analysis.cpa.defaults.BamCpaRun<CpaT,OuterAbstractStateT,JvmCfaNode,JvmCfaEdge,MethodSignature>
-
- proguard.analysis.cpa.jvm.util.JvmBamCpaRun<SimpleCpa,JvmAbstractState<ValueAbstractState>,JvmValueAbstractState>
-
- proguard.analysis.cpa.jvm.domain.value.JvmValueBamCpaRun
-
public class JvmValueBamCpaRun extends JvmBamCpaRun<SimpleCpa,JvmAbstractState<ValueAbstractState>,JvmValueAbstractState>
This run wraps the execution of BAM JVM Value Analysis CPA (seeJvmValueAbstractState
).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JvmValueBamCpaRun.Builder
static interface
JvmValueBamCpaRun.TransferRelationFactory
-
Field Summary
-
Fields inherited from class proguard.analysis.cpa.jvm.util.JvmBamCpaRun
cfa, heapModel
-
Fields inherited from class proguard.analysis.cpa.defaults.BamCpaRun
reduceHeap
-
Fields inherited from class proguard.analysis.cpa.defaults.CpaRun
abortOperator, cpa
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExpandOperator<JvmCfaNode,JvmCfaEdge,MethodSignature>
createExpandOperator()
Returns the expand operator.SimpleCpa
createIntraproceduralCPA()
Returns the intraprocedural CPA.protected ReachedSet
createReachedSet()
Returns an emptyReachedSet
.ReduceOperator<JvmCfaNode,JvmCfaEdge,MethodSignature>
createReduceOperator()
Returns the reduce operator.protected Waitlist
createWaitlist()
Returns an emptyWaitlist
.java.util.Collection<JvmValueAbstractState>
getInitialStates()
Returns a collection of initialAbstractState
s.MethodSignature
getMainSignature()
Returns the signature of the main procedure.-
Methods inherited from class proguard.analysis.cpa.jvm.util.JvmBamCpaRun
getCfa
-
Methods inherited from class proguard.analysis.cpa.defaults.BamCpaRun
createCache, createRebuildOperator, getAnalyzedMethods, getCpa, getMaxCallStackDepth
-
Methods inherited from class proguard.analysis.cpa.defaults.CpaRun
execute, getAbortOperator
-
-
-
-
Method Detail
-
createIntraproceduralCPA
public SimpleCpa createIntraproceduralCPA()
Description copied from class:BamCpaRun
Returns the intraprocedural CPA.- Specified by:
createIntraproceduralCPA
in classBamCpaRun<SimpleCpa,JvmValueAbstractState,JvmCfaNode,JvmCfaEdge,MethodSignature>
-
createReduceOperator
public ReduceOperator<JvmCfaNode,JvmCfaEdge,MethodSignature> createReduceOperator()
Description copied from class:BamCpaRun
Returns the reduce operator.- Overrides:
createReduceOperator
in classJvmBamCpaRun<SimpleCpa,JvmAbstractState<ValueAbstractState>,JvmValueAbstractState>
-
createReachedSet
protected ReachedSet createReachedSet()
Description copied from class:CpaRun
Returns an emptyReachedSet
.- Overrides:
createReachedSet
in classJvmBamCpaRun<SimpleCpa,JvmAbstractState<ValueAbstractState>,JvmValueAbstractState>
-
createWaitlist
protected Waitlist createWaitlist()
Description copied from class:CpaRun
Returns an emptyWaitlist
.- Overrides:
createWaitlist
in classCpaRun<BamCpa<JvmCfaNode,JvmCfaEdge,MethodSignature>,JvmValueAbstractState>
-
createExpandOperator
public ExpandOperator<JvmCfaNode,JvmCfaEdge,MethodSignature> createExpandOperator()
Description copied from class:BamCpaRun
Returns the expand operator.- Specified by:
createExpandOperator
in classBamCpaRun<SimpleCpa,JvmValueAbstractState,JvmCfaNode,JvmCfaEdge,MethodSignature>
-
getMainSignature
public MethodSignature getMainSignature()
Description copied from class:BamCpaRun
Returns the signature of the main procedure.- Specified by:
getMainSignature
in classBamCpaRun<SimpleCpa,JvmValueAbstractState,JvmCfaNode,JvmCfaEdge,MethodSignature>
-
getInitialStates
public java.util.Collection<JvmValueAbstractState> getInitialStates()
Description copied from class:CpaRun
Returns a collection of initialAbstractState
s.- Specified by:
getInitialStates
in classCpaRun<BamCpa<JvmCfaNode,JvmCfaEdge,MethodSignature>,JvmValueAbstractState>
-
-