Skip to content

Commit

Permalink
wgsl: Improve vector and matrix OOB propegation (#3240)
Browse files Browse the repository at this point in the history
Add explictly returning unbounded intervals for non-compontent-wise
operations.

Cleanup up for how component-wise operations are handled.

Added unittests for operations that didn't have good OOB coverage.

Fixes #3191
  • Loading branch information
zoddicus authored Jan 8, 2024
1 parent 7fc4a3e commit f64bdd2
Show file tree
Hide file tree
Showing 7 changed files with 583 additions and 458 deletions.
180 changes: 90 additions & 90 deletions src/resources/cache/hashes.json
Original file line number Diff line number Diff line change
@@ -1,103 +1,103 @@
{
"webgpu/shader/execution/binary/af_addition.bin": "345a28b7",
"webgpu/shader/execution/binary/af_addition.bin": "a52dc67e",
"webgpu/shader/execution/binary/af_logical.bin": "27321b9c",
"webgpu/shader/execution/binary/af_division.bin": "c87f1318",
"webgpu/shader/execution/binary/af_matrix_addition.bin": "69cc5319",
"webgpu/shader/execution/binary/af_matrix_subtraction.bin": "c1d89b26",
"webgpu/shader/execution/binary/af_multiplication.bin": "6c3abeab",
"webgpu/shader/execution/binary/af_remainder.bin": "8bd97400",
"webgpu/shader/execution/binary/af_subtraction.bin": "5a7112fa",
"webgpu/shader/execution/binary/f16_addition.bin": "479f0e78",
"webgpu/shader/execution/binary/af_division.bin": "27a6e445",
"webgpu/shader/execution/binary/af_matrix_addition.bin": "5baaa29c",
"webgpu/shader/execution/binary/af_matrix_subtraction.bin": "a6fa7d52",
"webgpu/shader/execution/binary/af_multiplication.bin": "6e00f4f5",
"webgpu/shader/execution/binary/af_remainder.bin": "ed7f7cb5",
"webgpu/shader/execution/binary/af_subtraction.bin": "943996c9",
"webgpu/shader/execution/binary/f16_addition.bin": "cfdc6eaf",
"webgpu/shader/execution/binary/f16_logical.bin": "431e624e",
"webgpu/shader/execution/binary/f16_division.bin": "9e3455fc",
"webgpu/shader/execution/binary/f16_matrix_addition.bin": "c0cf381b",
"webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.bin": "51edc282",
"webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.bin": "a612226e",
"webgpu/shader/execution/binary/f16_matrix_subtraction.bin": "64491a9",
"webgpu/shader/execution/binary/f16_matrix_vector_multiplication.bin": "541863d2",
"webgpu/shader/execution/binary/f16_multiplication.bin": "1448ea2d",
"webgpu/shader/execution/binary/f16_remainder.bin": "cde237da",
"webgpu/shader/execution/binary/f16_subtraction.bin": "2739d887",
"webgpu/shader/execution/binary/f32_addition.bin": "f532fa83",
"webgpu/shader/execution/binary/f16_division.bin": "3027fa33",
"webgpu/shader/execution/binary/f16_matrix_addition.bin": "abfcd7e0",
"webgpu/shader/execution/binary/f16_matrix_matrix_multiplication.bin": "d227e0c4",
"webgpu/shader/execution/binary/f16_matrix_scalar_multiplication.bin": "5dbe55d6",
"webgpu/shader/execution/binary/f16_matrix_subtraction.bin": "21055fd5",
"webgpu/shader/execution/binary/f16_matrix_vector_multiplication.bin": "618d746f",
"webgpu/shader/execution/binary/f16_multiplication.bin": "21c319a1",
"webgpu/shader/execution/binary/f16_remainder.bin": "3fbca362",
"webgpu/shader/execution/binary/f16_subtraction.bin": "d217dbdd",
"webgpu/shader/execution/binary/f32_addition.bin": "76aa3474",
"webgpu/shader/execution/binary/f32_logical.bin": "ff723c9d",
"webgpu/shader/execution/binary/f32_division.bin": "1f9f3be2",
"webgpu/shader/execution/binary/f32_matrix_addition.bin": "68f190d7",
"webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.bin": "a126aaf1",
"webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.bin": "5fa08811",
"webgpu/shader/execution/binary/f32_matrix_subtraction.bin": "d9270923",
"webgpu/shader/execution/binary/f32_matrix_vector_multiplication.bin": "9e508eda",
"webgpu/shader/execution/binary/f32_multiplication.bin": "acb51036",
"webgpu/shader/execution/binary/f32_remainder.bin": "26abf1b",
"webgpu/shader/execution/binary/f32_subtraction.bin": "1a895776",
"webgpu/shader/execution/binary/f32_division.bin": "b9f8d082",
"webgpu/shader/execution/binary/f32_matrix_addition.bin": "b2ab732e",
"webgpu/shader/execution/binary/f32_matrix_matrix_multiplication.bin": "2aa2f18d",
"webgpu/shader/execution/binary/f32_matrix_scalar_multiplication.bin": "5358d7b5",
"webgpu/shader/execution/binary/f32_matrix_subtraction.bin": "d003d09b",
"webgpu/shader/execution/binary/f32_matrix_vector_multiplication.bin": "50c0c9d7",
"webgpu/shader/execution/binary/f32_multiplication.bin": "14f0ff95",
"webgpu/shader/execution/binary/f32_remainder.bin": "d8dda35",
"webgpu/shader/execution/binary/f32_subtraction.bin": "ec3197e1",
"webgpu/shader/execution/binary/i32_arithmetic.bin": "ae1c1d58",
"webgpu/shader/execution/binary/i32_comparison.bin": "46155b50",
"webgpu/shader/execution/binary/u32_arithmetic.bin": "bab5328e",
"webgpu/shader/execution/binary/u32_comparison.bin": "34d818e3",
"webgpu/shader/execution/abs.bin": "ea7276ee",
"webgpu/shader/execution/acos.bin": "6532fe83",
"webgpu/shader/execution/acosh.bin": "3ccf99c0",
"webgpu/shader/execution/asin.bin": "e4ca1497",
"webgpu/shader/execution/asinh.bin": "a825fb5e",
"webgpu/shader/execution/atan.bin": "83d7b73a",
"webgpu/shader/execution/atan2.bin": "5dc6e553",
"webgpu/shader/execution/atanh.bin": "ff869593",
"webgpu/shader/execution/bitcast.bin": "692546d7",
"webgpu/shader/execution/ceil.bin": "dc82c7f0",
"webgpu/shader/execution/clamp.bin": "8a6b7591",
"webgpu/shader/execution/cos.bin": "37d594c9",
"webgpu/shader/execution/cosh.bin": "e7ef1519",
"webgpu/shader/execution/cross.bin": "ca40471f",
"webgpu/shader/execution/degrees.bin": "2194e1ab",
"webgpu/shader/execution/determinant.bin": "a1ef2144",
"webgpu/shader/execution/distance.bin": "77edf94",
"webgpu/shader/execution/dot.bin": "e8243a47",
"webgpu/shader/execution/exp.bin": "ed53aa3b",
"webgpu/shader/execution/exp2.bin": "f09ed3ed",
"webgpu/shader/execution/faceForward.bin": "ba3a56fb",
"webgpu/shader/execution/floor.bin": "ae0f3a23",
"webgpu/shader/execution/fma.bin": "1f259679",
"webgpu/shader/execution/fract.bin": "6d019f67",
"webgpu/shader/execution/frexp.bin": "cf521b43",
"webgpu/shader/execution/inverseSqrt.bin": "10006497",
"webgpu/shader/execution/ldexp.bin": "a34df4c9",
"webgpu/shader/execution/length.bin": "d8c6cccf",
"webgpu/shader/execution/log.bin": "fb232771",
"webgpu/shader/execution/log2.bin": "5e0540a0",
"webgpu/shader/execution/max.bin": "3dcb4df7",
"webgpu/shader/execution/min.bin": "c1eee2dc",
"webgpu/shader/execution/mix.bin": "ec107b2a",
"webgpu/shader/execution/modf.bin": "3657eaa7",
"webgpu/shader/execution/normalize.bin": "6c6c95cd",
"webgpu/shader/execution/abs.bin": "dfb8d72b",
"webgpu/shader/execution/acos.bin": "a7375dda",
"webgpu/shader/execution/acosh.bin": "1f174f89",
"webgpu/shader/execution/asin.bin": "c3f31628",
"webgpu/shader/execution/asinh.bin": "85f77cb4",
"webgpu/shader/execution/atan.bin": "fb903055",
"webgpu/shader/execution/atan2.bin": "9da751a4",
"webgpu/shader/execution/atanh.bin": "9d1b15d5",
"webgpu/shader/execution/bitcast.bin": "275beb25",
"webgpu/shader/execution/ceil.bin": "487bdc72",
"webgpu/shader/execution/clamp.bin": "b32ed8d1",
"webgpu/shader/execution/cos.bin": "3a441e50",
"webgpu/shader/execution/cosh.bin": "74616476",
"webgpu/shader/execution/cross.bin": "ba69174d",
"webgpu/shader/execution/degrees.bin": "d7635a8d",
"webgpu/shader/execution/determinant.bin": "7220ac6c",
"webgpu/shader/execution/distance.bin": "c2724ca0",
"webgpu/shader/execution/dot.bin": "2b9fb191",
"webgpu/shader/execution/exp.bin": "a208159e",
"webgpu/shader/execution/exp2.bin": "5bc4085d",
"webgpu/shader/execution/faceForward.bin": "5845d9d4",
"webgpu/shader/execution/floor.bin": "522bc246",
"webgpu/shader/execution/fma.bin": "762790f3",
"webgpu/shader/execution/fract.bin": "d02241aa",
"webgpu/shader/execution/frexp.bin": "8c29d0d0",
"webgpu/shader/execution/inverseSqrt.bin": "321dd6ab",
"webgpu/shader/execution/ldexp.bin": "b755835f",
"webgpu/shader/execution/length.bin": "8df127e6",
"webgpu/shader/execution/log.bin": "ec26f0f6",
"webgpu/shader/execution/log2.bin": "5032f9",
"webgpu/shader/execution/max.bin": "7e8c7c62",
"webgpu/shader/execution/min.bin": "785b98c2",
"webgpu/shader/execution/mix.bin": "148569aa",
"webgpu/shader/execution/modf.bin": "b071fff0",
"webgpu/shader/execution/normalize.bin": "776251fe",
"webgpu/shader/execution/pack2x16float.bin": "9c1bbb0",
"webgpu/shader/execution/pow.bin": "b016609a",
"webgpu/shader/execution/quantizeToF16.bin": "f35538e5",
"webgpu/shader/execution/radians.bin": "63180198",
"webgpu/shader/execution/reflect.bin": "fbd9afd8",
"webgpu/shader/execution/refract.bin": "bd496e20",
"webgpu/shader/execution/round.bin": "2a940af1",
"webgpu/shader/execution/saturate.bin": "31c4b685",
"webgpu/shader/execution/sign.bin": "f5de501b",
"webgpu/shader/execution/sin.bin": "18ff92f7",
"webgpu/shader/execution/sinh.bin": "b6b0fa4f",
"webgpu/shader/execution/smoothstep.bin": "ec4560e1",
"webgpu/shader/execution/sqrt.bin": "746a3e0c",
"webgpu/shader/execution/step.bin": "73253e0c",
"webgpu/shader/execution/tan.bin": "33b15959",
"webgpu/shader/execution/tanh.bin": "39e57783",
"webgpu/shader/execution/transpose.bin": "864aa27a",
"webgpu/shader/execution/trunc.bin": "5a0d2a2",
"webgpu/shader/execution/unpack2x16float.bin": "e882c632",
"webgpu/shader/execution/unpack2x16snorm.bin": "1b639761",
"webgpu/shader/execution/unpack2x16unorm.bin": "c491aba5",
"webgpu/shader/execution/unpack4x8snorm.bin": "f656b21e",
"webgpu/shader/execution/unpack4x8unorm.bin": "9fe4db5a",
"webgpu/shader/execution/unary/af_arithmetic.bin": "833e6033",
"webgpu/shader/execution/unary/af_assignment.bin": "c533f757",
"webgpu/shader/execution/pow.bin": "14adc127",
"webgpu/shader/execution/quantizeToF16.bin": "4d684508",
"webgpu/shader/execution/radians.bin": "fe6a106a",
"webgpu/shader/execution/reflect.bin": "991e7d90",
"webgpu/shader/execution/refract.bin": "9ce6c6e9",
"webgpu/shader/execution/round.bin": "2014bc85",
"webgpu/shader/execution/saturate.bin": "3c5b5d6a",
"webgpu/shader/execution/sign.bin": "5ca6e2c5",
"webgpu/shader/execution/sin.bin": "67f46a23",
"webgpu/shader/execution/sinh.bin": "85a3ebc6",
"webgpu/shader/execution/smoothstep.bin": "3650849c",
"webgpu/shader/execution/sqrt.bin": "199de8bb",
"webgpu/shader/execution/step.bin": "a1e0ecb1",
"webgpu/shader/execution/tan.bin": "48dfc5a4",
"webgpu/shader/execution/tanh.bin": "dba3d680",
"webgpu/shader/execution/transpose.bin": "8e5d0c34",
"webgpu/shader/execution/trunc.bin": "26bb567c",
"webgpu/shader/execution/unpack2x16float.bin": "dcbf83a8",
"webgpu/shader/execution/unpack2x16snorm.bin": "c85a9fdf",
"webgpu/shader/execution/unpack2x16unorm.bin": "7d8ce59f",
"webgpu/shader/execution/unpack4x8snorm.bin": "c394da0c",
"webgpu/shader/execution/unpack4x8unorm.bin": "e9849eb9",
"webgpu/shader/execution/unary/af_arithmetic.bin": "f5dd97a9",
"webgpu/shader/execution/unary/af_assignment.bin": "3dde81ac",
"webgpu/shader/execution/unary/bool_conversion.bin": "2b501a16",
"webgpu/shader/execution/unary/f16_arithmetic.bin": "4ac2bee0",
"webgpu/shader/execution/unary/f16_conversion.bin": "ea17ab50",
"webgpu/shader/execution/unary/f32_arithmetic.bin": "8f702442",
"webgpu/shader/execution/unary/f32_conversion.bin": "23ae43b3",
"webgpu/shader/execution/unary/f16_arithmetic.bin": "e53cb569",
"webgpu/shader/execution/unary/f16_conversion.bin": "9bf49d51",
"webgpu/shader/execution/unary/f32_arithmetic.bin": "58d207c5",
"webgpu/shader/execution/unary/f32_conversion.bin": "56413b46",
"webgpu/shader/execution/unary/i32_arithmetic.bin": "8704047",
"webgpu/shader/execution/unary/i32_complement.bin": "7dec3502",
"webgpu/shader/execution/unary/i32_conversion.bin": "45acb16d",
Expand Down
Binary file not shown.
Binary file not shown.
Binary file modified src/resources/cache/webgpu/shader/execution/bitcast.bin
Binary file not shown.
Binary file modified src/resources/cache/webgpu/shader/execution/refract.bin
Binary file not shown.
Loading

0 comments on commit f64bdd2

Please sign in to comment.