summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatías Locatti <42481638+goldenx86@users.noreply.github.com>2022-12-16 00:52:05 +0100
committerGitHub <noreply@github.com>2022-12-16 00:52:05 +0100
commit82d80869fcccda4feb761c68f89e2aedef0bf5c4 (patch)
tree06234131251d1d4b2bb9cca27218579aefaf99c7
parentMerge pull request #9433 from Tachi107/cmake-is-awful (diff)
parentspirv_emit_context: declare GroupNonUniform capability for SubgroupLocalInvocationId (diff)
downloadyuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.tar
yuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.tar.gz
yuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.tar.bz2
yuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.tar.lz
yuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.tar.xz
yuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.tar.zst
yuzu-82d80869fcccda4feb761c68f89e2aedef0bf5c4.zip
-rw-r--r--src/shader_recompiler/backend/spirv/spirv_emit_context.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp b/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
index 8e3e40cd5..41dc6d031 100644
--- a/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
+++ b/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
@@ -1345,8 +1345,10 @@ void EmitContext::DefineInputs(const IR::Program& program) {
if (info.uses_fswzadd || info.uses_subgroup_invocation_id || info.uses_subgroup_shuffles ||
(profile.warp_size_potentially_larger_than_guest &&
(info.uses_subgroup_vote || info.uses_subgroup_mask))) {
+ AddCapability(spv::Capability::GroupNonUniform);
subgroup_local_invocation_id =
DefineInput(*this, U32[1], false, spv::BuiltIn::SubgroupLocalInvocationId);
+ Decorate(subgroup_local_invocation_id, spv::Decoration::Flat);
}
if (info.uses_fswzadd) {
const Id f32_one{Const(1.0f)};