7 #include "model-assert.h"
17 Making w39 seq_cst; the two steals and the take have the following:
18 t.CAS() (in steal1) b.store (in take)
19 fence() (in steal2) fence() (in take)
20 b.load() (in steal2) t.load() (in take)
21 neither loads reads the updated value.
24 static void task(void * param) {
29 int user_main(int argc, char **argv)
36 thrd_create(&t1, task, 0);
37 //thrd_create(&t2, task, 0);
45 if (a!=1 && a!=2 && a!=4 && a!= EMPTY)
47 if (b!=1 && b!=2 && b!=4 && b!= EMPTY)
49 if (c!=1 && c!=2 && c!=4 && a!= EMPTY)
51 if (a!=EMPTY && b!=EMPTY && c!=EMPTY && (a+b+c)!=7)
54 printf("a=%d b=%d c=%d\n",a,b,c);
55 MODEL_ASSERT(correct);