From 46fa95eaab1148d0b807f59868c9a25cfce4fe41 Mon Sep 17 00:00:00 2001 From: John Date: Thu, 19 Feb 2026 11:39:09 +0100 Subject: [PATCH] Update src/shader_recompiler/ir_opt/rescaling_pass.cpp --- .../ir_opt/rescaling_pass.cpp | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/src/shader_recompiler/ir_opt/rescaling_pass.cpp b/src/shader_recompiler/ir_opt/rescaling_pass.cpp index 1b803f31c9..b3943efc9e 100644 --- a/src/shader_recompiler/ir_opt/rescaling_pass.cpp +++ b/src/shader_recompiler/ir_opt/rescaling_pass.cpp @@ -64,25 +64,19 @@ void VisitMark(IR::Block& block, IR::Inst& inst) { break; } } - if (must_patch_outside) { - const auto it{IR::Block::InstructionList::s_iterator_to(inst)}; - IR::Value converted; - IR::IREmitter ir{block, it}; - - if (Settings::values.rescale_hack.GetValue()) { - IR::Inst* const new_inst{&*block.PrependNewInst(it, inst)}; - const IR::F32 up_factor{ir.FPRecip(ir.ResolutionDownFactor())}; - converted = ir.FPMul(IR::Value{new_inst}, up_factor); - } - else { + const auto it{IR::Block::InstructionList::s_iterator_to(inst)}; + IR::IREmitter ir{block, it}; IR::Inst* const new_inst{&*block.PrependNewInst(it, inst)}; - const IR::F32 new_bitcast{ir.ConvertUToF(32, 32, IR::Value{new_inst})}; + IR::Value new_bitcast; + if (Settings::values.rescale_hack.GetValue()) { + new_bitcast = IR::Value{new_inst}; + } else { + new_bitcast = ir.ConvertUToF(32, 32, IR::Value{new_inst}); + } const IR::F32 up_factor{ir.FPRecip(ir.ResolutionDownFactor())}; - converted = ir.FPMul(new_bitcast, up_factor); - } - - inst.ReplaceUsesWith(converted); + const IR::Value converted{ir.FPMul(new_bitcast, up_factor)}; + inst.ReplaceUsesWith(converted); } break; }