[ir] Remove old `Load` constructor.

The Builder has been updated to use the single argument form of `Load`.
With that, nothing uses the two argument form. The one argument form is
also safer as it validates that the thing being loaded from is a
`Pointer`.

Bug: tint:1718
Change-Id: I1b65e47981b67548e6c1f378bf397e7f2f722ad0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/137020
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/src/tint/ir/load.cc b/src/tint/ir/load.cc
index 1beb814..4beb11e 100644
--- a/src/tint/ir/load.cc
+++ b/src/tint/ir/load.cc
@@ -21,13 +21,6 @@
 
 namespace tint::ir {
 
-Load::Load(const type::Type* type, Value* from) : result_type_(type) {
-    TINT_ASSERT_OR_RETURN(IR, result_type_);
-    TINT_ASSERT_OR_RETURN(IR, from);
-
-    AddOperand(from);
-}
-
 Load::Load(Value* from) {
     TINT_ASSERT_OR_RETURN(IR, from);
     TINT_ASSERT_OR_RETURN(IR, tint::Is<type::Pointer>(from->Type()));
diff --git a/src/tint/ir/load.h b/src/tint/ir/load.h
index 8dccd5a..29b3b22 100644
--- a/src/tint/ir/load.h
+++ b/src/tint/ir/load.h
@@ -23,11 +23,6 @@
 /// A load instruction in the IR.
 class Load : public utils::Castable<Load, OperandInstruction<1>> {
   public:
-    /// Constructor
-    /// @param type the result type
-    /// @param from the value being loaded from
-    Load(const type::Type* type, Value* from);
-
     /// Constructor (infers type)
     /// @param from the value being loaded from
     explicit Load(Value* from);
diff --git a/src/tint/ir/load_test.cc b/src/tint/ir/load_test.cc
index 184b943..1430e11 100644
--- a/src/tint/ir/load_test.cc
+++ b/src/tint/ir/load_test.cc
@@ -50,20 +50,6 @@
     EXPECT_THAT(inst->From()->Usages(), testing::UnorderedElementsAre(Usage{inst, 0u}));
 }
 
-TEST_F(IR_LoadTest, Fail_NullType) {
-    EXPECT_FATAL_FAILURE(
-        {
-            Module mod;
-            Builder b{mod};
-
-            auto* store_type = mod.Types().i32();
-            auto* var = b.Var(mod.Types().pointer(store_type, builtin::AddressSpace::kFunction,
-                                                  builtin::Access::kReadWrite));
-            Load l(nullptr, var);
-        },
-        "");
-}
-
 TEST_F(IR_LoadTest, Fail_NonPtr_Builder) {
     EXPECT_FATAL_FAILURE(
         {
@@ -89,7 +75,7 @@
         {
             Module mod;
             Builder b{mod};
-            Load l(mod.Types().f32(), nullptr);
+            Load l(nullptr);
         },
         "");
 }