var a : i32; var b : i32; var c : i32; fn uses_a() { a = (a + 1); } fn uses_b() { b = (b * 2); } fn uses_a_and_b() { b = a; } fn no_uses() { } fn outer() { a = 0; uses_a(); uses_a_and_b(); uses_b(); no_uses(); } [[stage(compute), workgroup_size(1)]] fn main1() { a = 42; uses_a(); } [[stage(compute), workgroup_size(1)]] fn main2() { b = 7; uses_b(); } [[stage(compute), workgroup_size(1)]] fn main3() { outer(); no_uses(); } [[stage(compute), workgroup_size(1)]] fn main4() { no_uses(); }