aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/firrtlTests/FirrtlSpec.scala
diff options
context:
space:
mode:
authorAdam Izraelevitz2016-05-02 14:59:51 -0700
committerjackkoenig2016-05-12 22:42:06 -0700
commitf07baed2bc46e107250c317f290af48747a98322 (patch)
treea63c5d2477eabccab85dc6780f289fc24cbcad5c /src/test/scala/firrtlTests/FirrtlSpec.scala
parent0ee659e85c7fe46c2678a49866ef1eca8f4a2c65 (diff)
Restructured Compiler to use Transforms. Added an InlineInstance pass.
Transforms are new unit of modularity within the compiler.
Diffstat (limited to 'src/test/scala/firrtlTests/FirrtlSpec.scala')
-rw-r--r--src/test/scala/firrtlTests/FirrtlSpec.scala23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/test/scala/firrtlTests/FirrtlSpec.scala b/src/test/scala/firrtlTests/FirrtlSpec.scala
index 8e1dd8cb..c148b488 100644
--- a/src/test/scala/firrtlTests/FirrtlSpec.scala
+++ b/src/test/scala/firrtlTests/FirrtlSpec.scala
@@ -33,6 +33,7 @@ import com.typesafe.scalalogging.LazyLogging
import scala.sys.process._
import org.scalatest._
import org.scalatest.prop._
+import scala.io.Source
import firrtl._
@@ -101,6 +102,7 @@ trait BackendCompilationUtilities {
"--Wno-fatal",
"--trace",
"-O2",
+ "--top-module", dutFile,
"+define+TOP_TYPE=V" + dutFile,
"-CFLAGS", s"""-Wno-undefined-bool-conversion -O2 -DTOP_TYPE=V$dutFile -include V$dutFile.h""",
"-Mdir", dir.toString,
@@ -129,15 +131,26 @@ trait BackendCompilationUtilities {
trait FirrtlRunners extends BackendCompilationUtilities {
lazy val cppHarness = new File(s"/top.cpp")
- def compileFirrtlTest(prefix: String, srcDir: String): File = {
+ def compileFirrtlTest(
+ prefix: String,
+ srcDir: String,
+ annotations: Seq[CircuitAnnotation] = Seq.empty): File = {
val testDir = createTempDirectory(prefix)
copyResourceToFile(s"${srcDir}/${prefix}.fir", new File(testDir, s"${prefix}.fir"))
-
- Driver.compile(s"${testDir}/${prefix}.fir", s"${testDir}/${prefix}.v", VerilogCompiler)
+
+ Driver.compile(
+ s"$testDir/$prefix.fir",
+ s"$testDir/$prefix.v",
+ new VerilogCompiler(),
+ Parser.IgnoreInfo,
+ annotations)
testDir
}
- def runFirrtlTest(prefix: String, srcDir: String) {
- val testDir = compileFirrtlTest(prefix, srcDir)
+ def runFirrtlTest(
+ prefix: String,
+ srcDir: String,
+ annotations: Seq[CircuitAnnotation] = Seq.empty) = {
+ val testDir = compileFirrtlTest(prefix, srcDir, annotations)
val harness = new File(testDir, s"top.cpp")
copyResourceToFile(cppHarness.toString, harness)