re PR bootstrap/56714 (Bootstrap failure libitm/local_atomic:1580:3: error: always_in...
authorGerald Pfeifer <gerald@pfeifer.com>
Wed, 5 Jun 2013 16:48:14 +0000 (16:48 +0000)
committerGerald Pfeifer <gerald@gcc.gnu.org>
Wed, 5 Jun 2013 16:48:14 +0000 (16:48 +0000)
PR bootstrap/56714
* local_atomic (__always_inline): Always define our version.
(__calculate_memory_order): Mark inline.
(atomic_thread_fence): Ditto.
(atomic_signal_fence): Ditto.
(atomic_bool::atomic_flag_test_and_set_explicit): Ditto.
(atomic_bool::atomic_flag_clear_explicit): Ditto.
(atomic_bool::atomic_flag_test_and_set): Ditto.
(atomic_bool::atomic_flag_clear): Ditto.

From-SVN: r199704

libitm/ChangeLog
libitm/local_atomic

index 04490fd8b1d9b0f469b9acf4a7e2c837c22b51b6..ed9114b91474a45fa4174ba700dff561e67788bb 100644 (file)
@@ -1,3 +1,15 @@
+2013-03-31  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       PR bootstrap/56714
+       * local_atomic (__always_inline): Always define our version.
+       (__calculate_memory_order): Mark inline.
+       (atomic_thread_fence): Ditto.
+       (atomic_signal_fence): Ditto.
+       (atomic_bool::atomic_flag_test_and_set_explicit): Ditto.
+       (atomic_bool::atomic_flag_clear_explicit): Ditto.
+       (atomic_bool::atomic_flag_test_and_set): Ditto.
+       (atomic_bool::atomic_flag_clear): Ditto.
+
 2013-04-23  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
 
        * config/s390/sjlj.S: New file.
index 4cd961af9ba3f2248360153571a36b6fc2cd79cd..f6bbb11695c35f51e01e5edb27130267884761ec 100644 (file)
@@ -41,9 +41,8 @@
 #ifndef _GLIBCXX_ATOMIC
 #define _GLIBCXX_ATOMIC 1
 
-#ifndef __always_inline
-#define __always_inline inline __attribute__((always_inline))
-#endif
+#undef  __always_inline
+#define __always_inline __attribute__((always_inline))
 
 // #pragma GCC system_header
 
@@ -75,7 +74,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
       memory_order_seq_cst
     } memory_order;
 
-  __always_inline memory_order
+  inline __always_inline memory_order
   __calculate_memory_order(memory_order __m) noexcept
   {
     const bool __cond1 = __m == memory_order_release;
@@ -85,13 +84,13 @@ namespace std // _GLIBCXX_VISIBILITY(default)
     return __mo2;
   }
 
-  __always_inline void
+  inline __always_inline void
   atomic_thread_fence(memory_order __m) noexcept
   {
     __atomic_thread_fence (__m);
   }
 
-  __always_inline void
+  inline __always_inline void
   atomic_signal_fence(memory_order __m) noexcept
   {
     __atomic_thread_fence (__m);
@@ -1545,38 +1544,38 @@ namespace std // _GLIBCXX_VISIBILITY(default)
 
 
   // Function definitions, atomic_flag operations.
-  __always_inline bool
+  inline __always_inline bool
   atomic_flag_test_and_set_explicit(atomic_flag* __a,
                                    memory_order __m) noexcept
   { return __a->test_and_set(__m); }
 
-  __always_inline bool
+  inline __always_inline bool
   atomic_flag_test_and_set_explicit(volatile atomic_flag* __a,
                                    memory_order __m) noexcept
   { return __a->test_and_set(__m); }
 
-  __always_inline void
+  inline __always_inline void
   atomic_flag_clear_explicit(atomic_flag* __a, memory_order __m) noexcept
   { __a->clear(__m); }
 
-  __always_inline void
+  inline __always_inline void
   atomic_flag_clear_explicit(volatile atomic_flag* __a,
                             memory_order __m) noexcept
   { __a->clear(__m); }
 
-  __always_inline bool
+  inline __always_inline bool
   atomic_flag_test_and_set(atomic_flag* __a) noexcept
   { return atomic_flag_test_and_set_explicit(__a, memory_order_seq_cst); }
 
-  __always_inline bool
+  inline __always_inline bool
   atomic_flag_test_and_set(volatile atomic_flag* __a) noexcept
   { return atomic_flag_test_and_set_explicit(__a, memory_order_seq_cst); }
 
-  __always_inline void
+  inline __always_inline void
   atomic_flag_clear(atomic_flag* __a) noexcept
   { atomic_flag_clear_explicit(__a, memory_order_seq_cst); }
 
-  __always_inline void
+  inline __always_inline void
   atomic_flag_clear(volatile atomic_flag* __a) noexcept
   { atomic_flag_clear_explicit(__a, memory_order_seq_cst); }