FIRRTL IR targets to include in name manipulation
the transform that this should apply to
java.lang.IllegalArgumentException
if any non-local targets are given
Create another instance of this Annotation
Create another instance of this Annotation
The inner Seqs correspond to the renames of the inner Seqs of targets
Assume RenameMap is Map(TargetA -> Seq(TargetA1, TargetA2, TargetA3), TargetB -> Seq(TargetB1, TargetB2))
After flat, this Annotation will be flat to the AnnotationSeq in the below form
Seq(Seq(TargetA1), Seq(TargetB1), Seq(TargetC)); Seq(Seq(TargetA1), Seq(TargetB2), Seq(TargetC))
Seq(Seq(TargetA2), Seq(TargetB1), Seq(TargetC)); Seq(Seq(TargetA2), Seq(TargetB2), Seq(TargetC))
Seq(Seq(TargetA3), Seq(TargetB1), Seq(TargetC)); Seq(Seq(TargetA3), Seq(TargetB2), Seq(TargetC))
Assume RenameMap is Map(TargetA -> Seq(TargetA1, TargetA2, TargetA3), TargetB -> Seq(TargetB1, TargetB2))
After flat, this Annotation will be flat to the AnnotationSeq in the below form
Seq(Seq(TargetA1), Seq(TargetB1), Seq(TargetC)); Seq(Seq(TargetA1), Seq(TargetB2), Seq(TargetC))
Seq(Seq(TargetA2), Seq(TargetB1), Seq(TargetC)); Seq(Seq(TargetA2), Seq(TargetB2), Seq(TargetC))
Seq(Seq(TargetA3), Seq(TargetB1), Seq(TargetC)); Seq(Seq(TargetA3), Seq(TargetB2), Seq(TargetC))
Returns all Target members in this annotation
Returns all Target members in this annotation
Optional pretty print
Optional pretty print
rarely used
FIRRTL IR targets to include in name manipulation
FIRRTL IR targets to include in name manipulation
the transform that this should apply to
the transform that this should apply to
Assume RenameMap is Map(TargetA -> Seq(TargetA1, TargetA2, TargetA3), TargetB -> Seq(TargetB1, TargetB2))
in the update, this Annotation is still one annotation, but the contents are renamed in the below form
Seq(Seq(TargetA1, TargetA2, TargetA3), Seq(TargetB1, TargetB2), Seq(TargetC))
Assume RenameMap is Map(TargetA -> Seq(TargetA1, TargetA2, TargetA3), TargetB -> Seq(TargetB1, TargetB2))
in the update, this Annotation is still one annotation, but the contents are renamed in the below form
Seq(Seq(TargetA1, TargetA2, TargetA3), Seq(TargetB1, TargetB2), Seq(TargetC))
Annotation to filter name manipulation to only manipulate specific Targets in a transform that subclasses ManipulateNames. Targets will be renamed if they are not listed in a ManipulateNamesBlocklistAnnotation and also listed in this annotation.
Not providing a ManipulateNamesAllowlistAnnotation means that all targets in a circuit may be renamed.
a sub-type of ManipulateNames
FIRRTL IR targets to include in name manipulation
the transform that this should apply to
java.lang.IllegalArgumentException
if any non-local targets are givenAll targets must be local. Name modification in a non-local target (e.g., a node in a specific instance) makes no structural modification and will be ignored during deduplication. If you want this behavior, use a combination of a sub-class of this annotation and a NoDedupAnnotation.