summaryrefslogtreecommitdiff
path: root/longlong.h
diff options
context:
space:
mode:
authortege <tege@gmplib.org>2006-11-04 14:00:50 +0100
committertege <tege@gmplib.org>2006-11-04 14:00:50 +0100
commit853de49875bdca2743f1878567a7afa301052e59 (patch)
tree71a42fb67225c947a24a6edfb4ce3fd858aa3270 /longlong.h
parentf2b99b5e9bc40b6e112c0b72b4c7c88732b75d97 (diff)
downloadgmp-853de49875bdca2743f1878567a7afa301052e59.tar.gz
(umul_ppmm) [mmix]: New.
Diffstat (limited to 'longlong.h')
-rw-r--r--longlong.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/longlong.h b/longlong.h
index b53fbee40..c92b6aed0 100644
--- a/longlong.h
+++ b/longlong.h
@@ -1036,6 +1036,11 @@ extern UWtype __MPN(udiv_qrnnd) _PROTO ((UWtype *, UWtype, UWtype, UWtype));
#define UDIV_TIME 140
#endif /* __mips */
+#if defined (__mmix__) && W_TYPE_SIZE == 64
+#define umul_ppmm(w1, w0, u, v) \
+ __asm__ ("MULU %0,%2,%3" : "=r" (w0), "=z" (w1) : "r" (u), "r" (v))
+#endif
+
#if defined (__ns32000__) && W_TYPE_SIZE == 32
#define umul_ppmm(w1, w0, u, v) \
({union {UDItype __ll; \