summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2013-11-07 12:43:04 +0100
committerClifford Wolf <clifford@clifford.at>2013-11-07 12:43:04 +0100
commitb52bf379b91c86d9c022b099d329f2f2b9159801 (patch)
treec7d4590c61474ed8e92512c7d0bb9b17e4b6c8e3
parentdb42a8f89b283d9e43d288f2dc547f2e1037f595 (diff)
Fixed width detection for replicate operator
-rw-r--r--frontends/ast/genrtlil.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/frontends/ast/genrtlil.cc b/frontends/ast/genrtlil.cc
index f69ca69e..58f1b54b 100644
--- a/frontends/ast/genrtlil.cc
+++ b/frontends/ast/genrtlil.cc
@@ -655,6 +655,7 @@ void AstNode::detectSignWidthWorker(int &width_hint, bool &sign_hint)
break;
case AST_REPLICATE:
+ while (children[0]->simplify(true, false, false, 1, -1, false) == true) { }
if (children[0]->type != AST_CONSTANT)
log_error("Left operand of replicate expression is not constant at %s:%d!\n", filename.c_str(), linenum);
children[1]->detectSignWidthWorker(sub_width_hint, sub_sign_hint);