mirror of
https://frontier.innolan.net/github/amigaos-cross-toolchain6.git
synced 2024-10-19 10:29:55 +00:00
26 lines
742 B
Diff
26 lines
742 B
Diff
--- gcc-3.4.6/libstdc++-v3/config/cpu/m68k/atomicity.h 2004-03-18 18:36:28.000000000 +0100
|
|
+++ gcc-3.4.6-patched/libstdc++-v3/config/cpu/m68k/atomicity.h 2013-05-19 20:23:32.000000000 +0200
|
|
@@ -31,7 +31,21 @@
|
|
|
|
namespace __gnu_cxx
|
|
{
|
|
-#if ( defined(__mc68020__) || defined(__mc68030__) \
|
|
+#if defined(__amigaos__)
|
|
+
|
|
+ _Atomic_word
|
|
+ __attribute__ ((__unused__))
|
|
+ __exchange_and_add (volatile _Atomic_word *__mem, int __val)
|
|
+ {
|
|
+ _Atomic_word __result;
|
|
+
|
|
+ __result = *__mem;
|
|
+ *__mem = __result + __val;
|
|
+
|
|
+ return __result;
|
|
+ }
|
|
+
|
|
+#elif ( defined(__mc68020__) || defined(__mc68030__) \
|
|
|| defined(__mc68040__) || defined(__mc68060__) ) \
|
|
&& !defined(__mcpu32__)
|
|
// These variants support compare-and-swap.
|