fn f1(a : array<f32, 4>) -> f32 { | |
return a[3]; | |
} | |
fn f2(a : array<array<f32, 4>, 3>) -> f32 { | |
return a[2][3]; | |
} | |
fn f3(a : array<array<array<f32, 4>, 3>, 2>) -> f32 { | |
return a[1][2][3]; | |
} | |
[[stage(compute), workgroup_size(1)]] | |
fn main() { | |
let a1 : array<f32, 4> = array<f32, 4>(); | |
let a2 : array<array<f32, 4>, 3> = array<array<f32, 4>, 3>(); | |
let a3 : array<array<array<f32, 4>, 3>, 2> = array<array<array<f32, 4>, 3>, 2>(); | |
let v1 : f32 = f1(a1); | |
let v2 : f32 = f2(a2); | |
let v3 : f32 = f3(a3); | |
} |