BENCH := deque
-NORMAL_TESTS := testcase1 testcase2 testcase3 testcase4 testcase5 testcase6 testcase7 testcase8 testcase9 testcase10
+#NORMAL_TESTS := testcase1 testcase2 testcase3 testcase4 testcase5 testcase6 testcase7 testcase8 testcase9 testcase10
+NORMAL_TESTS := testcase1 testcase2 testcase3 testcase4 testcase5 testcase6
WILDCARD_TESTS := $(patsubst %, %_wildcard, $(NORMAL_TESTS))
-Result 3:
+Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
wildcard 3 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
wildcard 7 -> memory_order_relaxed
wildcard 8 -> memory_order_seq_cst
-wildcard 9 -> memory_order_relaxed
+wildcard 9 -> memory_order_acquire
wildcard 10 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
-wildcard 12 -> memory_order_acquire
+wildcard 12 -> memory_order_relaxed
+wildcard 14 -> memory_order_release
+wildcard 15 -> memory_order_relaxed
+wildcard 16 -> memory_order_relaxed
+wildcard 17 -> memory_order_relaxed
+wildcard 18 -> memory_order_relaxed
+wildcard 19 -> memory_order_relaxed
+wildcard 20 -> memory_order_relaxed
+wildcard 21 -> memory_order_relaxed
+wildcard 22 -> memory_order_relaxed
+wildcard 23 -> memory_order_release
+wildcard 24 -> memory_order_relaxed
+wildcard 25 -> memory_order_relaxed
+wildcard 26 -> memory_order_relaxed
+wildcard 27 -> memory_order_relaxed
+wildcard 28 -> memory_order_relaxed
+wildcard 29 -> memory_order_relaxed
+wildcard 30 -> memory_order_release
+wildcard 31 -> memory_order_release
+wildcard 32 -> memory_order_relaxed
+wildcard 33 -> memory_order_relaxed
+wildcard 34 -> memory_order_seq_cst
+wildcard 35 -> memory_order_acquire
+wildcard 36 -> memory_order_acquire
+wildcard 37 -> memory_order_relaxed
+wildcard 38 -> memory_order_acquire
+wildcard 39 -> memory_order_seq_cst
+
+Result 1:
+wildcard 1 -> memory_order_relaxed
+wildcard 2 -> memory_order_relaxed
+wildcard 3 -> memory_order_relaxed
+wildcard 4 -> memory_order_relaxed
+wildcard 5 -> memory_order_relaxed
+wildcard 6 -> memory_order_relaxed
+wildcard 7 -> memory_order_relaxed
+wildcard 8 -> memory_order_seq_cst
+wildcard 9 -> memory_order_acquire
+wildcard 10 -> memory_order_relaxed
+wildcard 11 -> memory_order_relaxed
+wildcard 12 -> memory_order_relaxed
wildcard 14 -> memory_order_release
wildcard 15 -> memory_order_relaxed
wildcard 16 -> memory_order_relaxed
##################################################
testcase5.c is a testcase that has 2 threads, 1 of which has 1 steal() and the
other has 3 push() followed by 2 take().
+
+
+By running our testcases from 1-6, it took:
+0m0.013s (testcase1)
+0m0.028s (testcase2)
+0m6.264s (testcase3)
+0m0.824s (testcase4)
+0m0.054s (testcase5)
+9m19.887s (testcase6)
+
+In total: 9m27.02s
+
+peizhaoo@dw-2:~/test/model-checker-priv/model-checker-priv/benchmarks$ time
+./run.sh chase-lev-deque-bugfix/testcase1_wildcard -m2 -y -u3 -tSCFENCE -o
+weaken &> /scratch/a
+
+real 0m0.032s
+user 0m0.013s
+sys 0m0.010s
+
Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
+peizhaoo@dw-2:~/test/model-checker-priv/model-checker-priv/benchmarks$ time
+./run.sh chase-lev-deque-bugfix/testcase2_wildcard -m2 -y -u3 -tSCFENCE -o
+fchase-lev-deque-bugfix/result1.txt -o weaken &> /scratch/a
+
+real 0m0.061s
+user 0m0.028s
+sys 0m0.020s
+
+
Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
+peizhaoo@dw-2:~/test/model-checker-priv/model-checker-priv/benchmarks$ time
+./run.sh chase-lev-deque-bugfix/testcase3_wildcard -m2 -y -u3 -tSCFENCE -o
+fchase-lev-deque-bugfix/result2.txt -o weaken &> /scratch/a
+
+real 0m6.858s
+user 0m6.264s
+sys 0m0.577s
+
+
Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
+peizhaoo@dw-2:~/test/model-checker-priv/model-checker-priv/benchmarks$ time
+./run.sh chase-lev-deque-bugfix/testcase4_wildcard -m2 -y -u3 -tSCFENCE -o
+fchase-lev-deque-bugfix/result3.txt -o weaken &> /scratch/a
+
+real 0m0.918s
+user 0m0.824s
+sys 0m0.080s
+
+
Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
+peizhaoo@dw-2:~/test/model-checker-priv/model-checker-priv/benchmarks$ time
+./run.sh chase-lev-deque-bugfix/testcase5_wildcard -m2 -y -u3 -tSCFENCE -o
+fchase-lev-deque-bugfix/result4.txt -o weaken &> /scratch/a
+
+real 0m0.088s
+user 0m0.054s
+sys 0m0.019s
+
Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
wildcard 12 -> memory_order_acquire
-wildcard 14 -> memory_order_release
-wildcard 15 -> memory_order_relaxed
+wildcard 14 -> memory_order_relaxed
+wildcard 15 -> memory_order_release
wildcard 16 -> memory_order_relaxed
wildcard 17 -> memory_order_relaxed
wildcard 18 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
+wildcard 8 -> memory_order_seq_cst
+wildcard 9 -> memory_order_relaxed
+wildcard 10 -> memory_order_relaxed
+wildcard 11 -> memory_order_relaxed
+wildcard 12 -> memory_order_acquire
+wildcard 14 -> memory_order_relaxed
+wildcard 15 -> memory_order_release
+wildcard 16 -> memory_order_relaxed
+wildcard 17 -> memory_order_relaxed
+wildcard 18 -> memory_order_relaxed
+wildcard 19 -> memory_order_relaxed
+wildcard 20 -> memory_order_relaxed
+wildcard 21 -> memory_order_relaxed
+wildcard 22 -> memory_order_relaxed
+wildcard 23 -> memory_order_release
+wildcard 24 -> memory_order_relaxed
+wildcard 25 -> memory_order_acquire
+wildcard 26 -> memory_order_relaxed
+wildcard 27 -> memory_order_relaxed
+wildcard 28 -> memory_order_relaxed
+wildcard 29 -> memory_order_relaxed
+wildcard 30 -> memory_order_relaxed
+wildcard 31 -> memory_order_release
+wildcard 32 -> memory_order_relaxed
+wildcard 33 -> memory_order_relaxed
+wildcard 34 -> memory_order_seq_cst
+wildcard 35 -> memory_order_acquire
+wildcard 36 -> memory_order_acquire
+wildcard 37 -> memory_order_relaxed
+wildcard 38 -> memory_order_relaxed
+wildcard 39 -> memory_order_seq_cst
+
+Result 2:
+wildcard 1 -> memory_order_relaxed
+wildcard 2 -> memory_order_relaxed
+wildcard 3 -> memory_order_relaxed
+wildcard 4 -> memory_order_relaxed
+wildcard 5 -> memory_order_relaxed
+wildcard 6 -> memory_order_relaxed
+wildcard 7 -> memory_order_relaxed
+wildcard 8 -> memory_order_seq_cst
+wildcard 9 -> memory_order_acquire
+wildcard 10 -> memory_order_relaxed
+wildcard 11 -> memory_order_relaxed
+wildcard 12 -> memory_order_acquire
+wildcard 14 -> memory_order_relaxed
+wildcard 15 -> memory_order_relaxed
+wildcard 16 -> memory_order_relaxed
+wildcard 17 -> memory_order_relaxed
+wildcard 18 -> memory_order_relaxed
+wildcard 19 -> memory_order_relaxed
+wildcard 20 -> memory_order_relaxed
+wildcard 21 -> memory_order_relaxed
+wildcard 22 -> memory_order_relaxed
+wildcard 23 -> memory_order_release
+wildcard 24 -> memory_order_relaxed
+wildcard 25 -> memory_order_relaxed
+wildcard 26 -> memory_order_relaxed
+wildcard 27 -> memory_order_relaxed
+wildcard 28 -> memory_order_relaxed
+wildcard 29 -> memory_order_relaxed
+wildcard 30 -> memory_order_release
+wildcard 31 -> memory_order_release
+wildcard 32 -> memory_order_relaxed
+wildcard 33 -> memory_order_relaxed
+wildcard 34 -> memory_order_seq_cst
+wildcard 35 -> memory_order_acquire
+wildcard 36 -> memory_order_acquire
+wildcard 37 -> memory_order_relaxed
+wildcard 38 -> memory_order_acquire
+wildcard 39 -> memory_order_seq_cst
+
+Result 3:
+wildcard 1 -> memory_order_relaxed
+wildcard 2 -> memory_order_relaxed
+wildcard 3 -> memory_order_relaxed
+wildcard 4 -> memory_order_relaxed
+wildcard 5 -> memory_order_relaxed
+wildcard 6 -> memory_order_relaxed
wildcard 7 -> memory_order_relaxed
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_acquire
wildcard 38 -> memory_order_acquire
wildcard 39 -> memory_order_seq_cst
-Result 2:
+Result 4:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
wildcard 3 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
wildcard 7 -> memory_order_relaxed
wildcard 8 -> memory_order_seq_cst
+wildcard 9 -> memory_order_acquire
+wildcard 10 -> memory_order_relaxed
+wildcard 11 -> memory_order_relaxed
+wildcard 12 -> memory_order_acquire
+wildcard 14 -> memory_order_relaxed
+wildcard 15 -> memory_order_relaxed
+wildcard 16 -> memory_order_relaxed
+wildcard 17 -> memory_order_relaxed
+wildcard 18 -> memory_order_relaxed
+wildcard 19 -> memory_order_relaxed
+wildcard 20 -> memory_order_relaxed
+wildcard 21 -> memory_order_relaxed
+wildcard 22 -> memory_order_relaxed
+wildcard 23 -> memory_order_release
+wildcard 24 -> memory_order_relaxed
+wildcard 25 -> memory_order_acquire
+wildcard 26 -> memory_order_relaxed
+wildcard 27 -> memory_order_relaxed
+wildcard 28 -> memory_order_relaxed
+wildcard 29 -> memory_order_relaxed
+wildcard 30 -> memory_order_relaxed
+wildcard 31 -> memory_order_release
+wildcard 32 -> memory_order_relaxed
+wildcard 33 -> memory_order_relaxed
+wildcard 34 -> memory_order_seq_cst
+wildcard 35 -> memory_order_acquire
+wildcard 36 -> memory_order_acquire
+wildcard 37 -> memory_order_relaxed
+wildcard 38 -> memory_order_relaxed
+wildcard 39 -> memory_order_seq_cst
+
+Result 5:
+wildcard 1 -> memory_order_relaxed
+wildcard 2 -> memory_order_relaxed
+wildcard 3 -> memory_order_relaxed
+wildcard 4 -> memory_order_relaxed
+wildcard 5 -> memory_order_relaxed
+wildcard 6 -> memory_order_relaxed
+wildcard 7 -> memory_order_relaxed
+wildcard 8 -> memory_order_seq_cst
+wildcard 9 -> memory_order_acquire
+wildcard 10 -> memory_order_relaxed
+wildcard 11 -> memory_order_relaxed
+wildcard 12 -> memory_order_relaxed
+wildcard 14 -> memory_order_release
+wildcard 15 -> memory_order_relaxed
+wildcard 16 -> memory_order_relaxed
+wildcard 17 -> memory_order_relaxed
+wildcard 18 -> memory_order_relaxed
+wildcard 19 -> memory_order_relaxed
+wildcard 20 -> memory_order_relaxed
+wildcard 21 -> memory_order_relaxed
+wildcard 22 -> memory_order_relaxed
+wildcard 23 -> memory_order_release
+wildcard 24 -> memory_order_relaxed
+wildcard 25 -> memory_order_acquire
+wildcard 26 -> memory_order_relaxed
+wildcard 27 -> memory_order_relaxed
+wildcard 28 -> memory_order_relaxed
+wildcard 29 -> memory_order_relaxed
+wildcard 30 -> memory_order_relaxed
+wildcard 31 -> memory_order_release
+wildcard 32 -> memory_order_relaxed
+wildcard 33 -> memory_order_relaxed
+wildcard 34 -> memory_order_seq_cst
+wildcard 35 -> memory_order_acquire
+wildcard 36 -> memory_order_acquire
+wildcard 37 -> memory_order_relaxed
+wildcard 38 -> memory_order_relaxed
+wildcard 39 -> memory_order_seq_cst
+
+Result 6:
+wildcard 1 -> memory_order_relaxed
+wildcard 2 -> memory_order_relaxed
+wildcard 3 -> memory_order_relaxed
+wildcard 4 -> memory_order_relaxed
+wildcard 5 -> memory_order_relaxed
+wildcard 6 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
+wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
wildcard 38 -> memory_order_acquire
wildcard 39 -> memory_order_seq_cst
-Result 3:
+Result 7:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
wildcard 3 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
wildcard 12 -> memory_order_relaxed
wildcard 14 -> memory_order_release
-wildcard 15 -> memory_order_relaxed
+wildcard 15 -> memory_order_release
wildcard 16 -> memory_order_relaxed
wildcard 17 -> memory_order_relaxed
wildcard 18 -> memory_order_relaxed
+peizhaoo@dw-2:~/test/model-checker-priv/model-checker-priv/benchmarks$ time
+./run.sh chase-lev-deque-bugfix/testcase6_wildcard -m2 -y -u3 -tSCFENCE -o
+fchase-lev-deque-bugfix/result5.txt -o weaken &> /scratch/a
+
+real 10m3.700s
+user 9m19.887s
+sys 0m43.309s
+
Result 0:
wildcard 1 -> memory_order_relaxed
wildcard 2 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
+wildcard 7 -> memory_order_release
wildcard 8 -> memory_order_seq_cst
-wildcard 9 -> memory_order_acquire
+wildcard 9 -> memory_order_relaxed
wildcard 10 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
wildcard 12 -> memory_order_relaxed
wildcard 14 -> memory_order_release
-wildcard 15 -> memory_order_relaxed
+wildcard 15 -> memory_order_release
wildcard 16 -> memory_order_relaxed
wildcard 17 -> memory_order_relaxed
wildcard 18 -> memory_order_relaxed
wildcard 22 -> memory_order_relaxed
wildcard 23 -> memory_order_release
wildcard 24 -> memory_order_relaxed
-wildcard 25 -> memory_order_relaxed
+wildcard 25 -> memory_order_acquire
wildcard 26 -> memory_order_relaxed
wildcard 27 -> memory_order_relaxed
wildcard 28 -> memory_order_relaxed
wildcard 29 -> memory_order_relaxed
-wildcard 30 -> memory_order_release
+wildcard 30 -> memory_order_relaxed
wildcard 31 -> memory_order_release
wildcard 32 -> memory_order_relaxed
wildcard 33 -> memory_order_relaxed
wildcard 35 -> memory_order_acquire
wildcard 36 -> memory_order_acquire
wildcard 37 -> memory_order_relaxed
-wildcard 38 -> memory_order_acquire
+wildcard 38 -> memory_order_relaxed
wildcard 39 -> memory_order_seq_cst
Result 1:
wildcard 11 -> memory_order_relaxed
wildcard 12 -> memory_order_relaxed
wildcard 14 -> memory_order_release
-wildcard 15 -> memory_order_relaxed
+wildcard 15 -> memory_order_release
wildcard 16 -> memory_order_relaxed
wildcard 17 -> memory_order_relaxed
wildcard 18 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
wildcard 12 -> memory_order_relaxed
wildcard 14 -> memory_order_release
-wildcard 15 -> memory_order_relaxed
+wildcard 15 -> memory_order_release
wildcard 16 -> memory_order_relaxed
wildcard 17 -> memory_order_relaxed
wildcard 18 -> memory_order_relaxed
wildcard 4 -> memory_order_relaxed
wildcard 5 -> memory_order_relaxed
wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_release
-wildcard 8 -> memory_order_seq_cst
-wildcard 9 -> memory_order_relaxed
-wildcard 10 -> memory_order_relaxed
-wildcard 11 -> memory_order_relaxed
-wildcard 12 -> memory_order_relaxed
-wildcard 14 -> memory_order_release
-wildcard 15 -> memory_order_relaxed
-wildcard 16 -> memory_order_relaxed
-wildcard 17 -> memory_order_relaxed
-wildcard 18 -> memory_order_relaxed
-wildcard 19 -> memory_order_relaxed
-wildcard 20 -> memory_order_relaxed
-wildcard 21 -> memory_order_relaxed
-wildcard 22 -> memory_order_relaxed
-wildcard 23 -> memory_order_release
-wildcard 24 -> memory_order_relaxed
-wildcard 25 -> memory_order_acquire
-wildcard 26 -> memory_order_relaxed
-wildcard 27 -> memory_order_relaxed
-wildcard 28 -> memory_order_relaxed
-wildcard 29 -> memory_order_relaxed
-wildcard 30 -> memory_order_relaxed
-wildcard 31 -> memory_order_release
-wildcard 32 -> memory_order_relaxed
-wildcard 33 -> memory_order_relaxed
-wildcard 34 -> memory_order_seq_cst
-wildcard 35 -> memory_order_acquire
-wildcard 36 -> memory_order_acquire
-wildcard 37 -> memory_order_relaxed
-wildcard 38 -> memory_order_relaxed
-wildcard 39 -> memory_order_seq_cst
-
-Result 4:
-wildcard 1 -> memory_order_relaxed
-wildcard 2 -> memory_order_relaxed
-wildcard 3 -> memory_order_relaxed
-wildcard 4 -> memory_order_relaxed
-wildcard 5 -> memory_order_relaxed
-wildcard 6 -> memory_order_relaxed
wildcard 7 -> memory_order_relaxed
wildcard 8 -> memory_order_seq_cst
wildcard 9 -> memory_order_acquire
wildcard 10 -> memory_order_relaxed
wildcard 11 -> memory_order_relaxed
-wildcard 12 -> memory_order_acquire
-wildcard 14 -> memory_order_relaxed
-wildcard 15 -> memory_order_relaxed
-wildcard 16 -> memory_order_relaxed
-wildcard 17 -> memory_order_relaxed
-wildcard 18 -> memory_order_relaxed
-wildcard 19 -> memory_order_relaxed
-wildcard 20 -> memory_order_relaxed
-wildcard 21 -> memory_order_relaxed
-wildcard 22 -> memory_order_relaxed
-wildcard 23 -> memory_order_release
-wildcard 24 -> memory_order_relaxed
-wildcard 25 -> memory_order_relaxed
-wildcard 26 -> memory_order_relaxed
-wildcard 27 -> memory_order_relaxed
-wildcard 28 -> memory_order_relaxed
-wildcard 29 -> memory_order_relaxed
-wildcard 30 -> memory_order_release
-wildcard 31 -> memory_order_release
-wildcard 32 -> memory_order_relaxed
-wildcard 33 -> memory_order_relaxed
-wildcard 34 -> memory_order_seq_cst
-wildcard 35 -> memory_order_acquire
-wildcard 36 -> memory_order_acquire
-wildcard 37 -> memory_order_relaxed
-wildcard 38 -> memory_order_acquire
-wildcard 39 -> memory_order_seq_cst
-
-Result 5:
-wildcard 1 -> memory_order_relaxed
-wildcard 2 -> memory_order_relaxed
-wildcard 3 -> memory_order_relaxed
-wildcard 4 -> memory_order_relaxed
-wildcard 5 -> memory_order_relaxed
-wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_release
-wildcard 8 -> memory_order_seq_cst
-wildcard 9 -> memory_order_relaxed
-wildcard 10 -> memory_order_relaxed
-wildcard 11 -> memory_order_relaxed
-wildcard 12 -> memory_order_acquire
-wildcard 14 -> memory_order_relaxed
-wildcard 15 -> memory_order_relaxed
+wildcard 12 -> memory_order_relaxed
+wildcard 14 -> memory_order_release
+wildcard 15 -> memory_order_release
wildcard 16 -> memory_order_relaxed
wildcard 17 -> memory_order_relaxed
wildcard 18 -> memory_order_relaxed
wildcard 37 -> memory_order_relaxed
wildcard 38 -> memory_order_acquire
wildcard 39 -> memory_order_seq_cst
-
-Result 6:
-wildcard 1 -> memory_order_relaxed
-wildcard 2 -> memory_order_relaxed
-wildcard 3 -> memory_order_relaxed
-wildcard 4 -> memory_order_relaxed
-wildcard 5 -> memory_order_relaxed
-wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_relaxed
-wildcard 8 -> memory_order_seq_cst
-wildcard 9 -> memory_order_acquire
-wildcard 10 -> memory_order_relaxed
-wildcard 11 -> memory_order_relaxed
-wildcard 12 -> memory_order_acquire
-wildcard 14 -> memory_order_relaxed
-wildcard 15 -> memory_order_relaxed
-wildcard 16 -> memory_order_relaxed
-wildcard 17 -> memory_order_relaxed
-wildcard 18 -> memory_order_relaxed
-wildcard 19 -> memory_order_relaxed
-wildcard 20 -> memory_order_relaxed
-wildcard 21 -> memory_order_relaxed
-wildcard 22 -> memory_order_relaxed
-wildcard 23 -> memory_order_release
-wildcard 24 -> memory_order_relaxed
-wildcard 25 -> memory_order_acquire
-wildcard 26 -> memory_order_relaxed
-wildcard 27 -> memory_order_relaxed
-wildcard 28 -> memory_order_relaxed
-wildcard 29 -> memory_order_relaxed
-wildcard 30 -> memory_order_relaxed
-wildcard 31 -> memory_order_release
-wildcard 32 -> memory_order_relaxed
-wildcard 33 -> memory_order_relaxed
-wildcard 34 -> memory_order_seq_cst
-wildcard 35 -> memory_order_acquire
-wildcard 36 -> memory_order_acquire
-wildcard 37 -> memory_order_relaxed
-wildcard 38 -> memory_order_relaxed
-wildcard 39 -> memory_order_seq_cst
-
-Result 7:
-wildcard 1 -> memory_order_relaxed
-wildcard 2 -> memory_order_relaxed
-wildcard 3 -> memory_order_relaxed
-wildcard 4 -> memory_order_relaxed
-wildcard 5 -> memory_order_relaxed
-wildcard 6 -> memory_order_relaxed
-wildcard 7 -> memory_order_release
-wildcard 8 -> memory_order_seq_cst
-wildcard 9 -> memory_order_relaxed
-wildcard 10 -> memory_order_relaxed
-wildcard 11 -> memory_order_relaxed
-wildcard 12 -> memory_order_acquire
-wildcard 14 -> memory_order_relaxed
-wildcard 15 -> memory_order_relaxed
-wildcard 16 -> memory_order_relaxed
-wildcard 17 -> memory_order_relaxed
-wildcard 18 -> memory_order_relaxed
-wildcard 19 -> memory_order_relaxed
-wildcard 20 -> memory_order_relaxed
-wildcard 21 -> memory_order_relaxed
-wildcard 22 -> memory_order_relaxed
-wildcard 23 -> memory_order_release
-wildcard 24 -> memory_order_relaxed
-wildcard 25 -> memory_order_acquire
-wildcard 26 -> memory_order_relaxed
-wildcard 27 -> memory_order_relaxed
-wildcard 28 -> memory_order_relaxed
-wildcard 29 -> memory_order_relaxed
-wildcard 30 -> memory_order_relaxed
-wildcard 31 -> memory_order_release
-wildcard 32 -> memory_order_relaxed
-wildcard 33 -> memory_order_relaxed
-wildcard 34 -> memory_order_seq_cst
-wildcard 35 -> memory_order_acquire
-wildcard 36 -> memory_order_acquire
-wildcard 37 -> memory_order_relaxed
-wildcard 38 -> memory_order_relaxed
-wildcard 39 -> memory_order_seq_cst
int c;
/**
- Making w39 seq_cst; the two steals and the take have the following:
+ Making the two fences (w8 & w34) seq_cst; the two steals and the take have the following:
t.CAS() (in steal1) b.store (in take)
fence() (in steal2) fence() (in take)
b.load() (in steal2) t.load() (in take)
push(q, 2);
push(q, 3);
//thrd_create(&t2, task, 0);
- //a=take(q);
- //c=take(q);
+ a=take(q);
+ c=take(q);
thrd_join(t1);
//thrd_join(t2);
int b;
int c;
-/** Making w14 & w15 release */
+/** Make w14 release, try to run with the following:
+ time ./run.sh chase-lev-deque-bugfix/testcase5_wildcard -m2 -y -u3 -tSCFENCE
+ -o fchase-lev-deque-bugfix/result4.txt -o weaken -x5000
+*/
-static void task1(void * param) {
- b=steal(q);
- //c=steal(q);
-}
-
-static void task2(void * param) {
+static void task(void * param) {
b=steal(q);
//c=steal(q);
}
q=create();
push(q, 1);
- thrd_create(&t1, task1, 0);
- thrd_create(&t2, task2, 0);
- a=take(q);
- push(q, 2);
- c=take(q);
//push(q, 2);
//push(q, 3);
+ thrd_create(&t1, task, 0);
+ //thrd_create(&t2, task, 0);
+ a=take(q);
+ //c=take(q);
thrd_join(t1);
- thrd_join(t2);
+ //thrd_join(t2);
/*
bool correct=true;
int b;
int c;
-static void task(void * param) {
- a=steal(q);
- printf("steal a=%d\n", a);
+/** Making w15 release */
+
+static void task1(void * param) {
+ b=steal(q);
+ //c=steal(q);
+}
+
+static void task2(void * param) {
+ b=steal(q);
+ //c=steal(q);
}
int user_main(int argc, char **argv)
{
thrd_t t1, t2;
q=create();
+
push(q, 1);
- thrd_create(&t1, task, 0);
- //thrd_create(&t2, task, 0);
+ thrd_create(&t1, task1, 0);
+ thrd_create(&t2, task2, 0);
+ a=take(q);
+ push(q, 2);
+ c=take(q);
//push(q, 2);
- //push(q, 4);
- b=take(q);
- printf("take b=%d\n", b);
- //c=take(q);
+ //push(q, 3);
thrd_join(t1);
- //thrd_join(t2);
+ thrd_join(t2);
/*
bool correct=true;