diff options
author | Marcus Brinkmann <[email protected]> | 2017-07-04 21:19:51 +0000 |
---|---|---|
committer | Marcus Brinkmann <[email protected]> | 2017-07-04 21:19:51 +0000 |
commit | 782f804765b6f4226fd77843e59f57dcca61b6fb (patch) | |
tree | e21652e5a624efd28fb39c31f4f6bc7551eb319d | |
parent | doc: Fix typo. (diff) | |
download | gnupg-782f804765b6f4226fd77843e59f57dcca61b6fb.tar.gz gnupg-782f804765b6f4226fd77843e59f57dcca61b6fb.zip |
mpi: Fix ARM assembler in longlong.h.
* mpi/longlong.h [__arm__] (add_ssaaaa, sub_ddmmss): Add __CLOBBER_CC.
[__arm__][__ARM_ARCH <= 3] (umul_ppmm): Add __AND_CLOBBER_CC.
--
This is a backport of libgcrypt 8aa4f2161 and 3b1cc9e6c.
Signed-off-by: Marcus Brinkmann <[email protected]>
GnuPG-bug-id: 3182
-rw-r--r-- | mpi/longlong.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mpi/longlong.h b/mpi/longlong.h index 4905268bd..0a28c670b 100644 --- a/mpi/longlong.h +++ b/mpi/longlong.h @@ -189,7 +189,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" \ @@ -198,7 +198,7 @@ extern UDItype __udiv_qrnnd (); : "r" ((USItype)(ah)), \ "rI" ((USItype)(bh)), \ "r" ((USItype)(al)), \ - "rI" ((USItype)(bl))) + "rI" ((USItype)(bl)) __CLOBBER_CC) #if defined __ARM_ARCH_2__ || defined __ARM_ARCH_3__ #define umul_ppmm(xh, xl, a, b) \ __asm__ ("%@ Inlined umul_ppmm\n" \ @@ -218,7 +218,7 @@ extern UDItype __udiv_qrnnd (); "=r" ((USItype)(xl)) \ : "r" ((USItype)(a)), \ "r" ((USItype)(b)) \ - : "r0", "r1", "r2") + : "r0", "r1", "r2" __AND_CLOBBER_CC) #else #define umul_ppmm(xh, xl, a, b) \ __asm__ ("%@ Inlined umul_ppmm\n" \ |