summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/ir_opt/texture_pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/shader_recompiler/ir_opt/texture_pass.cpp')
-rw-r--r--src/shader_recompiler/ir_opt/texture_pass.cpp10
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) {
45 case IR::Opcode::BoundImageSampleDrefExplicitLod: 45 case IR::Opcode::BoundImageSampleDrefExplicitLod:
46 case IR::Opcode::BindlessImageSampleDrefExplicitLod: 46 case IR::Opcode::BindlessImageSampleDrefExplicitLod:
47 return IR::Opcode::ImageSampleDrefExplicitLod; 47 return IR::Opcode::ImageSampleDrefExplicitLod;
48 case IR::Opcode::BindlessImageGather:
49 case IR::Opcode::BoundImageGather:
50 return IR::Opcode::ImageGather;
51 case IR::Opcode::BindlessImageGatherDref:
52 case IR::Opcode::BoundImageGatherDref:
53 return IR::Opcode::ImageGatherDref;
48 default: 54 default:
49 return IR::Opcode::Void; 55 return IR::Opcode::Void;
50 } 56 }
@@ -56,11 +62,15 @@ bool IsBindless(const IR::Inst& inst) {
56 case IR::Opcode::BindlessImageSampleExplicitLod: 62 case IR::Opcode::BindlessImageSampleExplicitLod:
57 case IR::Opcode::BindlessImageSampleDrefImplicitLod: 63 case IR::Opcode::BindlessImageSampleDrefImplicitLod:
58 case IR::Opcode::BindlessImageSampleDrefExplicitLod: 64 case IR::Opcode::BindlessImageSampleDrefExplicitLod:
65 case IR::Opcode::BindlessImageGather:
66 case IR::Opcode::BindlessImageGatherDref:
59 return true; 67 return true;
60 case IR::Opcode::BoundImageSampleImplicitLod: 68 case IR::Opcode::BoundImageSampleImplicitLod:
61 case IR::Opcode::BoundImageSampleExplicitLod: 69 case IR::Opcode::BoundImageSampleExplicitLod:
62 case IR::Opcode::BoundImageSampleDrefImplicitLod: 70 case IR::Opcode::BoundImageSampleDrefImplicitLod:
63 case IR::Opcode::BoundImageSampleDrefExplicitLod: 71 case IR::Opcode::BoundImageSampleDrefExplicitLod:
72 case IR::Opcode::BoundImageGather:
73 case IR::Opcode::BoundImageGatherDref:
64 return false; 74 return false;
65 default: 75 default:
66 throw InvalidArgument("Invalid opcode {}", inst.Opcode()); 76 throw InvalidArgument("Invalid opcode {}", inst.Opcode());