projects
/
model-checker-benchmarks.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
changes
[model-checker-benchmarks.git]
/
chase-lev-deque-bugfix
/
testcase3.c
diff --git
a/chase-lev-deque-bugfix/testcase3.c
b/chase-lev-deque-bugfix/testcase3.c
index 92f33ec409a27f4d2553057dcd0972d9857f3b2a..ed020144f59cfcec6f505a25be82fa59e9c28c0c 100644
(file)
--- a/
chase-lev-deque-bugfix/testcase3.c
+++ b/
chase-lev-deque-bugfix/testcase3.c
@@
-13,25
+13,27
@@
int a;
int b;
int c;
int b;
int c;
+/** Making CAS in steal() (w39) SC */
+
static void task(void * param) {
static void task(void * param) {
-
a
=steal(q);
-
printf("steal a=%d\n", a
);
+
b
=steal(q);
+
//c=steal(q
);
}
int user_main(int argc, char **argv)
{
thrd_t t1, t2;
q=create();
}
int user_main(int argc, char **argv)
{
thrd_t t1, t2;
q=create();
+
push(q, 1);
push(q, 1);
+ push(q, 2);
+ push(q, 3);
thrd_create(&t1, task, 0);
thrd_create(&t1, task, 0);
- //thrd_create(&t2, task, 0);
- //push(q, 2);
- //push(q, 4);
- b=take(q);
- printf("take b=%d\n", b);
+ thrd_create(&t2, task, 0);
+ a=take(q);
//c=take(q);
thrd_join(t1);
//c=take(q);
thrd_join(t1);
-
//
thrd_join(t2);
+ thrd_join(t2);
/*
bool correct=true;
/*
bool correct=true;