aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/firrtlTests/ReplSeqMemTests.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/firrtlTests/ReplSeqMemTests.scala')
-rw-r--r--src/test/scala/firrtlTests/ReplSeqMemTests.scala12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/scala/firrtlTests/ReplSeqMemTests.scala b/src/test/scala/firrtlTests/ReplSeqMemTests.scala
index d9dc2e57..e8d72043 100644
--- a/src/test/scala/firrtlTests/ReplSeqMemTests.scala
+++ b/src/test/scala/firrtlTests/ReplSeqMemTests.scala
@@ -693,4 +693,16 @@ circuit Top :
|""".stripMargin
compileAndEmit(CircuitState(parse(input), ChirrtlForm))
}
+
+ "MemPorts" should "serialize in a deterministic order regardless" in {
+ def compare(seq1: Seq[MemPort]) {
+ val m1 = MemConf("memconf", 8, 16, seq1.map(s => s -> 1).toMap, None)
+ val m2 = MemConf("memconf", 8, 16, seq1.reverse.map(s => s -> 1).toMap, None)
+ m1.toString should be(m2.toString)
+ }
+
+ compare(Seq(ReadPort, WritePort))
+ compare(Seq(MaskedWritePort, ReadWritePort))
+ compare(Seq(MaskedReadWritePort, WritePort, ReadWritePort))
+ }
}