diff options
author | dim <dim@FreeBSD.org> | 2015-06-20 19:34:50 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-06-20 19:34:50 +0000 |
commit | e109f99dcb6c95c84bbec22229de29a25491f7c2 (patch) | |
tree | d142d742b698973a366ae768a3f4033924e314c8 /contrib/gcc/longlong.h | |
parent | 238df27d058d0d8912acf0a186d3f43289a0a2b6 (diff) | |
parent | cb167b45a82327b0d6d88e85e3d6e2e326291ee4 (diff) | |
download | FreeBSD-src-e109f99dcb6c95c84bbec22229de29a25491f7c2.zip FreeBSD-src-e109f99dcb6c95c84bbec22229de29a25491f7c2.tar.gz |
Merge ^/head r284188 through r284643.
Diffstat (limited to 'contrib/gcc/longlong.h')
-rw-r--r-- | contrib/gcc/longlong.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/contrib/gcc/longlong.h b/contrib/gcc/longlong.h index 304ee8d..01f8885 100644 --- a/contrib/gcc/longlong.h +++ b/contrib/gcc/longlong.h @@ -584,11 +584,11 @@ UDItype __umulsidi3 (USItype, USItype); #if defined (__mips__) && W_TYPE_SIZE == 32 #define umul_ppmm(w1, w0, u, v) \ - __asm__ ("multu %2,%3" \ - : "=l" ((USItype) (w0)), \ - "=h" ((USItype) (w1)) \ - : "d" ((USItype) (u)), \ - "d" ((USItype) (v))) + do { \ + UDItype __x = (UDItype) (USItype) (u) * (USItype) (v); \ + w1 = __x >> 32; \ + w0 = __x; \ + } while (0) #define UMUL_TIME 10 #define UDIV_TIME 100 #endif /* __mips__ */ |