diff options
Diffstat (limited to 'src/emu/x64run.c')
| -rw-r--r-- | src/emu/x64run.c | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/src/emu/x64run.c b/src/emu/x64run.c index f55084c5..7ba98455 100644 --- a/src/emu/x64run.c +++ b/src/emu/x64run.c @@ -338,7 +338,7 @@ x64emurun: if(rex.is32bits) { R_AX = aas16(emu, R_AX); } else { - emit_signal(emu, SIGILL, (void*)R_RIP, 0); + EmitSignal(emu, SIGILL, (void*)R_RIP, 0); goto fini; } break; @@ -438,7 +438,7 @@ x64emurun: GETGD; int* bounds = (int*)GETEA(0); if(bounds[0]<GD->dword[0] || bounds[1]>GD->dword[0]) - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xb09d); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xb09d); } else { unimp = 1; goto fini; @@ -597,7 +597,7 @@ x64emurun: if(rex.is32bits && BOX64ENV(ignoreint3)) { } else { - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); } STEP; #endif @@ -1540,14 +1540,14 @@ x64emurun: if(box64_wine && tmp8u==0x2D) { // lets ignore the INT 2D printf_log(LOG_DEBUG, "INT 2D called\n"); - emit_interruption(emu, 0x2d, (void*)R_RIP); + EmitInterruption(emu, 0x2d, (void*)R_RIP); } else if(box64_wine && tmp8u==0x2c) { printf_log(LOG_DEBUG, "INT 2c called\n"); - emit_interruption(emu, 0x2c, (void*)R_RIP); + EmitInterruption(emu, 0x2c, (void*)R_RIP); } else if(box64_wine && tmp8u==0x29) { // INT 29 is __fastfail printf_log(LOG_DEBUG, "INT 29 called => __fastfail(0x%x)\n", R_ECX); - emit_interruption(emu, 0x29, (void*)R_RIP); + EmitInterruption(emu, 0x29, (void*)R_RIP); } else if (tmp8u==0x80) { R_RIP = addr; if(ACCESS_FLAG(F_TF)) @@ -1560,7 +1560,7 @@ x64emurun: } else if (tmp8u==0x03) { R_RIP = addr; #ifndef TEST_INTERPRETER - emit_signal(emu, SIGTRAP, NULL, 3); + EmitSignal(emu, SIGTRAP, NULL, 3); STEP2; #endif } else { @@ -1568,7 +1568,7 @@ x64emurun: R_RIP = addr; } #ifndef TEST_INTERPRETER - emit_interruption(emu, tmp8u, (void*)R_RIP); + EmitInterruption(emu, tmp8u, (void*)R_RIP); STEP2; #endif } @@ -1583,7 +1583,7 @@ x64emurun: #ifndef TEST_INTERPRETER CHECK_FLAGS(emu); if(ACCESS_FLAG(F_OF)) - emit_interruption(emu, 4, (void*)R_RIP); + EmitInterruption(emu, 4, (void*)R_RIP); STEP2; #endif break; @@ -1606,7 +1606,7 @@ x64emurun: RESET_FLAGS(emu); #ifndef TEST_INTERPRETER if((new_cs&3)!=3) - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0); // GP if trying to change priv level + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0); // GP if trying to change priv level #endif emu->segs[_CS] = new_cs; emu->segs_serial[_CS] = 0; @@ -1878,7 +1878,7 @@ x64emurun: F8; if(rex.is32bits && BOX64ENV(ignoreint3)) {} else - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); STEP; #endif break; @@ -1918,7 +1918,7 @@ x64emurun: #ifndef TEST_INTERPRETER if(rex.is32bits && BOX64ENV(ignoreint3)) {} else - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); STEP; #endif break; @@ -1940,14 +1940,14 @@ x64emurun: case 0xF1: /* INT1 */ emu->old_ip = R_RIP; #ifndef TEST_INTERPRETER - emit_signal(emu, SIGSEGV, (void*)R_RIP, 128); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 128); #endif break; case 0xF4: /* HLT */ // this is a privilege opcode... #ifndef TEST_INTERPRETER - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); STEP; #endif break; @@ -1980,14 +1980,14 @@ x64emurun: case 6: /* DIV Eb */ #ifndef TEST_INTERPRETER if(!EB->byte[0]) - emit_div0(emu, (void*)R_RIP, 1); + EmitDiv0(emu, (void*)R_RIP, 1); #endif div8(emu, EB->byte[0]); break; case 7: /* IDIV Eb */ #ifndef TEST_INTERPRETER if(!EB->byte[0]) - emit_div0(emu, (void*)R_RIP, 1); + EmitDiv0(emu, (void*)R_RIP, 1); #endif idiv8(emu, EB->byte[0]); break; @@ -2019,14 +2019,14 @@ x64emurun: case 6: /* DIV Ed */ #ifndef TEST_INTERPRETER if(!ED->q[0]) - emit_div0(emu, (void*)R_RIP, 1); + EmitDiv0(emu, (void*)R_RIP, 1); #endif div64(emu, ED->q[0]); break; case 7: /* IDIV Ed */ #ifndef TEST_INTERPRETER if(!ED->q[0]) - emit_div0(emu, (void*)R_RIP, 1); + EmitDiv0(emu, (void*)R_RIP, 1); #endif idiv64(emu, ED->q[0]); break; @@ -2063,7 +2063,7 @@ x64emurun: case 6: /* DIV Ed */ #ifndef TEST_INTERPRETER if(!ED->dword[0]) - emit_div0(emu, (void*)R_RIP, 1); + EmitDiv0(emu, (void*)R_RIP, 1); #endif div32(emu, ED->dword[0]); //emu->regs[_AX].dword[1] = 0; // already put high regs to 0 @@ -2072,7 +2072,7 @@ x64emurun: case 7: /* IDIV Ed */ #ifndef TEST_INTERPRETER if(!ED->dword[0]) - emit_div0(emu, (void*)R_RIP, 1); + EmitDiv0(emu, (void*)R_RIP, 1); #endif idiv32(emu, ED->dword[0]); //emu->regs[_AX].dword[1] = 0; @@ -2093,14 +2093,14 @@ x64emurun: // this is a privilege opcode if(rex.is32bits && BOX64ENV(ignoreint3)) {} else - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); STEP; break; case 0xFB: /* STI */ // this is a privilege opcode if(rex.is32bits && BOX64ENV(ignoreint3)) {} else - emit_signal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); + EmitSignal(emu, SIGSEGV, (void*)R_RIP, 0xbad0); STEP; break; case 0xFC: /* CLD */ @@ -2165,7 +2165,7 @@ x64emurun: GETET(0); if(MODREG) { printf_log(LOG_NONE, "Illegal Opcode %p: (%02X %02X %02X %02X) %02X %02X %02X %02X\n", (void*)R_RIP, PK(-6), PK(-5), PK(-4), PK(-3), opcode, nextop, PK(0), PK(1)); - emit_signal(emu, SIGILL, (void*)R_RIP, 0); + EmitSignal(emu, SIGILL, (void*)R_RIP, 0); goto fini; } else { if(rex.is32bits || !rex.w) { @@ -2212,7 +2212,7 @@ x64emurun: GETET(0); if(MODREG) { printf_log(LOG_NONE, "Illegal Opcode %p: (%02X %02X %02X %02X) %02X %02X %02X %02X\n", (void*)R_RIP, PK(-6), PK(-5), PK(-4), PK(-3), opcode, nextop, PK(0), PK(1)); - emit_signal(emu, SIGILL, (void*)R_RIP, 0); + EmitSignal(emu, SIGILL, (void*)R_RIP, 0); goto fini; } else { if(rex.is32bits || !rex.w) { @@ -2255,7 +2255,7 @@ x64emurun: break; default: printf_log(LOG_NONE, "Illegal Opcode %p: (%02X %02X %02X %02X) %02X %02X %02X %02X %02X %02X\n", (void*)R_RIP, PK(-6), PK(-5), PK(-4), PK(-3), opcode, nextop, PK(0), PK(1), PK(2), PK(3)); - emit_signal(emu, SIGILL, (void*)R_RIP, 0); + EmitSignal(emu, SIGILL, (void*)R_RIP, 0); goto fini; } break; @@ -2271,7 +2271,7 @@ x64emurun: } else { tf_next = 0; R_RIP = addr; - emit_signal(emu, SIGTRAP, (void*)addr, 1); + EmitSignal(emu, SIGTRAP, (void*)addr, 1); if(emu->quit) goto fini; } } @@ -2285,7 +2285,7 @@ fini: // check the TRACE flag before going to out, in case it's a step by step scenario if(!emu->quit && !emu->fork && ACCESS_FLAG(F_TF)) { R_RIP = addr; - emit_signal(emu, SIGTRAP, (void*)addr, 1); + EmitSignal(emu, SIGTRAP, (void*)addr, 1); if(emu->quit) goto fini; } #endif @@ -2295,7 +2295,7 @@ if(emu->segs[_CS]!=0x33 && emu->segs[_CS]!=0x23) printf_log(LOG_NONE, "Warning, if(unimp) { //emu->quit = 1; UnimpOpcode(emu, is32bits); - emit_signal(emu, SIGILL, (void*)R_RIP, 0); + EmitSignal(emu, SIGILL, (void*)R_RIP, 0); } // fork handling if(emu->fork) { |