aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/scala/firrtl/passes/Inline.scala17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/main/scala/firrtl/passes/Inline.scala b/src/main/scala/firrtl/passes/Inline.scala
index ad9c108f..00cda739 100644
--- a/src/main/scala/firrtl/passes/Inline.scala
+++ b/src/main/scala/firrtl/passes/Inline.scala
@@ -264,10 +264,15 @@ class InlineInstances extends Transform with DependencyAPIMigration with Registe
}
}
- val maxIdx = indexMap.values.max
- val resultSeq = Seq.fill(maxIdx + 1)(RenameMap())
- val resultMap = indexMap.mapValues(idx => resultSeq(maxIdx - idx))
- (resultMap, resultSeq)
+ indexMap match {
+ case a if a.isEmpty =>
+ (Map.empty[(OfModule, Instance), RenameMap], Seq.empty[RenameMap])
+ case a =>
+ val maxIdx = indexMap.values.max
+ val resultSeq = Seq.fill(maxIdx + 1)(RenameMap())
+ val resultMap = indexMap.mapValues(idx => resultSeq(maxIdx - idx))
+ (resultMap, resultSeq)
+ }
}
def fixupRefs(
@@ -353,8 +358,8 @@ class InlineInstances extends Transform with DependencyAPIMigration with Registe
Some(m.map(onStmt(ModuleName(m.name, CircuitName(c.main)))))
})
- val renames = renamesSeq.tail.foldLeft(renamesSeq.head)(_ andThen _)
+ val renames = renamesSeq.reduceLeftOption(_ andThen _)
- CircuitState(flatCircuit, LowForm, annos, Some(renames))
+ CircuitState(flatCircuit, LowForm, annos, renames)
}
}