summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp
diff options
context:
space:
mode:
authorFengChen <vonchenplus@gmail.com>2022-10-30 12:59:11 +0100
committerFeng Chen <vonchenplus@gmail.com>2022-11-07 08:42:42 +0100
commita4472b55260ed1ccbad0d191d11abd2330145140 (patch)
treeed58bca8f35b79497099c8c73675332be455c28e /src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp
parentMerge pull request #9163 from vonchenplus/draw_error (diff)
downloadyuzu-a4472b55260ed1ccbad0d191d11abd2330145140.tar
yuzu-a4472b55260ed1ccbad0d191d11abd2330145140.tar.gz
yuzu-a4472b55260ed1ccbad0d191d11abd2330145140.tar.bz2
yuzu-a4472b55260ed1ccbad0d191d11abd2330145140.tar.lz
yuzu-a4472b55260ed1ccbad0d191d11abd2330145140.tar.xz
yuzu-a4472b55260ed1ccbad0d191d11abd2330145140.tar.zst
yuzu-a4472b55260ed1ccbad0d191d11abd2330145140.zip
Diffstat (limited to '')
-rw-r--r--src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp b/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp
index a4751b42d..5b3b5d1f3 100644
--- a/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp
+++ b/src/shader_recompiler/backend/spirv/emit_spirv_context_get_set.cpp
@@ -512,6 +512,18 @@ Id EmitInvocationId(EmitContext& ctx) {
return ctx.OpLoad(ctx.U32[1], ctx.invocation_id);
}
+Id EmitInvocationInfo(EmitContext& ctx) {
+ switch (ctx.stage) {
+ case Stage::TessellationControl:
+ case Stage::TessellationEval:
+ return ctx.OpShiftLeftLogical(ctx.U32[1], ctx.OpLoad(ctx.U32[1], ctx.patch_vertices_in),
+ ctx.Const(16u));
+ default:
+ LOG_WARNING(Shader, "(STUBBED) called");
+ return ctx.Const(0x00ff0000u);
+ }
+}
+
Id EmitSampleId(EmitContext& ctx) {
return ctx.OpLoad(ctx.U32[1], ctx.sample_id);
}