Package com.ibm.wala.ipa.callgraph.propagation
package com.ibm.wala.ipa.callgraph.propagation
-
ClassDescriptionCommon implementation for
InstanceFieldPointerKey
implementations.APointerKey
representing a local variable must carry at least aCGNode
.Abstract superclass forPointerAnalysis
implementations.This class exists to forcePointerKey
implementations to implement equals() and hashCode()s.Abstract base class for solver for pointer analysis.A factory which tries by default to createInstanceKey
s which areAllocationSiteInNode
s.APointerKey
which represents the contents of an array instance.A specialized equation class introduced for efficiency.This class provides Instance Key call backs where each instance is in the same equivalence class as all other instances of the same concrete type.This context selector selects a context based on the concrete type of the receiver to a call of java.lang.Object.cloneAn instance key which represents a unique set for each concrete type.ConstantKey<T>An instance key which represents a unique, constant object.Utilities for container class analysisAPointerKey
which carries a type filter, used during pointer analysisAHeapModel
embodies how a pointer analysis abstracts heap locations.An pointer key which represents a unique set for a field associated with a set of instances.an instance field pointer key key that carries a type filterAn InstanceKey serves as the representative for an equivalence class of objects in the heap, that can be pointed to.An object that abstracts how to model instances in the heap.An operator in pointer analysis constraints.Basic interface for a pointer analysis solver.A pointer key which provides a unique set for each local in each call graph node.a local pointer key that carries a type filterAnInstanceKey
which represents a multinewarray allocation site in aCGNode
.A key which represents a set corresponding to a call graph node.PointerAnalysis<T extends InstanceKey>Abstract definition of pointer analysisGeneral representation of the results of pointer analysisA PointerKey instance serves as the representative for an equivalence class of pointers.An object that abstracts how to model pointers in the heap.An object that tracks the mapping between pointer keys and points-to set variablesRepresentation of a points-to set during an andersen-style analysis.This abstract base class provides the general algorithm for a call graph builder that relies on propagation through an iterative dataflow solverA pointer key that delegates to an untyped variant, but adds a type filterA dataflow graph implementation specialized for propagation-based pointer analysisSystem of constraints that define propagation for call graph constructionThis is a context which is customized for theInstanceKey
of the receiver.This context selector selects a context based on the concrete type of the receiver.A helper class which can modify aPropagationCallGraphBuilder
to deal with reflective factory methods.A key which represents the return value for a node.a helper class which can modify a PropagationCallGraphBuilder to deal with reflective factory methods.A selective Cartesian product context that enforces object sensitivity on some set of parameter positions.AnInstanceKey
which represents the set of all allocation sites of a given type in aCGNode
.This class provides instance keys where for a given type T in a CGNode N, there is one "abstract allocation site" instance for all T allocations in node N.An object that provides an interface to local method information needed for CFA.This abstract base class provides the general algorithm for a call graph builder that relies on propagation through an iterative dataflow solver, and constraints generated by statements in SSA form.A visitor that generates constraints based on statements in SSA form.sets bingo to true when it visits an interesting instructionstandard fixed-point iterative solver for pointer analysisAn pointer key which represents a unique set for each static field.AnInstanceKey
which represents the constant char[] contents of a string constant object.This context selector selects a context based on whether the receiver type dispatches to a given method.A SideEffect is a constraint which carries a points-to-set which is def'fed or used in created constraints.Represents an array with length zero.