Skip to content

Commit e42c4a6

Browse files
authored
Merge pull request #172 from antmicro/assume
Add support for vpiImmediateAssume
2 parents c3305dc + eecb96d commit e42c4a6

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

uhdm-plugin/UhdmAst.cc

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3382,6 +3382,16 @@ void UhdmAst::process_immediate_cover()
33823382
});
33833383
}
33843384

3385+
void UhdmAst::process_immediate_assume()
3386+
{
3387+
current_node = make_ast_node(AST::AST_ASSUME);
3388+
visit_one_to_one({vpiExpr}, obj_h, [&](AST::AstNode *node) {
3389+
if (node) {
3390+
current_node->children.push_back(node);
3391+
}
3392+
});
3393+
}
3394+
33853395
void UhdmAst::process_while()
33863396
{
33873397
current_node = make_ast_node(AST::AST_WHILE);
@@ -3621,6 +3631,9 @@ AST::AstNode *UhdmAst::process_object(vpiHandle obj_handle)
36213631
case vpiImmediateCover:
36223632
process_immediate_cover();
36233633
break;
3634+
case vpiImmediateAssume:
3635+
process_immediate_assume();
3636+
break;
36243637
case vpiWhile:
36253638
process_while();
36263639
break;

uhdm-plugin/UhdmAst.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ class UhdmAst
131131
void process_byte_var();
132132
void process_long_int_var();
133133
void process_immediate_cover();
134+
void process_immediate_assume();
134135
void process_while();
135136
void simplify_parameter(AST::AstNode *parameter, AST::AstNode *module_node = nullptr);
136137
void process_nonsynthesizable(const UHDM::BaseClass *object);

0 commit comments

Comments
 (0)