[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>

authored by Al Viro and committed by Linus Torvalds 7f263338 77add9f3

+1 -1
+1 -1
arch/m68k/math-emu/multi_arith.h
··· 366 367 #define fp_mul64(desth, destl, src1, src2) ({ \ 368 asm ("mulu.l %2,%1:%0" : "=d" (destl), "=d" (desth) \ 369 - : "g" (src1), "0" (src2)); \ 370 }) 371 #define fp_div64(quot, rem, srch, srcl, div) \ 372 asm ("divu.l %2,%1:%0" : "=d" (quot), "=d" (rem) \
··· 366 367 #define fp_mul64(desth, destl, src1, src2) ({ \ 368 asm ("mulu.l %2,%1:%0" : "=d" (destl), "=d" (desth) \ 369 + : "dm" (src1), "0" (src2)); \ 370 }) 371 #define fp_div64(quot, rem, srch, srcl, div) \ 372 asm ("divu.l %2,%1:%0" : "=d" (quot), "=d" (rem) \