Remove `Type::IsScalarVector`

All of our vectors are scalar vectors, so this is really just a strange
way of saying `Is<core::type::Vector>()`. Remove the call and replace
the two usages with checks for Vector directly.

Change-Id: I035a6d3b7266f48b899bbb3a9eee0dc58aff164f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/246774
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Reviewed-by: James Price <jrprice@google.com>
diff --git a/src/tint/lang/core/type/type.cc b/src/tint/lang/core/type/type.cc
index cbbdce1..4ae6135 100644
--- a/src/tint/lang/core/type/type.cc
+++ b/src/tint/lang/core/type/type.cc
@@ -160,10 +160,6 @@
     return Is<Bool>() || IsBoolVector();
 }
 
-bool Type::IsScalarVector() const {
-    return Is([](const Vector* v) { return v->Type()->Is<core::type::Scalar>(); });
-}
-
 bool Type::IsNumericScalarOrVector() const {
     return Is<core::type::NumericScalar>() ||
            Is([](const Vector* v) { return v->Type()->Is<core::type::NumericScalar>(); });
diff --git a/src/tint/lang/core/type/type.h b/src/tint/lang/core/type/type.h
index eef83fd..e5c1d94 100644
--- a/src/tint/lang/core/type/type.h
+++ b/src/tint/lang/core/type/type.h
@@ -170,8 +170,6 @@
     bool IsBoolScalarOrVector() const;
     /// @returns true if this type is boolean vector
     bool IsBoolVector() const;
-    /// @returns true if this type is a vector of scalar type
-    bool IsScalarVector() const;
     /// @returns true if this type is a numeric scale or vector
     bool IsNumericScalarOrVector() const;
     /// @returns true if this type is a handle type
diff --git a/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc b/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
index a4fee1c..453b544 100644
--- a/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
+++ b/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
@@ -1532,7 +1532,7 @@
     // For single-value vector initializers, swizzle the scalar to the right
     // vector dimension using .x
     const bool is_single_value_vector_init =
-        type->IsScalarVector() && call->Arguments().Length() == 1 &&
+        type->Is<core::type::Vector>() && call->Arguments().Length() == 1 &&
         ctor->Parameters()[0]->Type()->Is<core::type::Scalar>();
 
     if (brackets) {
diff --git a/src/tint/lang/hlsl/writer/raise/decompose_uniform_access.cc b/src/tint/lang/hlsl/writer/raise/decompose_uniform_access.cc
index 99390ec..aba068c 100644
--- a/src/tint/lang/hlsl/writer/raise/decompose_uniform_access.cc
+++ b/src/tint/lang/hlsl/writer/raise/decompose_uniform_access.cc
@@ -312,9 +312,6 @@
         if (result_ty->IsFloatScalar() || result_ty->IsIntegerScalar()) {
             return MakeScalarLoad(var, result_ty, byte_idx);
         }
-        if (result_ty->IsScalarVector()) {
-            return MakeVectorLoad(var, result_ty->As<core::type::Vector>(), byte_idx);
-        }
 
         return tint::Switch(
             result_ty,
@@ -330,6 +327,7 @@
                 auto* fn = GetLoadFunctionFor(inst, var, a);
                 return b.Call(fn, byte_idx);
             },
+            [&](const core::type::Vector* v) { return MakeVectorLoad(var, v, byte_idx); },
             TINT_ICE_ON_NO_MATCH);
     }