diff options
| author | Jared Barocsi | 2021-07-29 16:31:08 -0700 |
|---|---|---|
| committer | GitHub | 2021-07-29 16:31:08 -0700 |
| commit | 04210ee30acd437bccfe694ddd895e5f450ba01f (patch) | |
| tree | 18212689f16299da9b3df210b92f6a2353c60e9b /src/main/scala/firrtl/transforms | |
| parent | 2630537cf956eea3768c5bd8e57de839f7d3700a (diff) | |
Dedup attribute annos (#2297)
* Add new util "groupByIntoSeq"
* Restore annotation order when dedupping annotations
* Attribute annotations now deduplicate
* Implement doc string anno dedup
Co-authored-by: Jack Koenig <koenig@sifive.com>
Diffstat (limited to 'src/main/scala/firrtl/transforms')
| -rw-r--r-- | src/main/scala/firrtl/transforms/DedupAnnotations.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/main/scala/firrtl/transforms/DedupAnnotations.scala b/src/main/scala/firrtl/transforms/DedupAnnotations.scala index 9355b5c3..cad4d2be 100644 --- a/src/main/scala/firrtl/transforms/DedupAnnotations.scala +++ b/src/main/scala/firrtl/transforms/DedupAnnotations.scala @@ -6,7 +6,7 @@ package transforms import firrtl.ir._ import firrtl.Mappers._ import firrtl.options.Dependency -import firrtl.Utils.BoolType +import firrtl.Utils.{groupByIntoSeq, BoolType} import firrtl.annotations.Annotation import scala.collection.mutable.Buffer import firrtl.annotations.MemoryFileInlineAnnotation @@ -61,7 +61,7 @@ object DedupAnnotationsTransform { } // Partition the dedupable annotations into groups that *should* deduplicate into the same annotation - val shouldDedup: Map[Any, ArrayBuffer[DedupableRepr]] = canDedup.groupBy(_.dedupKey) + val shouldDedup: Seq[(Any, Seq[DedupableRepr])] = groupByIntoSeq(canDedup)(_.dedupKey) shouldDedup.foreach { case ((target: ReferenceTarget, _), dedupableAnnos) => val originalAnnos = dedupableAnnos.map(_.original) |
