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>
diff --git a/test/intrinsics/gen/max/ce7c30.wgsl.expected.hlsl b/test/intrinsics/gen/max/ce7c30.wgsl.expected.hlsl
index 7892ab4..ada95a0 100644
--- a/test/intrinsics/gen/max/ce7c30.wgsl.expected.hlsl
+++ b/test/intrinsics/gen/max/ce7c30.wgsl.expected.hlsl
@@ -1,11 +1,11 @@
-struct tint_symbol {
- float4 value : SV_Position;
-};
-
void max_ce7c30() {
int res = max(1, 1);
}
+struct tint_symbol {
+ float4 value : SV_Position;
+};
+
tint_symbol vertex_main() {
max_ce7c30();
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
@@ -22,4 +22,3 @@
max_ce7c30();
return;
}
-