dan sinclair b29892be09 Update src/tint unittests to new @stage format.
This CL updates all of the Tint unittests to the new @stage shorter
syntax. This also updates the WGSL writer to emit the new short forms
instead of using the deprecated form.

Bug: tint:1503
Change-Id: I8c49e5319a19cccb5b4b5078f3ab39c50f31a9a8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/92483
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-06-07 13:55:34 +00:00

14 lines
495 B
WebGPU Shading Language

// Fails with "D3D compile failed with value cannot be NaN, isnan() may not be necessary. /Gis may force isnan() to be performed"
fn Bad(index: u32, rd: vec3<f32>) -> vec3<f32> {
var normal: vec3<f32> = vec3<f32>(0.0);
normal[index] = -sign(rd[index]);
return normalize(normal);
}
struct S { v : vec3<f32>, i : u32, };
@binding(0) @group(0) var<storage, read_write> io : S;
@compute @workgroup_size(1)
fn main(@builtin(local_invocation_index) idx : u32) {
io.v = Bad(io.i, io.v);
}