John Kessenich | 312dcfb | 2018-07-03 13:19:51 -0600 | [diff] [blame] | 1 | #version 450 core
|
| 2 |
|
| 3 | #extension GL_EXT_shader_16bit_storage : enable
|
| 4 |
|
| 5 | struct S
|
| 6 | {
|
| 7 | uint16_t x;
|
| 8 | u16vec2 y;
|
| 9 | u16vec3 z;
|
| 10 | };
|
| 11 |
|
| 12 | layout(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 |
|
| 23 | layout(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 |
|
| 34 | struct S2 {
|
| 35 | mat4x4 x;
|
| 36 | uint16_t y;
|
| 37 | uint z;
|
| 38 | };
|
| 39 |
|
| 40 | struct S3 {
|
| 41 | S2 x;
|
| 42 | };
|
| 43 |
|
| 44 | layout(row_major, std430) buffer B3
|
| 45 | {
|
| 46 | S2 x;
|
| 47 | } b3;
|
| 48 |
|
| 49 | layout(column_major, std430) buffer B4
|
| 50 | {
|
| 51 | S2 x;
|
| 52 | } b4;
|
| 53 |
|
| 54 | void func3(S2 x) {
|
| 55 | }
|
| 56 |
|
| 57 | S2 func4() {
|
| 58 | return b4.x;
|
| 59 | }
|
| 60 |
|
| 61 | uint func(uint16_t a) {
|
| 62 | return 0;
|
| 63 | }
|
| 64 |
|
| 65 | struct S4 {
|
| 66 | uint x;
|
| 67 | uint16_t y;
|
| 68 | };
|
| 69 |
|
| 70 | uint func2(uint a) { return 0; }
|
| 71 |
|
| 72 | void 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 |
|
| 97 | layout(column_major, std140) uniform B6
|
| 98 | {
|
| 99 | u16mat2x3 e;
|
| 100 | } b6;
|
| 101 |
|