summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2024-04-01 16:04:23 +0200
committerJosJuice <josjuice@gmail.com>2024-04-01 16:24:26 +0200
commitf58abf59c0e45ccee7844f651b70f1a4af106f97 (patch)
treeb5ccd32f827c1caeb05fe0b864c3f9f485e613f6 /Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
parenta5e410df11b83646f21941caba98674d807daa7e (diff)
Jit: Skip discarded registers when flushing for interpreter fallback
Normally, the asserts added in 34b0a6ea90 are only triggered when something actually went wrong in Dolphin. But there is one exception: In FallBackToInterpreter, we flush all registers regardless of whether they're discarded. This is fine as long as none of the discarded registers are inputs to the instruction that the interpreter will run. To avoid false positive asserts, this change adds a parameter to Flush that controls whether to skip the asserts for discarded registers. Additionally, an assert for discarded registers is added to Arm64FPRCache::Flush. (Previously JitArm64 asserted for GPRs (and CRs) only, whereas Jit64 asserted both for GPRs and FPRs. I most likely didn't think of FPRs when writing 34b0a6ea90.)
Diffstat (limited to 'Source/Core/InputCommon/ControlReference/ExpressionParser.cpp')
0 files changed, 0 insertions, 0 deletions