melonDS icon indicating copy to clipboard operation
melonDS copied to clipboard

TESTING NEEDED: allow build with ENABLE_JIT=ON on OpenBSD Targets

Open Izder456 opened this issue 8 months ago • 9 comments

I take MAINTAINER for the melonDS port on OpenBSD, and I am trying to get JIT to work on melonDS 0.9.5 on amd64 openbsd targets.

I was able to find the needed context register for JIT to work on OpenBSD. It seems to pass compile stages, but I came across a runtime crash error.

with JIT on, max JIT block size to 32, both Branch & Literal Optimizations, as well as Fast memory OFF, I get the following crash:

melonDS 0.9.5
https://melonds.kuribo64.net/
IPC sharedmem doesn't exist. creating
IPC: instance ID 0
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-izder456'
Audio output frequency: 48000 Hz
Created a OpenGL context
GL_VENDOR: Intel
GL_RENDERER: Mesa Intel(R) HD Graphics 5500 (BDW GT2)
GL_VERSION: 4.6 (Core Profile) Mesa 23.3.6
GL_SHADING_LANGUAGE_VERSION: 4.60
MP sharedmem doesn't exist. creating
MP comm init OK, instance ID 0
ARM9 BIOS loaded
ARM7 BIOS loaded
Resetting JIT block cache...
done resetting jit mem
done resetting jit mem
MAC: 00:19:FD:B2:79:76
FW: WIFI CRC16 = GOOD
FW: AP1 CRC16 = GOOD
FW: AP2 CRC16 = GOOD
FW: AP3 CRC16 = GOOD
FW: USER0 CRC16 = GOOD
FW: USER1 CRC16 = GOOD
Game code: ADME
ROM entry: 02000000 00000005
Cart ID: 00001FC2
Re-encrypting cart secure area
this is a JIT bug �]$������THx
zsh: abort      melonDS

Testing with a REAL dump of Animal Crossing: Wild World

with sha256 checksum: SHA256 (ACWW.nds) = 9788570e90bbbb226c47e1f52c8882559129003695f8d91279c2158649cb7f06

Low level stuff like this is a bit over my head, so any pointers would be appreciated.

Thanks.

Izder456 avatar May 27 '24 17:05 Izder456