summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Rønne Petersen <alexrp@xamarin.com>2013-09-24 17:20:13 +0200
committerJo Shields <directhex@apebox.org>2013-10-23 15:00:55 +0100
commit9058bfed0e55534de60320f549e6b2c3cd6296d7 (patch)
tree7d6829dd0cd788f97245ee4d57a8b09a61981d5d
parentb3a340d07a3149208f8c2b0e35c16028dffdc3de (diff)
downloadmono-9058bfed0e55534de60320f549e6b2c3cd6296d7.tar.gz
Remove unneeded ARM code from atomic.c.
(cherry picked from commit bf0b8a1d1aa61d5123b2a812cc9c4665d2d97d93)
-rwxr-xr-xmono/utils/atomic.c31
1 files changed, 1 insertions, 30 deletions
diff --git a/mono/utils/atomic.c b/mono/utils/atomic.c
index 585ffd6cfc..c902c21fca 100755
--- a/mono/utils/atomic.c
+++ b/mono/utils/atomic.c
@@ -203,36 +203,7 @@ gint32 InterlockedExchangeAdd(volatile gint32 *dest, gint32 add)
#if defined (BROKEN_64BIT_ATOMICS_INTRINSIC)
-#if defined (TARGET_MACH) && defined (__arm__) && defined (HAVE_ARMV7)
-
-gint64 InterlockedCompareExchange64(volatile gint64 *dest, gint64 exch, gint64 comp) __attribute__ ((naked));
-
-gint64
-InterlockedCompareExchange64(volatile gint64 *dest, gint64 exch, gint64 comp)
-{
- __asm__ (
- "push {r4, r5, r6, r7}\n"
- "ldr r4, [sp, #16]\n"
- "dmb\n"
-"1:\n"
- "ldrexd r6, r7, [r0]\n"
- "cmp r7, r4\n"
- "bne 2f\n"
- "cmp r6, r3\n"
- "bne 2f\n"
- "strexd r5, r1, r2, [r0]\n"
- "cmp r5, #0\n"
- "bne 1b\n"
-"2:\n"
- "dmb\n"
- "mov r0, r6\n"
- "mov r1, r7\n"
- "pop {r4, r5, r6, r7}\n"
- "bx lr\n"
- );
-}
-
-#elif defined (TARGET_MACH) && (defined (__i386__) || defined (__x86_64__))
+#if defined (TARGET_OSX)
gint64
InterlockedCompareExchange64(volatile gint64 *dest, gint64 exch, gint64 comp)