From 6e03f63d525aac0bdf4a59b6fe66a0b4d5a3a25a Mon Sep 17 00:00:00 2001 From: Schuyler Eldridge Date: Tue, 16 Jun 2020 11:59:15 -0400 Subject: Use ChiselStage in Tests This migrates the tests to Chisel 3.4/FIRRTL 1.4. This primarily involves removing usages of deprecated methods including: - Remove usages of Driver - Use ChiselStage methods instead of BackendCompilationUtilities methods - Use Dependency API for custom transforms - Use extractCause to unpack StackError Signed-off-by: Schuyler Eldridge --- src/test/scala/chiselTests/MultiAssign.scala | 43 +++++++++++++++++++--------- 1 file changed, 30 insertions(+), 13 deletions(-) (limited to 'src/test/scala/chiselTests/MultiAssign.scala') diff --git a/src/test/scala/chiselTests/MultiAssign.scala b/src/test/scala/chiselTests/MultiAssign.scala index 8da5bc42..b232bd75 100644 --- a/src/test/scala/chiselTests/MultiAssign.scala +++ b/src/test/scala/chiselTests/MultiAssign.scala @@ -4,6 +4,7 @@ package chiselTests import chisel3._ import chisel3.testers.BasicTester +import chisel3.stage.ChiselStage import chisel3.util._ class LastAssignTester() extends BasicTester { @@ -30,36 +31,52 @@ class MultiAssignSpec extends ChiselFlatSpec { } } -class IllegalAssignSpec extends ChiselFlatSpec { +class IllegalAssignSpec extends ChiselFlatSpec with Utils { "Reassignments to literals" should "be disallowed" in { intercept[chisel3.internal.ChiselException] { - elaborate{ new BasicTester { - 15.U := 7.U - }} + extractCause[ChiselException] { + ChiselStage.elaborate{ + new BasicTester { + 15.U := 7.U + } + } + } } } "Reassignments to ops" should "be disallowed" in { intercept[chisel3.internal.ChiselException] { - elaborate{ new BasicTester { - (15.U + 1.U) := 7.U - }} + extractCause[ChiselException] { + ChiselStage.elaborate{ + new BasicTester { + (15.U + 1.U) := 7.U + } + } + } } } "Reassignments to bit slices" should "be disallowed" in { intercept[chisel3.internal.ChiselException] { - elaborate{ new BasicTester { - (15.U)(1, 0) := 7.U - }} + extractCause[ChiselException] { + ChiselStage.elaborate{ + new BasicTester { + (15.U)(1, 0) := 7.U + } + } + } } } "Bulk-connecting two read-only nodes" should "be disallowed" in { intercept[chisel3.internal.ChiselException] { - elaborate{ new BasicTester { - (15.U + 1.U) <> 7.U - }} + extractCause[ChiselException] { + ChiselStage.elaborate{ + new BasicTester { + (15.U + 1.U) <> 7.U + } + } + } } } } -- cgit v1.2.3