Skip to content

Conversation

@alan-baker
Copy link
Contributor

Refs #3741

  • Move statement validation tests in parse/ into statement/
    • Combine with existing suites where applicable

Issue: #


Requirements for PR author:

  • All missing test coverage is tracked with "TODO" or .unimplemented().
  • New helpers are /** documented */ and new helper files are found in helper_index.txt.
  • Test behaves as expected in a WebGPU implementation. (If not passing, explain above.)
  • Test have be tested with compatibility mode validation enabled and behave as expected. (If not passing, explain above.)

Requirements for reviewer sign-off:

  • Tests are properly located in the test tree.
  • Test descriptions allow a reader to "read only the test plans and evaluate coverage completeness", and accurately reflect the test code.
  • Tests provide complete coverage (including validation control cases). Missing coverage MUST be covered by TODOs.
  • Helpers and types promote readability and maintainability.

When landing this PR, be sure to make any necessary issue status updates.

Refs gpuweb#3741

* Move statement validation tests in parse/ into statement/
  * Combine with existing suites where applicable
@alan-baker alan-baker requested a review from dj2 May 14, 2024 14:26
@alan-baker alan-baker merged commit a4bdf9d into gpuweb:main May 14, 2024
@alan-baker alan-baker deleted the refactor-statement-val branch May 14, 2024 14:36
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Aug 20, 2024
…u-reviewers,teoxoy

- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:storage_texel_formats:*`, introduced by [gpuweb/cts#3849](gpuweb/cts#3849).
- `webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_swizzle:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,expression,call,builtin,pack2x16float:*`, introduced by TODO.
- `webgpu:shader,validation,expression,call,builtin,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,statement,continue:*`, introduced by [gpuweb/cts#3688](gpuweb/cts#3688).
- `webgpu:shader,validation,statement,{if,loop,return,switch,while}:*`, introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:missing_type:*`, introduced by [`gpuweb/cts`#3696](gpuweb/cts#3696).

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219374
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Aug 20, 2024
…ebgpu-reviewers,teoxoy

- `webpgpu:api,validation,buffer,mapping:getMappedRange,disjoinRanges_many` was renamed to `disjointRanges_many` (see also @jimb's PR making the move at [gpuweb/cts#3838](gpuweb/cts#3838))
- `webgpu:shader,validation,decl,ptr_spelling:*` was merged with `webgpu:shader,validation,types,pointer:*` in [`gpuweb/cts`#3714](gpuweb/cts#3714).
- `webgpu:shader,validation,{decl,var_access_mode,parse,var_and_let}:*` → `webgpu:shader,validation,decl,var:*`, merged in [gpuweb/cts#3713](https:// github.com/gpuweb/cts/pull/3713).
  - `…:initializer_type:*` had its structure changed to accommodate the merge.
- `webgpu:shader,validation,parse,align:*` → `webgpu:shader,validation,shader_io,align:*`, moved by [gpuweb/cts#3712](gpuweb/cts#3712),
- `webgpu:shader,validation,parse,{break,break_if,compound,const_assert,continuing,discard,statement_behavior}`, moved by [gpuweb/cts#3742](gpuweb/cts#3742)
  - `webgpu:shader,validation,parse,break_if:non_bool_param:*` → `webgpu:shader,validation,statement,break_if:condition_type:*`, moved by [gpuweb/cts#3671](gpuweb/cts#3671), affected by [`gpuweb/cts`#3690](gpuweb/cts#3690).
- `webgpu:shader,validation,parse_binary_ops:*` → `webgpu:shader,validation,expression,binary,parse:*`

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219376
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Aug 20, 2024
This (non-exhaustively) adds or implements the following test paths:

- `webgpu:api,validation,render_pipeline,depth_stencil_state:depth_bias:*`, introduced by [gpuweb/cts#3863](gpuweb/cts#3863). Tracked with [bug 1911312](https://bugzilla.mozilla.org/show_bug.cgi?id=1911312).
- `webgpu:shader,execution,expression,access,array,index:matrix:*`, introduced by [gpuweb/cts#3738](gpuweb/cts#3738).
- `webgpu:shader,execution,expression,call,builtin,atomics,atomicSub:sub_i32_min:*`, introduced by [gpuweb/cts#3728](gpuweb/cts#3728).
- `webgpu:shader,execution,expression,call,builtin,fwidth{,Coarse,Fine}:f32:*`, implemented by [gpuweb/cts#3686](gpuweb/cts#3686).
- `webgpu:shader,execution,expression,call,builtin,textureNumLayers:arrayed:*`, implemented by [gpuweb/cts#3853](gpuweb/cts#3853).
- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureNumSamples:sampled:*`, implemented by [gpuweb/cts#3856](gpuweb/cts#3856).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:*`, with:
	- `{arrayed,sampled_1d,sampled_3d}` implemented by [gpuweb/cts#3852](gpuweb/cts#3852)
	- `sampled_2d` implemented by [gpuweb/cts#3861](gpuweb/cts#3861).
- `webgpu:shader,execution,expression,call,builtin,textureSample:*`, apparently changed by [gpuweb/cts#3877](gpuweb/cts#3877).
- `webgpu:shader,execution,expression,call,builtin,textureStore:*` had the following tests added:
	- By [gpuweb/cts#3781](gpuweb/cts#3781):
		- `out_of_bounds`
		- `out_of_bounds_array`
	- By [gpuweb/cts#3841](gpuweb/cts#3841):
		- `bgra8unorm_swizzle`
		- `texel_formats`

	It's unclear why these are failing, but I suspect part 2.7.
- `webgpu:shader,execution,expression,constructor,zero_value:vector_prefix:*`, introduced by [gpuweb/cts#3734](gpuweb/cts#3734).
- `webgpu:shader,validation,decl,var:address_space_access_mode:*`, introduced by [`gpuweb/cts`#3695](gpuweb/cts#3695).
- `webgpu:shader,validation,decl,var:shader_stage:*`, introduced by [gpuweb/cts#3736](gpuweb/cts#3736).
- `webgpu:shader,validation,expression,access,vector:*` was modified in [gpuweb/cts#3708](gpuweb/cts#3708):
	- renamed `…:vector:*` to `concrete`
	- added `abstract`
- `webgpu:shader,validation,expression,binary,*`:
	- `…,bitwise_shift:*`:
		- `…:partial_eval_errors:*`, introduced by [`gpuweb/cts`#3796](gpuweb/cts#3796)
		- `…:{shift_left_concrete,shift_right_concrete}:*` had new cases introduced in [gpuweb/cts#3726](gpuweb/cts#3726).
		- `…:{shift_left_abstract,shift_right_abstract}:*`, introduced by [`gpuweb/cts`#3833](gpuweb/cts#3833).
	- `…,{add_sub_mul:*,and_or_xor:*,bitwise_shift:scalar_vector:*,div_rem:scalar_vector:*}` modified by [`gpuweb/cts`#3648](gpuweb/cts#3648).
- `webgpu:shader,validation,expression,call,builtin,*`:
	- `…,dot:*`, introduced in [gpuweb/cts#3579](gpuweb/cts#3579).
	- `…,fma:*`, introduced by [`gpuweb/cts`#3577](gpuweb/cts#3577).
	- `…,ldexp:*`:
		- `…:{args,must_use,values}:*` introduced by [gpuweb/cts#3615](gpuweb/cts#3615).
		- `…:partial_values:*` introduced by [gpuweb/cts#3798](gpuweb/cts#3798).
	- `…,mix:*`, introduced by TODO.
	- `…,modf:*`, introduced by TODO.
	- `…,pow:*`, introduced by TODO.
	- `…,refract:*`, introduced by TODO.
	- `…,saturate:*`, introduced by TODO.
	- `…,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,functions,alias_analysis:swizzles:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,shader_io,align:parsing:duplicate`, introduced by [gpuweb/cts#3692](gpuweb/cts#3692).
- `webgpu:shader,validation,statement,{for,loop,return}:*` cases introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:{access_mode,address_space,type}:*`, introduced by [`gpuweb/cts`#3649](gpuweb/cts#3649).

This list is incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219377
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Aug 21, 2024
…u-reviewers,teoxoy

- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:storage_texel_formats:*`, introduced by [gpuweb/cts#3849](gpuweb/cts#3849).
- `webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_swizzle:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,expression,call,builtin,pack2x16float:*`, introduced by TODO.
- `webgpu:shader,validation,expression,call,builtin,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,statement,continue:*`, introduced by [gpuweb/cts#3688](gpuweb/cts#3688).
- `webgpu:shader,validation,statement,{if,loop,return,switch,while}:*`, introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:missing_type:*`, introduced by [`gpuweb/cts`#3696](gpuweb/cts#3696).

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219374
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Aug 21, 2024
…ebgpu-reviewers,teoxoy

- `webpgpu:api,validation,buffer,mapping:getMappedRange,disjoinRanges_many` was renamed to `disjointRanges_many` (see also @jimb's PR making the move at [gpuweb/cts#3838](gpuweb/cts#3838))
- `webgpu:shader,validation,decl,ptr_spelling:*` was merged with `webgpu:shader,validation,types,pointer:*` in [`gpuweb/cts`#3714](gpuweb/cts#3714).
- `webgpu:shader,validation,{decl,var_access_mode,parse,var_and_let}:*` → `webgpu:shader,validation,decl,var:*`, merged in [gpuweb/cts#3713](https:// github.com/gpuweb/cts/pull/3713).
  - `…:initializer_type:*` had its structure changed to accommodate the merge.
- `webgpu:shader,validation,parse,align:*` → `webgpu:shader,validation,shader_io,align:*`, moved by [gpuweb/cts#3712](gpuweb/cts#3712),
- `webgpu:shader,validation,parse,{break,break_if,compound,const_assert,continuing,discard,statement_behavior}`, moved by [gpuweb/cts#3742](gpuweb/cts#3742)
  - `webgpu:shader,validation,parse,break_if:non_bool_param:*` → `webgpu:shader,validation,statement,break_if:condition_type:*`, moved by [gpuweb/cts#3671](gpuweb/cts#3671), affected by [`gpuweb/cts`#3690](gpuweb/cts#3690).
- `webgpu:shader,validation,parse_binary_ops:*` → `webgpu:shader,validation,expression,binary,parse:*`

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219376
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Aug 21, 2024
This (non-exhaustively) adds or implements the following test paths:

- `webgpu:api,validation,render_pipeline,depth_stencil_state:depth_bias:*`, introduced by [gpuweb/cts#3863](gpuweb/cts#3863). Tracked with [bug 1911312](https://bugzilla.mozilla.org/show_bug.cgi?id=1911312).
- `webgpu:shader,execution,expression,access,array,index:matrix:*`, introduced by [gpuweb/cts#3738](gpuweb/cts#3738).
- `webgpu:shader,execution,expression,call,builtin,atomics,atomicSub:sub_i32_min:*`, introduced by [gpuweb/cts#3728](gpuweb/cts#3728).
- `webgpu:shader,execution,expression,call,builtin,fwidth{,Coarse,Fine}:f32:*`, implemented by [gpuweb/cts#3686](gpuweb/cts#3686).
- `webgpu:shader,execution,expression,call,builtin,textureNumLayers:arrayed:*`, implemented by [gpuweb/cts#3853](gpuweb/cts#3853).
- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureNumSamples:sampled:*`, implemented by [gpuweb/cts#3856](gpuweb/cts#3856).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:*`, with:
	- `{arrayed,sampled_1d,sampled_3d}` implemented by [gpuweb/cts#3852](gpuweb/cts#3852)
	- `sampled_2d` implemented by [gpuweb/cts#3861](gpuweb/cts#3861).
- `webgpu:shader,execution,expression,call,builtin,textureSample:*`, apparently changed by [gpuweb/cts#3877](gpuweb/cts#3877).
- `webgpu:shader,execution,expression,call,builtin,textureStore:*` had the following tests added:
	- By [gpuweb/cts#3781](gpuweb/cts#3781):
		- `out_of_bounds`
		- `out_of_bounds_array`
	- By [gpuweb/cts#3841](gpuweb/cts#3841):
		- `bgra8unorm_swizzle`
		- `texel_formats`

	It's unclear why these are failing, but I suspect part 2.7.
- `webgpu:shader,execution,expression,constructor,zero_value:vector_prefix:*`, introduced by [gpuweb/cts#3734](gpuweb/cts#3734).
- `webgpu:shader,validation,decl,var:address_space_access_mode:*`, introduced by [`gpuweb/cts`#3695](gpuweb/cts#3695).
- `webgpu:shader,validation,decl,var:shader_stage:*`, introduced by [gpuweb/cts#3736](gpuweb/cts#3736).
- `webgpu:shader,validation,expression,access,vector:*` was modified in [gpuweb/cts#3708](gpuweb/cts#3708):
	- renamed `…:vector:*` to `concrete`
	- added `abstract`
- `webgpu:shader,validation,expression,binary,*`:
	- `…,bitwise_shift:*`:
		- `…:partial_eval_errors:*`, introduced by [`gpuweb/cts`#3796](gpuweb/cts#3796)
		- `…:{shift_left_concrete,shift_right_concrete}:*` had new cases introduced in [gpuweb/cts#3726](gpuweb/cts#3726).
		- `…:{shift_left_abstract,shift_right_abstract}:*`, introduced by [`gpuweb/cts`#3833](gpuweb/cts#3833).
	- `…,{add_sub_mul:*,and_or_xor:*,bitwise_shift:scalar_vector:*,div_rem:scalar_vector:*}` modified by [`gpuweb/cts`#3648](gpuweb/cts#3648).
- `webgpu:shader,validation,expression,call,builtin,*`:
	- `…,dot:*`, introduced in [gpuweb/cts#3579](gpuweb/cts#3579).
	- `…,fma:*`, introduced by [`gpuweb/cts`#3577](gpuweb/cts#3577).
	- `…,ldexp:*`:
		- `…:{args,must_use,values}:*` introduced by [gpuweb/cts#3615](gpuweb/cts#3615).
		- `…:partial_values:*` introduced by [gpuweb/cts#3798](gpuweb/cts#3798).
	- `…,mix:*`, introduced by TODO.
	- `…,modf:*`, introduced by TODO.
	- `…,pow:*`, introduced by TODO.
	- `…,refract:*`, introduced by TODO.
	- `…,saturate:*`, introduced by TODO.
	- `…,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,functions,alias_analysis:swizzles:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,shader_io,align:parsing:duplicate`, introduced by [gpuweb/cts#3692](gpuweb/cts#3692).
- `webgpu:shader,validation,statement,{for,loop,return}:*` cases introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:{access_mode,address_space,type}:*`, introduced by [`gpuweb/cts`#3649](gpuweb/cts#3649).

This list is incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219377
i3roly pushed a commit to i3roly/firefox-dynasty that referenced this pull request Aug 22, 2024
…u-reviewers,teoxoy

- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:storage_texel_formats:*`, introduced by [gpuweb/cts#3849](gpuweb/cts#3849).
- `webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_swizzle:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,expression,call,builtin,pack2x16float:*`, introduced by TODO.
- `webgpu:shader,validation,expression,call,builtin,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,statement,continue:*`, introduced by [gpuweb/cts#3688](gpuweb/cts#3688).
- `webgpu:shader,validation,statement,{if,loop,return,switch,while}:*`, introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:missing_type:*`, introduced by [`gpuweb/cts`#3696](gpuweb/cts#3696).

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219374
i3roly pushed a commit to i3roly/firefox-dynasty that referenced this pull request Aug 22, 2024
…ebgpu-reviewers,teoxoy

- `webpgpu:api,validation,buffer,mapping:getMappedRange,disjoinRanges_many` was renamed to `disjointRanges_many` (see also @jimb's PR making the move at [gpuweb/cts#3838](gpuweb/cts#3838))
- `webgpu:shader,validation,decl,ptr_spelling:*` was merged with `webgpu:shader,validation,types,pointer:*` in [`gpuweb/cts`#3714](gpuweb/cts#3714).
- `webgpu:shader,validation,{decl,var_access_mode,parse,var_and_let}:*` → `webgpu:shader,validation,decl,var:*`, merged in [gpuweb/cts#3713](https:// github.com/gpuweb/cts/pull/3713).
  - `…:initializer_type:*` had its structure changed to accommodate the merge.
- `webgpu:shader,validation,parse,align:*` → `webgpu:shader,validation,shader_io,align:*`, moved by [gpuweb/cts#3712](gpuweb/cts#3712),
- `webgpu:shader,validation,parse,{break,break_if,compound,const_assert,continuing,discard,statement_behavior}`, moved by [gpuweb/cts#3742](gpuweb/cts#3742)
  - `webgpu:shader,validation,parse,break_if:non_bool_param:*` → `webgpu:shader,validation,statement,break_if:condition_type:*`, moved by [gpuweb/cts#3671](gpuweb/cts#3671), affected by [`gpuweb/cts`#3690](gpuweb/cts#3690).
- `webgpu:shader,validation,parse_binary_ops:*` → `webgpu:shader,validation,expression,binary,parse:*`

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219376
i3roly pushed a commit to i3roly/firefox-dynasty that referenced this pull request Aug 22, 2024
This (non-exhaustively) adds or implements the following test paths:

- `webgpu:api,validation,render_pipeline,depth_stencil_state:depth_bias:*`, introduced by [gpuweb/cts#3863](gpuweb/cts#3863). Tracked with [bug 1911312](https://bugzilla.mozilla.org/show_bug.cgi?id=1911312).
- `webgpu:shader,execution,expression,access,array,index:matrix:*`, introduced by [gpuweb/cts#3738](gpuweb/cts#3738).
- `webgpu:shader,execution,expression,call,builtin,atomics,atomicSub:sub_i32_min:*`, introduced by [gpuweb/cts#3728](gpuweb/cts#3728).
- `webgpu:shader,execution,expression,call,builtin,fwidth{,Coarse,Fine}:f32:*`, implemented by [gpuweb/cts#3686](gpuweb/cts#3686).
- `webgpu:shader,execution,expression,call,builtin,textureNumLayers:arrayed:*`, implemented by [gpuweb/cts#3853](gpuweb/cts#3853).
- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureNumSamples:sampled:*`, implemented by [gpuweb/cts#3856](gpuweb/cts#3856).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:*`, with:
	- `{arrayed,sampled_1d,sampled_3d}` implemented by [gpuweb/cts#3852](gpuweb/cts#3852)
	- `sampled_2d` implemented by [gpuweb/cts#3861](gpuweb/cts#3861).
- `webgpu:shader,execution,expression,call,builtin,textureSample:*`, apparently changed by [gpuweb/cts#3877](gpuweb/cts#3877).
- `webgpu:shader,execution,expression,call,builtin,textureStore:*` had the following tests added:
	- By [gpuweb/cts#3781](gpuweb/cts#3781):
		- `out_of_bounds`
		- `out_of_bounds_array`
	- By [gpuweb/cts#3841](gpuweb/cts#3841):
		- `bgra8unorm_swizzle`
		- `texel_formats`

	It's unclear why these are failing, but I suspect part 2.7.
- `webgpu:shader,execution,expression,constructor,zero_value:vector_prefix:*`, introduced by [gpuweb/cts#3734](gpuweb/cts#3734).
- `webgpu:shader,validation,decl,var:address_space_access_mode:*`, introduced by [`gpuweb/cts`#3695](gpuweb/cts#3695).
- `webgpu:shader,validation,decl,var:shader_stage:*`, introduced by [gpuweb/cts#3736](gpuweb/cts#3736).
- `webgpu:shader,validation,expression,access,vector:*` was modified in [gpuweb/cts#3708](gpuweb/cts#3708):
	- renamed `…:vector:*` to `concrete`
	- added `abstract`
- `webgpu:shader,validation,expression,binary,*`:
	- `…,bitwise_shift:*`:
		- `…:partial_eval_errors:*`, introduced by [`gpuweb/cts`#3796](gpuweb/cts#3796)
		- `…:{shift_left_concrete,shift_right_concrete}:*` had new cases introduced in [gpuweb/cts#3726](gpuweb/cts#3726).
		- `…:{shift_left_abstract,shift_right_abstract}:*`, introduced by [`gpuweb/cts`#3833](gpuweb/cts#3833).
	- `…,{add_sub_mul:*,and_or_xor:*,bitwise_shift:scalar_vector:*,div_rem:scalar_vector:*}` modified by [`gpuweb/cts`#3648](gpuweb/cts#3648).
- `webgpu:shader,validation,expression,call,builtin,*`:
	- `…,dot:*`, introduced in [gpuweb/cts#3579](gpuweb/cts#3579).
	- `…,fma:*`, introduced by [`gpuweb/cts`#3577](gpuweb/cts#3577).
	- `…,ldexp:*`:
		- `…:{args,must_use,values}:*` introduced by [gpuweb/cts#3615](gpuweb/cts#3615).
		- `…:partial_values:*` introduced by [gpuweb/cts#3798](gpuweb/cts#3798).
	- `…,mix:*`, introduced by TODO.
	- `…,modf:*`, introduced by TODO.
	- `…,pow:*`, introduced by TODO.
	- `…,refract:*`, introduced by TODO.
	- `…,saturate:*`, introduced by TODO.
	- `…,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,functions,alias_analysis:swizzles:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,shader_io,align:parsing:duplicate`, introduced by [gpuweb/cts#3692](gpuweb/cts#3692).
- `webgpu:shader,validation,statement,{for,loop,return}:*` cases introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:{access_mode,address_space,type}:*`, introduced by [`gpuweb/cts`#3649](gpuweb/cts#3649).

This list is incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219377
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Aug 23, 2024
…u-reviewers,teoxoy

- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:storage_texel_formats:*`, introduced by [gpuweb/cts#3849](gpuweb/cts#3849).
- `webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_swizzle:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,expression,call,builtin,pack2x16float:*`, introduced by TODO.
- `webgpu:shader,validation,expression,call,builtin,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,statement,continue:*`, introduced by [gpuweb/cts#3688](gpuweb/cts#3688).
- `webgpu:shader,validation,statement,{if,loop,return,switch,while}:*`, introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:missing_type:*`, introduced by [`gpuweb/cts`#3696](gpuweb/cts#3696).

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219374

UltraBlame original commit: 860d96bdcd69523a9246a60f2cf2026a542571e9
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Aug 23, 2024
…ebgpu-reviewers,teoxoy

- `webpgpu:api,validation,buffer,mapping:getMappedRange,disjoinRanges_many` was renamed to `disjointRanges_many` (see also jimb's PR making the move at [gpuweb/cts#3838](gpuweb/cts#3838))
- `webgpu:shader,validation,decl,ptr_spelling:*` was merged with `webgpu:shader,validation,types,pointer:*` in [`gpuweb/cts`#3714](gpuweb/cts#3714).
- `webgpu:shader,validation,{decl,var_access_mode,parse,var_and_let}:*` → `webgpu:shader,validation,decl,var:*`, merged in [gpuweb/cts#3713](https:// github.com/gpuweb/cts/pull/3713).
  - `…:initializer_type:*` had its structure changed to accommodate the merge.
- `webgpu:shader,validation,parse,align:*` → `webgpu:shader,validation,shader_io,align:*`, moved by [gpuweb/cts#3712](gpuweb/cts#3712),
- `webgpu:shader,validation,parse,{break,break_if,compound,const_assert,continuing,discard,statement_behavior}`, moved by [gpuweb/cts#3742](gpuweb/cts#3742)
  - `webgpu:shader,validation,parse,break_if:non_bool_param:*` → `webgpu:shader,validation,statement,break_if:condition_type:*`, moved by [gpuweb/cts#3671](gpuweb/cts#3671), affected by [`gpuweb/cts`#3690](gpuweb/cts#3690).
- `webgpu:shader,validation,parse_binary_ops:*` → `webgpu:shader,validation,expression,binary,parse:*`

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219376

UltraBlame original commit: e7b536d026a25476d4107d76137201074bf07a80
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Aug 23, 2024
This (non-exhaustively) adds or implements the following test paths:

- `webgpu:api,validation,render_pipeline,depth_stencil_state:depth_bias:*`, introduced by [gpuweb/cts#3863](gpuweb/cts#3863). Tracked with [bug 1911312](https://bugzilla.mozilla.org/show_bug.cgi?id=1911312).
- `webgpu:shader,execution,expression,access,array,index:matrix:*`, introduced by [gpuweb/cts#3738](gpuweb/cts#3738).
- `webgpu:shader,execution,expression,call,builtin,atomics,atomicSub:sub_i32_min:*`, introduced by [gpuweb/cts#3728](gpuweb/cts#3728).
- `webgpu:shader,execution,expression,call,builtin,fwidth{,Coarse,Fine}:f32:*`, implemented by [gpuweb/cts#3686](gpuweb/cts#3686).
- `webgpu:shader,execution,expression,call,builtin,textureNumLayers:arrayed:*`, implemented by [gpuweb/cts#3853](gpuweb/cts#3853).
- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureNumSamples:sampled:*`, implemented by [gpuweb/cts#3856](gpuweb/cts#3856).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:*`, with:
	- `{arrayed,sampled_1d,sampled_3d}` implemented by [gpuweb/cts#3852](gpuweb/cts#3852)
	- `sampled_2d` implemented by [gpuweb/cts#3861](gpuweb/cts#3861).
- `webgpu:shader,execution,expression,call,builtin,textureSample:*`, apparently changed by [gpuweb/cts#3877](gpuweb/cts#3877).
- `webgpu:shader,execution,expression,call,builtin,textureStore:*` had the following tests added:
	- By [gpuweb/cts#3781](gpuweb/cts#3781):
		- `out_of_bounds`
		- `out_of_bounds_array`
	- By [gpuweb/cts#3841](gpuweb/cts#3841):
		- `bgra8unorm_swizzle`
		- `texel_formats`

	It's unclear why these are failing, but I suspect part 2.7.
- `webgpu:shader,execution,expression,constructor,zero_value:vector_prefix:*`, introduced by [gpuweb/cts#3734](gpuweb/cts#3734).
- `webgpu:shader,validation,decl,var:address_space_access_mode:*`, introduced by [`gpuweb/cts`#3695](gpuweb/cts#3695).
- `webgpu:shader,validation,decl,var:shader_stage:*`, introduced by [gpuweb/cts#3736](gpuweb/cts#3736).
- `webgpu:shader,validation,expression,access,vector:*` was modified in [gpuweb/cts#3708](gpuweb/cts#3708):
	- renamed `…:vector:*` to `concrete`
	- added `abstract`
- `webgpu:shader,validation,expression,binary,*`:
	- `…,bitwise_shift:*`:
		- `…:partial_eval_errors:*`, introduced by [`gpuweb/cts`#3796](gpuweb/cts#3796)
		- `…:{shift_left_concrete,shift_right_concrete}:*` had new cases introduced in [gpuweb/cts#3726](gpuweb/cts#3726).
		- `…:{shift_left_abstract,shift_right_abstract}:*`, introduced by [`gpuweb/cts`#3833](gpuweb/cts#3833).
	- `…,{add_sub_mul:*,and_or_xor:*,bitwise_shift:scalar_vector:*,div_rem:scalar_vector:*}` modified by [`gpuweb/cts`#3648](gpuweb/cts#3648).
- `webgpu:shader,validation,expression,call,builtin,*`:
	- `…,dot:*`, introduced in [gpuweb/cts#3579](gpuweb/cts#3579).
	- `…,fma:*`, introduced by [`gpuweb/cts`#3577](gpuweb/cts#3577).
	- `…,ldexp:*`:
		- `…:{args,must_use,values}:*` introduced by [gpuweb/cts#3615](gpuweb/cts#3615).
		- `…:partial_values:*` introduced by [gpuweb/cts#3798](gpuweb/cts#3798).
	- `…,mix:*`, introduced by TODO.
	- `…,modf:*`, introduced by TODO.
	- `…,pow:*`, introduced by TODO.
	- `…,refract:*`, introduced by TODO.
	- `…,saturate:*`, introduced by TODO.
	- `…,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,functions,alias_analysis:swizzles:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,shader_io,align:parsing:duplicate`, introduced by [gpuweb/cts#3692](gpuweb/cts#3692).
- `webgpu:shader,validation,statement,{for,loop,return}:*` cases introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:{access_mode,address_space,type}:*`, introduced by [`gpuweb/cts`#3649](gpuweb/cts#3649).

This list is incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219377

UltraBlame original commit: cc8e4c0d527650c82b7c8d07a4484856ea046c10
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Aug 23, 2024
…u-reviewers,teoxoy

- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:storage_texel_formats:*`, introduced by [gpuweb/cts#3849](gpuweb/cts#3849).
- `webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_swizzle:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,expression,call,builtin,pack2x16float:*`, introduced by TODO.
- `webgpu:shader,validation,expression,call,builtin,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,statement,continue:*`, introduced by [gpuweb/cts#3688](gpuweb/cts#3688).
- `webgpu:shader,validation,statement,{if,loop,return,switch,while}:*`, introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:missing_type:*`, introduced by [`gpuweb/cts`#3696](gpuweb/cts#3696).

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219374

UltraBlame original commit: 860d96bdcd69523a9246a60f2cf2026a542571e9
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Aug 23, 2024
…ebgpu-reviewers,teoxoy

- `webpgpu:api,validation,buffer,mapping:getMappedRange,disjoinRanges_many` was renamed to `disjointRanges_many` (see also jimb's PR making the move at [gpuweb/cts#3838](gpuweb/cts#3838))
- `webgpu:shader,validation,decl,ptr_spelling:*` was merged with `webgpu:shader,validation,types,pointer:*` in [`gpuweb/cts`#3714](gpuweb/cts#3714).
- `webgpu:shader,validation,{decl,var_access_mode,parse,var_and_let}:*` → `webgpu:shader,validation,decl,var:*`, merged in [gpuweb/cts#3713](https:// github.com/gpuweb/cts/pull/3713).
  - `…:initializer_type:*` had its structure changed to accommodate the merge.
- `webgpu:shader,validation,parse,align:*` → `webgpu:shader,validation,shader_io,align:*`, moved by [gpuweb/cts#3712](gpuweb/cts#3712),
- `webgpu:shader,validation,parse,{break,break_if,compound,const_assert,continuing,discard,statement_behavior}`, moved by [gpuweb/cts#3742](gpuweb/cts#3742)
  - `webgpu:shader,validation,parse,break_if:non_bool_param:*` → `webgpu:shader,validation,statement,break_if:condition_type:*`, moved by [gpuweb/cts#3671](gpuweb/cts#3671), affected by [`gpuweb/cts`#3690](gpuweb/cts#3690).
- `webgpu:shader,validation,parse_binary_ops:*` → `webgpu:shader,validation,expression,binary,parse:*`

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219376

UltraBlame original commit: e7b536d026a25476d4107d76137201074bf07a80
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Aug 23, 2024
This (non-exhaustively) adds or implements the following test paths:

- `webgpu:api,validation,render_pipeline,depth_stencil_state:depth_bias:*`, introduced by [gpuweb/cts#3863](gpuweb/cts#3863). Tracked with [bug 1911312](https://bugzilla.mozilla.org/show_bug.cgi?id=1911312).
- `webgpu:shader,execution,expression,access,array,index:matrix:*`, introduced by [gpuweb/cts#3738](gpuweb/cts#3738).
- `webgpu:shader,execution,expression,call,builtin,atomics,atomicSub:sub_i32_min:*`, introduced by [gpuweb/cts#3728](gpuweb/cts#3728).
- `webgpu:shader,execution,expression,call,builtin,fwidth{,Coarse,Fine}:f32:*`, implemented by [gpuweb/cts#3686](gpuweb/cts#3686).
- `webgpu:shader,execution,expression,call,builtin,textureNumLayers:arrayed:*`, implemented by [gpuweb/cts#3853](gpuweb/cts#3853).
- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureNumSamples:sampled:*`, implemented by [gpuweb/cts#3856](gpuweb/cts#3856).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:*`, with:
	- `{arrayed,sampled_1d,sampled_3d}` implemented by [gpuweb/cts#3852](gpuweb/cts#3852)
	- `sampled_2d` implemented by [gpuweb/cts#3861](gpuweb/cts#3861).
- `webgpu:shader,execution,expression,call,builtin,textureSample:*`, apparently changed by [gpuweb/cts#3877](gpuweb/cts#3877).
- `webgpu:shader,execution,expression,call,builtin,textureStore:*` had the following tests added:
	- By [gpuweb/cts#3781](gpuweb/cts#3781):
		- `out_of_bounds`
		- `out_of_bounds_array`
	- By [gpuweb/cts#3841](gpuweb/cts#3841):
		- `bgra8unorm_swizzle`
		- `texel_formats`

	It's unclear why these are failing, but I suspect part 2.7.
- `webgpu:shader,execution,expression,constructor,zero_value:vector_prefix:*`, introduced by [gpuweb/cts#3734](gpuweb/cts#3734).
- `webgpu:shader,validation,decl,var:address_space_access_mode:*`, introduced by [`gpuweb/cts`#3695](gpuweb/cts#3695).
- `webgpu:shader,validation,decl,var:shader_stage:*`, introduced by [gpuweb/cts#3736](gpuweb/cts#3736).
- `webgpu:shader,validation,expression,access,vector:*` was modified in [gpuweb/cts#3708](gpuweb/cts#3708):
	- renamed `…:vector:*` to `concrete`
	- added `abstract`
- `webgpu:shader,validation,expression,binary,*`:
	- `…,bitwise_shift:*`:
		- `…:partial_eval_errors:*`, introduced by [`gpuweb/cts`#3796](gpuweb/cts#3796)
		- `…:{shift_left_concrete,shift_right_concrete}:*` had new cases introduced in [gpuweb/cts#3726](gpuweb/cts#3726).
		- `…:{shift_left_abstract,shift_right_abstract}:*`, introduced by [`gpuweb/cts`#3833](gpuweb/cts#3833).
	- `…,{add_sub_mul:*,and_or_xor:*,bitwise_shift:scalar_vector:*,div_rem:scalar_vector:*}` modified by [`gpuweb/cts`#3648](gpuweb/cts#3648).
- `webgpu:shader,validation,expression,call,builtin,*`:
	- `…,dot:*`, introduced in [gpuweb/cts#3579](gpuweb/cts#3579).
	- `…,fma:*`, introduced by [`gpuweb/cts`#3577](gpuweb/cts#3577).
	- `…,ldexp:*`:
		- `…:{args,must_use,values}:*` introduced by [gpuweb/cts#3615](gpuweb/cts#3615).
		- `…:partial_values:*` introduced by [gpuweb/cts#3798](gpuweb/cts#3798).
	- `…,mix:*`, introduced by TODO.
	- `…,modf:*`, introduced by TODO.
	- `…,pow:*`, introduced by TODO.
	- `…,refract:*`, introduced by TODO.
	- `…,saturate:*`, introduced by TODO.
	- `…,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,functions,alias_analysis:swizzles:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,shader_io,align:parsing:duplicate`, introduced by [gpuweb/cts#3692](gpuweb/cts#3692).
- `webgpu:shader,validation,statement,{for,loop,return}:*` cases introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:{access_mode,address_space,type}:*`, introduced by [`gpuweb/cts`#3649](gpuweb/cts#3649).

This list is incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219377

UltraBlame original commit: cc8e4c0d527650c82b7c8d07a4484856ea046c10
jwidar pushed a commit to jwidar/LatencyZeroGithub that referenced this pull request Sep 16, 2025
…u-reviewers,teoxoy

- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:depth:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:storage_texel_formats:*`, introduced by [gpuweb/cts#3849](gpuweb/cts#3849).
- `webgpu:shader,execution,expression,unary,address_of_and_indirection:deref_swizzle:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,expression,call,builtin,pack2x16float:*`, introduced by TODO.
- `webgpu:shader,validation,expression,call,builtin,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,statement,continue:*`, introduced by [gpuweb/cts#3688](gpuweb/cts#3688).
- `webgpu:shader,validation,statement,{if,loop,return,switch,while}:*`, introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:missing_type:*`, introduced by [`gpuweb/cts`#3696](gpuweb/cts#3696).

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219374
jwidar pushed a commit to jwidar/LatencyZeroGithub that referenced this pull request Sep 16, 2025
…ebgpu-reviewers,teoxoy

- `webpgpu:api,validation,buffer,mapping:getMappedRange,disjoinRanges_many` was renamed to `disjointRanges_many` (see also @jimb's PR making the move at [gpuweb/cts#3838](gpuweb/cts#3838))
- `webgpu:shader,validation,decl,ptr_spelling:*` was merged with `webgpu:shader,validation,types,pointer:*` in [`gpuweb/cts`#3714](gpuweb/cts#3714).
- `webgpu:shader,validation,{decl,var_access_mode,parse,var_and_let}:*` → `webgpu:shader,validation,decl,var:*`, merged in [gpuweb/cts#3713](https:// github.com/gpuweb/cts/pull/3713).
  - `…:initializer_type:*` had its structure changed to accommodate the merge.
- `webgpu:shader,validation,parse,align:*` → `webgpu:shader,validation,shader_io,align:*`, moved by [gpuweb/cts#3712](gpuweb/cts#3712),
- `webgpu:shader,validation,parse,{break,break_if,compound,const_assert,continuing,discard,statement_behavior}`, moved by [gpuweb/cts#3742](gpuweb/cts#3742)
  - `webgpu:shader,validation,parse,break_if:non_bool_param:*` → `webgpu:shader,validation,statement,break_if:condition_type:*`, moved by [gpuweb/cts#3671](gpuweb/cts#3671), affected by [`gpuweb/cts`#3690](gpuweb/cts#3690).
- `webgpu:shader,validation,parse_binary_ops:*` → `webgpu:shader,validation,expression,binary,parse:*`

This list is likely incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219376
jwidar pushed a commit to jwidar/LatencyZeroGithub that referenced this pull request Sep 16, 2025
This (non-exhaustively) adds or implements the following test paths:

- `webgpu:api,validation,render_pipeline,depth_stencil_state:depth_bias:*`, introduced by [gpuweb/cts#3863](gpuweb/cts#3863). Tracked with [bug 1911312](https://bugzilla.mozilla.org/show_bug.cgi?id=1911312).
- `webgpu:shader,execution,expression,access,array,index:matrix:*`, introduced by [gpuweb/cts#3738](gpuweb/cts#3738).
- `webgpu:shader,execution,expression,call,builtin,atomics,atomicSub:sub_i32_min:*`, introduced by [gpuweb/cts#3728](gpuweb/cts#3728).
- `webgpu:shader,execution,expression,call,builtin,fwidth{,Coarse,Fine}:f32:*`, implemented by [gpuweb/cts#3686](gpuweb/cts#3686).
- `webgpu:shader,execution,expression,call,builtin,textureNumLayers:arrayed:*`, implemented by [gpuweb/cts#3853](gpuweb/cts#3853).
- `webgpu:shader,execution,expression,call,builtin,textureNumLevels:sampled:*`, implemented by [gpuweb/cts#3855](gpuweb/cts#3855).
- `webgpu:shader,execution,expression,call,builtin,textureNumSamples:sampled:*`, implemented by [gpuweb/cts#3856](gpuweb/cts#3856).
- `webgpu:shader,execution,expression,call,builtin,textureLoad:*`, with:
	- `{arrayed,sampled_1d,sampled_3d}` implemented by [gpuweb/cts#3852](gpuweb/cts#3852)
	- `sampled_2d` implemented by [gpuweb/cts#3861](gpuweb/cts#3861).
- `webgpu:shader,execution,expression,call,builtin,textureSample:*`, apparently changed by [gpuweb/cts#3877](gpuweb/cts#3877).
- `webgpu:shader,execution,expression,call,builtin,textureStore:*` had the following tests added:
	- By [gpuweb/cts#3781](gpuweb/cts#3781):
		- `out_of_bounds`
		- `out_of_bounds_array`
	- By [gpuweb/cts#3841](gpuweb/cts#3841):
		- `bgra8unorm_swizzle`
		- `texel_formats`

	It's unclear why these are failing, but I suspect part 2.7.
- `webgpu:shader,execution,expression,constructor,zero_value:vector_prefix:*`, introduced by [gpuweb/cts#3734](gpuweb/cts#3734).
- `webgpu:shader,validation,decl,var:address_space_access_mode:*`, introduced by [`gpuweb/cts`#3695](gpuweb/cts#3695).
- `webgpu:shader,validation,decl,var:shader_stage:*`, introduced by [gpuweb/cts#3736](gpuweb/cts#3736).
- `webgpu:shader,validation,expression,access,vector:*` was modified in [gpuweb/cts#3708](gpuweb/cts#3708):
	- renamed `…:vector:*` to `concrete`
	- added `abstract`
- `webgpu:shader,validation,expression,binary,*`:
	- `…,bitwise_shift:*`:
		- `…:partial_eval_errors:*`, introduced by [`gpuweb/cts`#3796](gpuweb/cts#3796)
		- `…:{shift_left_concrete,shift_right_concrete}:*` had new cases introduced in [gpuweb/cts#3726](gpuweb/cts#3726).
		- `…:{shift_left_abstract,shift_right_abstract}:*`, introduced by [`gpuweb/cts`#3833](gpuweb/cts#3833).
	- `…,{add_sub_mul:*,and_or_xor:*,bitwise_shift:scalar_vector:*,div_rem:scalar_vector:*}` modified by [`gpuweb/cts`#3648](gpuweb/cts#3648).
- `webgpu:shader,validation,expression,call,builtin,*`:
	- `…,dot:*`, introduced in [gpuweb/cts#3579](gpuweb/cts#3579).
	- `…,fma:*`, introduced by [`gpuweb/cts`#3577](gpuweb/cts#3577).
	- `…,ldexp:*`:
		- `…:{args,must_use,values}:*` introduced by [gpuweb/cts#3615](gpuweb/cts#3615).
		- `…:partial_values:*` introduced by [gpuweb/cts#3798](gpuweb/cts#3798).
	- `…,mix:*`, introduced by TODO.
	- `…,modf:*`, introduced by TODO.
	- `…,pow:*`, introduced by TODO.
	- `…,refract:*`, introduced by TODO.
	- `…,saturate:*`, introduced by TODO.
	- `…,texture{Dimensions,Num{Layers,Levels,Samples}}:*`, introduced by [gpuweb/cts#3689](gpuweb/cts#3689).
- `webgpu:shader,validation,functions,alias_analysis:swizzles:*`, introduced by [gpuweb/cts#3869](gpuweb/cts#3869).
- `webgpu:shader,validation,shader_io,align:parsing:duplicate`, introduced by [gpuweb/cts#3692](gpuweb/cts#3692).
- `webgpu:shader,validation,statement,{for,loop,return}:*` cases introduced by [gpuweb/cts#3645](gpuweb/cts#3645) and moved around by [gpuweb/cts#3742](gpuweb/cts#3742).
- `webgpu:shader,validation,types,pointer:{access_mode,address_space,type}:*`, introduced by [`gpuweb/cts`#3649](gpuweb/cts#3649).

This list is incomplete, because I _really_ needed to make this tractable. Sorry! I upkept the above for my own sanity, and think it's interesting for record-keeping, but not necessary useful for a reviewer.

Differential Revision: https://phabricator.services.mozilla.com/D219377
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants