Packages

c

tip.analysis

SimpleSignAnalysis

class SimpleSignAnalysis extends FlowSensitiveAnalysis

Simple intra-procedural sign analysis.

This is a specialized version of SignAnalysis.Intraprocedural.SimpleSolver where most of the involved traits, classes, methods, and fields have been inlined.

Linear Supertypes
FlowSensitiveAnalysis, Analysis[Any], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SimpleSignAnalysis
  2. FlowSensitiveAnalysis
  3. Analysis
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SimpleSignAnalysis(cfg: ProgramCfg)(implicit declData: DeclarationData)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def analyze(): Element

    The basic Kleene fixpoint solver.

    The basic Kleene fixpoint solver.

    Definition Classes
    SimpleSignAnalysisAnalysis
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  7. val declaredVars: Set[ADeclaration]

    Set of declared variables, used by statelattice.

  8. val domain: Set[CfgNode]

    The domain of the program lattice.

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. def eval(exp: AExpr, env: Element)(implicit declData: DeclarationData): lattices.SignLattice.Element

    Abstract evaluation of expressions.

  12. def fun(x: Element): Element

    The function for which the least fixpoint is to be computed.

    The function for which the least fixpoint is to be computed. Applies the sublattice constraint function pointwise to each entry.

    x

    the input lattice element

    returns

    the output lattice element

  13. 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

  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  16. 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

  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def join(n: CfgNode, o: Element): Element

    Computes the least upper bound of the incoming elements.

  19. val lattice: MapLattice[CfgNode, statelattice.type]

    The program lattice.

  20. def localTransfer(n: CfgNode, s: Element): Element

    Transfer functions for the different kinds of statements.

  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  24. val stateAfterNode: Boolean
    Definition Classes
    FlowSensitiveAnalysis
  25. val statelattice: MapLattice[ADeclaration, SignLattice.type]

    The lattice of abstract states.

  26. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    AnyRef → Any
  28. val valuelattice: SignLattice.type

    The lattice of abstract values.

  29. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  31. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from FlowSensitiveAnalysis

Inherited from Analysis[Any]

Inherited from AnyRef

Inherited from Any

Ungrouped