summaryrefslogtreecommitdiff
path: root/longlong.h
diff options
context:
space:
mode:
authorKevin Ryde <user42@zip.com.au>2003-08-19 01:54:30 +0200
committerKevin Ryde <user42@zip.com.au>2003-08-19 01:54:30 +0200
commit1b9274691d8bf98028496754e684fc70b8285e63 (patch)
tree6aba116f6dd543d7492e88afb7563bf5ef69b02d /longlong.h
parent350c1624efdf99d8c0c93232e4f3a5ec256ac0fd (diff)
downloadgmp-1b9274691d8bf98028496754e684fc70b8285e63.tar.gz
* longlong.h (count_trailing_zeros) [x86_64]: Use "%q0" to force
64-bit register destination. Pointed out by Torbjorn.
Diffstat (limited to 'longlong.h')
-rw-r--r--longlong.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/longlong.h b/longlong.h
index 3b11a2067..7764e0d8d 100644
--- a/longlong.h
+++ b/longlong.h
@@ -714,10 +714,8 @@ extern UWtype __MPN(udiv_qrnnd) _PROTO ((UWtype *, UWtype, UWtype, UWtype));
} while (0)
#define count_trailing_zeros(count, x) \
do { \
- UDItype __cbtmp; \
ASSERT ((x) != 0); \
- __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \
- (count) = __cbtmp; \
+ __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \
} while (0)
#endif /* x86_64 */