Skip to content

Commit eecb96d

Browse files
committed
Add support for vpiImmediateAssume
Signed-off-by: Kamil Rakoczy <[email protected]>
1 parent b79ad0d commit eecb96d

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);
@@ -3615,6 +3625,9 @@ AST::AstNode *UhdmAst::process_object(vpiHandle obj_handle)
36153625
case vpiImmediateCover:
36163626
process_immediate_cover();
36173627
break;
3628+
case vpiImmediateAssume:
3629+
process_immediate_assume();
3630+
break;
36183631
case vpiWhile:
36193632
process_while();
36203633
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)