diff options
author | FernandoS27 <fsahmkow27@gmail.com> | 2021-03-24 23:41:55 +0100 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-23 03:51:24 +0200 |
commit | c7c518e280d1ac04adb08d45145690fd06ac7b18 (patch) | |
tree | 1bce4c12238600828bef6bdf0c92da6f69c054b1 /src/shader_recompiler/ir_opt/texture_pass.cpp | |
parent | shader: Implement SHFL (diff) | |
download | yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.tar yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.tar.gz yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.tar.bz2 yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.tar.lz yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.tar.xz yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.tar.zst yuzu-c7c518e280d1ac04adb08d45145690fd06ac7b18.zip |
Diffstat (limited to '')
-rw-r--r-- | src/shader_recompiler/ir_opt/texture_pass.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/shader_recompiler/ir_opt/texture_pass.cpp b/src/shader_recompiler/ir_opt/texture_pass.cpp index 2c8164b8a..454ac3e71 100644 --- a/src/shader_recompiler/ir_opt/texture_pass.cpp +++ b/src/shader_recompiler/ir_opt/texture_pass.cpp @@ -45,6 +45,12 @@ IR::Opcode IndexedInstruction(const IR::Inst& inst) { case IR::Opcode::BoundImageSampleDrefExplicitLod: case IR::Opcode::BindlessImageSampleDrefExplicitLod: return IR::Opcode::ImageSampleDrefExplicitLod; + case IR::Opcode::BindlessImageGather: + case IR::Opcode::BoundImageGather: + return IR::Opcode::ImageGather; + case IR::Opcode::BindlessImageGatherDref: + case IR::Opcode::BoundImageGatherDref: + return IR::Opcode::ImageGatherDref; default: return IR::Opcode::Void; } @@ -56,11 +62,15 @@ bool IsBindless(const IR::Inst& inst) { case IR::Opcode::BindlessImageSampleExplicitLod: case IR::Opcode::BindlessImageSampleDrefImplicitLod: case IR::Opcode::BindlessImageSampleDrefExplicitLod: + case IR::Opcode::BindlessImageGather: + case IR::Opcode::BindlessImageGatherDref: return true; case IR::Opcode::BoundImageSampleImplicitLod: case IR::Opcode::BoundImageSampleExplicitLod: case IR::Opcode::BoundImageSampleDrefImplicitLod: case IR::Opcode::BoundImageSampleDrefExplicitLod: + case IR::Opcode::BoundImageGather: + case IR::Opcode::BoundImageGatherDref: return false; default: throw InvalidArgument("Invalid opcode {}", inst.Opcode()); |