aboutsummaryrefslogtreecommitdiffstats
path: root/frontends/ast
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2019-04-22 09:59:49 +0200
committerClifford Wolf <clifford@clifford.at>2019-04-23 21:36:59 +0200
commit012c6af088a22c035ce1244954b6625188478480 (patch)
treeaa4e3ef4776c12707b8268a6e5c3002c2b65e961 /frontends/ast
parente807e88b607834170692f56a5538b89fd4175a36 (diff)
downloadyosys-012c6af088a22c035ce1244954b6625188478480.tar.gz
yosys-012c6af088a22c035ce1244954b6625188478480.tar.bz2
yosys-012c6af088a22c035ce1244954b6625188478480.zip
Allow $specify[23] cells in blackbox modules
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Diffstat (limited to 'frontends/ast')
-rw-r--r--frontends/ast/ast.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/frontends/ast/ast.cc b/frontends/ast/ast.cc
index 9f88b08c1..6b3604ee5 100644
--- a/frontends/ast/ast.cc
+++ b/frontends/ast/ast.cc
@@ -951,6 +951,9 @@ static AstModule* process_module(AstNode *ast, bool defer, AstNode *original_ast
continue;
if (child->type == AST_PARAMETER || child->type == AST_LOCALPARAM)
continue;
+ if (child->type == AST_CELL && child->children.size() > 0 && child->children[0]->type == AST_CELLTYPE &&
+ (child->children[0]->str == "$specify2" || child->children[0]->str == "$specify3"))
+ continue;
blackbox_module = false;
break;
}
@@ -1035,6 +1038,9 @@ static AstModule* process_module(AstNode *ast, bool defer, AstNode *original_ast
child->delete_children();
child->children.push_back(AstNode::mkconst_int(0, false, 0));
new_children.push_back(child);
+ } else if (child->type == AST_CELL && child->children.size() > 0 && child->children[0]->type == AST_CELLTYPE &&
+ (child->children[0]->str == "$specify2" || child->children[0]->str == "$specify3")) {
+ new_children.push_back(child);
} else {
delete child;
}