summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/spirv/emit_context.cpp
diff options
context:
space:
mode:
authorameerj <52414509+ameerj@users.noreply.github.com>2021-03-24 01:27:17 +0100
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:24 +0200
commit3d07cef009cf9e287744c7771c67166ef5761ce8 (patch)
tree78f4fea18d9facb72850b4c2fe115e96b7af8f26 /src/shader_recompiler/backend/spirv/emit_context.cpp
parentvk_pipeline_cache: Fix ReleaseContents order (diff)
downloadyuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.tar
yuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.tar.gz
yuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.tar.bz2
yuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.tar.lz
yuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.tar.xz
yuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.tar.zst
yuzu-3d07cef009cf9e287744c7771c67166ef5761ce8.zip
Diffstat (limited to '')
-rw-r--r--src/shader_recompiler/backend/spirv/emit_context.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_context.cpp b/src/shader_recompiler/backend/spirv/emit_context.cpp
index 4a4de3676..36f130781 100644
--- a/src/shader_recompiler/backend/spirv/emit_context.cpp
+++ b/src/shader_recompiler/backend/spirv/emit_context.cpp
@@ -259,6 +259,10 @@ void EmitContext::DefineInputs(const Info& info, Stage stage) {
if (info.uses_local_invocation_id) {
local_invocation_id = DefineInput(*this, U32[3], spv::BuiltIn::LocalInvocationId);
}
+ if (profile.warp_size_potentially_larger_than_guest && info.uses_subgroup_vote) {
+ subgroup_local_invocation_id =
+ DefineInput(*this, U32[1], spv::BuiltIn::SubgroupLocalInvocationId);
+ }
if (info.loads_position) {
const bool is_fragment{stage != Stage::Fragment};
const spv::BuiltIn built_in{is_fragment ? spv::BuiltIn::Position : spv::BuiltIn::FragCoord};