summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_context.cpp
diff options
context:
space:
mode:
authorGravatar ameerj2021-03-25 11:31:37 -0400
committerGravatar ameerj2021-07-22 21:51:24 -0400
commit32c5483beb2f79f5d55eb2906f2bfdfa1698bca3 (patch)
treebca00dad85f6823746aee66f43dc0cbe2f337481 /src/shader_recompiler/backend/spirv/emit_context.cpp
parentshader: Track first bindless argument instead of the instruction itself (diff)
downloadyuzu-32c5483beb2f79f5d55eb2906f2bfdfa1698bca3.tar.gz
yuzu-32c5483beb2f79f5d55eb2906f2bfdfa1698bca3.tar.xz
yuzu-32c5483beb2f79f5d55eb2906f2bfdfa1698bca3.zip
shader: Implement SHFL
Diffstat (limited to 'src/shader_recompiler/backend/spirv/emit_context.cpp')
-rw-r--r--src/shader_recompiler/backend/spirv/emit_context.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_context.cpp b/src/shader_recompiler/backend/spirv/emit_context.cpp
index ea46af244..5db4a9082 100644
--- a/src/shader_recompiler/backend/spirv/emit_context.cpp
+++ b/src/shader_recompiler/backend/spirv/emit_context.cpp
@@ -274,7 +274,8 @@ void EmitContext::DefineInputs(const Info& info) {
274 if (info.uses_local_invocation_id) { 274 if (info.uses_local_invocation_id) {
275 local_invocation_id = DefineInput(*this, U32[3], spv::BuiltIn::LocalInvocationId); 275 local_invocation_id = DefineInput(*this, U32[3], spv::BuiltIn::LocalInvocationId);
276 } 276 }
277 if (profile.warp_size_potentially_larger_than_guest && info.uses_subgroup_vote) { 277 if (info.uses_subgroup_invocation_id ||
278 (profile.warp_size_potentially_larger_than_guest && info.uses_subgroup_vote)) {
278 subgroup_local_invocation_id = 279 subgroup_local_invocation_id =
279 DefineInput(*this, U32[1], spv::BuiltIn::SubgroupLocalInvocationId); 280 DefineInput(*this, U32[1], spv::BuiltIn::SubgroupLocalInvocationId);
280 } 281 }