X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=userprog.c;fp=userprog.c;h=0948f0bc395a5d103963e99d81592ac6e2307072;hb=810306cb85accaaace9a50f174264f105991230b;hp=5598bfb4b7b6558496b2ea5383d90500d8e014a2;hpb=8c24abefd5f4c7528a245ec786309f96601b5c58;p=model-checker.git diff --git a/userprog.c b/userprog.c index 5598bfb..0948f0b 100644 --- a/userprog.c +++ b/userprog.c @@ -2,13 +2,17 @@ #include "libthreads.h" #include "libatomic.h" +#include "librace.h" static void a(atomic_int *obj) { int i; int ret; - for (i = 0; i < 7; i++) { + store_32(&i, 10); + printf("load 32 yields: %d\n", load_32(&i)); + + for (i = 0; i < 2; i++) { printf("Thread %d, loop %d\n", thrd_current(), i); switch (i ) { case 1: @@ -16,8 +20,8 @@ static void a(atomic_int *obj) printf("Read value: %d\n", ret); break; case 0: - atomic_store(obj, i); - printf("Write value: %d\n", i); + atomic_store(obj, i + 1); + printf("Write value: %d\n", i + 1); break; } }