Package | Description |
---|---|
soot.jimple.spark.geom.dataRep | |
soot.jimple.spark.geom.geomE | |
soot.jimple.spark.geom.geomPA | |
soot.jimple.spark.geom.heapinsE | |
soot.jimple.spark.geom.ptinsE |
Modifier and Type | Field and Description |
---|---|
IVarAbstraction |
PlainConstraint.otherSide
Used in complex constraint.
|
IVarAbstraction |
PlainConstraint.otherSide
Used in complex constraint.
|
Modifier and Type | Field and Description |
---|---|
Pair<IVarAbstraction,IVarAbstraction> |
PlainConstraint.expr
The two pointers involved in this constraint
|
Pair<IVarAbstraction,IVarAbstraction> |
PlainConstraint.expr
The two pointers involved in this constraint
|
Pair<IVarAbstraction,IVarAbstraction> |
PlainConstraint.expr
The two pointers involved in this constraint
|
Pair<IVarAbstraction,IVarAbstraction> |
PlainConstraint.expr
The two pointers involved in this constraint
|
Modifier and Type | Method and Description |
---|---|
IVarAbstraction |
PlainConstraint.getLHS() |
IVarAbstraction |
PlainConstraint.getLHS() |
IVarAbstraction |
PlainConstraint.getRHS() |
IVarAbstraction |
PlainConstraint.getRHS() |
Modifier and Type | Method and Description |
---|---|
void |
PlainConstraint.setLHS(IVarAbstraction newLHS) |
void |
PlainConstraint.setLHS(IVarAbstraction newLHS) |
void |
PlainConstraint.setRHS(IVarAbstraction newRHS) |
void |
PlainConstraint.setRHS(IVarAbstraction newRHS) |
Modifier and Type | Class and Description |
---|---|
class |
FullSensitiveNode
This class defines an abstract pointer in the geometric points-to solver.
|
Modifier and Type | Method and Description |
---|---|
IVarAbstraction |
FullSensitiveNodeGenerator.generateNode(Node vNode) |
IVarAbstraction |
FullSensitiveNodeGenerator.generateNode(Node vNode) |
Modifier and Type | Method and Description |
---|---|
boolean |
FullSensitiveNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
boolean |
FullSensitiveNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
boolean |
FullSensitiveNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
boolean |
FullSensitiveNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
int |
FullSensitiveNode.count_flow_intervals(IVarAbstraction qv) |
int |
FullSensitiveNode.count_flow_intervals(IVarAbstraction qv) |
boolean |
FullSensitiveNode.heap_sensitive_intersection(IVarAbstraction qv) |
boolean |
FullSensitiveNode.heap_sensitive_intersection(IVarAbstraction qv) |
Modifier and Type | Class and Description |
---|---|
class |
DummyNode
It is used to represent the non-pointer variables (e.g.
|
Modifier and Type | Field and Description |
---|---|
protected IVarAbstraction |
IVarAbstraction.parent |
protected IVarAbstraction |
IVarAbstraction.parent |
Modifier and Type | Field and Description |
---|---|
ZArrayNumberer<IVarAbstraction> |
GeomPointsTo.allocations |
ZArrayNumberer<IVarAbstraction> |
GeomPointsTo.allocations |
Map<Node,IVarAbstraction> |
GeomPointsTo.consG |
Map<Node,IVarAbstraction> |
GeomPointsTo.consG |
ZArrayNumberer<IVarAbstraction> |
GeomPointsTo.pointers |
ZArrayNumberer<IVarAbstraction> |
GeomPointsTo.pointers |
Modifier and Type | Method and Description |
---|---|
IVarAbstraction |
GeomPointsTo.findAndInsertInstanceField(AllocNode obj,
SparkField field)
Obtain or create an internal representation of an object field.
|
IVarAbstraction |
GeomPointsTo.findAndInsertInstanceField(AllocNode obj,
SparkField field)
Obtain or create an internal representation of an object field.
|
IVarAbstraction |
GeomPointsTo.findInstanceField(AllocNode obj,
SparkField field)
Obtain the internal representation of an object field.
|
IVarAbstraction |
GeomPointsTo.findInstanceField(AllocNode obj,
SparkField field)
Obtain the internal representation of an object field.
|
IVarAbstraction |
GeomPointsTo.findInternalNode(Node v)
Find our representation for the SPARK node @param v.
|
IVarAbstraction |
GeomPointsTo.findInternalNode(Node v)
Find our representation for the SPARK node @param v.
|
abstract IVarAbstraction |
IEncodingBroker.generateNode(Node v)
Generate a node of proper kind.
|
abstract IVarAbstraction |
IEncodingBroker.generateNode(Node v)
Generate a node of proper kind.
|
IVarAbstraction |
IVarAbstraction.getRepresentative() |
IVarAbstraction |
IVarAbstraction.getRepresentative() |
IVarAbstraction |
GeomPointsTo.makeInternalNode(Node v)
Transform the SPARK node @param v representation to our representation.
|
IVarAbstraction |
GeomPointsTo.makeInternalNode(Node v)
Transform the SPARK node @param v representation to our representation.
|
IVarAbstraction |
IVarAbstraction.merge(IVarAbstraction other)
Make the variable other be the parent of this variable.
|
IVarAbstraction |
IVarAbstraction.merge(IVarAbstraction other)
Make the variable other be the parent of this variable.
|
IVarAbstraction |
FIFO_Worklist.next() |
IVarAbstraction |
IWorklist.next() |
IVarAbstraction |
PQ_Worklist.next() |
IVarAbstraction |
FIFO_Worklist.next() |
IVarAbstraction |
PQ_Worklist.next() |
IVarAbstraction |
IWorklist.next() |
Modifier and Type | Method and Description |
---|---|
boolean |
DummyNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
abstract boolean |
IVarAbstraction.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
boolean |
DummyNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
abstract boolean |
IVarAbstraction.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
boolean |
DummyNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
abstract boolean |
IVarAbstraction.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
boolean |
DummyNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
abstract boolean |
IVarAbstraction.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
int |
DummyNode.count_flow_intervals(IVarAbstraction qv) |
abstract int |
IVarAbstraction.count_flow_intervals(IVarAbstraction qv) |
int |
DummyNode.count_flow_intervals(IVarAbstraction qv) |
abstract int |
IVarAbstraction.count_flow_intervals(IVarAbstraction qv) |
int |
GeomPointsTo.getMethodIDFromPtr(IVarAbstraction pn)
Get the index of the enclosing function of the specified node.
|
int |
GeomPointsTo.getMethodIDFromPtr(IVarAbstraction pn)
Get the index of the enclosing function of the specified node.
|
boolean |
DummyNode.heap_sensitive_intersection(IVarAbstraction qv) |
abstract boolean |
IVarAbstraction.heap_sensitive_intersection(IVarAbstraction qv)
Perform context sensitive alias checking with qv.
|
boolean |
DummyNode.heap_sensitive_intersection(IVarAbstraction qv) |
abstract boolean |
IVarAbstraction.heap_sensitive_intersection(IVarAbstraction qv)
Perform context sensitive alias checking with qv.
|
boolean |
GeomQueries.isAlias(IVarAbstraction pn1,
IVarAbstraction pn2)
Test if two pointers given in geomPTA form are an alias under any contexts.
|
boolean |
GeomQueries.isAlias(IVarAbstraction pn1,
IVarAbstraction pn2)
Test if two pointers given in geomPTA form are an alias under any contexts.
|
boolean |
IVarAbstraction.lessThan(IVarAbstraction other)
Used by ordering the nodes in priority worklist.
|
boolean |
IVarAbstraction.lessThan(IVarAbstraction other)
Used by ordering the nodes in priority worklist.
|
IVarAbstraction |
IVarAbstraction.merge(IVarAbstraction other)
Make the variable other be the parent of this variable.
|
IVarAbstraction |
IVarAbstraction.merge(IVarAbstraction other)
Make the variable other be the parent of this variable.
|
void |
FIFO_Worklist.push(IVarAbstraction pv) |
void |
IWorklist.push(IVarAbstraction p) |
void |
PQ_Worklist.push(IVarAbstraction e) |
void |
FIFO_Worklist.push(IVarAbstraction pv) |
void |
PQ_Worklist.push(IVarAbstraction e) |
void |
IWorklist.push(IVarAbstraction p) |
Modifier and Type | Method and Description |
---|---|
void |
GeomPointsTo.keepOnly(Set<IVarAbstraction> usefulPointers)
Keep only the pointers the users are interested in.
|
void |
GeomPointsTo.keepOnly(Set<IVarAbstraction> usefulPointers)
Keep only the pointers the users are interested in.
|
Modifier and Type | Class and Description |
---|---|
class |
HeapInsNode
This class defines a pointer variable for use in the HeapIns encoding based points-to solver.
|
Modifier and Type | Method and Description |
---|---|
IVarAbstraction |
HeapInsNodeGenerator.generateNode(Node vNode) |
IVarAbstraction |
HeapInsNodeGenerator.generateNode(Node vNode) |
Modifier and Type | Method and Description |
---|---|
boolean |
HeapInsNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
boolean |
HeapInsNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L) |
boolean |
HeapInsNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
boolean |
HeapInsNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2) |
int |
HeapInsNode.count_flow_intervals(IVarAbstraction qv) |
int |
HeapInsNode.count_flow_intervals(IVarAbstraction qv) |
boolean |
HeapInsNode.heap_sensitive_intersection(IVarAbstraction qv)
Query if this pointer and qv could point to the same object under any contexts
|
boolean |
HeapInsNode.heap_sensitive_intersection(IVarAbstraction qv)
Query if this pointer and qv could point to the same object under any contexts
|
Modifier and Type | Class and Description |
---|---|
class |
PtInsNode
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
IVarAbstraction |
PtInsNodeGenerator.generateNode(Node vNode) |
IVarAbstraction |
PtInsNodeGenerator.generateNode(Node vNode) |
Modifier and Type | Method and Description |
---|---|
boolean |
PtInsNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L)
Deprecated.
|
boolean |
PtInsNode.add_simple_constraint_3(IVarAbstraction qv,
long I1,
long I2,
long L)
Deprecated.
|
boolean |
PtInsNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2)
Deprecated.
|
boolean |
PtInsNode.add_simple_constraint_4(IVarAbstraction qv,
long I1,
long I2,
long L1,
long L2)
Deprecated.
|
int |
PtInsNode.count_flow_intervals(IVarAbstraction qv)
Deprecated.
|
int |
PtInsNode.count_flow_intervals(IVarAbstraction qv)
Deprecated.
|
boolean |
PtInsNode.heap_sensitive_intersection(IVarAbstraction qv)
Deprecated.
Query if this pointer and qv could point to the same object under any contexts
|
boolean |
PtInsNode.heap_sensitive_intersection(IVarAbstraction qv)
Deprecated.
Query if this pointer and qv could point to the same object under any contexts
|