diff options
7 files changed, 18 insertions, 16 deletions
diff --git a/libcxx/test/atomics/atomics.types.generic/address.pass.cpp b/libcxx/test/atomics/atomics.types.generic/address.pass.cpp index bf82ac4b3b6..b43959b4d57 100644 --- a/libcxx/test/atomics/atomics.types.generic/address.pass.cpp +++ b/libcxx/test/atomics/atomics.types.generic/address.pass.cpp @@ -96,14 +96,14 @@ do_test() assert(x == T(3)); assert(obj.compare_exchange_weak(x, T(1)) == false); assert(obj == T(2)); - assert(x == T(1)); + assert(x == T(2)); x = T(2); assert(obj.compare_exchange_strong(x, T(1)) == true); assert(obj == T(1)); assert(x == T(2)); assert(obj.compare_exchange_strong(x, T(0)) == false); assert(obj == T(1)); - assert(x == T(0)); + assert(x == T(1)); assert((obj = T(0)) == T(0)); assert(obj == T(0)); obj = T(2*sizeof(X)); diff --git a/libcxx/test/atomics/atomics.types.generic/bool.pass.cpp b/libcxx/test/atomics/atomics.types.generic/bool.pass.cpp index c1465546f1d..a9002ea48de 100644 --- a/libcxx/test/atomics/atomics.types.generic/bool.pass.cpp +++ b/libcxx/test/atomics/atomics.types.generic/bool.pass.cpp @@ -78,8 +78,9 @@ int main() assert(obj.compare_exchange_weak(x, true, std::memory_order_seq_cst) == false); assert(obj == false); - assert(x == true); + assert(x == false); obj.store(true); + x = true; assert(obj.compare_exchange_weak(x, false, std::memory_order_seq_cst, std::memory_order_seq_cst) == true); @@ -93,7 +94,7 @@ int main() assert(obj.compare_exchange_strong(x, true, std::memory_order_seq_cst) == false); assert(obj == false); - assert(x == true); + assert(x == false); x = true; obj.store(true); assert(obj.compare_exchange_strong(x, false, @@ -132,8 +133,9 @@ int main() assert(obj.compare_exchange_weak(x, true, std::memory_order_seq_cst) == false); assert(obj == false); - assert(x == true); + assert(x == false); obj.store(true); + x = true; assert(obj.compare_exchange_weak(x, false, std::memory_order_seq_cst, std::memory_order_seq_cst) == true); @@ -147,7 +149,7 @@ int main() assert(obj.compare_exchange_strong(x, true, std::memory_order_seq_cst) == false); assert(obj == false); - assert(x == true); + assert(x == false); x = true; obj.store(true); assert(obj.compare_exchange_strong(x, false, diff --git a/libcxx/test/atomics/atomics.types.generic/integral.pass.cpp b/libcxx/test/atomics/atomics.types.generic/integral.pass.cpp index ff204ee6179..fc678bcfae4 100644 --- a/libcxx/test/atomics/atomics.types.generic/integral.pass.cpp +++ b/libcxx/test/atomics/atomics.types.generic/integral.pass.cpp @@ -114,14 +114,14 @@ do_test() assert(x == T(3)); assert(obj.compare_exchange_weak(x, T(1)) == false); assert(obj == T(2)); - assert(x == T(1)); + assert(x == T(2)); x = T(2); assert(obj.compare_exchange_strong(x, T(1)) == true); assert(obj == T(1)); assert(x == T(2)); assert(obj.compare_exchange_strong(x, T(0)) == false); assert(obj == T(1)); - assert(x == T(0)); + assert(x == T(1)); assert((obj = T(0)) == T(0)); assert(obj == T(0)); assert(obj++ == T(0)); diff --git a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp index ee78eb22b96..2223de15511 100644 --- a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp +++ b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp @@ -34,7 +34,7 @@ test() assert(t == T(1)); assert(std::atomic_compare_exchange_strong(&a, &t, T(3)) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } { typedef std::atomic<T> A; @@ -46,7 +46,7 @@ test() assert(t == T(1)); assert(std::atomic_compare_exchange_strong(&a, &t, T(3)) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } } diff --git a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp index d7da071ece4..bc37ac45b9a 100644 --- a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp +++ b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp @@ -39,7 +39,7 @@ test() assert(std::atomic_compare_exchange_strong_explicit(&a, &t, T(3), std::memory_order_seq_cst, std::memory_order_seq_cst) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } { typedef std::atomic<T> A; @@ -53,7 +53,7 @@ test() assert(std::atomic_compare_exchange_strong_explicit(&a, &t, T(3), std::memory_order_seq_cst, std::memory_order_seq_cst) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } } diff --git a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp index b8757042333..56ba572b7aa 100644 --- a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp +++ b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp @@ -34,7 +34,7 @@ test() assert(t == T(1)); assert(std::atomic_compare_exchange_weak(&a, &t, T(3)) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } { typedef std::atomic<T> A; @@ -46,7 +46,7 @@ test() assert(t == T(1)); assert(std::atomic_compare_exchange_weak(&a, &t, T(3)) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } } diff --git a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp index 39582e789d8..b3a804b7d1d 100644 --- a/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp +++ b/libcxx/test/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp @@ -39,7 +39,7 @@ test() assert(std::atomic_compare_exchange_weak_explicit(&a, &t, T(3), std::memory_order_seq_cst, std::memory_order_seq_cst) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } { typedef std::atomic<T> A; @@ -53,7 +53,7 @@ test() assert(std::atomic_compare_exchange_weak_explicit(&a, &t, T(3), std::memory_order_seq_cst, std::memory_order_seq_cst) == false); assert(a == T(2)); - assert(t == T(3)); + assert(t == T(2)); } } |

