From 8412e64bb0aa008e63dab544352c438000cf0d37 Mon Sep 17 00:00:00 2001 From: lizzie Date: Thu, 6 Nov 2025 22:37:52 +0100 Subject: [PATCH] [dynarmic] fix qlaunch (#2967) Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2967 Reviewed-by: crueter Reviewed-by: CamilleLaVey Co-authored-by: lizzie Co-committed-by: lizzie --- .../dynarmic/backend/arm64/emit_arm64_floating_point.cpp | 3 ++- .../src/dynarmic/backend/arm64/emit_arm64_vector.cpp | 6 ++++-- .../backend/arm64/emit_arm64_vector_floating_point.cpp | 6 ++++-- src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.h | 3 ++- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_floating_point.cpp b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_floating_point.cpp index c65b8220ca..0efb6ce787 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_floating_point.cpp +++ b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_floating_point.cpp @@ -468,8 +468,9 @@ void EmitIR(oaknut::CodeGenerator& code, EmitContext& case FP::RoundingMode::ToNearest_TieAwayFromZero: code.FRINTA(Sresult, Soperand); break; + default: + UNREACHABLE(); } - UNREACHABLE(); } } diff --git a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector.cpp b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector.cpp index ef5593f877..a8c3aa02bf 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector.cpp +++ b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector.cpp @@ -1668,8 +1668,9 @@ void EmitIR(oaknut::CodeGenerator& code, EmitCo code.TBX(Dresult->B8(), oaknut::List{V0.B16(), V1.B16()}, Dindices->B8()); } break; + default: + UNREACHABLE(); } - UNREACHABLE(); } template<> @@ -1731,8 +1732,9 @@ void EmitIR(oaknut::CodeGenerator& code, EmitC code.TBX(Qresult->B16(), oaknut::List{V0.B16(), V1.B16(), V2.B16(), V3.B16()}, Qindices->B16()); } break; + default: + UNREACHABLE(); } - UNREACHABLE(); } template<> diff --git a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector_floating_point.cpp b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector_floating_point.cpp index a29c120c77..4d11c62abd 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector_floating_point.cpp +++ b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_vector_floating_point.cpp @@ -645,8 +645,9 @@ void EmitIR(oaknut::CodeGenerator& code, EmitCon case FP::RoundingMode::ToNearest_TieAwayFromZero: code.FRINTA(Qresult->S4(), Qoperand->S4()); break; + default: + UNREACHABLE(); } - UNREACHABLE(); } }); } @@ -684,8 +685,9 @@ void EmitIR(oaknut::CodeGenerator& code, EmitCon case FP::RoundingMode::ToNearest_TieAwayFromZero: code.FRINTA(Qresult->D2(), Qoperand->D2()); break; + default: + UNREACHABLE(); } - UNREACHABLE(); } }); } diff --git a/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.h b/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.h index a014342c68..13cdbaa842 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.h +++ b/src/dynarmic/src/dynarmic/backend/arm64/reg_alloc.h @@ -371,8 +371,9 @@ void RAReg::Realize() { case RWType::ReadWrite: reg = T{reg_alloc.RealizeReadWriteImpl(read_value, write_value)}; break; + default: + UNREACHABLE(); } - UNREACHABLE(); } } // namespace Dynarmic::Backend::Arm64