summaryrefslogtreecommitdiff
path: root/src/main/scala/chisel3/util/ExtModuleUtils.scala
diff options
context:
space:
mode:
authorSchuyler Eldridge2021-06-10 17:32:08 -0400
committerGitHub2021-06-10 17:32:08 -0400
commit820200b75242dde2a66c8103fd53eb10afc7ff6b (patch)
tree4e5a2f81b308a2824737364e36432d4b3cc4128e /src/main/scala/chisel3/util/ExtModuleUtils.scala
parent81bc972bf3202577b6534b82d96b75f7abfbab5e (diff)
Stop Emitting BlackBoxResourceAnno (#1954)
* Change HasBlackBoxResource to Resolve Resources Change HasBlackBoxResource to resolve resources immediately and emit BlackBoxInlineAnno instead of a BlackBoxResourceAnno. This removes the need for a FIRRTL compiler to grok the Java Resource API in order to handle BlackBoxResourceAnno. Emit BlackBoxInlineAnno from HasExtModuleResource instead of BlackBoxResourceAnno. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
Diffstat (limited to 'src/main/scala/chisel3/util/ExtModuleUtils.scala')
-rw-r--r--src/main/scala/chisel3/util/ExtModuleUtils.scala7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main/scala/chisel3/util/ExtModuleUtils.scala b/src/main/scala/chisel3/util/ExtModuleUtils.scala
index 831639be..62f384bc 100644
--- a/src/main/scala/chisel3/util/ExtModuleUtils.scala
+++ b/src/main/scala/chisel3/util/ExtModuleUtils.scala
@@ -3,7 +3,10 @@
package chisel3.util
import chisel3.experimental.{ChiselAnnotation, ExtModule, RunFirrtlTransform}
-import firrtl.transforms.{BlackBoxPathAnno, BlackBoxResourceAnno, BlackBoxInlineAnno, BlackBoxSourceHelper}
+import firrtl.transforms.{BlackBoxPathAnno, BlackBoxResourceAnno, BlackBoxInlineAnno, BlackBoxSourceHelper,
+ BlackBoxNotFoundException}
+
+import BlackBoxHelpers._
trait HasExtModuleResource extends ExtModule {
self: ExtModule =>
@@ -18,7 +21,7 @@ trait HasExtModuleResource extends ExtModule {
*/
def addResource(blackBoxResource: String): Unit = {
val anno = new ChiselAnnotation with RunFirrtlTransform {
- def toFirrtl = BlackBoxResourceAnno(self.toNamed, blackBoxResource)
+ def toFirrtl = BlackBoxInlineAnno.fromResource(blackBoxResource, self.toNamed)
def transformClass = classOf[BlackBoxSourceHelper]
}
chisel3.experimental.annotate(anno)