mirror of
https://github.com/qemu/qemu.git
synced 2024-11-24 19:33:39 +08:00
M68k build fix.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2212 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
483dcf538e
commit
2d37be61e3
@ -412,7 +412,10 @@ OP(divu)
|
|||||||
quot = num / den;
|
quot = num / den;
|
||||||
rem = num % den;
|
rem = num % den;
|
||||||
flags = 0;
|
flags = 0;
|
||||||
if (PARAM1 && quot > 0xffff)
|
/* Avoid using a PARAM1 of zero. This breaks dyngen because it uses
|
||||||
|
the address of a symbol, and gcc knows symbols can't have address
|
||||||
|
zero. */
|
||||||
|
if (PARAM1 == 2 && quot > 0xffff)
|
||||||
flags |= CCF_V;
|
flags |= CCF_V;
|
||||||
if (quot == 0)
|
if (quot == 0)
|
||||||
flags |= CCF_Z;
|
flags |= CCF_Z;
|
||||||
@ -439,7 +442,7 @@ OP(divs)
|
|||||||
quot = num / den;
|
quot = num / den;
|
||||||
rem = num % den;
|
rem = num % den;
|
||||||
flags = 0;
|
flags = 0;
|
||||||
if (PARAM1 && quot != (int16_t)quot)
|
if (PARAM1 == 2 && quot != (int16_t)quot)
|
||||||
flags |= CCF_V;
|
flags |= CCF_V;
|
||||||
if (quot == 0)
|
if (quot == 0)
|
||||||
flags |= CCF_Z;
|
flags |= CCF_Z;
|
||||||
|
@ -747,9 +747,9 @@ DISAS_INSN(divl)
|
|||||||
den = gen_ea(s, insn, OS_LONG, 0, NULL);
|
den = gen_ea(s, insn, OS_LONG, 0, NULL);
|
||||||
gen_op_mov32(QREG_DIV2, den);
|
gen_op_mov32(QREG_DIV2, den);
|
||||||
if (ext & 0x0800) {
|
if (ext & 0x0800) {
|
||||||
gen_op_divs(0);
|
gen_op_divs(2);
|
||||||
} else {
|
} else {
|
||||||
gen_op_divu(0);
|
gen_op_divu(2);
|
||||||
}
|
}
|
||||||
if (num == reg) {
|
if (num == reg) {
|
||||||
/* div */
|
/* div */
|
||||||
|
Loading…
Reference in New Issue
Block a user