about summary refs log tree commit diff stats
path: root/src/emu/x64test.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/x64test.c')
-rw-r--r--src/emu/x64test.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/emu/x64test.c b/src/emu/x64test.c
index 525b96c9..8e0327a7 100644
--- a/src/emu/x64test.c
+++ b/src/emu/x64test.c
@@ -25,8 +25,8 @@
 void print_banner(x64emu_t* ref)
 {
     printf_log(LOG_NONE, "Warning, difference between Interpreter and Dynarec in %p (%02x %02x %02x %02x %02x %02x %02x %02x)\n"\
-        "=======================================\n", 
-        (void*)ref->old_ip, 
+        "=======================================\n",
+        (void*)ref->old_ip,
         ((uint8_t*)ref->old_ip)[0], ((uint8_t*)ref->old_ip)[1], ((uint8_t*)ref->old_ip)[2], ((uint8_t*)ref->old_ip)[3],
         ((uint8_t*)ref->old_ip)[4], ((uint8_t*)ref->old_ip)[5], ((uint8_t*)ref->old_ip)[6], ((uint8_t*)ref->old_ip)[7]
     );
@@ -55,7 +55,7 @@ void x64test_check(x64emu_t* ref, uintptr_t ip)
     // flags are volatile, so don't test them
 	//memcpy(&ref->eflags, &emu->eflags, sizeof(emu->eflags));
     if(memcmp(ref->segs, emu->segs, sizeof(emu->segs))) {
-        static const char* segname[] = {"CS", "DS", "ES", "SS", "FS", "GS"};
+        static const char* segname[] = {"ES", "CS", "SS", "DS", "FS", "GS"};
         BANNER;
         for(int i=0; i<6; ++i) {
             if(ref->segs[i]!=emu->segs[i]) {
@@ -147,7 +147,7 @@ void x64test_init(x64emu_t* ref, uintptr_t ip)
         uintptr_t prev_ip = test->emu->ip.q[0];
         if(test->clean)
             x64test_check(ref, ip);
-        if(ip != prev_ip || !test->test) {
+        if(ip != prev_ip || !test->test || !test->clean) {
             CopyEmu(test->emu, ref);
         }
     }