aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/firrtl/transforms
diff options
context:
space:
mode:
authorJim Lawson2018-02-16 17:10:30 -0800
committerGitHub2018-02-16 17:10:30 -0800
commitedcb81a34dbf8a04d0b011aa1ca07c6e19598f23 (patch)
treeaba2e3b8b921f9fdc861ed51687735f6d18d7bff /src/main/scala/firrtl/transforms
parent74a3b302df4422bec47e754cad1703b36ff75cd2 (diff)
Replacematcherror - catch exceptions and convert to internal error. (#424)
* Catch exceptions and convert to internal error. We need to update the displayed message to incorporate a line number and text to be used for the issue. * Cleanup exception handling/throwing. Re-throw expected (or uncorrectable exceptions). Provide Utils.getThrowable() to get the first (eldest) or last throwable in the chain. Update tests to conform to FreeSpec protocol. * Minor cleanup Admit we've updated some deprecated ScalaTest methods.
Diffstat (limited to 'src/main/scala/firrtl/transforms')
-rw-r--r--src/main/scala/firrtl/transforms/CheckCombLoops.scala4
-rw-r--r--src/main/scala/firrtl/transforms/ConstantPropagation.scala2
-rw-r--r--src/main/scala/firrtl/transforms/DeadCodeElimination.scala6
-rw-r--r--src/main/scala/firrtl/transforms/RemoveWires.scala2
4 files changed, 7 insertions, 7 deletions
diff --git a/src/main/scala/firrtl/transforms/CheckCombLoops.scala b/src/main/scala/firrtl/transforms/CheckCombLoops.scala
index bb2ffea9..98d6c3d1 100644
--- a/src/main/scala/firrtl/transforms/CheckCombLoops.scala
+++ b/src/main/scala/firrtl/transforms/CheckCombLoops.scala
@@ -71,9 +71,9 @@ class CheckCombLoops extends Transform {
memport.expr match {
case memref: WRef =>
LogicNode(s.name,Some(memref.name),Some(memport.name))
- case _ => throwInternalError
+ case _ => throwInternalError(Some(s"toLogicNode: unrecognized subsubfield expression - $memport"))
}
- case _ => throwInternalError
+ case _ => throwInternalError(Some(s"toLogicNode: unrecognized subfield expression - $s"))
}
}
diff --git a/src/main/scala/firrtl/transforms/ConstantPropagation.scala b/src/main/scala/firrtl/transforms/ConstantPropagation.scala
index d08a7e6b..086f1cee 100644
--- a/src/main/scala/firrtl/transforms/ConstantPropagation.scala
+++ b/src/main/scala/firrtl/transforms/ConstantPropagation.scala
@@ -320,7 +320,7 @@ class ConstantPropagation extends Transform {
case node: DefNode => node.copy(name = newName)
case wire: DefWire => wire.copy(name = newName)
case reg: DefRegister => reg.copy(name = newName)
- case other => throwInternalError
+ case other => throwInternalError()
}
case other => other map backPropStmt
}
diff --git a/src/main/scala/firrtl/transforms/DeadCodeElimination.scala b/src/main/scala/firrtl/transforms/DeadCodeElimination.scala
index 22e7da6e..054705c0 100644
--- a/src/main/scala/firrtl/transforms/DeadCodeElimination.scala
+++ b/src/main/scala/firrtl/transforms/DeadCodeElimination.scala
@@ -63,7 +63,7 @@ class DeadCodeElimination extends Transform {
case ref @ (_: WRef | _: WSubField) => refs += ref
case nested @ (_: Mux | _: DoPrim | _: ValidIf) => nested map rec
case ignore @ (_: Literal) => // Do nothing
- case unexpected => throwInternalError
+ case unexpected => throwInternalError()
}
e
}
@@ -136,7 +136,7 @@ class DeadCodeElimination extends Transform {
// Add all ports as vertices
mod.ports.foreach {
case Port(_, name, _, _: GroundType) => depGraph.addVertex(LogicNode(mod.name, name))
- case other => throwInternalError
+ case other => throwInternalError()
}
onStmt(mod.body)
}
@@ -261,7 +261,7 @@ class DeadCodeElimination extends Transform {
None
}
else {
- if (ext.ports != portsx) throwInternalError // Sanity check
+ if (ext.ports != portsx) throwInternalError() // Sanity check
Some(ext.copy(ports = portsx))
}
}
diff --git a/src/main/scala/firrtl/transforms/RemoveWires.scala b/src/main/scala/firrtl/transforms/RemoveWires.scala
index a1fb32db..931288d9 100644
--- a/src/main/scala/firrtl/transforms/RemoveWires.scala
+++ b/src/main/scala/firrtl/transforms/RemoveWires.scala
@@ -99,7 +99,7 @@ class RemoveWires extends Transform {
otherStmts += other
case EmptyStmt => // Dont bother keeping EmptyStmts around
case block: Block => block map onStmt
- case _ => throwInternalError
+ case _ => throwInternalError()
}
stmt
}