Range Analysis: Compute range of built-in call `min` This patch computes the range of a core built-in call `min`. - When both `a` and `b` are constant values, the range of `min(a, b)` will also be a constant value. - When the range of `a` is [min1, max1] and the range of `b` is [min2, max2], the range of min(a, b) is `[min(min1, min2), min(max1, max2)]`. - The ranges that represent the whole range of `i32` or `u32` are treated as invalid ones (e.g. min(a, i32::kHighestValue)) Bug: 348701956 Test: tint_unittests Change-Id: Ifc67d12b23a7f3ba77250c8857bc5e9147db23b9 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/251594 Commit-Queue: David Neto <dneto@google.com> Reviewed-by: David Neto <dneto@google.com>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h version that Dawn implements.webgpu.h.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.