Browse Source

macOS/arm64: turn off JIT compilation by default.

Sasha Szpakowski 1 year ago
parent
commit
d21c9cb6de
2 changed files with 5 additions and 0 deletions
  1. 1 0
      changes.txt
  2. 4 0
      src/modules/love/jitsetup.lua

+ 1 - 0
changes.txt

@@ -6,6 +6,7 @@ Released: N/A
 * Added "LÖVE Loader" launcher on Android for easier loading of .love files.
 
 * Changed iOS game selector to alphabetically sort the list of .love files.
+* Changed JIT compilation on macOS arm64 (Apple Silicon) to be off by default, since performance and available JIT memory isn't reliable.
 
 * Fixed inconsistent and buggy behaviour of 'pairs' by updating LuaJIT.
 * Fixed "unexpected alignment" errors when running love on some 32 bit Linux systems.

+ 4 - 0
src/modules/love/jitsetup.lua

@@ -62,6 +62,10 @@ if jit.arch == "arm64" then
 	
 	jit.opt.start("sizemcode=128")
 	for i=1, 100 do end
+
+	-- Actually just turn the whole thing off for arm64. It's very hard to get
+	-- reliable performance in non-trivial games even with the above workaround.
+	jit.off()
 else
 	-- Somewhat arbitrary value (>= the default).
 	jit.opt.start("sizemcode=128")