mc_snapshot_t state_to_remove = NULL;
xbt_dynar_shift(visited_states, &state_to_remove);
MC_free_snapshot(state_to_remove);
mc_snapshot_t state_to_remove = NULL;
xbt_dynar_shift(visited_states, &state_to_remove);
MC_free_snapshot(state_to_remove);
mc_state_t state = NULL, prev_state = NULL, next_state = NULL, restore_state=NULL;
smx_process_t process = NULL;
xbt_fifo_item_t item = NULL;
mc_state_t state = NULL, prev_state = NULL, next_state = NULL, restore_state=NULL;
smx_process_t process = NULL;
xbt_fifo_item_t item = NULL;
/* If there are processes to interleave and the maximum depth has not been reached
then perform one step of the exploration algorithm */
/* If there are processes to interleave and the maximum depth has not been reached
then perform one step of the exploration algorithm */
state that executed that previous request. */
while ((state = xbt_fifo_shift(mc_stack_safety)) != NULL) {
state that executed that previous request. */
while ((state = xbt_fifo_shift(mc_stack_safety)) != NULL) {
if(MC_state_interleave_size(state) == 0){
req = MC_state_get_internal_request(state);
xbt_fifo_foreach(mc_stack_safety, item, prev_state, mc_state_t) {
if(MC_state_interleave_size(state) == 0){
req = MC_state_get_internal_request(state);
xbt_fifo_foreach(mc_stack_safety, item, prev_state, mc_state_t) {
}
}
if (MC_state_interleave_size(state)) {
/* We found a back-tracking point, let's loop */
}
}
if (MC_state_interleave_size(state)) {
/* We found a back-tracking point, let's loop */
if(state->system_state != NULL){
MC_restore_snapshot(state->system_state);
xbt_fifo_unshift(mc_stack_safety, state);
if(state->system_state != NULL){
MC_restore_snapshot(state->system_state);
xbt_fifo_unshift(mc_stack_safety, state);