Node *currnode = curr->get_node();
Node *parnode = currnode->get_parent();
- if (!parnode->backtrack_empty()||!currnode->read_from_empty()||!currnode->future_value_empty()||!currnode->promise_empty())
+ if (!parnode->backtrack_empty() || !currnode->read_from_empty() ||
+ !currnode->future_value_empty() || !currnode->promise_empty())
if (!next_backtrack || *curr > *next_backtrack)
next_backtrack = curr;
return ((future_index+1)>=future_values.size());
}
-
/**
* Checks if the Thread associated with this thread ID has been explored from
* this Node already.
return (numBacktracks == 0);
}
-
/**
* Checks whether the readsfrom set for this node is empty.
* @return true if the readsfrom set is empty.
return ((read_from_index+1)>=may_read_from.size());
}
-
-
/**
* Mark the appropriate backtracking information for exploring a thread choice.
* @param act The ModelAction to explore
* where this->action is a 'read'.
* @return The first element in future_values
*/
-
uint64_t Node::get_future_value() {
ASSERT(future_index<future_values.size());
return future_values[future_index];