summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/ir_opt/texture_pass.cpp
diff options
context:
space:
mode:
authorGravatar FernandoS272021-03-29 02:00:43 +0200
committerGravatar ameerj2021-07-22 21:51:25 -0400
commitd5bfc630886d98ed77959a9771c67293244aff0e (patch)
tree5816db6c236f9884c8900dd8a2c1e7ba9936b757 /src/shader_recompiler/ir_opt/texture_pass.cpp
parentshader: Implement TMML partially (diff)
downloadyuzu-d5bfc630886d98ed77959a9771c67293244aff0e.tar.gz
yuzu-d5bfc630886d98ed77959a9771c67293244aff0e.tar.xz
yuzu-d5bfc630886d98ed77959a9771c67293244aff0e.zip
shader: Implement ImageGradient
Diffstat (limited to 'src/shader_recompiler/ir_opt/texture_pass.cpp')
-rw-r--r--src/shader_recompiler/ir_opt/texture_pass.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/shader_recompiler/ir_opt/texture_pass.cpp b/src/shader_recompiler/ir_opt/texture_pass.cpp
index 6eb286b83..da8977b76 100644
--- a/src/shader_recompiler/ir_opt/texture_pass.cpp
+++ b/src/shader_recompiler/ir_opt/texture_pass.cpp
@@ -60,6 +60,9 @@ IR::Opcode IndexedInstruction(const IR::Inst& inst) {
60 case IR::Opcode::BoundImageQueryLod: 60 case IR::Opcode::BoundImageQueryLod:
61 case IR::Opcode::BindlessImageQueryLod: 61 case IR::Opcode::BindlessImageQueryLod:
62 return IR::Opcode::ImageQueryLod; 62 return IR::Opcode::ImageQueryLod;
63 case IR::Opcode::BoundImageGradient:
64 case IR::Opcode::BindlessImageGradient:
65 return IR::Opcode::ImageGradient;
63 default: 66 default:
64 return IR::Opcode::Void; 67 return IR::Opcode::Void;
65 } 68 }
@@ -76,6 +79,7 @@ bool IsBindless(const IR::Inst& inst) {
76 case IR::Opcode::BindlessImageFetch: 79 case IR::Opcode::BindlessImageFetch:
77 case IR::Opcode::BindlessImageQueryDimensions: 80 case IR::Opcode::BindlessImageQueryDimensions:
78 case IR::Opcode::BindlessImageQueryLod: 81 case IR::Opcode::BindlessImageQueryLod:
82 case IR::Opcode::BindlessImageGradient:
79 return true; 83 return true;
80 case IR::Opcode::BoundImageSampleImplicitLod: 84 case IR::Opcode::BoundImageSampleImplicitLod:
81 case IR::Opcode::BoundImageSampleExplicitLod: 85 case IR::Opcode::BoundImageSampleExplicitLod:
@@ -86,6 +90,7 @@ bool IsBindless(const IR::Inst& inst) {
86 case IR::Opcode::BoundImageFetch: 90 case IR::Opcode::BoundImageFetch:
87 case IR::Opcode::BoundImageQueryDimensions: 91 case IR::Opcode::BoundImageQueryDimensions:
88 case IR::Opcode::BoundImageQueryLod: 92 case IR::Opcode::BoundImageQueryLod:
93 case IR::Opcode::BoundImageGradient:
89 return false; 94 return false;
90 default: 95 default:
91 throw InvalidArgument("Invalid opcode {}", inst.Opcode()); 96 throw InvalidArgument("Invalid opcode {}", inst.Opcode());