| Package | Description |
|---|---|
| com.ibm.wala.analysis.pointers |
This package defines utilities to help navigate pointer analysis results.
|
| com.ibm.wala.client |
This package provides interfaces for some base utilities for use by WALA clients.
|
| com.ibm.wala.demandpa.alg | |
| com.ibm.wala.demandpa.util | |
| com.ibm.wala.ipa.callgraph |
This package provides basic interfaces and functions for call graph
construction.
|
| com.ibm.wala.ipa.callgraph.propagation |
This package provides the base layer for propagation-based call graph
construction and pointer analysis.
|
| com.ibm.wala.ipa.callgraph.propagation.rta |
This package provides CFA-style call graph
construction and pointer analysis.
|
| com.ibm.wala.ipa.modref | |
| com.ibm.wala.ipa.slicer | |
| com.ibm.wala.ipa.slicer.thin | |
| com.ibm.wala.viz.viewer |
| Modifier and Type | Method and Description |
|---|---|
PointerAnalysis<T> |
HeapGraphImpl.getPointerAnalysis() |
PointerAnalysis<T> |
HeapGraph.getPointerAnalysis() |
| Constructor and Description |
|---|
BasicHeapGraph(PointerAnalysis<InstanceKey> P,
CallGraph callGraph) |
HeapGraphImpl(PointerAnalysis<T> pa) |
| Modifier and Type | Field and Description |
|---|---|
protected PointerAnalysis<InstanceKey> |
AbstractAnalysisEngine.pointerAnalysis
Results of pointer analysis
|
| Modifier and Type | Method and Description |
|---|---|
PointerAnalysis<InstanceKey> |
AbstractAnalysisEngine.getPointerAnalysis() |
| Modifier and Type | Method and Description |
|---|---|
DemandRefinementPointsTo.PointsToResult |
DemandRefinementPointsTo.pointsToPassesPred(PointerKey pk,
com.ibm.wala.util.Predicate<InstanceKey> ikeyPred,
PointerAnalysis<InstanceKey> pa)
check if the points-to set of a variable passes some predicate, without necessarily computing the whole points-to set
|
| Constructor and Description |
|---|
PABasedMemoryAccessMap(CallGraph cg,
PointerAnalysis<InstanceKey> pa) |
PABasedMemoryAccessMap(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
Map<Statement,Set<PointerKey>> mod,
Map<Statement,Set<PointerKey>> ref) |
PABasedMemoryAccessMap(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
SDG sdg) |
| Modifier and Type | Method and Description |
|---|---|
PointerAnalysis<InstanceKey> |
CallGraphBuilderCancelException.getPartialPointerAnalysis() |
PointerAnalysis<InstanceKey> |
CallGraphBuilder.getPointerAnalysis() |
| Modifier and Type | Method and Description |
|---|---|
static CallGraphBuilderCancelException |
CallGraphBuilderCancelException.createCallGraphBuilderCancelException(Exception cause,
CallGraph cg,
PointerAnalysis<InstanceKey> pointerAnalysis) |
static CallGraphBuilderCancelException |
CallGraphBuilderCancelException.createCallGraphBuilderCancelException(String msg,
CallGraph cg,
PointerAnalysis<InstanceKey> pointerAnalysis) |
| Modifier and Type | Class and Description |
|---|---|
class |
AbstractPointerAnalysis
Abstract superclass for
PointerAnalysis implementations. |
class |
PointerAnalysisImpl
General representation of the results of pointer analysis
|
| Modifier and Type | Method and Description |
|---|---|
PointerAnalysis<InstanceKey> |
PropagationSystem.extractPointerAnalysis(PropagationCallGraphBuilder builder) |
PointerAnalysis<InstanceKey> |
PropagationCallGraphBuilder.getPointerAnalysis() |
PointerAnalysis<InstanceKey> |
PropagationSystem.makePointerAnalysis(PropagationCallGraphBuilder builder) |
| Modifier and Type | Class and Description |
|---|---|
class |
TypeBasedPointerAnalysis
A trivial field-based pointer analysis solution, which only uses the information of which types (classes) are live.
|
| Modifier and Type | Method and Description |
|---|---|
PointerAnalysis<InstanceKey> |
AbstractRTABuilder.getPointerAnalysis() |
| Modifier and Type | Field and Description |
|---|---|
protected PointerAnalysis<InstanceKey> |
ModRef.RefVisitor.pa |
protected PointerAnalysis<InstanceKey> |
ModRef.ModVisitor.pa |
| Modifier and Type | Method and Description |
|---|---|
Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
ModRef.computeMod(CallGraph cg,
PointerAnalysis<InstanceKey> pa)
For each call graph node, what heap locations (as determined by a heap model) may it write, including its callees transitively
|
Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
ModRef.computeMod(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
HeapExclusions heapExclude)
For each call graph node, what heap locations (as determined by a heap model) may it write, including its callees transitively
|
Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
ModRef.computeRef(CallGraph cg,
PointerAnalysis<InstanceKey> pa)
For each call graph node, what heap locations (as determined by a heap model) may it read, including its callees transitively
|
Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
ModRef.computeRef(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
HeapExclusions heapExclude)
For each call graph node, what heap locations (as determined by a heap model) may it read, including its callees transitively
|
Set<PointerKey> |
ModRef.getMod(CGNode n,
ExtendedHeapModel h,
PointerAnalysis<InstanceKey> pa,
SSAInstruction s,
HeapExclusions hexcl)
Compute the set of
PointerKeys that represent pointers that instruction s may write to. |
Set<PointerKey> |
ModRef.getMod(CGNode n,
ExtendedHeapModel h,
PointerAnalysis<InstanceKey> pa,
SSAInstruction s,
HeapExclusions hexcl,
boolean ignoreAllocHeapDefs)
Compute the set of
PointerKeys that represent pointers that instruction s may write to. |
Set<PointerKey> |
ModRef.getRef(CGNode n,
ExtendedHeapModel h,
PointerAnalysis<InstanceKey> pa,
SSAInstruction s,
HeapExclusions hexcl)
Compute the set of
PointerKeys that represent pointers that instruction s may read. |
ExtendedHeapModel |
ModRef.makeHeapModel(PointerAnalysis<InstanceKey> pa) |
protected ModRef.ModVisitor |
ModRef.makeModVisitor(CGNode n,
Collection<PointerKey> result,
PointerAnalysis<InstanceKey> pa,
ExtendedHeapModel h) |
protected ModRef.ModVisitor |
ModRef.makeModVisitor(CGNode n,
Collection<PointerKey> result,
PointerAnalysis<InstanceKey> pa,
ExtendedHeapModel h,
boolean ignoreAllocHeapDefs) |
protected ModRef.RefVisitor |
ModRef.makeRefVisitor(CGNode n,
Collection<PointerKey> result,
PointerAnalysis<InstanceKey> pa,
ExtendedHeapModel h) |
| Constructor and Description |
|---|
ModRef.ModVisitor(CGNode n,
Collection<PointerKey> result,
H h,
PointerAnalysis<InstanceKey> pa,
boolean ignoreAllocHeapDefs) |
ModRef.RefVisitor(CGNode n,
Collection<PointerKey> result,
PointerAnalysis<InstanceKey> pa,
H h) |
| Modifier and Type | Method and Description |
|---|---|
PointerAnalysis<InstanceKey> |
SDG.getPointerAnalysis() |
| Modifier and Type | Method and Description |
|---|---|
static Map<Statement,Set<PointerKey>> |
CISlicer.scanForMod(SDG sdg,
PointerAnalysis<InstanceKey> pa)
Compute the set of pointer keys each statement mods
|
static Map<Statement,Set<PointerKey>> |
CISlicer.scanForMod(SDG sdg,
PointerAnalysis<InstanceKey> pa,
boolean ignoreAllocHeapDefs,
ModRef modRef)
Compute the set of pointer keys each statement mods.
|
static Map<Statement,Set<PointerKey>> |
CISlicer.scanForMod(SDG sdg,
PointerAnalysis<InstanceKey> pa,
ModRef modRef)
Compute the set of pointer keys each statement mods
|
static Map<Statement,Set<PointerKey>> |
CISlicer.scanForRef(SDG sdg,
PointerAnalysis<InstanceKey> pa)
Compute the set of pointer keys each statement refs
|
static Map<Statement,Set<PointerKey>> |
CISlicer.scanForRef(SDG sdg,
PointerAnalysis<InstanceKey> pa,
ModRef modRef)
Compute the set of PointerKeys each statement refs.Be careful to avoid eager PDG construction here! That means ..
|
| Constructor and Description |
|---|
CISlicer(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
ModRef modRef,
Slicer.DataDependenceOptions dOptions,
Slicer.ControlDependenceOptions cOptions) |
CISlicer(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
Slicer.DataDependenceOptions dOptions,
Slicer.ControlDependenceOptions cOptions) |
CISlicer(SDG sdg,
PointerAnalysis<InstanceKey> pa,
ModRef modRef) |
ThinSlicer(CallGraph cg,
PointerAnalysis<InstanceKey> pa) |
ThinSlicer(CallGraph cg,
PointerAnalysis<InstanceKey> pa,
ModRef modRef) |
| Modifier and Type | Field and Description |
|---|---|
protected PointerAnalysis<InstanceKey> |
PaPanel.pa |
| Modifier and Type | Method and Description |
|---|---|
protected PaPanel |
WalaViewer.createPaPanel(CallGraph cg,
PointerAnalysis<InstanceKey> pa) |
| Constructor and Description |
|---|
PaPanel(CallGraph cg,
PointerAnalysis<InstanceKey> pa) |
WalaViewer(CallGraph cg,
PointerAnalysis<InstanceKey> pa) |
Copyright © 2015. All rights reserved.