+ init_thread = new Thread(execution->get_next_id(), (thrd_t *) model_malloc(sizeof(thrd_t)), &user_main_wrapper, NULL, NULL);
+#ifdef TLS
+ init_thread->setTLS((char *)get_tls_addr());
+#endif
+ execution->add_thread(init_thread);
+ scheduler->set_current_thread(init_thread);
+ execution->setParams(¶ms);
+ param_defaults(¶ms);
+ initRaceDetector();