mpi: add missing "cc" clobber for ARM assembly
authorJussi Kivilinna <jussi.kivilinna@iki.fi>
Wed, 3 Jul 2013 12:10:11 +0000 (15:10 +0300)
committerJussi Kivilinna <jussi.kivilinna@iki.fi>
Wed, 10 Jul 2013 18:53:42 +0000 (21:53 +0300)
* mpi/longlong.h [__arm__] (add_ssaaaa, sub_ddmmss): Add __CLOBBER_CC.
[__arm__][__ARM_ARCH <= 3] (umul_ppmm): Ditto.
--

Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>
mpi/longlong.h

index bb34fd7..0f860af 100644 (file)
@@ -194,7 +194,7 @@ extern UDItype __udiv_qrnnd ();
           : "%r" ((USItype)(ah)),                                      \
             "rI" ((USItype)(bh)),                                      \
             "%r" ((USItype)(al)),                                      \
-            "rI" ((USItype)(bl)))
+            "rI" ((USItype)(bl)) __CLOBBER_CC)
 #define sub_ddmmss(sh, sl, ah, al, bh, bl) \
   __asm__ ("subs %1, %4, %5\n"                                          \
           "sbc  %0, %2, %3"                                            \
@@ -203,7 +203,7 @@ extern UDItype __udiv_qrnnd ();
           : "r" ((USItype)(ah)),                                       \
             "rI" ((USItype)(bh)),                                      \
             "r" ((USItype)(al)),                                       \
-            "rI" ((USItype)(bl)))
+            "rI" ((USItype)(bl)) __CLOBBER_CC)
 /* The __ARM_ARCH define is provided by gcc 4.8 */
 #if (defined __ARM_ARCH && __ARM_ARCH <= 3) || \
     defined __ARM_ARCH_2__ || defined __ARM_ARCH_3__
@@ -225,7 +225,7 @@ extern UDItype __udiv_qrnnd ();
             "=r" ((USItype)(xl))                                       \
           : "r" ((USItype)(a)),                                        \
             "r" ((USItype)(b))                                         \
-          : "r0", "r1", "r2")
+          : "r0", "r1", "r2" __CLOBBER_CC)
 #else /* __ARM_ARCH >= 4 */
 #define umul_ppmm(xh, xl, a, b)                                         \
   __asm__ ("%@ Inlined umul_ppmm\n"                                     \