parent
3cd836c1d8
commit
fafe446d0e
3 changed files with 0 additions and 127 deletions
|
@ -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 @@
|
||||||
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 @@
|
||||||
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 a new issue