mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-06-03 13:11:34 +00:00
To fix this, we trick the compiler by wrapping the function body with an if (true) { <function body> } followed by returning an unused value of the return type. Bug: tint:1081 Change-Id: I763bf768f40d07a1045f0a70017bb40d488c8428 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/68822 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com> Commit-Queue: Antonio Maiorano <amaiorano@google.com>
19 lines
252 B
WebGPU Shading Language
19 lines
252 B
WebGPU Shading Language
fn f(x : i32) -> i32 {
|
|
if (x == 10) {
|
|
discard;
|
|
}
|
|
return x;
|
|
}
|
|
|
|
[[stage(fragment)]]
|
|
fn main([[location(1)]] x: vec3<i32>) -> [[location(2)]] i32 {
|
|
var y = x.x;
|
|
loop {
|
|
let r = f(y);
|
|
if (r == 0) {
|
|
break;
|
|
}
|
|
}
|
|
return y;
|
|
}
|