| struct Inner { |
| a : vec3<i32>, |
| b : i32, |
| c : vec3<u32>, |
| d : u32, |
| e : vec3<f32>, |
| f : f32, |
| g : vec2<i32>, |
| h : vec2<i32>, |
| i : mat2x3<f32>, |
| @align(16) |
| j : mat3x2<f32>, |
| @align(16) |
| k : array<vec4<i32>, 4>, |
| } |
| |
| struct S { |
| arr : array<Inner, 8>, |
| } |
| |
| @binding(0) @group(0) var<uniform> s : S; |
| |
| @stage(compute) @workgroup_size(1) |
| fn main(@builtin(local_invocation_index) idx : u32) { |
| let a = s.arr[idx].a; |
| let b = s.arr[idx].b; |
| let c = s.arr[idx].c; |
| let d = s.arr[idx].d; |
| let e = s.arr[idx].e; |
| let f = s.arr[idx].f; |
| let g = s.arr[idx].g; |
| let h = s.arr[idx].h; |
| let i = s.arr[idx].i; |
| let j = s.arr[idx].j; |
| let k = s.arr[idx].k; |
| } |