-
Notifications
You must be signed in to change notification settings - Fork 100
WGSL builtin textureLoad for texture_2d tests #3852
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
e3d1cf8 to
6bade9b
Compare
kainino0x
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
|
||
| export function isDepthTextureFormat(format: GPUTextureFormat) { | ||
| return format.includes('depth'); | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Usually this is now done with !!kTextureFormatInfo[format].depth, similar below.
isCompressedFloatTextureFormat is fine though, we don't have a better way to do that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
| const kTestableColorFormats = [...kEncodableTextureFormats, ...kCompressedTextureFormats] as const; | ||
|
|
||
| function filterOutDepthAndCompressedFloatTextureFormats({ format }: { format: GPUTextureFormat }) { | ||
| return !format.startsWith('depth') && !isCompressedFloatTextureFormat(format); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
!format.startsWith('depth') should use the helper or be !kTextureFormatInfo[format].depth
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
425e856 to
708f9d4
Compare
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
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
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
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
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
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
depth textures are not tested yet because copyB2T doesn't work with
depth32float. Will fix in another PR. I didn't want to make this one bigger.Requirements for PR author:
.unimplemented()./** documented */and new helper files are found inhelper_index.txt.Requirements for reviewer sign-off:
When landing this PR, be sure to make any necessary issue status updates.