summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/ir_opt/texture_pass.cpp
diff options
context:
space:
mode:
authorGravatar ameerj2023-01-28 16:09:58 -0500
committerGravatar ameerj2023-01-28 16:25:18 -0500
commit2c2e019a44e353921d5fdf3cc6ab4304502eb2bd (patch)
tree37c9582394bca3fe15fe2827d82f4b0da4e450a8 /src/shader_recompiler/ir_opt/texture_pass.cpp
parentMerge pull request #9685 from liamwhite/minmax (diff)
downloadyuzu-2c2e019a44e353921d5fdf3cc6ab4304502eb2bd.tar.gz
yuzu-2c2e019a44e353921d5fdf3cc6ab4304502eb2bd.tar.xz
yuzu-2c2e019a44e353921d5fdf3cc6ab4304502eb2bd.zip
shader_recompiler: TXQ: Skip QueryLevels when possible
Diffstat (limited to 'src/shader_recompiler/ir_opt/texture_pass.cpp')
-rw-r--r--src/shader_recompiler/ir_opt/texture_pass.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/shader_recompiler/ir_opt/texture_pass.cpp b/src/shader_recompiler/ir_opt/texture_pass.cpp
index 9718c6921..fdc350ef4 100644
--- a/src/shader_recompiler/ir_opt/texture_pass.cpp
+++ b/src/shader_recompiler/ir_opt/texture_pass.cpp
@@ -452,7 +452,8 @@ void PatchImageSampleImplicitLod(IR::Block& block, IR::Inst& inst) {
452 const IR::Value coord(inst.Arg(1)); 452 const IR::Value coord(inst.Arg(1));
453 const IR::Value handle(ir.Imm32(0)); 453 const IR::Value handle(ir.Imm32(0));
454 const IR::U32 lod{ir.Imm32(0)}; 454 const IR::U32 lod{ir.Imm32(0)};
455 const IR::Value texture_size = ir.ImageQueryDimension(handle, lod, info); 455 const IR::U1 skip_mips{ir.Imm1(true)};
456 const IR::Value texture_size = ir.ImageQueryDimension(handle, lod, skip_mips, info);
456 inst.SetArg( 457 inst.SetArg(
457 1, ir.CompositeConstruct( 458 1, ir.CompositeConstruct(
458 ir.FPMul(IR::F32(ir.CompositeExtract(coord, 0)), 459 ir.FPMul(IR::F32(ir.CompositeExtract(coord, 0)),