Class/Object

firrtl.analyses

IRLookup

Related Docs: object IRLookup | package analyses

Permalink

class IRLookup extends AnyRef

Handy lookup for obtaining AST information about a given Target

Source
IRLookup.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. IRLookup
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. def allTargets(r: ReferenceTarget): Seq[ReferenceTarget]

    Permalink

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref, which is a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref, ~Top|Module>ref.foo, ~Top|Module>ref.foo.bar)

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref, which is a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref, ~Top|Module>ref.foo, ~Top|Module>ref.foo.bar)

    returns

    a target to each sub-component, including intermediate subcomponents

  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def asLocalRef(t: ReferenceTarget): ReferenceTarget

    Permalink

    returns

    the target converted to its local reference

    Example:
    1. Given ~Top|MyModule/inst:Other>foo.bar, returns ~Top|Other>foo

  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  8. def contains(mt: IsModule): Boolean

    Permalink

    mt

    firrtl.annotations.ModuleTarget or firrtl.annotations.InstanceTarget to be queried.

    returns

    whether a ModuleTarget or InstanceTarget is contained in this IRLookup

  9. def contains(t: ReferenceTarget): Boolean

    Permalink

    t

    firrtl.annotations.ReferenceTarget to be queried.

    returns

    whether a ReferenceTarget is contained in this IRLookup

  10. def declaration(t: ReferenceTarget): FirrtlNode

    Permalink

    t

    firrtl.annotations.ReferenceTarget to be queried.

    returns

    the statement containing the declaration of the target

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  13. def expr(t: ReferenceTarget, flow: Flow = UnknownFlow): Expression

    Permalink

    t

    firrtl.annotations.ReferenceTarget to be queried.

    flow

    flow of the target

    returns

    expression of t

  14. def flow(t: ReferenceTarget): Flow

    Permalink
  15. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  16. def getExpr(t: ReferenceTarget, flow: Flow): Option[Expression]

    Permalink

    get expression of the target.

    get expression of the target. It can return None for many reasons, including

    • declaration is missing
    • flow is wrong
    • component is wrong
    t

    firrtl.annotations.ReferenceTarget to be queried.

    flow

    flow of the target

    returns

    Some(e) if expression exists, None if it does not

  17. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  18. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  19. def kind(t: ReferenceTarget): Kind

    Permalink
  20. def kindFinder(moduleTarget: ModuleTarget, kind: Kind): Seq[ReferenceTarget]

    Permalink

    Find firrtl.annotations.ReferenceTarget with a specific firrtl.Kind in a firrtl.annotations.ModuleTarget

  21. def leafTargets(r: ReferenceTarget): Seq[ReferenceTarget]

    Permalink

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref and a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref.foo.bar)

    Given: A firrtl.annotations.ReferenceTarget of ~Top|Module>ref and a type of {foo: {bar: UInt}} Return: Seq(~Top|Module>ref.foo.bar)

    returns

    a target to each sub-component, excluding intermediate subcomponents.

  22. def moduleLeafPortTargets(m: ModuleTarget): (Seq[(ReferenceTarget, Type)], Seq[(ReferenceTarget, Type)])

    Permalink

    returns

    Returns ((inputs, outputs)) target and type of each module port.

  23. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  24. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  25. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  26. def ports(mt: ModuleTarget): Seq[ReferenceTarget]

    Permalink

    Returns the references to the module's ports

    Returns the references to the module's ports

    mt

    firrtl.annotations.ModuleTarget to be queried.

    returns

    the port references of mt

  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  28. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  29. def tpe(t: ReferenceTarget): Type

    Permalink
  30. def validPath(t: IsModule): Boolean

    Permalink

    t

    firrtl.annotations.ReferenceTarget to be queried.

    returns

    whether a given firrtl.annotations.IsModule is valid, given the circuit's module/instance hierarchy

  31. final def wait(arg0: Long, arg1: Int): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from AnyRef

Inherited from Any

Ungrouped