[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,subgroupMul:data_type:*]
  [:type="abstract-float"]

  [:type="abstract-int"]

  [:type="bool"]

  [:type="f16"]

  [:type="f32"]

  [:type="i32"]

  [:type="u32"]

  [:type="vec2%3Cabstract-float%3E"]

  [:type="vec2%3Cabstract-int%3E"]

  [:type="vec2%3Cbool%3E"]

  [:type="vec2%3Cf16%3E"]

  [:type="vec2%3Cf32%3E"]

  [:type="vec2%3Ci32%3E"]

  [:type="vec2%3Cu32%3E"]

  [:type="vec3%3Cabstract-float%3E"]

  [:type="vec3%3Cabstract-int%3E"]

  [:type="vec3%3Cbool%3E"]

  [:type="vec3%3Cf16%3E"]

  [:type="vec3%3Cf32%3E"]

  [:type="vec3%3Ci32%3E"]

  [:type="vec3%3Cu32%3E"]

  [:type="vec4%3Cabstract-float%3E"]

  [:type="vec4%3Cabstract-int%3E"]

  [:type="vec4%3Cbool%3E"]

  [:type="vec4%3Cf16%3E"]

  [:type="vec4%3Cf32%3E"]

  [:type="vec4%3Ci32%3E"]

  [:type="vec4%3Cu32%3E"]


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,subgroupMul:early_eval:*]
  [:stage="constant"]

  [:stage="override"]

  [:stage="runtime"]


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,subgroupMul:invalid_types:*]
  [:case="array_f32"]

  [:case="array_u32"]

  [:case="frexp_ret"]

  [:case="ptr_func"]

  [:case="ptr_priv"]

  [:case="struct_s"]

  [:case="struct_t"]


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,subgroupMul:must_use:*]
  [:must_use=false]

  [:must_use=true]


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,subgroupMul:return_type:*]
  [:dataType="bool";retType="bool"]

  [:dataType="bool";retType="f16"]

  [:dataType="bool";retType="f32"]

  [:dataType="bool";retType="i32"]

  [:dataType="bool";retType="u32"]

  [:dataType="bool";retType="vec2%3Cbool%3E"]

  [:dataType="bool";retType="vec2%3Cf16%3E"]

  [:dataType="bool";retType="vec2%3Cf32%3E"]

  [:dataType="bool";retType="vec2%3Ci32%3E"]

  [:dataType="bool";retType="vec2%3Cu32%3E"]

  [:dataType="bool";retType="vec3%3Cbool%3E"]

  [:dataType="bool";retType="vec3%3Cf16%3E"]

  [:dataType="bool";retType="vec3%3Cf32%3E"]

  [:dataType="bool";retType="vec3%3Ci32%3E"]

  [:dataType="bool";retType="vec3%3Cu32%3E"]

  [:dataType="bool";retType="vec4%3Cbool%3E"]

  [:dataType="bool";retType="vec4%3Cf16%3E"]

  [:dataType="bool";retType="vec4%3Cf32%3E"]

  [:dataType="bool";retType="vec4%3Ci32%3E"]

  [:dataType="bool";retType="vec4%3Cu32%3E"]

  [:dataType="f16";retType="bool"]

  [:dataType="f16";retType="f16"]

  [:dataType="f16";retType="f32"]

  [:dataType="f16";retType="i32"]

  [:dataType="f16";retType="u32"]

  [:dataType="f16";retType="vec2%3Cbool%3E"]

  [:dataType="f16";retType="vec2%3Cf16%3E"]

  [:dataType="f16";retType="vec2%3Cf32%3E"]

  [:dataType="f16";retType="vec2%3Ci32%3E"]

  [:dataType="f16";retType="vec2%3Cu32%3E"]

  [:dataType="f16";retType="vec3%3Cbool%3E"]

  [:dataType="f16";retType="vec3%3Cf16%3E"]

  [:dataType="f16";retType="vec3%3Cf32%3E"]

  [:dataType="f16";retType="vec3%3Ci32%3E"]

  [:dataType="f16";retType="vec3%3Cu32%3E"]

  [:dataType="f16";retType="vec4%3Cbool%3E"]

  [:dataType="f16";retType="vec4%3Cf16%3E"]

  [:dataType="f16";retType="vec4%3Cf32%3E"]

  [:dataType="f16";retType="vec4%3Ci32%3E"]

  [:dataType="f16";retType="vec4%3Cu32%3E"]

  [:dataType="f32";retType="bool"]

  [:dataType="f32";retType="f16"]

  [:dataType="f32";retType="f32"]

  [:dataType="f32";retType="i32"]

  [:dataType="f32";retType="u32"]

  [:dataType="f32";retType="vec2%3Cbool%3E"]

  [:dataType="f32";retType="vec2%3Cf16%3E"]

  [:dataType="f32";retType="vec2%3Cf32%3E"]

  [:dataType="f32";retType="vec2%3Ci32%3E"]

  [:dataType="f32";retType="vec2%3Cu32%3E"]

  [:dataType="f32";retType="vec3%3Cbool%3E"]

  [:dataType="f32";retType="vec3%3Cf16%3E"]

  [:dataType="f32";retType="vec3%3Cf32%3E"]

  [:dataType="f32";retType="vec3%3Ci32%3E"]

  [:dataType="f32";retType="vec3%3Cu32%3E"]

  [:dataType="f32";retType="vec4%3Cbool%3E"]

  [:dataType="f32";retType="vec4%3Cf16%3E"]

  [:dataType="f32";retType="vec4%3Cf32%3E"]

  [:dataType="f32";retType="vec4%3Ci32%3E"]

  [:dataType="f32";retType="vec4%3Cu32%3E"]

  [:dataType="i32";retType="bool"]

  [:dataType="i32";retType="f16"]

  [:dataType="i32";retType="f32"]

  [:dataType="i32";retType="i32"]

  [:dataType="i32";retType="u32"]

  [:dataType="i32";retType="vec2%3Cbool%3E"]

  [:dataType="i32";retType="vec2%3Cf16%3E"]

  [:dataType="i32";retType="vec2%3Cf32%3E"]

  [:dataType="i32";retType="vec2%3Ci32%3E"]

  [:dataType="i32";retType="vec2%3Cu32%3E"]

  [:dataType="i32";retType="vec3%3Cbool%3E"]

  [:dataType="i32";retType="vec3%3Cf16%3E"]

  [:dataType="i32";retType="vec3%3Cf32%3E"]

  [:dataType="i32";retType="vec3%3Ci32%3E"]

  [:dataType="i32";retType="vec3%3Cu32%3E"]

  [:dataType="i32";retType="vec4%3Cbool%3E"]

  [:dataType="i32";retType="vec4%3Cf16%3E"]

  [:dataType="i32";retType="vec4%3Cf32%3E"]

  [:dataType="i32";retType="vec4%3Ci32%3E"]

  [:dataType="i32";retType="vec4%3Cu32%3E"]

  [:dataType="u32";retType="bool"]

  [:dataType="u32";retType="f16"]

  [:dataType="u32";retType="f32"]

  [:dataType="u32";retType="i32"]

  [:dataType="u32";retType="u32"]

  [:dataType="u32";retType="vec2%3Cbool%3E"]

  [:dataType="u32";retType="vec2%3Cf16%3E"]

  [:dataType="u32";retType="vec2%3Cf32%3E"]

  [:dataType="u32";retType="vec2%3Ci32%3E"]

  [:dataType="u32";retType="vec2%3Cu32%3E"]

  [:dataType="u32";retType="vec3%3Cbool%3E"]

  [:dataType="u32";retType="vec3%3Cf16%3E"]

  [:dataType="u32";retType="vec3%3Cf32%3E"]

  [:dataType="u32";retType="vec3%3Ci32%3E"]

  [:dataType="u32";retType="vec3%3Cu32%3E"]

  [:dataType="u32";retType="vec4%3Cbool%3E"]

  [:dataType="u32";retType="vec4%3Cf16%3E"]

  [:dataType="u32";retType="vec4%3Cf32%3E"]

  [:dataType="u32";retType="vec4%3Ci32%3E"]

  [:dataType="u32";retType="vec4%3Cu32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="bool"]

  [:dataType="vec2%3Cbool%3E";retType="f16"]

  [:dataType="vec2%3Cbool%3E";retType="f32"]

  [:dataType="vec2%3Cbool%3E";retType="i32"]

  [:dataType="vec2%3Cbool%3E";retType="u32"]

  [:dataType="vec2%3Cbool%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec2%3Cbool%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="bool"]

  [:dataType="vec2%3Cf16%3E";retType="f16"]

  [:dataType="vec2%3Cf16%3E";retType="f32"]

  [:dataType="vec2%3Cf16%3E";retType="i32"]

  [:dataType="vec2%3Cf16%3E";retType="u32"]

  [:dataType="vec2%3Cf16%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec2%3Cf16%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="bool"]

  [:dataType="vec2%3Cf32%3E";retType="f16"]

  [:dataType="vec2%3Cf32%3E";retType="f32"]

  [:dataType="vec2%3Cf32%3E";retType="i32"]

  [:dataType="vec2%3Cf32%3E";retType="u32"]

  [:dataType="vec2%3Cf32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec2%3Cf32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="bool"]

  [:dataType="vec2%3Ci32%3E";retType="f16"]

  [:dataType="vec2%3Ci32%3E";retType="f32"]

  [:dataType="vec2%3Ci32%3E";retType="i32"]

  [:dataType="vec2%3Ci32%3E";retType="u32"]

  [:dataType="vec2%3Ci32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec2%3Ci32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="bool"]

  [:dataType="vec2%3Cu32%3E";retType="f16"]

  [:dataType="vec2%3Cu32%3E";retType="f32"]

  [:dataType="vec2%3Cu32%3E";retType="i32"]

  [:dataType="vec2%3Cu32%3E";retType="u32"]

  [:dataType="vec2%3Cu32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec2%3Cu32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="bool"]

  [:dataType="vec3%3Cbool%3E";retType="f16"]

  [:dataType="vec3%3Cbool%3E";retType="f32"]

  [:dataType="vec3%3Cbool%3E";retType="i32"]

  [:dataType="vec3%3Cbool%3E";retType="u32"]

  [:dataType="vec3%3Cbool%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec3%3Cbool%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="bool"]

  [:dataType="vec3%3Cf16%3E";retType="f16"]

  [:dataType="vec3%3Cf16%3E";retType="f32"]

  [:dataType="vec3%3Cf16%3E";retType="i32"]

  [:dataType="vec3%3Cf16%3E";retType="u32"]

  [:dataType="vec3%3Cf16%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec3%3Cf16%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="bool"]

  [:dataType="vec3%3Cf32%3E";retType="f16"]

  [:dataType="vec3%3Cf32%3E";retType="f32"]

  [:dataType="vec3%3Cf32%3E";retType="i32"]

  [:dataType="vec3%3Cf32%3E";retType="u32"]

  [:dataType="vec3%3Cf32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec3%3Cf32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="bool"]

  [:dataType="vec3%3Ci32%3E";retType="f16"]

  [:dataType="vec3%3Ci32%3E";retType="f32"]

  [:dataType="vec3%3Ci32%3E";retType="i32"]

  [:dataType="vec3%3Ci32%3E";retType="u32"]

  [:dataType="vec3%3Ci32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec3%3Ci32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="bool"]

  [:dataType="vec3%3Cu32%3E";retType="f16"]

  [:dataType="vec3%3Cu32%3E";retType="f32"]

  [:dataType="vec3%3Cu32%3E";retType="i32"]

  [:dataType="vec3%3Cu32%3E";retType="u32"]

  [:dataType="vec3%3Cu32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec3%3Cu32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="bool"]

  [:dataType="vec4%3Cbool%3E";retType="f16"]

  [:dataType="vec4%3Cbool%3E";retType="f32"]

  [:dataType="vec4%3Cbool%3E";retType="i32"]

  [:dataType="vec4%3Cbool%3E";retType="u32"]

  [:dataType="vec4%3Cbool%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec4%3Cbool%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="bool"]

  [:dataType="vec4%3Cf16%3E";retType="f16"]

  [:dataType="vec4%3Cf16%3E";retType="f32"]

  [:dataType="vec4%3Cf16%3E";retType="i32"]

  [:dataType="vec4%3Cf16%3E";retType="u32"]

  [:dataType="vec4%3Cf16%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec4%3Cf16%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="bool"]

  [:dataType="vec4%3Cf32%3E";retType="f16"]

  [:dataType="vec4%3Cf32%3E";retType="f32"]

  [:dataType="vec4%3Cf32%3E";retType="i32"]

  [:dataType="vec4%3Cf32%3E";retType="u32"]

  [:dataType="vec4%3Cf32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec4%3Cf32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="bool"]

  [:dataType="vec4%3Ci32%3E";retType="f16"]

  [:dataType="vec4%3Ci32%3E";retType="f32"]

  [:dataType="vec4%3Ci32%3E";retType="i32"]

  [:dataType="vec4%3Ci32%3E";retType="u32"]

  [:dataType="vec4%3Ci32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec4%3Ci32%3E";retType="vec4%3Cu32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="bool"]

  [:dataType="vec4%3Cu32%3E";retType="f16"]

  [:dataType="vec4%3Cu32%3E";retType="f32"]

  [:dataType="vec4%3Cu32%3E";retType="i32"]

  [:dataType="vec4%3Cu32%3E";retType="u32"]

  [:dataType="vec4%3Cu32%3E";retType="vec2%3Cbool%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec2%3Cf16%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec2%3Cf32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec2%3Ci32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec2%3Cu32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec3%3Cbool%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec3%3Cf16%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec3%3Cf32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec3%3Ci32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec3%3Cu32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec4%3Cbool%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec4%3Cf16%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec4%3Cf32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec4%3Ci32%3E"]

  [:dataType="vec4%3Cu32%3E";retType="vec4%3Cu32%3E"]


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,subgroupMul:stage:*]
  [:stage="compute"]

  [:stage="fragment"]

  [:stage="vertex"]
