firrtl.annotations
For a set of non-local targets, modify the instance/module hierarchy of the circuit such that the paths in each non-local target can be removed
In other words, if targeting a specific instance of a module, duplicate that module with a unique name and instantiate the new module instead.
Consumes ResolvePaths
E.g. for non-local target A/b:B/c:C/d, rename the following A/b:B/c:C/d -> C_/d A/b:B/c:C -> B_/c:C_ A/b:B -> A/b:B_ B/x -> (B/x, B_/x) // where x is any reference in B C/x -> (C/x, C_/x) // where x is any reference in C
Group of targets that should become local targets
For a set of non-local targets, modify the instance/module hierarchy of the circuit such that the paths in each non-local target can be removed
In other words, if targeting a specific instance of a module, duplicate that module with a unique name and instantiate the new module instead.
Consumes ResolvePaths
E.g. for non-local target A/b:B/c:C/d, rename the following A/b:B/c:C/d -> C_/d A/b:B/c:C -> B_/c:C_ A/b:B -> A/b:B_ B/x -> (B/x, B_/x) // where x is any reference in B C/x -> (C/x, C_/x) // where x is any reference in C