X-Git-Url: http://plrg.eecs.uci.edu/git/?p=c11tester.git;a=blobdiff_plain;f=model.cc;h=9e611fae96367283e33d7b927224eb259b52a27e;hp=4ccdbce2f6700678ce62a684da817c61b4fa8db3;hb=3b3533a76db06884f44b3e70ccdbad647275fcc4;hpb=ed8d4600431acccf43e7ac67ab523fd7486861d0;ds=sidebyside diff --git a/model.cc b/model.cc index 4ccdbce2..9e611fae 100644 --- a/model.cc +++ b/model.cc @@ -1407,21 +1407,11 @@ bool ModelChecker::is_feasible_prefix_ignore_relseq() const */ bool ModelChecker::is_infeasible() const { - return mo_graph->checkForRMWViolation() || is_infeasible_ignoreRMW(); -} - -/** - * Check If the current partial trace is infeasible, while ignoring - * infeasibility related to 2 RMW's reading from the same store. It does not - * check end-of-execution feasibility. - * @see ModelChecker::is_infeasible - * @return whether the current partial trace is infeasible, ignoring multiple - * RMWs reading from the same store. - * */ -bool ModelChecker::is_infeasible_ignoreRMW() const -{ - return mo_graph->checkForCycles() || priv->failed_promise || - priv->too_many_reads || priv->bad_synchronization || + return mo_graph->checkForRMWViolation() || + mo_graph->checkForCycles() || + priv->failed_promise || + priv->too_many_reads || + priv->bad_synchronization || promises_expired(); }