org.kiama.example.dataflow

Optimiser

object Optimiser extends Dataflow

Optimise a dataflow program. Currently: a) eliminate assignments to variables that are not live out of the assignment and b) remove empty statements from sequences.

Source
Optimiser.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Optimiser
  2. Dataflow
  3. ControlFlowImpl
  4. ControlFlow
  5. VariablesImpl
  6. Variables
  7. LivenessImpl
  8. Liveness
  9. AnyRef
  10. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. val defines: (Stm) ⇒ Set[Var]

    Variable definitions.

    Variable definitions.

    Definition Classes
    VariablesImplVariables
  9. lazy val elimDeadAssign: Strategy

  10. lazy val elimEmpties: Strategy

  11. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. val following: (Stm) ⇒ Set[Stm]

    Control flow default successor relation.

    Control flow default successor relation.

    Definition Classes
    ControlFlowImplControlFlow
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  17. val in: (Stm) ⇒ Set[Var]

    Variables "live" into a statement.

    Variables "live" into a statement.

    Definition Classes
    LivenessImplLiveness
  18. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  22. val out: (Stm) ⇒ Set[Var]

    Variables "live" out of a statement.

    Variables "live" out of a statement.

    Definition Classes
    LivenessImplLiveness
  23. lazy val rules: Strategy

  24. def run(t: Stm): Stm

  25. val succ: (Stm) ⇒ Set[Stm]

    Control flow successor relation.

    Control flow successor relation.

    Definition Classes
    ControlFlowImplControlFlow
  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  27. def toString(): String

    Definition Classes
    AnyRef → Any
  28. val uses: (Stm) ⇒ Set[Var]

    Variable uses.

    Variable uses.

    Definition Classes
    VariablesImplVariables
  29. final def wait(): Unit

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Dataflow

Inherited from ControlFlowImpl

Inherited from ControlFlow

Inherited from VariablesImpl

Inherited from Variables

Inherited from LivenessImpl

Inherited from Liveness

Inherited from AnyRef

Inherited from Any

Ungrouped