aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_vulkan
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2019-05-29 12:21:17 -0400
committerGitHub <noreply@github.com>2019-05-29 12:21:17 -0400
commite3608578e40065779965af483db69941ef0e29e1 (patch)
tree97df50ae021302f1e16deb82e5cb2f38ee6042b3 /src/video_core/renderer_vulkan
parent665b7e8e188f40208337d819e031b369f022836d (diff)
parent9c3461604cff25ef11ecb6937f904eac37090ee7 (diff)
Merge pull request #2446 from ReinUsesLisp/tid
shader: Implement S2R Tid{XYZ} and CtaId{XYZ}
Diffstat (limited to 'src/video_core/renderer_vulkan')
-rw-r--r--src/video_core/renderer_vulkan/vk_shader_decompiler.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp b/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp
index b61a6d170..a5b25aeff 100644
--- a/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp
+++ b/src/video_core/renderer_vulkan/vk_shader_decompiler.cpp
@@ -1035,6 +1035,18 @@ private:
return {};
}
+ template <u32 element>
+ Id LocalInvocationId(Operation) {
+ UNIMPLEMENTED();
+ return {};
+ }
+
+ template <u32 element>
+ Id WorkGroupId(Operation) {
+ UNIMPLEMENTED();
+ return {};
+ }
+
Id DeclareBuiltIn(spv::BuiltIn builtin, spv::StorageClass storage, Id type,
const std::string& name) {
const Id id = OpVariable(type, storage);
@@ -1291,6 +1303,12 @@ private:
&SPIRVDecompiler::EndPrimitive,
&SPIRVDecompiler::YNegate,
+ &SPIRVDecompiler::LocalInvocationId<0>,
+ &SPIRVDecompiler::LocalInvocationId<1>,
+ &SPIRVDecompiler::LocalInvocationId<2>,
+ &SPIRVDecompiler::WorkGroupId<0>,
+ &SPIRVDecompiler::WorkGroupId<1>,
+ &SPIRVDecompiler::WorkGroupId<2>,
};
const ShaderIR& ir;