From ead087c270e2714a0c9735f15e6596baff41694d Mon Sep 17 00:00:00 2001 From: lizzie Date: Tue, 21 Jul 2026 18:31:53 +0000 Subject: [PATCH] fix the leafs in aarch64 --- .../src/dynarmic/backend/arm64/emit_arm64_a32.cpp | 10 ++++++---- .../src/dynarmic/backend/arm64/emit_arm64_a64.cpp | 10 ++++++---- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a32.cpp b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a32.cpp index 5229d2e5dc..9c969308d5 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a32.cpp +++ b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a32.cpp @@ -150,13 +150,15 @@ void EmitA32Terminal(oaknut::CodeGenerator& code, EmitContext& ctx, IR::Term::Ch } void EmitA32LeafTerminal(oaknut::CodeGenerator& code, EmitContext& ctx, IR::Term::LeafTerminal const& terminal, IR::LocationDescriptor initial_location, bool is_single_step) { - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) return EmitA32Terminal(code, ctx, *x, initial_location, is_single_step); - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) return EmitA32Terminal(code, ctx, *x, initial_location, is_single_step); - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) return EmitA32Terminal(code, ctx, *x, initial_location, is_single_step); - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) + return EmitA32Terminal(code, ctx, *x, initial_location, is_single_step); + if (auto const x = std::get_if(&terminal)) return EmitA32Terminal(code, ctx, *x, initial_location, is_single_step); UNREACHABLE(); } diff --git a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a64.cpp b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a64.cpp index 5ec3cff991..69533b9ca4 100644 --- a/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a64.cpp +++ b/src/dynarmic/src/dynarmic/backend/arm64/emit_arm64_a64.cpp @@ -133,13 +133,15 @@ void EmitA64Terminal(oaknut::CodeGenerator& code, EmitContext& ctx, IR::Term::Ch } void EmitA64LeafTerminal(oaknut::CodeGenerator& code, EmitContext& ctx, IR::Term::LeafTerminal const& terminal, IR::LocationDescriptor initial_location, bool is_single_step) { - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) return EmitA64Terminal(code, ctx, *x, initial_location, is_single_step); - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) return EmitA64Terminal(code, ctx, *x, initial_location, is_single_step); - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) return EmitA64Terminal(code, ctx, *x, initial_location, is_single_step); - if (auto const x = std::get_if(&terminal)) + if (auto const x = std::get_if(&terminal)) + return EmitA64Terminal(code, ctx, *x, initial_location, is_single_step); + if (auto const x = std::get_if(&terminal)) return EmitA64Terminal(code, ctx, *x, initial_location, is_single_step); UNREACHABLE(); }