Commit f4432e94 by Richard Kenner

(pyr umul_ppmm): Use code `R' for REG.

From-SVN: r10390
parent 93291dd2
/* longlong.h -- definitions for mixed size 32/64 bit arithmetic.
Copyright (C) 1991, 1992, 1994 Free Software Foundation, Inc.
Copyright (C) 1991, 1992, 1994, 1995 Free Software Foundation, Inc.
This definition file is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public
......@@ -730,20 +730,17 @@
"g" ((USItype)(bh)), \
"1" ((USItype)(al)), \
"g" ((USItype)(bl)))
/* This insn doesn't work on ancient pyramids. */
/* This insn works on Pyramids with AP, XP, or MI CPUs, but not with SP. */
#define umul_ppmm(w1, w0, u, v) \
({union { \
UDItype __ll; \
({union {UDItype __ll; \
struct {USItype __h, __l;} __i; \
} __xx; \
__xx.__i.__l = u; \
__asm__ ("uemul %3,%0" \
: "=r" (__xx.__i.__h), \
"=r" (__xx.__i.__l) \
: "1" (__xx.__i.__l), \
__asm__ ("movw %1,%R0
uemul %2,%0" \
: "=&r" (__xx.__ll) \
: "g" ((USItype) (u)), \
"g" ((USItype)(v))); \
(w1) = __xx.__i.__h; \
(w0) = __xx.__i.__l;})
(w1) = __xx.__i.__h; (w0) = __xx.__i.__l;})
#endif /* __pyr__ */
#if defined (__ibm032__) /* RT/ROMP */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment