public class ModRef<T extends InstanceKey>
extends java.lang.Object
For each call graph node, what heap locations (as determined by a heap model) may it read or write, including it's callees transitively
| Modifier and Type | Class and Description |
|---|---|
static class |
ModRef.ModVisitor<T extends InstanceKey,H extends ExtendedHeapModel> |
static class |
ModRef.RefVisitor<T extends InstanceKey,H extends ExtendedHeapModel> |
| Constructor and Description |
|---|
ModRef() |
| Modifier and Type | Method and Description |
|---|---|
java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
computeMod(CallGraph cg,
PointerAnalysis<T> pa)
For each call graph node, what heap locations (as determined by a heap model) may it write,
including its callees transitively
|
java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
computeMod(CallGraph cg,
PointerAnalysis<T> pa,
HeapExclusions heapExclude)
For each call graph node, what heap locations (as determined by a heap model) may it write,
including its callees transitively
|
java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
computeRef(CallGraph cg,
PointerAnalysis<T> pa)
For each call graph node, what heap locations (as determined by a heap model) may it read,
including its callees transitively
|
java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> |
computeRef(CallGraph cg,
PointerAnalysis<T> pa,
HeapExclusions heapExclude)
For each call graph node, what heap locations (as determined by a heap model) may it read,
including its callees transitively
|
java.util.Set<PointerKey> |
getMod(CGNode n,
ExtendedHeapModel h,
PointerAnalysis<T> pa,
SSAInstruction s,
HeapExclusions hexcl)
Compute the set of
PointerKeys that represent pointers that instruction s may write to. |
java.util.Set<PointerKey> |
getMod(CGNode n,
ExtendedHeapModel h,
PointerAnalysis<T> pa,
SSAInstruction s,
HeapExclusions hexcl,
boolean ignoreAllocHeapDefs)
Compute the set of
PointerKeys that represent pointers that instruction s may write to. |
java.util.Set<PointerKey> |
getRef(CGNode n,
ExtendedHeapModel h,
PointerAnalysis<T> pa,
SSAInstruction s,
HeapExclusions hexcl)
Compute the set of
PointerKeys that represent pointers that instruction s may read. |
static <U extends InstanceKey> |
make() |
ExtendedHeapModel |
makeHeapModel(PointerAnalysis<T> pa) |
protected ModRef.ModVisitor<T,?> |
makeModVisitor(CGNode n,
java.util.Collection<PointerKey> result,
PointerAnalysis<T> pa,
ExtendedHeapModel h) |
protected ModRef.ModVisitor<T,?> |
makeModVisitor(CGNode n,
java.util.Collection<PointerKey> result,
PointerAnalysis<T> pa,
ExtendedHeapModel h,
boolean ignoreAllocHeapDefs) |
protected ModRef.RefVisitor<T,? extends ExtendedHeapModel> |
makeRefVisitor(CGNode n,
java.util.Collection<PointerKey> result,
PointerAnalysis<T> pa,
ExtendedHeapModel h) |
public static <U extends InstanceKey> ModRef<U> make()
public java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> computeMod(CallGraph cg, PointerAnalysis<T> pa, HeapExclusions heapExclude)
java.lang.IllegalArgumentException - if cg is nullpublic java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> computeRef(CallGraph cg, PointerAnalysis<T> pa, HeapExclusions heapExclude)
java.lang.IllegalArgumentException - if cg is nullpublic java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> computeMod(CallGraph cg, PointerAnalysis<T> pa)
public java.util.Map<CGNode,com.ibm.wala.util.intset.OrdinalSet<PointerKey>> computeRef(CallGraph cg, PointerAnalysis<T> pa)
public ExtendedHeapModel makeHeapModel(PointerAnalysis<T> pa)
protected ModRef.ModVisitor<T,?> makeModVisitor(CGNode n, java.util.Collection<PointerKey> result, PointerAnalysis<T> pa, ExtendedHeapModel h)
protected ModRef.ModVisitor<T,?> makeModVisitor(CGNode n, java.util.Collection<PointerKey> result, PointerAnalysis<T> pa, ExtendedHeapModel h, boolean ignoreAllocHeapDefs)
public java.util.Set<PointerKey> getMod(CGNode n, ExtendedHeapModel h, PointerAnalysis<T> pa, SSAInstruction s, HeapExclusions hexcl)
PointerKeys that represent pointers that instruction s may write to.public java.util.Set<PointerKey> getMod(CGNode n, ExtendedHeapModel h, PointerAnalysis<T> pa, SSAInstruction s, HeapExclusions hexcl, boolean ignoreAllocHeapDefs)
PointerKeys that represent pointers that instruction s may write to.protected ModRef.RefVisitor<T,? extends ExtendedHeapModel> makeRefVisitor(CGNode n, java.util.Collection<PointerKey> result, PointerAnalysis<T> pa, ExtendedHeapModel h)
public java.util.Set<PointerKey> getRef(CGNode n, ExtendedHeapModel h, PointerAnalysis<T> pa, SSAInstruction s, HeapExclusions hexcl)
PointerKeys that represent pointers that instruction s may read.