switch(base_message.type) {
- case MC_MESSAGE_IGNORE_REGION:
+ case MC_MESSAGE_IGNORE_HEAP:
XBT_DEBUG("Received ignored region");
- if (size != sizeof(s_mc_ignore_region_message_t))
+ if (size != sizeof(s_mc_ignore_heap_message_t))
+ xbt_die("Broken messsage");
+ // TODO, handle the message
+ break;
+
+ case MC_MESSAGE_UNIGNORE_HEAP:
+ XBT_DEBUG("Received unignored region");
+ if (size != sizeof(s_mc_ignore_memory_message_t))
xbt_die("Broken messsage");
// TODO, handle the message
break;
}
break;
+ case MC_MESSAGE_STACK_REGION:
+ {
+ XBT_DEBUG("Received stack area");
+ s_mc_stack_region_message_t message;
+ if (size != sizeof(message))
+ xbt_die("Broken messsage");
+ memcpy(&message, buffer, sizeof(message));
+ stack_region_t stack_region = xbt_new(s_stack_region_t, 1);
+ *stack_region = message.stack_region;
+ MC_stack_area_add(stack_region);
+ }
+ break;
+
default:
xbt_die("Unexpected message from model-checked application");