Emulator Issues #13301
closedWindwaker JIT Segfault on 5.0-19433
0%
Description
Game Name?
Legend of Zelda: Wind Waker
Game ID?
GZLE01
MD5 Hash? (right click the game in the game list, Properties, Verify tab, Verify Integrity button)
md5 5514876f44ebd5786630e72bd6e7e94e
sha1 8bf09edd1a80275c7eabc326c50f6755c1985634
Bad dump, missing game size
What's the problem? Describe what went wrong.
Segfault immediately (well, memory increases by around 10G for a few minutes, no screen refresh during that time, then segfault)
What steps will reproduce the problem?
Start game with JIT on
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
Testing now
Is the issue present in the latest stable version?
I'm on Arch Linux, current stable is less than the version available on Arch.
What are your PC specifications? (CPU, GPU, Operating System, more)
GeForce GTX 1050
Ryzen something
Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)
Turning JIT off (cached interpreter) allows it to run.
PID: 352396 (dolphin-emu)
UID: 1000 (x)
GID: 1000 (x)
Signal: 11 (SEGV)
Timestamp: Thu 2023-07-06 18:52:56 JST (6min ago)
Command Line: dolphin-emu
Executable: /usr/bin/dolphin-emu
Control Group: /user.slice/user-1000.slice/session-1.scope
Unit: session-1.scope
Slice: user-1000.slice
Session: 1
Owner UID: 1000 (x)
Boot ID: c289b53c9d3b4ec7a24890a5ee57a8d0
Machine ID: d045f6c2ada3460dbb2168ea6939fcca
Hostname: y
Storage: /var/lib/systemd/coredump/core.dolphin-emu.1000.c289b53c9d3b4ec7a24890a5ee57a8d0.352396.1688637176000000.zst (present)
Size on Disk: 15.5M
Message: Process 352396 (dolphin-emu) of user 1000 dumped core.
Stack trace of thread 352482:
#0 0x000055976f37e6ff n/a (dolphin-emu + 0x9776ff)
#1 0x000055976ef1d1e8 n/a (dolphin-emu + 0x5161e8)
#2 0x000055976eef0424 n/a (dolphin-emu + 0x4e9424)
#3 0x000055976eef1fcb n/a (dolphin-emu + 0x4eafcb)
#4 0x00007fbd5affb0eb n/a (n/a + 0x0)
#5 0x0000000000000000 n/a (n/a + 0x0)
(gdb) bt full
#0 0x000055976f37e6ff in Gen::XEmitter::Write8(unsigned char) (value=199 '\307', this=0x7fc0f05a35e8) at /usr/src/debug/dolphin-emu/dolphin-emu/Source/Core/Common/x64Emitter.cpp:139
_operandReg = <optimized out>
immToWrite = 0
op_def = @0x55976f644b06: {toRm8 = 136 '\210', toRm32 = 137 '\211', fromRm8 = 138 '\212', fromRm32 = 139 '\213', imm8 = 198 '\306', imm32 = 199 '\307', simm8 = 204 '\314', eaximm8 = 204 '\314', eaximm32 = 204 '\314', ext = 0 '\000'}
#1 Gen::OpArg::WriteNormalOp(Gen::XEmitter*, bool, Gen::NormalOp, Gen::OpArg const&, int) const (this=0x7fbb48a53110, emit=0x7fc0f05a35e8, toRM=true, op=Gen::NormalOp::MOV, operand=..., bits=32)
at /usr/src/debug/dolphin-emu/dolphin-emu/Source/Core/Common/x64Emitter.cpp:1497
_operandReg = <optimized out>
immToWrite = 0
op_def = @0x55976f644b06: {toRm8 = 136 '\210', toRm32 = 137 '\211', fromRm8 = 138 '\212', fromRm32 = 139 '\213', imm8 = 198 '\306', imm32 = 199 '\307', simm8 = 204 '\314', eaximm8 = 204 '\314', eaximm32 = 204 '\314', ext = 0 '\000'}
#2 0x000055976ef1d1e8 in Jit64::mtspr(UGeckoInstruction) (this=0x7fc0f05a33c0, inst=...) at /usr/src/debug/dolphin-emu/dolphin-emu/Source/Core/Core/PowerPC/Jit64/Jit_SystemRegisters.cpp:302
iIndex = 912
d = <optimized out>
Rd = {rc = 0x7fc0f0623a20, contents = std::variant<std::monostate, Gen::X64Reg, unsigned int, unsigned long> [index 3] = {3}}
#3 0x000055976eef0424 in Jit64::CompileInstruction(PPCAnalyst::CodeOp&) (op=..., this=0x7fc0f05a33c0)
at /usr/src/debug/dolphin-emu/dolphin-emu/Source/Core/Core/PowerPC/Jit64/Jit64_Tables.cpp:492
cpu = <optimized out>
power_pc = <optimized out>
op = @0x7fc0f0625630: {inst = {hex = 2087773094, {Rc = 0, SUBOP10 = 467, RB = 28, RA = 16, RD = 3, OPCD = 31}, {SIMM_16 = -7258, TO = 3, OPCD_2 = 31}, {Rc_2 = 0, RS = 3, OPCD_3 = 31}, {UIMM = 58278, OPCD_4 = 31}, {LK = 0, AA = 1, LI = 1849577, OPCD_5 = 31}, {LK_2 = 0, AA_2 = 1, BD = 14569, BI = 16, BO = 3, OPCD_6 = 31}, {LK_3 = 0, BI_2 = 16, BO_2 = 3, OPCD_7 = 31}, {RB_2 = 28, RA_2 = 16, L = 1, CRFD = 0, OPCD_8 = 31}, {SIMM_16_2 = -7258, RA_3 = 16, L_2 = 1, CRFD_2 = 0, OPCD_9 = 31}, {UIMM_2 = 58278, RA_4 = 16, L_3 = 1, CRFD_3 = 0, OPCD_A = 31}, {SUBOP10_2 = 467, RB_5 = 28, RA_5 = 16, L_4 = 1, CRFD_4 = 0, OPCD_B = 31}, {SR = 0, RS_2 = 3, OPCD_C = 31}, {Rc_4 = 0, SUBOP5 = 19, RC = 14, RA_6 = 16, RD_2 = 3, OPCD_D = 31}, {OE = 0, SPR = 540}, {OE_3 = 0, SPRU = 28, SPRL = 16}, {Rc_3 = 0, ME = 19, MB = 14, SH = 28}, {CRBB = 28, CRBA = 16, CRBD = 3}, {TBR = 540}, {TBRU = 28, TBRL = 16}, {CRFS = 4, CRFD_5 = 0}, {CRM = 14, FD = 3}, {FC = 14, FB = 28, FA = 16, FS = 3}, {FM = 56}, {SUBOP6 = 19, Ix = 7, Wx = 0, I = 6, W = 1}, {SIMM_12 = 934}, {NB = 28}}, opinfo = 0x55976f7a6580 <PPCTables::s_tables+6272>, address = 2150637220, branchTo = 4294967295, regsOut = {m_val = 0}, regsIn = {m_val = 8}, fregsIn = {m_val = 0}, fregOut = -1 '\377', isBranchTarget = false, branchUsesCtr = false, branchIsIdleLoop = false, wantsCR = {m_val = 255 '\377'}, wantsFPRF = true, wantsCA = true, wantsCAInFlags = false, outputCR = {m_val = 0 '\000'}, outputFPRF = false, outputCA = false, canEndBlock = false, canCauseException = true, skipLRStack = false, skip = false, fprInUse = {m_val = 0}, gprInUse = {m_val = 3}, gprDiscardable = {m_val = 0}, fprDiscardable = {m_val = 0}, fprInXmm = {m_val = 0}, fprIsSingle = {m_val = 0}, fprIsDuplicated = {m_val = 0}, fprIsStoreSafeBeforeInst = {m_val = 0}, fprIsStoreSafeAfterInst = {m_val = 0}}
opinfo = 0x55976f7a6580 <PPCTables::s_tables+6272>
gatherPipeIntCheck = <optimized out>
i = 2
start = 0x57ff3000 <error: Cannot access memory at address 0x57ff3000>
#4 Jit64::DoJit(unsigned int, JitBlock*, unsigned int) (this=this@entry=0x7fc0f05a33c0, em_address=em_address@entry=2150637212, b=b@entry=0x7fbb1c001d98, nextPC=nextPC@entry=2150637240)
at /usr/src/debug/dolphin-emu/dolphin-emu/Source/Core/Core/PowerPC/Jit64/Jit.cpp:1053
cpu = <optimized out>
power_pc = <optimized out>
op = @0x7fc0f0625630: {inst = {hex = 2087773094, {Rc = 0, SUBOP10 = 467, RB = 28, RA = 16, RD = 3, OPCD = 31}, {SIMM_16 = -7258, TO = 3, OPCD_2 = 31}, {Rc_2 = 0, RS = 3, OPCD_3 = 31}, {UIMM = 58278, OPCD_4 = 31}, {LK = 0, AA = 1, LI = 1849577, OPCD_5 = 31}, {LK_2 = 0, AA_2 = 1, BD = 14569, BI = 16, BO = 3, OPCD_6 = 31}, {LK_3 = 0, BI_2 = 16, BO_2 = 3, OPCD_7 = 31}, {RB_2 = 28, RA_2 = 16, L = 1, CRFD = 0, OPCD_8 = 31}, {SIMM_16_2 = -7258, RA_3 = 16, L_2 = 1, CRFD_2 = 0, OPCD_9 = 31}, {UIMM_2 = 58278, RA_4 = 16, L_3 = 1, CRFD_3 = 0, OPCD_A = 31}, {SUBOP10_2 = 467, RB_5 = 28, RA_5 = 16, L_4 = 1, CRFD_4 = 0, OPCD_B = 31}, {SR = 0, RS_2 = 3, OPCD_C = 31}, {Rc_4 = 0, SUBOP5 = 19, RC = 14, RA_6 = 16, RD_2 = 3, OPCD_D = 31}, {OE = 0, SPR = 540}, {OE_3 = 0, SPRU = 28, SPRL = 16}, {Rc_3 = 0, ME = 19, MB = 14, SH = 28}, {CRBB = 28, CRBA = 16, CRBD = 3}, {TBR = 540}, {TBRU = 28, TBRL = 16}, {CRFS = 4, CRFD_5 = 0}, {CRM = 14, FD = 3}, {FC = 14, FB = 28, FA = 16, FS = 3}, {FM = 56}, {SUBOP6 = 19, Ix = 7, Wx = 0, I = 6, W = 1}, {SIMM_12 = 934}, {NB = 28}}, opinfo = 0x55976f7a6580 <PPCTables::s_tables+6272>, address = 2150637220, branchTo = 4294967295, regsOut = {m_val = 0}, regsIn = {m_val = 8}, fregsIn = {m_val = 0}, fregOut = -1 '\377', isBranchTarget = false, branchUsesCtr = false, branchIsIdleLoop = false, wantsCR = {m_val = 255 '\377'}, wantsFPRF = true, wantsCA = true, wantsCAInFlags = false, outputCR = {m_val = 0 '\000'}, outputFPRF = false, outputCA = false, canEndBlock = false, canCauseException = true, skipLRStack = false, skip = false, fprInUse = {m_val = 0}, gprInUse = {m_val = 3}, gprDiscardable = {m_val = 0}, fprDiscardable = {m_val = 0}, fprInXmm = {m_val = 0}, fprIsSingle = {m_val = 0}, fprIsDuplicated = {m_val = 0}, fprIsStoreSafeBeforeInst = {m_val = 0}, fprIsStoreSafeAfterInst = {m_val = 0}}
opinfo = 0x55976f7a6580 <PPCTables::s_tables+6272>
gatherPipeIntCheck = <optimized out>
i = 2
start = 0x57ff3000 <error: Cannot access memory at address 0x57ff3000>
#5 0x000055976eef1fcb in Jit64::Jit(unsigned int, bool) (this=0x7fc0f05a33c0, em_address=2150637212, clear_cache_and_retry_on_failure=true)
at /usr/src/debug/dolphin-emu/dolphin-emu/Source/Core/Core/PowerPC/Jit64/Jit.cpp:757
near_start = 0x57ff3000 <error: Cannot access memory at address 0x57ff3000>
far_start = 0x759ffb000 <error: Cannot access memory at address 0x759ffb000>
b = 0x7fbb1c001d98
block_size = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--c
nextPC = 2150637240
#6 0x00007fbd5affb0eb in ()
#7 0x0000000000000000 in ()
Updated by JosJuice over 1 year ago
- Is duplicate of Emulator Issues #13267: Arch Linux install and crashes added