diff options
author | Clifford Wolf <clifford@clifford.at> | 2019-04-22 09:59:49 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2019-04-23 21:36:59 +0200 |
commit | 012c6af088a22c035ce1244954b6625188478480 (patch) | |
tree | aa4e3ef4776c12707b8268a6e5c3002c2b65e961 /frontends/ast/ast.cc | |
parent | e807e88b607834170692f56a5538b89fd4175a36 (diff) | |
download | yosys-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/ast.cc')
-rw-r--r-- | frontends/ast/ast.cc | 6 |
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; } |