--- np2/i386c/ia32/instructions/bin_arith.c 2004/01/15 15:50:33 1.5 +++ np2/i386c/ia32/instructions/bin_arith.c 2004/02/18 02:03:37 1.8 @@ -1,4 +1,4 @@ -/* $Id: bin_arith.c,v 1.5 2004/01/15 15:50:33 monaka Exp $ */ +/* $Id: bin_arith.c,v 1.8 2004/02/18 02:03:37 yui Exp $ */ /* * Copyright (c) 2002-2003 NONAKA Kimihiro @@ -988,7 +988,7 @@ IMUL_GdEdId(void) PREPART_REG32_EA(op, src, out, 21, 24); GET_PCDWORD(dst); DWORD_IMUL(res, dst, src); - *out = res; + *out = (DWORD)res; } @@ -1130,9 +1130,9 @@ IDIV_EAXEd(DWORD op) tmp = (SQWORD)(((QWORD)CPU_EDX << 32) + (SQWORD)CPU_EAX); if (src != 0) { r = tmp / src; - if (((r + 0x80000000LL) & 0xffffffff00000000ULL) == 0) { + if (((r + SQWORD_CONST(0x80000000)) & QWORD_CONST(0xffffffff00000000)) == 0) { CPU_EAX = (SDWORD)r; - CPU_EDX = tmp % src; + CPU_EDX = (SDWORD)(tmp % src); return; } }