aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86/x86emu/fpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/hw/xfree86/x86emu/fpu.c')
-rw-r--r--xorg-server/hw/xfree86/x86emu/fpu.c449
1 files changed, 230 insertions, 219 deletions
diff --git a/xorg-server/hw/xfree86/x86emu/fpu.c b/xorg-server/hw/xfree86/x86emu/fpu.c
index fbc602da5..0dab05ce3 100644
--- a/xorg-server/hw/xfree86/x86emu/fpu.c
+++ b/xorg-server/hw/xfree86/x86emu/fpu.c
@@ -42,7 +42,8 @@
/*----------------------------- Implementation ----------------------------*/
/* opcode=0xd8 */
-void x86emuOp_esc_coprocess_d8(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_d8(u8 X86EMU_UNUSED(op1))
{
START_OF_INSTR();
DECODE_PRINTF("ESC D8\n");
@@ -89,10 +90,11 @@ static const char *x86emu_fpu_op_d9_tab1[] = {
"FRNDINT", "FSCALE", "ESC_D9", "ESC_D9",
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xd9 */
-void x86emuOp_esc_coprocess_d9(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_d9(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -103,56 +105,58 @@ void x86emuOp_esc_coprocess_d9(u8 X86EMU_UNUSED(op1))
#ifdef DEBUG
if (mod != 3) {
DECODE_PRINTINSTR32(x86emu_fpu_op_d9_tab, mod, rh, rl);
- } else {
+ }
+ else {
DECODE_PRINTF(x86emu_fpu_op_d9_tab1[(rh << 3) + rl]);
}
#endif
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
DECODE_PRINTF("\n");
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
DECODE_PRINTF("\n");
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
DECODE_PRINTF("\n");
break;
- case 3: /* register to register */
- stkelem = (u8)rl;
- if (rh < 4) {
- DECODE_PRINTF2("ST(%d)\n", stkelem);
- } else {
- DECODE_PRINTF("\n");
- }
+ case 3: /* register to register */
+ stkelem = (u8) rl;
+ if (rh < 4) {
+ DECODE_PRINTF2("ST(%d)\n", stkelem);
+ }
+ else {
+ DECODE_PRINTF("\n");
+ }
break;
}
#ifdef X86EMU_FPU_PRESENT
/* execute */
switch (mod) {
- case 3:
+ case 3:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_R_fld(X86EMU_FPU_STKTOP, stkelem);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fxch(X86EMU_FPU_STKTOP, stkelem);
break;
- case 2:
+ case 2:
switch (rl) {
- case 0:
+ case 0:
x86emu_fpu_R_nop();
break;
- default:
+ default:
x86emu_fpu_illegal();
break;
}
- case 3:
+ case 3:
x86emu_fpu_R_fstp(X86EMU_FPU_STKTOP, stkelem);
break;
- case 4:
+ case 4:
switch (rl) {
case 0:
x86emu_fpu_R_fchs(X86EMU_FPU_STKTOP);
@@ -173,126 +177,126 @@ void x86emuOp_esc_coprocess_d9(u8 X86EMU_UNUSED(op1))
}
break;
- case 5:
+ case 5:
switch (rl) {
- case 0:
+ case 0:
x86emu_fpu_R_fld1(X86EMU_FPU_STKTOP);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fldl2t(X86EMU_FPU_STKTOP);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fldl2e(X86EMU_FPU_STKTOP);
break;
- case 3:
+ case 3:
x86emu_fpu_R_fldpi(X86EMU_FPU_STKTOP);
break;
- case 4:
+ case 4:
x86emu_fpu_R_fldlg2(X86EMU_FPU_STKTOP);
break;
- case 5:
+ case 5:
x86emu_fpu_R_fldln2(X86EMU_FPU_STKTOP);
break;
- case 6:
+ case 6:
x86emu_fpu_R_fldz(X86EMU_FPU_STKTOP);
break;
- default:
+ default:
/* 7 */
x86emu_fpu_illegal();
break;
}
break;
- case 6:
+ case 6:
switch (rl) {
- case 0:
+ case 0:
x86emu_fpu_R_f2xm1(X86EMU_FPU_STKTOP);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fyl2x(X86EMU_FPU_STKTOP);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fptan(X86EMU_FPU_STKTOP);
break;
- case 3:
+ case 3:
x86emu_fpu_R_fpatan(X86EMU_FPU_STKTOP);
break;
- case 4:
+ case 4:
x86emu_fpu_R_fxtract(X86EMU_FPU_STKTOP);
break;
- case 5:
+ case 5:
x86emu_fpu_illegal();
break;
- case 6:
+ case 6:
x86emu_fpu_R_decstp();
break;
- case 7:
+ case 7:
x86emu_fpu_R_incstp();
break;
}
break;
- case 7:
+ case 7:
switch (rl) {
- case 0:
+ case 0:
x86emu_fpu_R_fprem(X86EMU_FPU_STKTOP);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fyl2xp1(X86EMU_FPU_STKTOP);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fsqrt(X86EMU_FPU_STKTOP);
break;
- case 3:
+ case 3:
x86emu_fpu_illegal();
break;
- case 4:
+ case 4:
x86emu_fpu_R_frndint(X86EMU_FPU_STKTOP);
break;
- case 5:
+ case 5:
x86emu_fpu_R_fscale(X86EMU_FPU_STKTOP);
break;
- case 6:
- case 7:
- default:
+ case 6:
+ case 7:
+ default:
x86emu_fpu_illegal();
break;
}
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_fld(X86EMU_FPU_FLOAT, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_illegal();
break;
- case 2:
+ case 2:
x86emu_fpu_M_fst(X86EMU_FPU_FLOAT, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_fstp(X86EMU_FPU_FLOAT, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_M_fldenv(X86EMU_FPU_WORD, destoffset);
break;
- case 5:
+ case 5:
x86emu_fpu_M_fldcw(X86EMU_FPU_WORD, destoffset);
break;
- case 6:
+ case 6:
x86emu_fpu_M_fstenv(X86EMU_FPU_WORD, destoffset);
break;
- case 7:
+ case 7:
x86emu_fpu_M_fstcw(X86EMU_FPU_WORD, destoffset);
break;
}
}
}
#else
- (void)destoffset;
- (void)stkelem;
-#endif /* X86EMU_FPU_PRESENT */
+ (void) destoffset;
+ (void) stkelem;
+#endif /* X86EMU_FPU_PRESENT */
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();
}
@@ -309,7 +313,7 @@ static const char *x86emu_fpu_op_da_tab[] = {
"FICOMP\tDWORD PTR ",
"FISUB\tDWORD PTR ", "FISUBR\tDWORD PTR ", "FIDIV\tDWORD PTR ",
"FIDIVR\tDWORD PTR ",
-
+
"FIADD\tDWORD PTR ", "FIMUL\tDWORD PTR ", "FICOM\tDWORD PTR ",
"FICOMP\tDWORD PTR ",
"FISUB\tDWORD PTR ", "FISUBR\tDWORD PTR ", "FIDIV\tDWORD PTR ",
@@ -319,10 +323,11 @@ static const char *x86emu_fpu_op_da_tab[] = {
"ESC_DA ", "ESC_DA ", "ESC_DA ", "ESC_DA ",
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xda */
-void x86emuOp_esc_coprocess_da(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_da(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -332,59 +337,59 @@ void x86emuOp_esc_coprocess_da(u8 X86EMU_UNUSED(op1))
FETCH_DECODE_MODRM(mod, rh, rl);
DECODE_PRINTINSTR32(x86emu_fpu_op_da_tab, mod, rh, rl);
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
DECODE_PRINTF("\n");
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
DECODE_PRINTF("\n");
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
DECODE_PRINTF("\n");
break;
- case 3: /* register to register */
- stkelem = (u8)rl;
+ case 3: /* register to register */
+ stkelem = (u8) rl;
DECODE_PRINTF2("\tST(%d),ST\n", stkelem);
break;
}
#ifdef X86EMU_FPU_PRESENT
switch (mod) {
- case 3:
+ case 3:
x86emu_fpu_illegal();
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_iadd(X86EMU_FPU_SHORT, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_M_imul(X86EMU_FPU_SHORT, destoffset);
break;
- case 2:
+ case 2:
x86emu_fpu_M_icom(X86EMU_FPU_SHORT, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_icomp(X86EMU_FPU_SHORT, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_M_isub(X86EMU_FPU_SHORT, destoffset);
break;
- case 5:
+ case 5:
x86emu_fpu_M_isubr(X86EMU_FPU_SHORT, destoffset);
break;
- case 6:
+ case 6:
x86emu_fpu_M_idiv(X86EMU_FPU_SHORT, destoffset);
break;
- case 7:
+ case 7:
x86emu_fpu_M_idivr(X86EMU_FPU_SHORT, destoffset);
break;
}
}
#else
- (void)destoffset;
- (void)stkelem;
+ (void) destoffset;
+ (void) stkelem;
#endif
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();
@@ -403,10 +408,11 @@ static const char *x86emu_fpu_op_db_tab[] = {
"ESC_DB\t1C", "FLD\tTBYTE PTR ", "ESC_DB\t1E", "FSTP\tTBYTE PTR ",
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xdb */
-void x86emuOp_esc_coprocess_db(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_db(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -416,97 +422,99 @@ void x86emuOp_esc_coprocess_db(u8 X86EMU_UNUSED(op1))
#ifdef DEBUG
if (mod != 3) {
DECODE_PRINTINSTR32(x86emu_fpu_op_db_tab, mod, rh, rl);
- } else if (rh == 4) { /* === 11 10 0 nnn */
+ }
+ else if (rh == 4) { /* === 11 10 0 nnn */
switch (rl) {
- case 0:
+ case 0:
DECODE_PRINTF("FENI\n");
break;
- case 1:
+ case 1:
DECODE_PRINTF("FDISI\n");
break;
- case 2:
+ case 2:
DECODE_PRINTF("FCLEX\n");
break;
- case 3:
+ case 3:
DECODE_PRINTF("FINIT\n");
break;
}
- } else {
+ }
+ else {
DECODE_PRINTF2("ESC_DB %0x\n", (mod << 6) + (rh << 3) + (rl));
}
-#endif /* DEBUG */
+#endif /* DEBUG */
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
break;
- case 3: /* register to register */
+ case 3: /* register to register */
break;
}
#ifdef X86EMU_FPU_PRESENT
/* execute */
switch (mod) {
- case 3:
+ case 3:
switch (rh) {
- case 4:
+ case 4:
switch (rl) {
- case 0:
+ case 0:
x86emu_fpu_R_feni();
break;
- case 1:
+ case 1:
x86emu_fpu_R_fdisi();
break;
- case 2:
+ case 2:
x86emu_fpu_R_fclex();
break;
- case 3:
+ case 3:
x86emu_fpu_R_finit();
break;
- default:
+ default:
x86emu_fpu_illegal();
break;
}
break;
- default:
+ default:
x86emu_fpu_illegal();
break;
}
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_fild(X86EMU_FPU_SHORT, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_illegal();
break;
- case 2:
+ case 2:
x86emu_fpu_M_fist(X86EMU_FPU_SHORT, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_fistp(X86EMU_FPU_SHORT, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_illegal();
break;
- case 5:
+ case 5:
x86emu_fpu_M_fld(X86EMU_FPU_LDBL, destoffset);
break;
- case 6:
+ case 6:
x86emu_fpu_illegal();
break;
- case 7:
+ case 7:
x86emu_fpu_M_fstp(X86EMU_FPU_LDBL, destoffset);
break;
}
}
#else
- (void)destoffset;
+ (void) destoffset;
#endif
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();
@@ -532,10 +540,11 @@ static const char *x86emu_fpu_op_dc_tab[] = {
"FADD\t", "FMUL\t", "FCOM\t", "FCOMP\t",
"FSUBR\t", "FSUB\t", "FDIVR\t", "FDIV\t",
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xdc */
-void x86emuOp_esc_coprocess_dc(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_dc(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -545,85 +554,85 @@ void x86emuOp_esc_coprocess_dc(u8 X86EMU_UNUSED(op1))
FETCH_DECODE_MODRM(mod, rh, rl);
DECODE_PRINTINSTR32(x86emu_fpu_op_dc_tab, mod, rh, rl);
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
DECODE_PRINTF("\n");
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
DECODE_PRINTF("\n");
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
DECODE_PRINTF("\n");
break;
- case 3: /* register to register */
- stkelem = (u8)rl;
+ case 3: /* register to register */
+ stkelem = (u8) rl;
DECODE_PRINTF2("\tST(%d),ST\n", stkelem);
break;
}
#ifdef X86EMU_FPU_PRESENT
/* execute */
switch (mod) {
- case 3:
+ case 3:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_R_fadd(stkelem, X86EMU_FPU_STKTOP);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fmul(stkelem, X86EMU_FPU_STKTOP);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fcom(stkelem, X86EMU_FPU_STKTOP);
break;
- case 3:
+ case 3:
x86emu_fpu_R_fcomp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 4:
+ case 4:
x86emu_fpu_R_fsubr(stkelem, X86EMU_FPU_STKTOP);
break;
- case 5:
+ case 5:
x86emu_fpu_R_fsub(stkelem, X86EMU_FPU_STKTOP);
break;
- case 6:
+ case 6:
x86emu_fpu_R_fdivr(stkelem, X86EMU_FPU_STKTOP);
break;
- case 7:
+ case 7:
x86emu_fpu_R_fdiv(stkelem, X86EMU_FPU_STKTOP);
break;
}
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_fadd(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_M_fmul(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 2:
+ case 2:
x86emu_fpu_M_fcom(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_fcomp(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_M_fsub(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 5:
+ case 5:
x86emu_fpu_M_fsubr(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 6:
+ case 6:
x86emu_fpu_M_fdiv(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 7:
+ case 7:
x86emu_fpu_M_fdivr(X86EMU_FPU_DOUBLE, destoffset);
break;
}
}
#else
- (void)destoffset;
- (void)stkelem;
+ (void) destoffset;
+ (void) stkelem;
#endif
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();
@@ -645,10 +654,11 @@ static const char *x86emu_fpu_op_dd_tab[] = {
"ESC_DD\t2C,", "ESC_DD\t2D,", "ESC_DD\t2E,", "ESC_DD\t2F,",
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xdd */
-void x86emuOp_esc_coprocess_dd(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_dd(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -658,75 +668,75 @@ void x86emuOp_esc_coprocess_dd(u8 X86EMU_UNUSED(op1))
FETCH_DECODE_MODRM(mod, rh, rl);
DECODE_PRINTINSTR32(x86emu_fpu_op_dd_tab, mod, rh, rl);
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
DECODE_PRINTF("\n");
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
DECODE_PRINTF("\n");
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
DECODE_PRINTF("\n");
break;
- case 3: /* register to register */
- stkelem = (u8)rl;
+ case 3: /* register to register */
+ stkelem = (u8) rl;
DECODE_PRINTF2("\tST(%d),ST\n", stkelem);
break;
}
#ifdef X86EMU_FPU_PRESENT
switch (mod) {
- case 3:
+ case 3:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_R_ffree(stkelem);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fxch(stkelem);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fst(stkelem); /* register version */
break;
- case 3:
+ case 3:
x86emu_fpu_R_fstp(stkelem); /* register version */
break;
- default:
+ default:
x86emu_fpu_illegal();
break;
}
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_fld(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_illegal();
break;
- case 2:
+ case 2:
x86emu_fpu_M_fst(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_fstp(X86EMU_FPU_DOUBLE, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_M_frstor(X86EMU_FPU_WORD, destoffset);
break;
- case 5:
+ case 5:
x86emu_fpu_illegal();
break;
- case 6:
+ case 6:
x86emu_fpu_M_fsave(X86EMU_FPU_WORD, destoffset);
break;
- case 7:
+ case 7:
x86emu_fpu_M_fstsw(X86EMU_FPU_WORD, destoffset);
break;
}
}
#else
- (void)destoffset;
- (void)stkelem;
+ (void) destoffset;
+ (void) stkelem;
#endif
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();
@@ -734,8 +744,7 @@ void x86emuOp_esc_coprocess_dd(u8 X86EMU_UNUSED(op1))
#ifdef DEBUG
-static const char *x86emu_fpu_op_de_tab[] =
-{
+static const char *x86emu_fpu_op_de_tab[] = {
"FIADD\tWORD PTR ", "FIMUL\tWORD PTR ", "FICOM\tWORD PTR ",
"FICOMP\tWORD PTR ",
"FISUB\tWORD PTR ", "FISUBR\tWORD PTR ", "FIDIV\tWORD PTR ",
@@ -755,10 +764,11 @@ static const char *x86emu_fpu_op_de_tab[] =
"FSUBRP\t", "FSUBP\t", "FDIVRP\t", "FDIVP\t",
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xde */
-void x86emuOp_esc_coprocess_de(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_de(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -768,87 +778,87 @@ void x86emuOp_esc_coprocess_de(u8 X86EMU_UNUSED(op1))
FETCH_DECODE_MODRM(mod, rh, rl);
DECODE_PRINTINSTR32(x86emu_fpu_op_de_tab, mod, rh, rl);
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
DECODE_PRINTF("\n");
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
DECODE_PRINTF("\n");
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
DECODE_PRINTF("\n");
break;
- case 3: /* register to register */
- stkelem = (u8)rl;
+ case 3: /* register to register */
+ stkelem = (u8) rl;
DECODE_PRINTF2("\tST(%d),ST\n", stkelem);
break;
}
#ifdef X86EMU_FPU_PRESENT
switch (mod) {
- case 3:
+ case 3:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_R_faddp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fmulp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fcomp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 3:
+ case 3:
if (stkelem == 1)
- x86emu_fpu_R_fcompp(stkelem, X86EMU_FPU_STKTOP);
+ x86emu_fpu_R_fcompp(stkelem, X86EMU_FPU_STKTOP);
else
- x86emu_fpu_illegal();
+ x86emu_fpu_illegal();
break;
- case 4:
+ case 4:
x86emu_fpu_R_fsubrp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 5:
+ case 5:
x86emu_fpu_R_fsubp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 6:
+ case 6:
x86emu_fpu_R_fdivrp(stkelem, X86EMU_FPU_STKTOP);
break;
- case 7:
+ case 7:
x86emu_fpu_R_fdivp(stkelem, X86EMU_FPU_STKTOP);
break;
}
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_fiadd(X86EMU_FPU_WORD, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_M_fimul(X86EMU_FPU_WORD, destoffset);
break;
- case 2:
+ case 2:
x86emu_fpu_M_ficom(X86EMU_FPU_WORD, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_ficomp(X86EMU_FPU_WORD, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_M_fisub(X86EMU_FPU_WORD, destoffset);
break;
- case 5:
+ case 5:
x86emu_fpu_M_fisubr(X86EMU_FPU_WORD, destoffset);
break;
- case 6:
+ case 6:
x86emu_fpu_M_fidiv(X86EMU_FPU_WORD, destoffset);
break;
- case 7:
+ case 7:
x86emu_fpu_M_fidivr(X86EMU_FPU_WORD, destoffset);
break;
}
}
#else
- (void)destoffset;
- (void)stkelem;
+ (void) destoffset;
+ (void) stkelem;
#endif
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();
@@ -877,10 +887,11 @@ static const char *x86emu_fpu_op_df_tab[] = {
"ESC_DF\t3C,", "ESC_DF\t3D,", "ESC_DF\t3E,", "ESC_DF\t3F,"
};
-#endif /* DEBUG */
+#endif /* DEBUG */
/* opcode=0xdf */
-void x86emuOp_esc_coprocess_df(u8 X86EMU_UNUSED(op1))
+void
+x86emuOp_esc_coprocess_df(u8 X86EMU_UNUSED(op1))
{
int mod, rl, rh;
uint destoffset = 0;
@@ -890,75 +901,75 @@ void x86emuOp_esc_coprocess_df(u8 X86EMU_UNUSED(op1))
FETCH_DECODE_MODRM(mod, rh, rl);
DECODE_PRINTINSTR32(x86emu_fpu_op_df_tab, mod, rh, rl);
switch (mod) {
- case 0:
+ case 0:
destoffset = decode_rm00_address(rl);
DECODE_PRINTF("\n");
break;
- case 1:
+ case 1:
destoffset = decode_rm01_address(rl);
DECODE_PRINTF("\n");
break;
- case 2:
+ case 2:
destoffset = decode_rm10_address(rl);
DECODE_PRINTF("\n");
break;
- case 3: /* register to register */
- stkelem = (u8)rl;
+ case 3: /* register to register */
+ stkelem = (u8) rl;
DECODE_PRINTF2("\tST(%d)\n", stkelem);
break;
}
#ifdef X86EMU_FPU_PRESENT
switch (mod) {
- case 3:
+ case 3:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_R_ffree(stkelem);
break;
- case 1:
+ case 1:
x86emu_fpu_R_fxch(stkelem);
break;
- case 2:
+ case 2:
x86emu_fpu_R_fst(stkelem); /* register version */
break;
- case 3:
+ case 3:
x86emu_fpu_R_fstp(stkelem); /* register version */
break;
- default:
+ default:
x86emu_fpu_illegal();
break;
}
break;
- default:
+ default:
switch (rh) {
- case 0:
+ case 0:
x86emu_fpu_M_fild(X86EMU_FPU_WORD, destoffset);
break;
- case 1:
+ case 1:
x86emu_fpu_illegal();
break;
- case 2:
+ case 2:
x86emu_fpu_M_fist(X86EMU_FPU_WORD, destoffset);
break;
- case 3:
+ case 3:
x86emu_fpu_M_fistp(X86EMU_FPU_WORD, destoffset);
break;
- case 4:
+ case 4:
x86emu_fpu_M_fbld(X86EMU_FPU_BSD, destoffset);
break;
- case 5:
+ case 5:
x86emu_fpu_M_fild(X86EMU_FPU_LONG, destoffset);
break;
- case 6:
+ case 6:
x86emu_fpu_M_fbstp(X86EMU_FPU_BSD, destoffset);
break;
- case 7:
+ case 7:
x86emu_fpu_M_fistp(X86EMU_FPU_LONG, destoffset);
break;
}
}
#else
- (void)destoffset;
- (void)stkelem;
+ (void) destoffset;
+ (void) stkelem;
#endif
DECODE_CLEAR_SEGOVR();
END_OF_INSTR_NO_TRACE();