blob: 7ae55bed18b7dd1484ef8f750f1431bd2e336b7b [file] [log] [blame]
struct Uniforms {
i : u32;
j : u32;
}
struct InnerS {
v : i32;
}
struct S1 {
a2 : array<InnerS, 8>;
}
struct OuterS {
a1 : array<S1, 8>;
}
var<private> nextIndex : u32;
fn getNextIndex() -> u32 {
nextIndex = (nextIndex + 1u);
return nextIndex;
}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
[[stage(compute), workgroup_size(1)]]
fn main() {
var v : InnerS;
var s : OuterS;
s.a1[getNextIndex()].a2[uniforms.j] = v;
}