summaryrefslogtreecommitdiff
path: root/src/video_core/renderer_vulkan
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2019-05-03 03:00:51 -0300
committerGravatar ReinUsesLisp2019-05-20 16:36:49 -0300
commit9c3461604cff25ef11ecb6937f904eac37090ee7 (patch)
treef6ce8922bfd63ec15c1f71e12c592f26cf94c79c /src/video_core/renderer_vulkan
parentgl_shader_decompiler: Make GetSwizzle constexpr (diff)
downloadyuzu-9c3461604cff25ef11ecb6937f904eac37090ee7.tar.gz
yuzu-9c3461604cff25ef11ecb6937f904eac37090ee7.tar.xz
yuzu-9c3461604cff25ef11ecb6937f904eac37090ee7.zip
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:
1035 return {}; 1035 return {};
1036 } 1036 }
1037 1037
1038 template <u32 element>
1039 Id LocalInvocationId(Operation) {
1040 UNIMPLEMENTED();
1041 return {};
1042 }
1043
1044 template <u32 element>
1045 Id WorkGroupId(Operation) {
1046 UNIMPLEMENTED();
1047 return {};
1048 }
1049
1038 Id DeclareBuiltIn(spv::BuiltIn builtin, spv::StorageClass storage, Id type, 1050 Id DeclareBuiltIn(spv::BuiltIn builtin, spv::StorageClass storage, Id type,
1039 const std::string& name) { 1051 const std::string& name) {
1040 const Id id = OpVariable(type, storage); 1052 const Id id = OpVariable(type, storage);
@@ -1291,6 +1303,12 @@ private:
1291 &SPIRVDecompiler::EndPrimitive, 1303 &SPIRVDecompiler::EndPrimitive,
1292 1304
1293 &SPIRVDecompiler::YNegate, 1305 &SPIRVDecompiler::YNegate,
1306 &SPIRVDecompiler::LocalInvocationId<0>,
1307 &SPIRVDecompiler::LocalInvocationId<1>,
1308 &SPIRVDecompiler::LocalInvocationId<2>,
1309 &SPIRVDecompiler::WorkGroupId<0>,
1310 &SPIRVDecompiler::WorkGroupId<1>,
1311 &SPIRVDecompiler::WorkGroupId<2>,
1294 }; 1312 };
1295 1313
1296 const ShaderIR& ir; 1314 const ShaderIR& ir;