From ec6fc5fe78c9038fc9ad7259b7b3a7be751ecef6 Mon Sep 17 00:00:00 2001
From: ReinUsesLisp <reinuseslisp@airmail.cc>
Date: Mon, 17 May 2021 02:52:01 -0300
Subject: glasm: Implement TEX and TEXS instructions

Remove lod clamp from texture instructions with lod, as this is not
needed (nor supported).
---
 src/shader_recompiler/frontend/ir/ir_emitter.cpp | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

(limited to 'src/shader_recompiler/frontend/ir/ir_emitter.cpp')

diff --git a/src/shader_recompiler/frontend/ir/ir_emitter.cpp b/src/shader_recompiler/frontend/ir/ir_emitter.cpp
index def29143ec..94bdbe39c1 100644
--- a/src/shader_recompiler/frontend/ir/ir_emitter.cpp
+++ b/src/shader_recompiler/frontend/ir/ir_emitter.cpp
@@ -1778,12 +1778,10 @@ Value IREmitter::ImageSampleImplicitLod(const Value& handle, const Value& coords
 }
 
 Value IREmitter::ImageSampleExplicitLod(const Value& handle, const Value& coords, const F32& lod,
-                                        const Value& offset, const F32& lod_clamp,
-                                        TextureInstInfo info) {
-    const Value lod_lc{MakeLodClampPair(*this, lod, lod_clamp)};
+                                        const Value& offset, TextureInstInfo info) {
     const Opcode op{handle.IsImmediate() ? Opcode::BoundImageSampleExplicitLod
                                          : Opcode::BindlessImageSampleExplicitLod};
-    return Inst(op, Flags{info}, handle, coords, lod_lc, offset);
+    return Inst(op, Flags{info}, handle, coords, lod, offset);
 }
 
 F32 IREmitter::ImageSampleDrefImplicitLod(const Value& handle, const Value& coords, const F32& dref,
@@ -1796,12 +1794,11 @@ F32 IREmitter::ImageSampleDrefImplicitLod(const Value& handle, const Value& coor
 }
 
 F32 IREmitter::ImageSampleDrefExplicitLod(const Value& handle, const Value& coords, const F32& dref,
-                                          const F32& lod, const Value& offset, const F32& lod_clamp,
+                                          const F32& lod, const Value& offset,
                                           TextureInstInfo info) {
-    const Value lod_lc{MakeLodClampPair(*this, lod, lod_clamp)};
     const Opcode op{handle.IsImmediate() ? Opcode::BoundImageSampleDrefExplicitLod
                                          : Opcode::BindlessImageSampleDrefExplicitLod};
-    return Inst<F32>(op, Flags{info}, handle, coords, dref, lod_lc, offset);
+    return Inst<F32>(op, Flags{info}, handle, coords, dref, lod, offset);
 }
 
 Value IREmitter::ImageGather(const Value& handle, const Value& coords, const Value& offset,
-- 
cgit v1.2.3-70-g09d2