diff options
Diffstat (limited to '3rdparty/bgfx/3rdparty/glslang/Test/spv.debugInfo.frag')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/glslang/Test/spv.debugInfo.frag | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/glslang/Test/spv.debugInfo.frag b/3rdparty/bgfx/3rdparty/glslang/Test/spv.debugInfo.frag new file mode 100644 index 00000000000..3b6cd27fead --- /dev/null +++ b/3rdparty/bgfx/3rdparty/glslang/Test/spv.debugInfo.frag @@ -0,0 +1,52 @@ +#version 450
+
+struct S {
+ int a;
+};
+
+uniform ubuf {
+ S s;
+};
+
+uniform sampler2D s2d;
+
+layout(location = 0) in vec4 inv;
+layout(location = 0) out vec4 outv;
+
+vec4 foo(S s)
+{
+ vec4 r = s.a * inv;
+ ++r;
+ if (r.x > 3.0)
+ --r;
+ else
+ r *= 2;
+
+ return r;
+}
+
+void main()
+{
+ outv = foo(s);
+ outv += texture(s2d, vec2(0.5));
+
+ switch (s.a) {
+ case 10:
+ ++outv;
+ break;
+ case 20:
+ outv = 2 * outv;
+ ++outv;
+ break;
+ default:
+ --outv;
+ break;
+ }
+
+ for (int i = 0; i < 10; ++i)
+ outv *= 3.0;
+
+ outv.x < 10.0 ?
+ outv = sin(outv) :
+ outv = cos(outv);
+}
\ No newline at end of file |