diff options
Diffstat (limited to 'lib/mlibc/tests/posix/pthread_thread_local.c')
-rw-r--r-- | lib/mlibc/tests/posix/pthread_thread_local.c | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/lib/mlibc/tests/posix/pthread_thread_local.c b/lib/mlibc/tests/posix/pthread_thread_local.c deleted file mode 100644 index 90c6f72..0000000 --- a/lib/mlibc/tests/posix/pthread_thread_local.c +++ /dev/null @@ -1,53 +0,0 @@ -#include <stdio.h> -#include <pthread.h> -#include <assert.h> - -_Thread_local unsigned int counter = 9999; -_Thread_local unsigned int uninitialized; - -void *check_counter(void *arg) -{ - (void)arg; - fprintf(stderr, "counter for worker thread: %d, at %p\n", counter, &counter); - fflush(stderr); - assert(counter == 9999); - - fprintf(stderr, "uninitialized data for worker thread: %d, at %p\n", uninitialized, &uninitialized); - fflush(stderr); - assert(uninitialized == 0); - - ++counter; - ++uninitialized; - fprintf(stderr, "counter for worker thread: %d\n", counter); - fflush(stderr); - assert(counter == 10000); - assert(uninitialized == 1); - return NULL; -} - -int main() -{ - fprintf(stderr, "counter for main thread: %d, at %p\n", counter, &counter); - fflush(stderr); - assert(counter == 9999); - - fprintf(stderr, "uninitialized data for main thread: %d, at %p\n", uninitialized, &uninitialized); - fflush(stderr); - assert(uninitialized == 0); - - ++counter; - ++uninitialized; - fprintf(stderr, "counter for main: %d\n", counter); - fflush(stderr); - assert(counter == 10000); - assert(uninitialized == 1); - - pthread_t thd; - pthread_create(&thd, NULL, check_counter, NULL); - pthread_join(thd, NULL); - - fprintf(stderr, "counter for main: %d\n", counter); - fflush(stderr); - assert(counter == 10000); - assert(uninitialized == 1); -} |