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 <hans-kristian.arntzen@arm.com>2018-06-25 10:48:17 +0300
committerHans-Kristian Arntzen <hans-kristian.arntzen@arm.com>2018-06-25 10:49:13 +0300
commitffa9133d779db6db3c090c4832fc292406e00e12 (patch)
tree93b8a1bf3a8bb36ab84755141299cc7a67c7d8a6 /reference/opt/shaders/vulkan
parent7607eb692323a6ef9fe697319a257816eae697b8 (diff)
Support ternary expressions in OpSpecConstantOp.
Diffstat (limited to 'reference/opt/shaders/vulkan')
-rw-r--r--reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag9
-rw-r--r--reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag.vk13
2 files changed, 22 insertions, 0 deletions
diff --git a/reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag b/reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag
new file mode 100644
index 00000000..91b0331b
--- /dev/null
+++ b/reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag
@@ -0,0 +1,9 @@
+#version 450
+
+layout(location = 0) out float FragColor;
+
+void main()
+{
+ FragColor = float((10u > 20u) ? 30u : 50u);
+}
+
diff --git a/reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag.vk b/reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag.vk
new file mode 100644
index 00000000..59d3b99b
--- /dev/null
+++ b/reference/opt/shaders/vulkan/frag/spec-constant-ternary.vk.frag.vk
@@ -0,0 +1,13 @@
+#version 450
+
+layout(constant_id = 0) const uint s = 10u;
+const bool _13 = (s > 20u);
+const uint _16 = _13 ? 30u : 50u;
+
+layout(location = 0) out float FragColor;
+
+void main()
+{
+ FragColor = float(_16);
+}
+