From 2f382c791daa529ed998c35d017703d52ab46d9d Mon Sep 17 00:00:00 2001 From: weiyu Date: Wed, 18 Dec 2019 16:05:37 -0800 Subject: [PATCH] Bug fix --- funcnode.cc | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/funcnode.cc b/funcnode.cc index 26e8f59e..49a3c01d 100644 --- a/funcnode.cc +++ b/funcnode.cc @@ -554,10 +554,16 @@ SnapVector * half_pred_expressions) bool FuncNode::amend_predicate_expr(Predicate * curr_pred, FuncInst * next_inst, ModelAction * next_act) { ModelVector * children = curr_pred->get_children(); - ASSERT(children->size() == 1); - // there should only be only child - Predicate * unset_pred = (*children)[0]; + Predicate * unset_pred = NULL; + for (uint i = 0; i < children->size(); i++) { + Predicate * child = (*children)[i]; + if (child->get_func_inst() == next_inst) { + unset_pred = child; + break; + } + } + uint64_t read_val = next_act->get_reads_from_value(); // only generate NULLITY predicate when it is actually NULL. -- 2.34.1