From 494395071731c2697b3c414c4f9b14bb0a498a30 Mon Sep 17 00:00:00 2001 From: lizzie Date: Fri, 3 Apr 2026 14:40:52 +0000 Subject: [PATCH] fuck msvc --- .../backend/x64/emit_x64_vector_floating_point.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/dynarmic/src/dynarmic/backend/x64/emit_x64_vector_floating_point.cpp b/src/dynarmic/src/dynarmic/backend/x64/emit_x64_vector_floating_point.cpp index c588d43a3f..a003d3196e 100644 --- a/src/dynarmic/src/dynarmic/backend/x64/emit_x64_vector_floating_point.cpp +++ b/src/dynarmic/src/dynarmic/backend/x64/emit_x64_vector_floating_point.cpp @@ -2115,7 +2115,7 @@ void EmitFPVectorToFixed(BlockOfCode& code, EmitContext& ctx, IR::Inst* inst) { } auto const fpt_fn = [fbits, rounding]() -> void (*)(VectorArray>& output, const VectorArray>& input, FP::FPCR fpcr, FP::FPSR& fpsr) { #define ROUNDING_MODE_CASE(CASE, N) \ - else if (rounding == FP::RoundingMode::CASE && fsize >= (N) && fbits == (N)) return &EmitFPVectorToFixedThunk; + if (rounding == FP::RoundingMode::CASE && fsize >= (N) && fbits == (N)) return &EmitFPVectorToFixedThunk; #define ROUNDING_MODE_SWITCH(CASE) \ ROUNDING_MODE_CASE(CASE, 0x00) \ ROUNDING_MODE_CASE(CASE, 0x01) \ @@ -2181,7 +2181,9 @@ void EmitFPVectorToFixed(BlockOfCode& code, EmitContext& ctx, IR::Inst* inst) { ROUNDING_MODE_CASE(CASE, 0x3d) \ ROUNDING_MODE_CASE(CASE, 0x3e) \ ROUNDING_MODE_CASE(CASE, 0x3f) - if (false) { /* ... */ } + + // FUCK YOU MSVC, FUCKING DEPTH CANT EVEN HANDLE 8+16+32+64 DEPTH OF A ELSE STATMENT YOU FUCKING STUPID + // BURN MSVC BURN IT STUPID COMPILER CAN'T EVEN COMPILE THE MOST BASIC C++ ROUNDING_MODE_SWITCH(ToNearest_TieEven) ROUNDING_MODE_SWITCH(TowardsPlusInfinity) ROUNDING_MODE_SWITCH(TowardsMinusInfinity) @@ -2189,7 +2191,7 @@ void EmitFPVectorToFixed(BlockOfCode& code, EmitContext& ctx, IR::Inst* inst) { ROUNDING_MODE_SWITCH(ToNearest_TieAwayFromZero) #undef ROUNDING_MODE_SWITCH #undef ROUNDING_MODE_CASE - else return nullptr; + return nullptr; }(); EmitTwoOpFallback<3>(code, ctx, inst, fpt_fn);