Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/SPIRV-Cross.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Kristian Arntzen <post@arntzen-software.no>2019-05-09 11:27:28 +0300
committerHans-Kristian Arntzen <post@arntzen-software.no>2019-05-09 11:29:31 +0300
commit6fcf8c83d9162fc9e4bfc3c4026ee04857088b9d (patch)
treef4a3d35996e86de5427d0cca2f630a353aa9e716 /shaders
parent107047a18abff4b9c12c295195a312fb5ab153ba (diff)
GLSL: Support OpBitcast for buffer references.
Update glslang/SPIRV-Tools/SPIRV-Headers references.
Diffstat (limited to 'shaders')
-rw-r--r--shaders/vulkan/comp/buffer-reference-bitcast.nocompat.vk.comp22
-rw-r--r--shaders/vulkan/comp/buffer-reference.nocompat.vk.comp2
2 files changed, 23 insertions, 1 deletions
diff --git a/shaders/vulkan/comp/buffer-reference-bitcast.nocompat.vk.comp b/shaders/vulkan/comp/buffer-reference-bitcast.nocompat.vk.comp
new file mode 100644
index 00000000..eda904ee
--- /dev/null
+++ b/shaders/vulkan/comp/buffer-reference-bitcast.nocompat.vk.comp
@@ -0,0 +1,22 @@
+#version 450
+#extension GL_EXT_buffer_reference: require
+
+layout(buffer_reference) buffer PtrUint
+{
+ uint value;
+};
+
+layout(buffer_reference) buffer PtrInt
+{
+ int value;
+};
+
+layout(set = 0, binding = 0) buffer Buf
+{
+ PtrUint ptr;
+};
+
+void main()
+{
+ PtrInt(ptr).value = 10;
+}
diff --git a/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp b/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp
index 624b8c0a..f08e1113 100644
--- a/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp
+++ b/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp
@@ -21,7 +21,7 @@ void copy_node(restrict Node dst, restrict Node a, restrict Node b)
dst.value = a.value + b.value;
}
-void overwrite_node(out Node dst, Node src)
+void overwrite_node(out restrict Node dst, restrict Node src)
{
dst = src;
}