projects
/
model-checker.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
libthreads: pass 'class Thread' object as ModelAction 'location'
[model-checker.git]
/
libthreads.cc
diff --git
a/libthreads.cc
b/libthreads.cc
index e8d3b6e61e78710169d03da5b4d57180a7c388e0..a414686dccb713116bad22a1e6126f590b72cc7b 100644
(file)
--- a/
libthreads.cc
+++ b/
libthreads.cc
@@
-10,12
+10,14
@@
*/
int thrd_create(thrd_t *t, thrd_start_t start_routine, void *arg)
{
*/
int thrd_create(thrd_t *t, thrd_start_t start_routine, void *arg)
{
+ Thread *thread;
int ret;
DBG();
int ret;
DBG();
- ret = model->add_thread(new Thread(t, start_routine, arg));
+ thread = new Thread(t, start_routine, arg);
+ ret = model->add_thread(thread);
DEBUG("create thread %d\n", id_to_int(thrd_to_id(*t)));
/* seq_cst is just a 'don't care' parameter */
DEBUG("create thread %d\n", id_to_int(thrd_to_id(*t)));
/* seq_cst is just a 'don't care' parameter */
- model->switch_to_master(new ModelAction(THREAD_CREATE, memory_order_seq_cst,
NULL
, VALUE_NONE));
+ model->switch_to_master(new ModelAction(THREAD_CREATE, memory_order_seq_cst,
thread
, VALUE_NONE));
return ret;
}
return ret;
}