}
/** @returns a sequence number for a new ModelAction */
-int ModelChecker::get_next_seq_num()
+modelclock_t ModelChecker::get_next_seq_num()
{
return ++used_sequence_numbers;
}
next = node_stack->get_next()->get_action();
if (next == diverge) {
- Node *node = next->get_node();
+ Node *node = next->get_node()->get_parent();
/* Reached divergence point */
DEBUG("*** Divergence point ***\n");
if (prev == NULL)
return;
- node = prev->get_node();
+ node = prev->get_node()->get_parent();
while (!node->is_enabled(t))
t = t->get_parent();
if (node->has_been_explored(t->get_id()))
return;
+ /* Cache the latest backtracking point */
if (!next_backtrack || *prev > *next_backtrack)
next_backtrack = prev;
nextThread = get_next_replay_thread();
- currnode = curr->get_node();
+ currnode = curr->get_node()->get_parent();
if (!currnode->backtrack_empty())
if (!next_backtrack || *curr > *next_backtrack)