mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-08-06 12:15:43 +00:00
Currently in the MSL backend we cast int values to uint in order to get the correct WGSL behaviour for over/under flow. This fails in the case of host shareable buffers as they use `packed` types which need to get cast to the non-packed version first. Bug: tint:1677 Change-Id: I57b70abaa8ca614472a26d63f19c1aef2bd64668 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/103986 Reviewed-by: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
16 lines
299 B
HLSL
16 lines
299 B
HLSL
ByteAddressBuffer input : register(t0, space0);
|
|
|
|
struct tint_symbol_1 {
|
|
uint3 id : SV_DispatchThreadID;
|
|
};
|
|
|
|
void main_inner(uint3 id) {
|
|
const int3 pos = (asint(input.Load3(0u)) - (0).xxx);
|
|
}
|
|
|
|
[numthreads(1, 1, 1)]
|
|
void main(tint_symbol_1 tint_symbol) {
|
|
main_inner(tint_symbol.id);
|
|
return;
|
|
}
|