dawn-cmake/test/var/private.wgsl.expected.hlsl
Ben Clayton 5d2f34ecf2 writer/hlsl: Simplify emission logic, clean up output
And fix issues where global variables would not be emitted unless they were transitively referenced by an entry point.

This change requires crbug.com/tint/697 to be fixed before landing.

Change-Id: I712bd9d369e08c9a3cdfb0f114c3609584f91f28
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54241
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
2021-06-16 09:19:36 +00:00

54 lines
526 B
HLSL

static int a;
static int b;
static int c;
void uses_a() {
a = (a + 1);
}
void uses_b() {
b = (b * 2);
}
void uses_a_and_b() {
b = a;
}
void no_uses() {
}
void outer() {
a = 0;
uses_a();
uses_a_and_b();
uses_b();
no_uses();
}
[numthreads(1, 1, 1)]
void main1() {
a = 42;
uses_a();
return;
}
[numthreads(1, 1, 1)]
void main2() {
b = 7;
uses_b();
return;
}
[numthreads(1, 1, 1)]
void main3() {
outer();
no_uses();
return;
}
[numthreads(1, 1, 1)]
void main4() {
no_uses();
return;
}