From: Brian Norris Date: Tue, 17 Apr 2012 23:40:23 +0000 (-0700) Subject: rename threads_internal.h -> threads.h X-Git-Tag: pldi2013~550 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=517d8ce6cc880bb523ee55005afdcad1ec551e64;p=model-checker.git rename threads_internal.h -> threads.h --- diff --git a/Makefile b/Makefile index de622ec..f484bb9 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ CC=g++ BIN=model SOURCE=libthreads.cc schedule.cc libatomic.cc userprog.c model.cc malloc.c threads.cc -HEADERS=libthreads.h schedule.h common.h libatomic.h model.h threads_internal.h +HEADERS=libthreads.h schedule.h common.h libatomic.h model.h threads.h FLAGS=-Wall -ldl -g all: ${BIN} diff --git a/libthreads.cc b/libthreads.cc index 7ed5491..a43505e 100644 --- a/libthreads.cc +++ b/libthreads.cc @@ -1,6 +1,6 @@ #include "libthreads.h" #include "common.h" -#include "threads_internal.h" +#include "threads.h" /* global "model" object */ #include "model.h" diff --git a/model.h b/model.h index 05cdf5c..cd922df 100644 --- a/model.h +++ b/model.h @@ -7,7 +7,7 @@ #include "schedule.h" #include "libthreads.h" #include "libatomic.h" -#include "threads_internal.h" +#include "threads.h" #define VALUE_NONE -1 diff --git a/schedule.cc b/schedule.cc index 60d84a8..691c6f4 100644 --- a/schedule.cc +++ b/schedule.cc @@ -1,4 +1,4 @@ -#include "threads_internal.h" +#include "threads.h" #include "schedule.h" #include "common.h" #include "model.h" diff --git a/schedule.h b/schedule.h index bdccf11..64531b5 100644 --- a/schedule.h +++ b/schedule.h @@ -3,7 +3,7 @@ #include -#include "threads_internal.h" +#include "threads.h" #include "model.h" class Scheduler { diff --git a/threads.cc b/threads.cc index 397c789..13be391 100644 --- a/threads.cc +++ b/threads.cc @@ -3,7 +3,7 @@ #include "libthreads.h" #include "schedule.h" #include "common.h" -#include "threads_internal.h" +#include "threads.h" /* global "model" object */ #include "model.h" diff --git a/threads.h b/threads.h new file mode 100644 index 0000000..7427eeb --- /dev/null +++ b/threads.h @@ -0,0 +1,47 @@ +#ifndef __THREADS_H__ +#define __THREADS_H__ + +#include + +#include "libthreads.h" + +typedef enum thread_state { + THREAD_CREATED, + THREAD_RUNNING, + THREAD_READY, + THREAD_COMPLETED +} thread_state; + +class ModelAction; + +class Thread { +public: + Thread(thrd_t *t, void (*func)(), void *a); + Thread(thrd_t *t); + int swap(Thread *t); + void dispose(); + + thread_state get_state() { return state; } + void set_state(thread_state s) { state = s; } + thread_id_t get_id(); + void set_id(thread_id_t i) { *user_thread = i; } + thrd_t get_thrd_t() { return *user_thread; } +private: + int create_context(); + + void (*start_routine)(); + void *arg; + ucontext_t context; + void *stack; + thrd_t *user_thread; + thread_state state; +}; + +Thread *thread_current(); + +static inline thread_id_t thrd_to_id(thrd_t t) +{ + return t; +} + +#endif /* __THREADS_H__ */ diff --git a/threads_internal.h b/threads_internal.h deleted file mode 100644 index 4c1e36a..0000000 --- a/threads_internal.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef __THREADS_INTERNAL_H__ -#define __THREADS_INTERNAL_H__ - -#include - -#include "libthreads.h" - -typedef enum thread_state { - THREAD_CREATED, - THREAD_RUNNING, - THREAD_READY, - THREAD_COMPLETED -} thread_state; - -class ModelAction; - -class Thread { -public: - Thread(thrd_t *t, void (*func)(), void *a); - Thread(thrd_t *t); - int swap(Thread *t); - void dispose(); - - thread_state get_state() { return state; } - void set_state(thread_state s) { state = s; } - thread_id_t get_id(); - void set_id(thread_id_t i) { *user_thread = i; } - thrd_t get_thrd_t() { return *user_thread; } -private: - int create_context(); - - void (*start_routine)(); - void *arg; - ucontext_t context; - void *stack; - thrd_t *user_thread; - thread_state state; -}; - -Thread *thread_current(); - -static inline thread_id_t thrd_to_id(thrd_t t) -{ - return t; -} - -#endif /* __THREADS_INTERNAL_H__ */