diff options
author | Al Viro <viro@ftp.linux.org.uk> | 2006-01-12 04:06:19 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-12 12:09:01 -0500 |
commit | 7f2633388d64c0489516af04e0d4cd9f01397a94 (patch) | |
tree | b116bd1e17c2eda24e43f829df468c58e71bb5ab /arch | |
parent | 77add9f3e6a486e5623f3e693ded216f155bd2a5 (diff) |
[PATCH] m68k: broken constraints on mulu.l
Too permissive constraint on mulu.l - the first argument should not be
an a-register. Fixed by replacing "g" with "dm"; with older gcc we got
lucky and it had never attempted mulu.l %a0, %d1:%d0. These days it
does, with predictable objections from as(1).
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/m68k/math-emu/multi_arith.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/m68k/math-emu/multi_arith.h b/arch/m68k/math-emu/multi_arith.h index 02251e5afd89..4ad0ca918e2e 100644 --- a/arch/m68k/math-emu/multi_arith.h +++ b/arch/m68k/math-emu/multi_arith.h | |||
@@ -366,7 +366,7 @@ static inline void fp_submant(struct fp_ext *dest, struct fp_ext *src1, | |||
366 | 366 | ||
367 | #define fp_mul64(desth, destl, src1, src2) ({ \ | 367 | #define fp_mul64(desth, destl, src1, src2) ({ \ |
368 | asm ("mulu.l %2,%1:%0" : "=d" (destl), "=d" (desth) \ | 368 | asm ("mulu.l %2,%1:%0" : "=d" (destl), "=d" (desth) \ |
369 | : "g" (src1), "0" (src2)); \ | 369 | : "dm" (src1), "0" (src2)); \ |
370 | }) | 370 | }) |
371 | #define fp_div64(quot, rem, srch, srcl, div) \ | 371 | #define fp_div64(quot, rem, srch, srcl, div) \ |
372 | asm ("divu.l %2,%1:%0" : "=d" (quot), "=d" (rem) \ | 372 | asm ("divu.l %2,%1:%0" : "=d" (quot), "=d" (rem) \ |