diff options
author | Mark Brown <broonie@linaro.org> | 2013-08-27 15:40:03 +0100 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-08-27 15:40:03 +0100 |
commit | dc1632321ba1e93dde25870e96cebe21b7d52517 (patch) | |
tree | d52d934c79b23f91654c571d983e1a6ec41b71fd /lib/mpi | |
parent | 8c193b8dce4f2a2474dc2bc39ec972454df9d439 (diff) | |
parent | a85f9da707366e856c0aad9e329db0cc59475290 (diff) |
Merge remote-tracking branch 'asoc/topic/dmic' into asoc-core
Diffstat (limited to 'lib/mpi')
-rw-r--r-- | lib/mpi/longlong.h | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/lib/mpi/longlong.h b/lib/mpi/longlong.h index d411355f238e..aac511417ad1 100644 --- a/lib/mpi/longlong.h +++ b/lib/mpi/longlong.h @@ -151,15 +151,12 @@ do { \ #endif /* __a29k__ */ #if defined(__alpha) && W_TYPE_SIZE == 64 -#define umul_ppmm(ph, pl, m0, m1) \ -do { \ - UDItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("umulh %r1,%2,%0" \ - : "=r" ((UDItype) ph) \ - : "%rJ" (__m0), \ - "rI" (__m1)); \ - (pl) = __m0 * __m1; \ - } while (0) +#define umul_ppmm(ph, pl, m0, m1) \ +do { \ + UDItype __m0 = (m0), __m1 = (m1); \ + (ph) = __builtin_alpha_umulh(__m0, __m1); \ + (pl) = __m0 * __m1; \ +} while (0) #define UMUL_TIME 46 #ifndef LONGLONG_STANDALONE #define udiv_qrnnd(q, r, n1, n0, d) \ @@ -167,7 +164,7 @@ do { UDItype __r; \ (q) = __udiv_qrnnd(&__r, (n1), (n0), (d)); \ (r) = __r; \ } while (0) -extern UDItype __udiv_qrnnd(); +extern UDItype __udiv_qrnnd(UDItype *, UDItype, UDItype, UDItype); #define UDIV_TIME 220 #endif /* LONGLONG_STANDALONE */ #endif /* __alpha */ |