diff options
| author | jackkoenig | 2016-01-28 18:10:20 -0800 |
|---|---|---|
| committer | jackkoenig | 2016-01-28 18:10:20 -0800 |
| commit | 00ec2aa525bbf95a72f62a0134f4c6f834152934 (patch) | |
| tree | e9d65cc982d85ca879cab067f95b7355385c1cb8 /src | |
| parent | 53cac5ce88100b6c50781e0ddaecada235e5fe27 (diff) | |
WIP Added support for stop to Scala FIRRTL
Diffstat (limited to 'src')
| -rw-r--r-- | src/main/scala/firrtl/Utils.scala | 2 | ||||
| -rw-r--r-- | src/main/scala/firrtl/Visitor.scala | 3 |
2 files changed, 2 insertions, 3 deletions
diff --git a/src/main/scala/firrtl/Utils.scala b/src/main/scala/firrtl/Utils.scala index ca4153e7..58f102b3 100644 --- a/src/main/scala/firrtl/Utils.scala +++ b/src/main/scala/firrtl/Utils.scala @@ -172,7 +172,7 @@ object Utils { s.result + debug(b) } case i: IsInvalid => s"${i.exp} is invalid" - case s: Stop => s"stop(${s.clk}, ${s.en}, ${s.ret})" + case s: Stop => s"stop(${s.clk.serialize}, ${s.en.serialize}, ${s.ret})" case p: Print => s"printf(${p.clk.serialize}, ${p.en.serialize}, ${p.string}" + (if (p.args.nonEmpty) p.args.map(_.serialize).mkString(", ", ", ", "") else "") + ")" case Empty => "skip" diff --git a/src/main/scala/firrtl/Visitor.scala b/src/main/scala/firrtl/Visitor.scala index 8cdb0110..21a19166 100644 --- a/src/main/scala/firrtl/Visitor.scala +++ b/src/main/scala/firrtl/Visitor.scala @@ -133,8 +133,7 @@ class Visitor(val fullFilename: String) extends FIRRTLBaseVisitor[AST] val alt = if (ctx.block.length > 1) visitBlock(ctx.block(1)) else Empty Conditionally(info, visitExp(ctx.exp(0)), visitBlock(ctx.block(0)), alt) } - // TODO implement stop - // TODO implement printf + case "stop(" => Stop(info, string2Int(ctx.IntLit(0).getText), visitExp(ctx.exp(0)), visitExp(ctx.exp(1))) case "printf(" => Print(info, ctx.StringLit.getText, ctx.exp.drop(2).map(visitExp), visitExp(ctx.exp(0)), visitExp(ctx.exp(1))) case "skip" => Empty |
