cts
cts copied to clipboard
WebGPU Conformance Test Suite
We have tests that the results of most builtins must be used in [must_use.spec.ts](https://github.com/gpuweb/cts/blob/main/src/webgpu/shader/validation/parse/must_use.spec.ts), but we have also started adding equivalent tests inside the per-builtin validation suites, e.g. #3496. We...
Test for https://github.com/gpuweb/gpuweb/issues/4606 Expected results need careful review. See discussion here about what the spec says: https://github.com/gpuweb/cts/pull/3669#pullrequestreview-2021383070 Issue: #3251 **Requirements for PR author:** - [ ] All missing test coverage...
The current configuration that we have for linting, etc does not always strictly enforce not assigning to `readonly` params. I have a WIP branch where I know I am improperly...
The definition of "statically accessed" is now recursive in more interesting ways, to make sure it pulls in the right set of overrides. https://github.com/gpuweb/gpuweb/pull/3600
* [x] `struct a {}` -- invalid (empty struct) * [ ] `struct { a: i32, }` -- invalid no name * [ ] invalid duplicate struct name ``` struct...
Example: this should work: ```rust const function = 1; const private = 1; const workgroup = 1; const storage = 1; const uniform = 1; const handle = 1; @group(0)...
This was already true for general expressions. https://github.com/gpuweb/gpuweb/pull/3582 fixed it for LHS. So now: ```rust fn foo { var a: array; *&a[0] = 1; // This is fine. Parses as...
Add some unit tests for concreteTypeOf Issue: n/a **Requirements for PR author:** - [ ] All missing test coverage is tracked with "TODO" or `.unimplemented()`. - [ ] New helpers...
A chromium bug https://bugs.chromium.org/p/chromium/issues/detail?id=1514809 here reports a `ImageElement` uploading issue. I think we should cover this in cts but not sure how to achieve this. @kainino0x and @greggman for more...
The spec has been updated https://github.com/gpuweb/gpuweb/pull/4616 If low >= high, it's a shader-creation error if both are const-expressions. it's a pipeline-creation error if both are override-expressions (and not const-expressions). Note...