summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag')
-rw-r--r--3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag24
1 files changed, 22 insertions, 2 deletions
diff --git a/3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag b/3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag
index 0318dc8f39e..8f4bfdcebe1 100644
--- a/3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag
+++ b/3rdparty/bgfx/3rdparty/glslang/Test/hlsl.doLoop.frag
@@ -1,9 +1,29 @@
-float4 PixelShaderFunction(float input) : COLOR0
-{
+void f0() {
[unroll] do {} while (false);
+}
+
+void f1() {
[unroll] do {;} while (false);
+}
+
+float f2(float input) {
do { return (float4)input; } while (input > 2.0);
+}
+
+void f3(float input) {
do ++input; while (input < 10.0);
+}
+
+void f4(float input) {
do while (++input < 10.0); while (++input < 10.0); // nest while inside do-while
+}
+
+float4 PixelShaderFunction(float input) : COLOR0
+{
+ f0();
+ f1();
+ f2(input);
+ f3(input);
+ f4(input);
return (float4)input;
}