Packages

c

firrtl.annotations.analysis

DuplicationHelper

case class DuplicationHelper(existingModules: Set[String]) extends Product with Serializable

Used by firrtl.annotations.transforms.EliminateTargetPaths to eliminate target paths Calculates needed modifications to a circuit's module/instance hierarchy

Source
DuplicationHelper.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DuplicationHelper
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DuplicationHelper(existingModules: Set[String])

Type Members

  1. type DupMap = HashMap[String, ModuleHasInstanceOfModuleMap]
  2. type InstanceOfModuleMap = HashMap[Instance, OfModule]
  3. type ModuleHasInstanceOfModuleMap = HashMap[String, InstanceOfModuleMap]

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. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. val existingModules: Set[String]
  8. def expandHierarchy(t: IsMember): Unit

    Updates internal state (dupMap) to calculate instance hierarchy modifications so t's tokens in an instance can be expressed as a tokens in a module (e.g.

    Updates internal state (dupMap) to calculate instance hierarchy modifications so t's tokens in an instance can be expressed as a tokens in a module (e.g. uniquify/duplicate the instance path in t's tokens)

    t

    An instance-resolved component

  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  10. def getDuplicates(module: String): Set[String]

    Returns the names of this module's duplicated (including the original name)

  11. def getModuleName(top: String, path: Seq[(Instance, OfModule)]): String

    Deterministic name-creation of a duplicated module

  12. def getNewOfModule(originalModule: String, newModule: String, instance: Instance, originalOfModule: OfModule): OfModule

    Return the duplicated module (formerly originalOfModule) instantiated by instance in newModule (formerly originalModule)

    Return the duplicated module (formerly originalOfModule) instantiated by instance in newModule (formerly originalModule)

    originalModule

    original encapsulating module

    newModule

    new name of encapsulating module

    instance

    instance name being declared in encapsulating module

    originalOfModule

    original module being instantiated in originalModule

  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. def makePathless(t: IsMember): Seq[IsMember]

    Rewrites t with new module/instance hierarchy calculated after repeated calls to expandHierarchy

    Rewrites t with new module/instance hierarchy calculated after repeated calls to expandHierarchy

    t

    A target

    returns

    t rewritten, is a seq because if the t.module has been duplicated, it must now refer to multiple modules

  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  19. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  21. 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
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped