class Phase1 extends WorklistFixpointPropagationSolver[CfgNode] with ForwardDependencies
- Alphabetic
- By Inheritance
- Phase1
- ForwardDependencies
- WorklistFixpointPropagationSolver
- WorklistFixpointPropagationFunctions
- WorklistFixpointSolverWithReachability
- MapLiftLatticeSolver
- WorklistFixpointSolver
- ListSetWorklist
- Worklist
- MapLatticeSolver
- Dependencies
- LatticeSolver
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Phase1(cfg: InterproceduralProgramCfg)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
add(ns: Set[CfgNode]): Unit
Adds a set of items to the worklist.
Adds a set of items to the worklist.
- Definition Classes
- ListSetWorklist → Worklist
-
def
add(n: CfgNode): Unit
Adds an item to the worklist.
Adds an item to the worklist.
- Definition Classes
- ListSetWorklist → Worklist
-
def
analyze(): Element
The analyze function.
The analyze function.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- val cfg: InterproceduralProgramCfg
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @IntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
first: Set[CfgNode]
Initialize worklist with the program entry point and the identity function.
Initialize worklist with the program entry point and the identity function.
- Definition Classes
- Phase1 → WorklistFixpointPropagationFunctions → WorklistFixpointSolverWithReachability
-
def
funsub(n: CfgNode, x: Element): Element
The constraint function for individual elements in the map domain.
The constraint function for individual elements in the map domain. First computes the join of the incoming elements and then applies the transfer function.
- n
the current location in the map domain
- x
the current lattice element for all locations
- returns
the output sublattice element
- Definition Classes
- MapLatticeSolver
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
indep(n: CfgNode): Set[CfgNode]
Incoming dependencies.
Incoming dependencies. Used when computing the join from predecessors.
- n
an element from the worklist
- returns
the elements that the given element depends on
- Definition Classes
- ForwardDependencies → Dependencies
-
val
init: Element
The initial lattice element at the start locations.
The initial lattice element at the start locations. Default: lift(bottom).
- Definition Classes
- Phase1 → WorklistFixpointPropagationSolver → WorklistFixpointPropagationFunctions
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
join(n: CfgNode, o: Element): Element
Computes the least upper bound of the incoming elements.
Computes the least upper bound of the incoming elements.
- Definition Classes
- MapLatticeSolver
-
val
lattice: MapLattice[CfgNode, LiftLattice[statelattice.type]]
Must be a map lattice.
Must be a map lattice.
- Definition Classes
- Phase1 → WorklistFixpointPropagationSolver → WorklistFixpointPropagationFunctions → MapLiftLatticeSolver → MapLatticeSolver → LatticeSolver
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
def
outdep(n: CfgNode): Set[CfgNode]
Outgoing dependencies.
Outgoing dependencies. Used when propagating dataflow to successors.
- n
an element from the worklist
- returns
the elements that depend on the given element
- Definition Classes
- ForwardDependencies → Dependencies
-
def
process(n: CfgNode): Unit
This method overrides the one from WorklistFixpointSolver.
This method overrides the one from WorklistFixpointSolver. Called by the worklist solver when a node is visited.
- Definition Classes
- WorklistFixpointPropagationSolver → WorklistFixpointSolver → Worklist
-
def
propagate(y: Element, m: CfgNode): Unit
Propagates lattice element y to node m.
Propagates lattice element y to node m.
- Definition Classes
- WorklistFixpointPropagationFunctions
-
def
run(first: Set[CfgNode]): Unit
Iterates until there is no more work to do.
Iterates until there is no more work to do.
- first
the initial contents of the worklist
- Definition Classes
- ListSetWorklist → Worklist
- val statelattice: EdgeEnvLattice[D, SummarySolver.valuelattice.type, SummarySolver.edgelattice.type]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
transfer(n: CfgNode, s: Element): Element
The transfer function.
The transfer function.
- Definition Classes
- MapLiftLatticeSolver → MapLatticeSolver
-
def
transferUnlifted(n: CfgNode, s: Element): Element
Transfer functions.
Transfer functions.
- Definition Classes
- Phase1 → MapLiftLatticeSolver
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
val
x: Element
The current lattice element.
The current lattice element.
- Definition Classes
- WorklistFixpointSolver
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated