Wladimir J. van der Laan
9 years ago
3 changed files with 0 additions and 127 deletions
@ -1,35 +0,0 @@
@@ -1,35 +0,0 @@
|
||||
diff --git a/include/boost/atomic/detail/cas128strong.hpp b/include/boost/atomic/detail/cas128strong.hpp
|
||||
index 906c13e..dcb4d7d 100644
|
||||
--- a/include/boost/atomic/detail/cas128strong.hpp
|
||||
+++ b/include/boost/atomic/detail/cas128strong.hpp
|
||||
@@ -196,15 +196,17 @@ class base_atomic<T, void, 16, Sign>
|
||||
|
||||
public: |
||||
BOOST_DEFAULTED_FUNCTION(base_atomic(void), {}) |
||||
- explicit base_atomic(value_type const& v) BOOST_NOEXCEPT : v_(0)
|
||||
+ explicit base_atomic(value_type const& v) BOOST_NOEXCEPT
|
||||
{ |
||||
+ memset(&v_, 0, sizeof(v_));
|
||||
memcpy(&v_, &v, sizeof(value_type)); |
||||
} |
||||
|
||||
void |
||||
store(value_type const& value, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT |
||||
{ |
||||
- storage_type value_s = 0;
|
||||
+ storage_type value_s;
|
||||
+ memset(&value_s, 0, sizeof(value_s));
|
||||
memcpy(&value_s, &value, sizeof(value_type)); |
||||
platform_fence_before_store(order); |
||||
platform_store128(value_s, &v_); |
||||
@@ -247,7 +249,9 @@ class base_atomic<T, void, 16, Sign>
|
||||
memory_order success_order, |
||||
memory_order failure_order) volatile BOOST_NOEXCEPT |
||||
{ |
||||
- storage_type expected_s = 0, desired_s = 0;
|
||||
+ storage_type expected_s, desired_s;
|
||||
+ memset(&expected_s, 0, sizeof(expected_s));
|
||||
+ memset(&desired_s, 0, sizeof(desired_s));
|
||||
memcpy(&expected_s, &expected, sizeof(value_type)); |
||||
memcpy(&desired_s, &desired, sizeof(value_type)); |
||||
|
@ -1,55 +0,0 @@
@@ -1,55 +0,0 @@
|
||||
diff --git a/include/boost/atomic/detail/gcc-atomic.hpp b/include/boost/atomic/detail/gcc-atomic.hpp
|
||||
index a130590..4af99a1 100644
|
||||
--- a/include/boost/atomic/detail/gcc-atomic.hpp
|
||||
+++ b/include/boost/atomic/detail/gcc-atomic.hpp
|
||||
@@ -958,14 +958,16 @@ class base_atomic<T, void, 16, Sign>
|
||||
|
||||
public: |
||||
BOOST_DEFAULTED_FUNCTION(base_atomic(void), {}) |
||||
- explicit base_atomic(value_type const& v) BOOST_NOEXCEPT : v_(0)
|
||||
+ explicit base_atomic(value_type const& v) BOOST_NOEXCEPT
|
||||
{ |
||||
+ memset(&v_, 0, sizeof(v_));
|
||||
memcpy(&v_, &v, sizeof(value_type)); |
||||
} |
||||
|
||||
void store(value_type const& v, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT |
||||
{ |
||||
- storage_type tmp = 0;
|
||||
+ storage_type tmp;
|
||||
+ memset(&tmp, 0, sizeof(tmp));
|
||||
memcpy(&tmp, &v, sizeof(value_type)); |
||||
__atomic_store_n(&v_, tmp, atomics::detail::convert_memory_order_to_gcc(order)); |
||||
} |
||||
@@ -980,7 +982,8 @@ class base_atomic<T, void, 16, Sign>
|
||||
|
||||
value_type exchange(value_type const& v, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT |
||||
{ |
||||
- storage_type tmp = 0;
|
||||
+ storage_type tmp;
|
||||
+ memset(&tmp, 0, sizeof(tmp));
|
||||
memcpy(&tmp, &v, sizeof(value_type)); |
||||
tmp = __atomic_exchange_n(&v_, tmp, atomics::detail::convert_memory_order_to_gcc(order)); |
||||
value_type res; |
||||
@@ -994,7 +997,9 @@ class base_atomic<T, void, 16, Sign>
|
||||
memory_order success_order, |
||||
memory_order failure_order) volatile BOOST_NOEXCEPT |
||||
{ |
||||
- storage_type expected_s = 0, desired_s = 0;
|
||||
+ storage_type expected_s, desired_s;
|
||||
+ memset(&expected_s, 0, sizeof(expected_s));
|
||||
+ memset(&desired_s, 0, sizeof(desired_s));
|
||||
memcpy(&expected_s, &expected, sizeof(value_type)); |
||||
memcpy(&desired_s, &desired, sizeof(value_type)); |
||||
const bool success = __atomic_compare_exchange_n(&v_, &expected_s, desired_s, false, |
||||
@@ -1010,7 +1015,9 @@ class base_atomic<T, void, 16, Sign>
|
||||
memory_order success_order, |
||||
memory_order failure_order) volatile BOOST_NOEXCEPT |
||||
{ |
||||
- storage_type expected_s = 0, desired_s = 0;
|
||||
+ storage_type expected_s, desired_s;
|
||||
+ memset(&expected_s, 0, sizeof(expected_s));
|
||||
+ memset(&desired_s, 0, sizeof(desired_s));
|
||||
memcpy(&expected_s, &expected, sizeof(value_type)); |
||||
memcpy(&desired_s, &desired, sizeof(value_type)); |
||||
const bool success = __atomic_compare_exchange_n(&v_, &expected_s, desired_s, true, |
@ -1,37 +0,0 @@
@@ -1,37 +0,0 @@
|
||||
From eec808554936ae068b23df07ab54d4dc6302a695 Mon Sep 17 00:00:00 2001 |
||||
From: jzmaddock <jzmaddock@gmail.com> |
||||
Date: Sat, 23 Aug 2014 09:38:02 +0100 |
||||
Subject: [PATCH] Fix BOOST_NO_CXX11_VARIADIC_TEMPLATES definition - the |
||||
feature was introduced in GCC 4.4. |
||||
|
||||
---
|
||||
include/boost/config/compiler/gcc.hpp | 9 +-------- |
||||
1 file changed, 1 insertion(+), 8 deletions(-) |
||||
|
||||
diff --git a/include/boost/config/compiler/gcc.hpp b/include/boost/config/compiler/gcc.hpp
|
||||
index f37159d..97d8a18 100644
|
||||
--- a/include/boost/config/compiler/gcc.hpp
|
||||
+++ b/include/boost/config/compiler/gcc.hpp
|
||||
@@ -154,14 +154,6 @@
|
||||
# define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS |
||||
# define BOOST_NO_CXX11_RVALUE_REFERENCES |
||||
# define BOOST_NO_CXX11_STATIC_ASSERT |
||||
-
|
||||
-// Variadic templates compiler:
|
||||
-// http://www.generic-programming.org/~dgregor/cpp/variadic-templates.html
|
||||
-# if defined(__VARIADIC_TEMPLATES) || (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4) && defined(__GXX_EXPERIMENTAL_CXX0X__))
|
||||
-# define BOOST_HAS_VARIADIC_TMPL
|
||||
-# else
|
||||
-# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
|
||||
-# endif
|
||||
#endif |
||||
|
||||
// C++0x features in 4.4.n and later |
||||
@@ -176,6 +168,7 @@
|
||||
# define BOOST_NO_CXX11_DELETED_FUNCTIONS |
||||
# define BOOST_NO_CXX11_TRAILING_RESULT_TYPES |
||||
# define BOOST_NO_CXX11_INLINE_NAMESPACES |
||||
+# define BOOST_NO_CXX11_VARIADIC_TEMPLATES
|
||||
#endif |
||||
|
||||
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) |
Loading…
Reference in new issue