[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:f16_and_f32_matrix:*]
  implementation-status:
    if os == "mac": backlog
  [:rhs="mat2x3f()";swap=false]

  [:rhs="mat2x3f()";swap=true]

  [:rhs="mat2x3h()";swap=false]
    expected:
      if os == "mac": FAIL

  [:rhs="mat2x3h()";swap=true]
    expected:
      if os == "mac": FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:f32_and_f16_matrix:*]
  [:rhs="mat2x3f()";swap=false]

  [:rhs="mat2x3f()";swap=true]

  [:rhs="mat2x3h()";swap=false]

  [:rhs="mat2x3h()";swap=true]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:invalid:*]
  [:rhs="ai";test="array";swap=false]

  [:rhs="ai";test="array";swap=true]

  [:rhs="ai";test="atomic";swap=false]

  [:rhs="ai";test="atomic";swap=true]

  [:rhs="ai";test="bool";swap=false]

  [:rhs="ai";test="bool";swap=true]

  [:rhs="ai";test="i32";swap=false]

  [:rhs="ai";test="i32";swap=true]

  [:rhs="ai";test="match";swap=false]

  [:rhs="ai";test="match";swap=true]

  [:rhs="ai";test="matf_no_match";swap=false]

  [:rhs="ai";test="matf_no_match";swap=true]

  [:rhs="ai";test="sampler";swap=false]

  [:rhs="ai";test="sampler";swap=true]

  [:rhs="ai";test="struct";swap=false]

  [:rhs="ai";test="struct";swap=true]

  [:rhs="ai";test="texture";swap=false]

  [:rhs="ai";test="texture";swap=true]

  [:rhs="ai";test="u32";swap=false]

  [:rhs="ai";test="u32";swap=true]

  [:rhs="ai";test="vec";swap=false]

  [:rhs="ai";test="vec";swap=true]

  [:rhs="mat2x3f()";test="array";swap=false]

  [:rhs="mat2x3f()";test="array";swap=true]

  [:rhs="mat2x3f()";test="atomic";swap=false]

  [:rhs="mat2x3f()";test="atomic";swap=true]

  [:rhs="mat2x3f()";test="bool";swap=false]

  [:rhs="mat2x3f()";test="bool";swap=true]

  [:rhs="mat2x3f()";test="i32";swap=false]

  [:rhs="mat2x3f()";test="i32";swap=true]

  [:rhs="mat2x3f()";test="match";swap=false]

  [:rhs="mat2x3f()";test="match";swap=true]

  [:rhs="mat2x3f()";test="matf_no_match";swap=false]

  [:rhs="mat2x3f()";test="matf_no_match";swap=true]

  [:rhs="mat2x3f()";test="sampler";swap=false]

  [:rhs="mat2x3f()";test="sampler";swap=true]

  [:rhs="mat2x3f()";test="struct";swap=false]

  [:rhs="mat2x3f()";test="struct";swap=true]

  [:rhs="mat2x3f()";test="texture";swap=false]

  [:rhs="mat2x3f()";test="texture";swap=true]

  [:rhs="mat2x3f()";test="u32";swap=false]

  [:rhs="mat2x3f()";test="u32";swap=true]

  [:rhs="mat2x3f()";test="vec";swap=false]

  [:rhs="mat2x3f()";test="vec";swap=true]

  [:rhs="mat2x3h()";test="array";swap=false]

  [:rhs="mat2x3h()";test="array";swap=true]

  [:rhs="mat2x3h()";test="atomic";swap=false]

  [:rhs="mat2x3h()";test="atomic";swap=true]

  [:rhs="mat2x3h()";test="bool";swap=false]

  [:rhs="mat2x3h()";test="bool";swap=true]

  [:rhs="mat2x3h()";test="i32";swap=false]

  [:rhs="mat2x3h()";test="i32";swap=true]

  [:rhs="mat2x3h()";test="match";swap=false]

  [:rhs="mat2x3h()";test="match";swap=true]

  [:rhs="mat2x3h()";test="matf_no_match";swap=false]

  [:rhs="mat2x3h()";test="matf_no_match";swap=true]

  [:rhs="mat2x3h()";test="sampler";swap=false]

  [:rhs="mat2x3h()";test="sampler";swap=true]

  [:rhs="mat2x3h()";test="struct";swap=false]

  [:rhs="mat2x3h()";test="struct";swap=true]

  [:rhs="mat2x3h()";test="texture";swap=false]

  [:rhs="mat2x3h()";test="texture";swap=true]

  [:rhs="mat2x3h()";test="u32";swap=false]

  [:rhs="mat2x3h()";test="u32";swap=true]

  [:rhs="mat2x3h()";test="vec";swap=false]

  [:rhs="mat2x3h()";test="vec";swap=true]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:mat_by_mat:*]
  implementation-status: backlog
  [:ty1="";ty2=""]
    expected: FAIL

  [:ty1="";ty2="f"]

  [:ty1="";ty2="h"]
    expected:
      if os == "mac": FAIL

  [:ty1="f";ty2=""]

  [:ty1="f";ty2="f"]

  [:ty1="f";ty2="h"]

  [:ty1="h";ty2=""]
    expected:
      if os == "mac": FAIL

  [:ty1="h";ty2="f"]

  [:ty1="h";ty2="h"]
    expected:
      if os == "mac": FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:mat_by_vec:*]
  implementation-status: backlog
  [:ty1="";ty2=""]
    expected: FAIL

  [:ty1="";ty2="f"]

  [:ty1="";ty2="h"]
    expected:
      if os == "mac": FAIL

  [:ty1="f";ty2=""]

  [:ty1="f";ty2="f"]

  [:ty1="f";ty2="h"]

  [:ty1="h";ty2=""]
    expected:
      if os == "mac": FAIL

  [:ty1="h";ty2="f"]

  [:ty1="h";ty2="h"]
    expected:
      if os == "mac": FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_mat_abstract:*]
  implementation-status: backlog
  [:rhs=1.7976931348623157e%2B308;c=2;r=2]

  [:rhs=1.7976931348623157e%2B308;c=2;r=3]

  [:rhs=1.7976931348623157e%2B308;c=2;r=4]

  [:rhs=1.7976931348623157e%2B308;c=3;r=2]

  [:rhs=1.7976931348623157e%2B308;c=3;r=3]

  [:rhs=1.7976931348623157e%2B308;c=3;r=4]

  [:rhs=1.7976931348623157e%2B308;c=4;r=2]

  [:rhs=1.7976931348623157e%2B308;c=4;r=3]

  [:rhs=1.7976931348623157e%2B308;c=4;r=4]

  [:rhs=1;c=2;r=2]
    expected: FAIL

  [:rhs=1;c=2;r=3]
    expected: FAIL

  [:rhs=1;c=2;r=4]
    expected: FAIL

  [:rhs=1;c=3;r=2]
    expected: FAIL

  [:rhs=1;c=3;r=3]
    expected: FAIL

  [:rhs=1;c=3;r=4]
    expected: FAIL

  [:rhs=1;c=4;r=2]
    expected: FAIL

  [:rhs=1;c=4;r=3]
    expected: FAIL

  [:rhs=1;c=4;r=4]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_mat_abstract_internal:*]
  implementation-status: backlog
  [:lhs=1.7976931348623157e%2B308;c=2;r=2]

  [:lhs=1.7976931348623157e%2B308;c=2;r=3]

  [:lhs=1.7976931348623157e%2B308;c=2;r=4]

  [:lhs=1.7976931348623157e%2B308;c=3;r=2]

  [:lhs=1.7976931348623157e%2B308;c=3;r=3]

  [:lhs=1.7976931348623157e%2B308;c=3;r=4]

  [:lhs=1.7976931348623157e%2B308;c=4;r=2]

  [:lhs=1.7976931348623157e%2B308;c=4;r=3]

  [:lhs=1.7976931348623157e%2B308;c=4;r=4]

  [:lhs=1;c=2;r=2]
    expected: FAIL

  [:lhs=1;c=2;r=3]
    expected: FAIL

  [:lhs=1;c=2;r=4]
    expected: FAIL

  [:lhs=1;c=3;r=2]
    expected: FAIL

  [:lhs=1;c=3;r=3]
    expected: FAIL

  [:lhs=1;c=3;r=4]
    expected: FAIL

  [:lhs=1;c=4;r=2]
    expected: FAIL

  [:lhs=1;c=4;r=3]
    expected: FAIL

  [:lhs=1;c=4;r=4]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_mat_f16:*]
  implementation-status:
    if os == "mac": backlog
  [:rhs=1;c=2;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=2;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=2;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=3;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=3;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=3;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=4;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=4;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=4;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=2;r=2]

  [:rhs=65504;c=2;r=3]

  [:rhs=65504;c=2;r=4]

  [:rhs=65504;c=3;r=2]

  [:rhs=65504;c=3;r=3]

  [:rhs=65504;c=3;r=4]

  [:rhs=65504;c=4;r=2]

  [:rhs=65504;c=4;r=3]

  [:rhs=65504;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_mat_f16_internal:*]
  implementation-status:
    if os == "mac": backlog
  [:lhs=1;c=2;r=2]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=2;r=3]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=2;r=4]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=3;r=2]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=3;r=3]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=3;r=4]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=4;r=2]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=4;r=3]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=4;r=4]
    expected:
      if os == "mac": FAIL

  [:lhs=65504;c=2;r=2]

  [:lhs=65504;c=2;r=3]

  [:lhs=65504;c=2;r=4]

  [:lhs=65504;c=3;r=2]

  [:lhs=65504;c=3;r=3]

  [:lhs=65504;c=3;r=4]

  [:lhs=65504;c=4;r=2]

  [:lhs=65504;c=4;r=3]

  [:lhs=65504;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_mat_f32:*]
  implementation-status: backlog
  [:rhs=1;c=2;r=2]
    expected: FAIL

  [:rhs=1;c=2;r=3]
    expected: FAIL

  [:rhs=1;c=2;r=4]
    expected: FAIL

  [:rhs=1;c=3;r=2]
    expected: FAIL

  [:rhs=1;c=3;r=3]
    expected: FAIL

  [:rhs=1;c=3;r=4]
    expected: FAIL

  [:rhs=1;c=4;r=2]
    expected: FAIL

  [:rhs=1;c=4;r=3]
    expected: FAIL

  [:rhs=1;c=4;r=4]
    expected: FAIL

  [:rhs=3.4028234663852886e%2B38;c=2;r=2]

  [:rhs=3.4028234663852886e%2B38;c=2;r=3]

  [:rhs=3.4028234663852886e%2B38;c=2;r=4]

  [:rhs=3.4028234663852886e%2B38;c=3;r=2]

  [:rhs=3.4028234663852886e%2B38;c=3;r=3]

  [:rhs=3.4028234663852886e%2B38;c=3;r=4]

  [:rhs=3.4028234663852886e%2B38;c=4;r=2]

  [:rhs=3.4028234663852886e%2B38;c=4;r=3]

  [:rhs=3.4028234663852886e%2B38;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_mat_f32_internal:*]
  implementation-status: backlog
  [:lhs=1;c=2;r=2]
    expected: FAIL

  [:lhs=1;c=2;r=3]
    expected: FAIL

  [:lhs=1;c=2;r=4]
    expected: FAIL

  [:lhs=1;c=3;r=2]
    expected: FAIL

  [:lhs=1;c=3;r=3]
    expected: FAIL

  [:lhs=1;c=3;r=4]
    expected: FAIL

  [:lhs=1;c=4;r=2]
    expected: FAIL

  [:lhs=1;c=4;r=3]
    expected: FAIL

  [:lhs=1;c=4;r=4]
    expected: FAIL

  [:lhs=3.4028234663852886e%2B38;c=2;r=2]

  [:lhs=3.4028234663852886e%2B38;c=2;r=3]

  [:lhs=3.4028234663852886e%2B38;c=2;r=4]

  [:lhs=3.4028234663852886e%2B38;c=3;r=2]

  [:lhs=3.4028234663852886e%2B38;c=3;r=3]

  [:lhs=3.4028234663852886e%2B38;c=3;r=4]

  [:lhs=3.4028234663852886e%2B38;c=4;r=2]

  [:lhs=3.4028234663852886e%2B38;c=4;r=3]

  [:lhs=3.4028234663852886e%2B38;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_scalar_abstract:*]
  implementation-status: backlog
  [:rhs=1.7976931348623157e%2B308;c=2;r=2]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=2;r=3]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=2;r=4]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=3;r=2]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=3;r=3]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=3;r=4]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=4;r=2]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=4;r=3]
    expected: FAIL

  [:rhs=1.7976931348623157e%2B308;c=4;r=4]
    expected: FAIL

  [:rhs=1;c=2;r=2]

  [:rhs=1;c=2;r=3]

  [:rhs=1;c=2;r=4]

  [:rhs=1;c=3;r=2]

  [:rhs=1;c=3;r=3]

  [:rhs=1;c=3;r=4]

  [:rhs=1;c=4;r=2]

  [:rhs=1;c=4;r=3]

  [:rhs=1;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_scalar_f16:*]
  implementation-status:
    if os == "mac": backlog
  [:rhs=1;c=2;r=2]

  [:rhs=1;c=2;r=3]

  [:rhs=1;c=2;r=4]

  [:rhs=1;c=3;r=2]

  [:rhs=1;c=3;r=3]

  [:rhs=1;c=3;r=4]

  [:rhs=1;c=4;r=2]

  [:rhs=1;c=4;r=3]

  [:rhs=1;c=4;r=4]

  [:rhs=65504;c=2;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=2;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=2;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=3;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=3;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=3;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=4;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=4;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=4;r=4]
    expected:
      if os == "mac": FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_scalar_f32:*]
  [:rhs=1;c=2;r=2]

  [:rhs=1;c=2;r=3]

  [:rhs=1;c=2;r=4]

  [:rhs=1;c=3;r=2]

  [:rhs=1;c=3;r=3]

  [:rhs=1;c=3;r=4]

  [:rhs=1;c=4;r=2]

  [:rhs=1;c=4;r=3]

  [:rhs=1;c=4;r=4]

  [:rhs=3.4028234663852886e%2B38;c=2;r=2]

  [:rhs=3.4028234663852886e%2B38;c=2;r=3]

  [:rhs=3.4028234663852886e%2B38;c=2;r=4]

  [:rhs=3.4028234663852886e%2B38;c=3;r=2]

  [:rhs=3.4028234663852886e%2B38;c=3;r=3]

  [:rhs=3.4028234663852886e%2B38;c=3;r=4]

  [:rhs=3.4028234663852886e%2B38;c=4;r=2]

  [:rhs=3.4028234663852886e%2B38;c=4;r=3]

  [:rhs=3.4028234663852886e%2B38;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_vec_abstract:*]
  implementation-status: backlog
  [:rhs=1.7976931348623157e%2B308;c=2;r=2]

  [:rhs=1.7976931348623157e%2B308;c=2;r=3]

  [:rhs=1.7976931348623157e%2B308;c=2;r=4]

  [:rhs=1.7976931348623157e%2B308;c=3;r=2]

  [:rhs=1.7976931348623157e%2B308;c=3;r=3]

  [:rhs=1.7976931348623157e%2B308;c=3;r=4]

  [:rhs=1.7976931348623157e%2B308;c=4;r=2]

  [:rhs=1.7976931348623157e%2B308;c=4;r=3]

  [:rhs=1.7976931348623157e%2B308;c=4;r=4]

  [:rhs=1;c=2;r=2]
    expected: FAIL

  [:rhs=1;c=2;r=3]
    expected: FAIL

  [:rhs=1;c=2;r=4]
    expected: FAIL

  [:rhs=1;c=3;r=2]
    expected: FAIL

  [:rhs=1;c=3;r=3]
    expected: FAIL

  [:rhs=1;c=3;r=4]
    expected: FAIL

  [:rhs=1;c=4;r=2]
    expected: FAIL

  [:rhs=1;c=4;r=3]
    expected: FAIL

  [:rhs=1;c=4;r=4]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_vec_abstract_internal:*]
  implementation-status: backlog
  [:lhs=1.7976931348623157e%2B308;c=2;r=2]

  [:lhs=1.7976931348623157e%2B308;c=2;r=3]

  [:lhs=1.7976931348623157e%2B308;c=2;r=4]

  [:lhs=1.7976931348623157e%2B308;c=3;r=2]

  [:lhs=1.7976931348623157e%2B308;c=3;r=3]

  [:lhs=1.7976931348623157e%2B308;c=3;r=4]

  [:lhs=1.7976931348623157e%2B308;c=4;r=2]

  [:lhs=1.7976931348623157e%2B308;c=4;r=3]

  [:lhs=1.7976931348623157e%2B308;c=4;r=4]

  [:lhs=1;c=2;r=2]
    expected: FAIL

  [:lhs=1;c=2;r=3]
    expected: FAIL

  [:lhs=1;c=2;r=4]
    expected: FAIL

  [:lhs=1;c=3;r=2]
    expected: FAIL

  [:lhs=1;c=3;r=3]
    expected: FAIL

  [:lhs=1;c=3;r=4]
    expected: FAIL

  [:lhs=1;c=4;r=2]
    expected: FAIL

  [:lhs=1;c=4;r=3]
    expected: FAIL

  [:lhs=1;c=4;r=4]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_vec_f16:*]
  implementation-status:
    if os == "mac": backlog
  [:rhs=1;c=2;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=2;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=2;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=3;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=3;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=3;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=4;r=2]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=4;r=3]
    expected:
      if os == "mac": FAIL

  [:rhs=1;c=4;r=4]
    expected:
      if os == "mac": FAIL

  [:rhs=65504;c=2;r=2]

  [:rhs=65504;c=2;r=3]

  [:rhs=65504;c=2;r=4]

  [:rhs=65504;c=3;r=2]

  [:rhs=65504;c=3;r=3]

  [:rhs=65504;c=3;r=4]

  [:rhs=65504;c=4;r=2]

  [:rhs=65504;c=4;r=3]

  [:rhs=65504;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_vec_f16_internal:*]
  implementation-status:
    if os == "mac": backlog
  [:lhs=1;c=2;r=2]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=2;r=3]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=2;r=4]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=3;r=2]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=3;r=3]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=3;r=4]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=4;r=2]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=4;r=3]
    expected:
      if os == "mac": FAIL

  [:lhs=1;c=4;r=4]
    expected:
      if os == "mac": FAIL

  [:lhs=65504;c=2;r=2]

  [:lhs=65504;c=2;r=3]

  [:lhs=65504;c=2;r=4]

  [:lhs=65504;c=3;r=2]

  [:lhs=65504;c=3;r=3]

  [:lhs=65504;c=3;r=4]

  [:lhs=65504;c=4;r=2]

  [:lhs=65504;c=4;r=3]

  [:lhs=65504;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_vec_f32:*]
  implementation-status: backlog
  [:rhs=1;c=2;r=2]
    expected: FAIL

  [:rhs=1;c=2;r=3]
    expected: FAIL

  [:rhs=1;c=2;r=4]
    expected: FAIL

  [:rhs=1;c=3;r=2]
    expected: FAIL

  [:rhs=1;c=3;r=3]
    expected: FAIL

  [:rhs=1;c=3;r=4]
    expected: FAIL

  [:rhs=1;c=4;r=2]
    expected: FAIL

  [:rhs=1;c=4;r=3]
    expected: FAIL

  [:rhs=1;c=4;r=4]
    expected: FAIL

  [:rhs=3.4028234663852886e%2B38;c=2;r=2]

  [:rhs=3.4028234663852886e%2B38;c=2;r=3]

  [:rhs=3.4028234663852886e%2B38;c=2;r=4]

  [:rhs=3.4028234663852886e%2B38;c=3;r=2]

  [:rhs=3.4028234663852886e%2B38;c=3;r=3]

  [:rhs=3.4028234663852886e%2B38;c=3;r=4]

  [:rhs=3.4028234663852886e%2B38;c=4;r=2]

  [:rhs=3.4028234663852886e%2B38;c=4;r=3]

  [:rhs=3.4028234663852886e%2B38;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:overflow_vec_f32_internal:*]
  implementation-status: backlog
  [:lhs=1;c=2;r=2]
    expected: FAIL

  [:lhs=1;c=2;r=3]
    expected: FAIL

  [:lhs=1;c=2;r=4]
    expected: FAIL

  [:lhs=1;c=3;r=2]
    expected: FAIL

  [:lhs=1;c=3;r=3]
    expected: FAIL

  [:lhs=1;c=3;r=4]
    expected: FAIL

  [:lhs=1;c=4;r=2]
    expected: FAIL

  [:lhs=1;c=4;r=3]
    expected: FAIL

  [:lhs=1;c=4;r=4]
    expected: FAIL

  [:lhs=3.4028234663852886e%2B38;c=2;r=2]

  [:lhs=3.4028234663852886e%2B38;c=2;r=3]

  [:lhs=3.4028234663852886e%2B38;c=2;r=4]

  [:lhs=3.4028234663852886e%2B38;c=3;r=2]

  [:lhs=3.4028234663852886e%2B38;c=3;r=3]

  [:lhs=3.4028234663852886e%2B38;c=3;r=4]

  [:lhs=3.4028234663852886e%2B38;c=4;r=2]

  [:lhs=3.4028234663852886e%2B38;c=4;r=3]

  [:lhs=3.4028234663852886e%2B38;c=4;r=4]


[cts.https.html?q=webgpu:shader,validation,expression,matrix,mul:vec_by_mat:*]
  implementation-status: backlog
  [:ty1="";ty2=""]
    expected: FAIL

  [:ty1="";ty2="f"]

  [:ty1="";ty2="h"]
    expected:
      if os == "mac": FAIL

  [:ty1="f";ty2=""]

  [:ty1="f";ty2="f"]

  [:ty1="f";ty2="h"]

  [:ty1="h";ty2=""]
    expected:
      if os == "mac": FAIL

  [:ty1="h";ty2="f"]

  [:ty1="h";ty2="h"]
    expected:
      if os == "mac": FAIL
