Module: xenomai-2.5
Branch: master
Commit: 88ee7c9f4489a0e4d8f54597fba6b8a9b218de8c
URL:    
http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=88ee7c9f4489a0e4d8f54597fba6b8a9b218de8c

Author: Gilles Chanteperdrix <gilles.chanteperd...@xenomai.org>
Date:   Thu Feb  4 15:19:12 2010 +0100

arm: fix inline assembly for older binutils releases.

---

 include/asm-arm/arith.h |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/include/asm-arm/arith.h b/include/asm-arm/arith.h
index 9af5c5c..e86975c 100644
--- a/include/asm-arm/arith.h
+++ b/include/asm-arm/arith.h
@@ -32,6 +32,7 @@ rthal_arm_nodiv_llimd(const long long op,
 
 #include <asm-generic/xenomai/arith.h>
 
+#if __LINUX_ARM_ARCH__ >= 4
 #define rthal_arm_nodiv_ullimd_str                     \
        "umull %[tl], %[rl], %[opl], %[fracl]\n\t"      \
        "umull %[rm], %[rh], %[oph], %[frach]\n\t"      \
@@ -49,8 +50,6 @@ rthal_arm_nodiv_llimd(const long long op,
        "umlal %[rm], %[rh], %[opl], %[integ]\n\t"      \
        "mla %[rh], %[oph], %[integ], %[rh]\n\t"
 
-
-#if __LINUX_ARM_ARCH__ >= 4
 static inline __attribute__((__const__)) unsigned long long
 rthal_arm_nodiv_ullimd(const unsigned long long op,
                       const unsigned long long frac,
@@ -101,7 +100,7 @@ rthal_arm_nodiv_llimd(const long long op,
        __rthal_u64tou32(op, oph, opl);
        __rthal_u64tou32(frac, frach, fracl);
        
-       __asm__ ("lsrs %[s], %[oph], #30\n\t"
+       __asm__ ("movs %[s], %[oph], lsr #30\n\t"
                 "beq 1f\n\t"
                 "rsbs  %[opl], %[opl], #0\n\t"
                 "rsc  %[oph], %[oph], #0\n"


_______________________________________________
Xenomai-git mailing list
Xenomai-git@gna.org
https://mail.gna.org/listinfo/xenomai-git

Reply via email to