about summary refs log tree commit diff stats
path: root/src/main.c
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-12-01 17:50:29 +0100
committerptitSeb <sebastien.chev@gmail.com>2022-12-01 17:50:29 +0100
commit9f3ea84b574321fd59fa6c2670f5e6a0f88fc774 (patch)
treebc052d9c9c60d0ff3f507f8a11c1bf0919d4e3fa /src/main.c
parent3f007d2dbb2b0319d9c2ff4ef6dff10d77a9b6ab (diff)
downloadbox64-9f3ea84b574321fd59fa6c2670f5e6a0f88fc774.tar.gz
box64-9f3ea84b574321fd59fa6c2670f5e6a0f88fc774.zip
[DYNAREC] Added BOX64_DYNAREC_BLEEDING_EDGE to control detection of MonoBleedingEdge (and disable that for 3dSen)
Diffstat (limited to 'src/main.c')
-rwxr-xr-xsrc/main.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/main.c b/src/main.c
index 13d39784..e5d2c5d7 100755
--- a/src/main.c
+++ b/src/main.c
@@ -53,6 +53,7 @@ int box64_dynarec_fastnan = 1;
 int box64_dynarec_safeflags = 1;
 int box64_dynarec_callret = 0;
 int box64_dynarec_hotpage = 16;
+int box64_dynarec_bleeding_edge = 1;
 uintptr_t box64_nodynarec_start = 0;
 uintptr_t box64_nodynarec_end = 0;
 #ifdef ARM64
@@ -488,9 +489,18 @@ void LoadLogEnv()
             if(p[0]>='0' && p[0]<='1')
                 box64_dynarec_callret = p[0]-'0';
         }
-        if(!box64_dynarec_callret)
+        if(box64_dynarec_callret)
             printf_log(LOG_INFO, "Dynarec will optimize CALL/RET\n");
     }
+    p = getenv("BOX64_DYNAREC_BLEEDING_EDGE");
+    if(p) {
+        if(strlen(p)==1) {
+            if(p[0]>='0' && p[0]<='1')
+                box64_dynarec_bleeding_edge = p[0]-'0';
+        }
+        if(!box64_dynarec_bleeding_edge)
+            printf_log(LOG_INFO, "Dynarec will not detect MonoBleedingEdge\n");
+    }
     p = getenv("BOX64_DYNAREC_HOTPAGE");
     if(p) {
         int val = -1;
@@ -498,8 +508,8 @@ void LoadLogEnv()
             if(val>=0)
                 box64_dynarec_hotpage = val;
         }
-        if(!box64_dynarec_hotpage)
-            printf_log(LOG_INFO, "Dynarec will have HotPage tagged for %d ticks\n", box64_dynarec_hotpage);
+        if(box64_dynarec_hotpage)
+            printf_log(LOG_INFO, "Dynarec will have HotPage tagged for %d attempts\n", box64_dynarec_hotpage);
         else
             printf_log(LOG_INFO, "Dynarec will not tag HotPage\n");
     }