diff options
| author | Jack Koenig | 2021-03-12 16:40:31 -0800 |
|---|---|---|
| committer | GitHub | 2021-03-12 16:40:31 -0800 |
| commit | b3592a4973a50098f71e0e64bf3f0f53a82a82e9 (patch) | |
| tree | 0d2df183b022697a496d58a3be13b85d141cf7fc /src/test/scala/chisel3 | |
| parent | 9ea57e031f834841609a30031ddab08fe4f47029 (diff) | |
| parent | 3bea6167159737b379f37031c3beef27337be06d (diff) | |
Merge pull request #1804 from chipsalliance/autoclonetype2
Compiler plugin implemented autoclonetype
Diffstat (limited to 'src/test/scala/chisel3')
| -rw-r--r-- | src/test/scala/chisel3/testers/TestUtils.scala | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/scala/chisel3/testers/TestUtils.scala b/src/test/scala/chisel3/testers/TestUtils.scala index 12712bf7..c72c779a 100644 --- a/src/test/scala/chisel3/testers/TestUtils.scala +++ b/src/test/scala/chisel3/testers/TestUtils.scala @@ -3,10 +3,22 @@ package chisel3.testers import TesterDriver.Backend +import chisel3.{Bundle, RawModule} +import chisel3.internal.firrtl.Circuit +import chisel3.stage.ChiselStage import firrtl.AnnotationSeq object TestUtils { // Useful because TesterDriver.Backend is chisel3 package private def containsBackend(annos: AnnotationSeq): Boolean = annos.collectFirst { case b: Backend => b }.isDefined + + // Allows us to check that the compiler plugin cloneType is actually working + val usingPlugin: Boolean = (new Bundle { def check = _usingPlugin }).check + def elaborateNoReflectiveAutoCloneType(f: => RawModule): Circuit = { + ChiselStage.elaborate { + chisel3.internal.Builder.allowReflectiveAutoCloneType = !usingPlugin + f + } + } } |
