void pthread_exit(void *value_ptr) {
Thread * th = thread_current();
model->switch_to_master(new ModelAction(THREAD_FINISH, std::memory_order_seq_cst, th));
- while(1) ; //make warning goaway
+ while(1) ;//make warning goaway
}
int pthread_mutex_init(pthread_mutex_t *p_mutex, const pthread_mutexattr_t *) {
+ cdsc::mutex *m = new cdsc::mutex();
+
if (!model) {
+ snapshot_system_init(10000, 1024, 1024, 40000);
model = new ModelChecker();
}
- cdsc::mutex *m = new cdsc::mutex();
-
ModelExecution *execution = model->get_execution();
execution->getMutexMap()->put(p_mutex, m);
+
return 0;
}