[Libreoffice-commits] .: sal/osl

Bjoern Michaelsen bmichaelsen at kemper.freedesktop.org
Mon Dec 5 13:08:21 PST 2011


 sal/osl/unx/interlck.c |   45 ---------------------------------------------
 1 file changed, 45 deletions(-)

New commits:
commit efd750d8433aade624d09f7c9d37516c9e073cda
Author: Bjoern Michaelsen <bjoern.michaelsen at canonical.com>
Date:   Mon Dec 5 21:56:12 2011 +0100

    lp#726529: inline arm assembler is obsolete by now

diff --git a/sal/osl/unx/interlck.c b/sal/osl/unx/interlck.c
index a32f67c..bf9ff62 100644
--- a/sal/osl/unx/interlck.c
+++ b/sal/osl/unx/interlck.c
@@ -37,51 +37,6 @@
 #error please use asm/interlck_sparc.s
 #elif defined ( SOLARIS) && defined ( X86 )
 #error please use asm/interlck_x86.s
-#elif defined ( ARM ) && (( __GNUC__ < 4 ) || (( __GNUC__ == 4) && ( __GNUC_MINOR__ < 6 ))) && ( __ARM_ARCH__ >= 6)
-// assembler implementation for gcc <4.6 on arm
-// originally contributed by Eric Bachard / OOo4Kids
-// replaced with the asm code generated by Linaro gcc 4.5
-// which includes memory barriers to make it SMP-safe
-// #i117017# and lp#726529
-oslInterlockedCount SAL_CALL osl_incrementInterlockedCount(oslInterlockedCount* pCount)
-{
-    register oslInterlockedCount nCount __asm__ ("r1");
-    int nResult;
-
-    __asm__ __volatile__ (
-"     dmb\n"
-"1:   ldrex %0, [%3]\n"
-"     add %0, %0, #1\n"
-"     strex %1, %0, [%3]\n"
-"     teq %1, #0\n"
-"     bne 1b\n"
-"     dmb\n"
-        : "=&r" (nCount), "=&r" (nResult), "=m" (*pCount)
-        : "r" (pCount)
-        : "memory");
-
-    return nCount;
-}
-
-oslInterlockedCount SAL_CALL osl_decrementInterlockedCount(oslInterlockedCount* pCount)
-{
-    register oslInterlockedCount nCount __asm__ ("r1");
-    int nResult;
-
-    __asm__ __volatile__ (
-"     dmb\n"
-"0:   ldrex %0, [%3]\n"
-"     sub %0, %0, #1\n"
-"     strex %1, %0, [%3]\n"
-"     teq %1, #0\n"
-"     bne 0b\n"
-"     dmb\n"
-        : "=&r" (nCount), "=&r" (nResult), "=m" (*pCount)
-        : "r" (pCount)
-        : "memory");
-
-    return nCount;
-}
 #elif defined ( GCC ) && ( defined ( X86 ) || defined ( X86_64 ) )
 /* That's possible on x86-64 too since oslInterlockedCount is a sal_Int32 */
 


More information about the Libreoffice-commits mailing list