summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/spirv
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2022-12-13 23:35:46 +0100
committerLiam <byteslice@airmail.cc>2022-12-14 00:25:53 +0100
commit77b0d0163946c91811093aaf8de13cb28965b08b (patch)
tree7849ab6fc0c772fe9625419cd4ddb927010befed /src/shader_recompiler/backend/spirv
parentMerge pull request #9425 from german77/german_unlimited (diff)
downloadyuzu-77b0d0163946c91811093aaf8de13cb28965b08b.tar
yuzu-77b0d0163946c91811093aaf8de13cb28965b08b.tar.gz
yuzu-77b0d0163946c91811093aaf8de13cb28965b08b.tar.bz2
yuzu-77b0d0163946c91811093aaf8de13cb28965b08b.tar.lz
yuzu-77b0d0163946c91811093aaf8de13cb28965b08b.tar.xz
yuzu-77b0d0163946c91811093aaf8de13cb28965b08b.tar.zst
yuzu-77b0d0163946c91811093aaf8de13cb28965b08b.zip
Diffstat (limited to 'src/shader_recompiler/backend/spirv')
-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)};