| Package | Description |
|---|---|
| com.ibm.wala.demandpa.alg | |
| com.ibm.wala.demandpa.alg.refinepolicy | |
| com.ibm.wala.demandpa.flowgraph |
| Modifier and Type | Method and Description |
|---|---|
StateMachineFactory<IFlowLabel> |
DemandRefinementPointsTo.getStateMachineFactory() |
StateMachine<IFlowLabel> |
IntraProcFilter.Factory.make() |
StateMachine<IFlowLabel> |
ContextSensitiveStateMachine.Factory.make() |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
DemandRefinementPointsTo.PointsToComputer.addAllToP2Set(Map<PointerKeyAndState,com.ibm.wala.util.intset.MutableIntSet> p2setMap,
PointerKeyAndState pkAndState,
com.ibm.wala.util.intset.IntSet vals,
IFlowLabel label) |
protected void |
DemandRefinementPointsTo.PointsToComputer.handleBackCopy(PointerKeyAndState curPkAndState,
PointerKey predPk,
IFlowLabel label) |
protected boolean |
DemandRefinementPointsTo.PointsToComputer.handleTrackedPred(com.ibm.wala.util.intset.MutableIntSet curTrackedSet,
PointerKeyAndState predPkAndState,
IFlowLabel label)
Handle a predecessor when processing some tracked locations
|
protected boolean |
DemandRefinementPointsTo.FlowsToComputer.handleTrackedPred(com.ibm.wala.util.intset.MutableIntSet curTrackedSet,
PointerKeyAndState predPkAndState,
IFlowLabel label)
also update the flows-to set of interest if necessary
|
protected Collection<PointerKeyAndState> |
DemandRefinementPointsTo.PointsToComputer.matchingPToQueried(PointerKeyAndState curPkAndState,
PointerKey predPk,
IFlowLabel label) |
StateMachine.State |
IntraProcFilter.transition(StateMachine.State prevState,
IFlowLabel label) |
StateMachine.State |
ContextSensitiveStateMachine.transition(StateMachine.State prevState,
IFlowLabel label) |
| Modifier and Type | Method and Description |
|---|---|
static DemandRefinementPointsTo |
DemandRefinementPointsTo.makeWithDefaultFlowGraph(CallGraph cg,
HeapModel model,
MemoryAccessMap mam,
IClassHierarchy cha,
AnalysisOptions options,
StateMachineFactory<IFlowLabel> stateMachineFactory)
create a demand points-to analysis runner
|
void |
DemandRefinementPointsTo.setStateMachineFactory(StateMachineFactory<IFlowLabel> stateMachineFactory) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
TunedFieldRefinementPolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state) |
boolean |
OnlyArraysPolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state) |
boolean |
NeverRefineFieldsPolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state) |
boolean |
ManualFieldPolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state) |
boolean |
FieldRefinePolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state) |
boolean |
DelegatingFieldRefinePolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state)
returns
true if
A.shouldRefine(field) || B.shouldRefine(field). |
boolean |
AlwaysRefineFieldsPolicy.shouldRefine(IField field,
PointerKey basePtr,
PointerKey val,
IFlowLabel label,
StateMachine.State state) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
IFlowLabelWithFilter |
| Modifier and Type | Class and Description |
|---|---|
class |
AssignBarLabel |
class |
AssignGlobalBarLabel |
class |
AssignGlobalLabel |
class |
AssignLabel |
class |
CallLabel |
class |
GetFieldBarLabel |
class |
GetFieldLabel |
class |
MatchBarLabel |
class |
MatchLabel |
class |
NewBarLabel |
class |
NewLabel |
class |
ParamBarLabel |
class |
ParamLabel |
class |
PutFieldBarLabel |
class |
PutFieldLabel |
class |
ReturnBarLabel |
class |
ReturnLabel |
| Modifier and Type | Method and Description |
|---|---|
IFlowLabel |
IFlowLabel.bar() |
Copyright © 2015. All rights reserved.