dawn-cmake/test/tint
Ben Clayton 8525ff29da tint/transform/robustness: Implement predicated mode
This change overhauls the Robustness transform to support three modes,
per address space:
* ignore    - Disable robustness checks for the address space
* clamp     - Clamp indices / texture args to ensure they're in
              bounds. This was the old behavior, and continues to
              be the default.
* predicate - Condition all indexing / textureLoad / textureStore /
              atomic* operations on the bounds check. If any
              dependent value is out of bounds, then the operation
              is skipped.

This change also fixes multiple expression evaluation of the texture
builtin 'level' argument.

Change-Id: I2e300ddff2c8d3183a9701f06985ce1b262baf2c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122343
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Ben Clayton <bclayton@chromium.org>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
2023-03-06 21:05:01 +00:00
..
access tint/msl: Preserve trailing vec3 padding 2023-02-27 20:21:03 +00:00
array tint/reader/wgsl: Remove element_count_expression() 2023-02-24 21:02:40 +00:00
benchmark test/tint: Update SKIP "expectations" 2023-03-02 09:25:40 +00:00
buffer Move tint::transform::Robustness to a santizier transform 2023-03-02 20:48:48 +00:00
bug tint/transform/robustness: Implement predicated mode 2023-03-06 21:05:01 +00:00
builtins test/tint/builtins/gen: Use returned value 2023-03-06 18:25:08 +00:00
const tint: Rename 'type' to 'alias' 2023-01-24 14:55:17 +00:00
diagnostic_filtering test/tint: Update SKIP "expectations" 2023-03-02 09:25:40 +00:00
expressions Move tint::transform::Robustness to a santizier transform 2023-03-02 20:48:48 +00:00
extensions/parsing Generic template and forward in stringstream. 2023-03-02 21:28:45 +00:00
identifiers/underscore tint: Rename 'type' to 'alias' 2023-01-24 14:55:17 +00:00
layout/storage/mat2x2 tint/transform: Inline HLSL uniform / storage buffers 2023-02-24 17:16:55 +00:00
let/inferred tint: Rename 'type' to 'alias' 2023-01-24 14:55:17 +00:00
loops tint: Use MergeReturn transform in SPIR-V backend 2022-10-31 15:41:41 +00:00
out_of_order_decls tint: Rename 'type' to 'alias' 2023-01-24 14:55:17 +00:00
ptr_ref Move tint::transform::Robustness to a santizier transform 2023-03-02 20:48:48 +00:00
samples Generic template and forward in stringstream. 2023-03-02 21:28:45 +00:00
shader_io Generic template and forward in stringstream. 2023-03-02 21:28:45 +00:00
shadowing Move tint::transform::Robustness to a santizier transform 2023-03-02 20:48:48 +00:00
statements Move tint::transform::Robustness to a santizier transform 2023-03-02 20:48:48 +00:00
struct tint/transform: fix PromoteInitializersToLet for constant expressions 2022-12-09 12:34:36 +00:00
types test/tint: Update SKIP "expectations" 2023-03-02 09:25:40 +00:00
unicode tint: Rename 'type' to 'alias' 2023-01-24 14:55:17 +00:00
unittest/reader/spirv tint: Remove textureNumLayers() overloads for texture cube arrays 2023-03-04 00:55:16 +00:00
var Move tint::transform::Robustness to a santizier transform 2023-03-02 20:48:48 +00:00
vk-gl-cts test/tint: Update SKIP "expectations" 2023-03-02 09:25:40 +00:00
extract-spvasm.py tint->dawn: Shuffle source tree in preperation of merging repos 2022-02-21 15:19:07 +00:00
parse_hlsl_errors.py tint: add parse_hlsl_errors.py to help triage hlsl errors 2022-10-04 19:48:41 +00:00
test-all.sh tools: Replace copy-pasta scripts 2022-04-07 18:26:45 +00:00