2021-05-26 15:41:02 +00:00
|
|
|
var<private> a : i32;
|
|
|
|
|
|
|
|
var<private> b : i32;
|
|
|
|
|
|
|
|
var<private> 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();
|
|
|
|
}
|
|
|
|
|
2022-01-19 22:46:57 +00:00
|
|
|
@stage(compute) @workgroup_size(1)
|
2021-05-26 15:41:02 +00:00
|
|
|
fn main1() {
|
|
|
|
a = 42;
|
|
|
|
uses_a();
|
|
|
|
}
|
|
|
|
|
2022-01-19 22:46:57 +00:00
|
|
|
@stage(compute) @workgroup_size(1)
|
2021-05-26 15:41:02 +00:00
|
|
|
fn main2() {
|
|
|
|
b = 7;
|
|
|
|
uses_b();
|
|
|
|
}
|
|
|
|
|
2022-01-19 22:46:57 +00:00
|
|
|
@stage(compute) @workgroup_size(1)
|
2021-05-26 15:41:02 +00:00
|
|
|
fn main3() {
|
|
|
|
outer();
|
|
|
|
no_uses();
|
|
|
|
}
|
|
|
|
|
2022-01-19 22:46:57 +00:00
|
|
|
@stage(compute) @workgroup_size(1)
|
2021-05-26 15:41:02 +00:00
|
|
|
fn main4() {
|
|
|
|
no_uses();
|
|
|
|
}
|