blob: 5f32a3b7f95b760dd4172eb635ad565b9ceeecd4 [file] [log] [blame]
John Kessenich312dcfb2018-07-03 13:19:51 -06001#version 450 core
2
3#extension GL_EXT_shader_16bit_storage : enable
4
5struct S
6{
7 uint16_t x;
8 u16vec2 y;
9 u16vec3 z;
10};
11
12layout(column_major, std140) uniform B1
13{
14 uint16_t a;
15 u16vec2 b;
16 u16vec3 c;
17 uint16_t d[2];
18 S g;
19 S h[2];
20 uint j;
21} b1;
22
23layout(row_major, std430) buffer B2
24{
25 uint16_t o;
26 u16vec2 p;
27 u16vec3 q;
28 uint16_t r[2];
29 S u;
30 S v[2];
31 uint16_t w[];
32} b2;
33
34struct S2 {
35 mat4x4 x;
36 uint16_t y;
37 uint z;
38};
39
40struct S3 {
41 S2 x;
42};
43
44layout(row_major, std430) buffer B3
45{
46 S2 x;
47} b3;
48
49layout(column_major, std430) buffer B4
50{
51 S2 x;
52} b4;
53
54void func3(S2 x) {
55}
56
57S2 func4() {
58 return b4.x;
59}
60
61uint func(uint16_t a) {
62 return 0;
63}
64
65struct S4 {
66 uint x;
67 uint16_t y;
68};
69
70uint func2(uint a) { return 0; }
71
72void main()
73{
74 b2.o = b2.q[1];
75 b2.p = b2.q.xy;
76 b2.o = max(b1.a, b1.a);
77 bvec2 bv = lessThan(b2.p, b2.p);
78 b2.o = b1.a + b1.a;
79 b2.o = -b1.a;
80 b2.o = b1.a + 1;
81 b2.p = b2.p.yx;
82 b4.x = b3.x;
83 uint16_t f0;
84 S2 f1;
85 S3 f2;
86 if (b1.a == b1.a) {}
87 b2.r = b2.r;
88 b2.p = u16vec2(3, 4);
89 u16vec2[2](u16vec2(uvec2(1,2)), u16vec2(uvec2(3,4)));
90 // NOT ERRORING YET
91 b3.x;
92 S4(0u, uint16_t(0u));
93 func2(b1.a);
94}
95
96
97layout(column_major, std140) uniform B6
98{
99 u16mat2x3 e;
100} b6;
101