[tint][ir] Use Builder::Call in more places

These manual uses of `CreateInstruction` are unnecessary as we have
overloads of `Call` that can handle non-core builtin functions.

Change-Id: I2978c40616ed61d6993b0282da23db2245e1c0ca
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/223474
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Commit-Queue: James Price <jrprice@google.com>
diff --git a/src/tint/lang/wgsl/reader/lower/lower_test.cc b/src/tint/lang/wgsl/reader/lower/lower_test.cc
index 079eb05..bda9b7a 100644
--- a/src/tint/lang/wgsl/reader/lower/lower_test.cc
+++ b/src/tint/lang/wgsl/reader/lower/lower_test.cc
@@ -44,12 +44,7 @@
 TEST_F(Wgslreader_LowerTest, BuiltinConversion) {
     auto* f = b.Function("f", ty.void_());
     b.Append(f->Block(), [&] {  //
-        auto* result = b.InstructionResult(ty.i32());
-        b.Append(b.ir.CreateInstruction<wgsl::ir::BuiltinCall>(result, wgsl::BuiltinFn::kMax,
-                                                               Vector{
-                                                                   b.Value(i32(1)),
-                                                                   b.Value(i32(2)),
-                                                               }));
+        b.Call<wgsl::ir::BuiltinCall>(ty.i32(), wgsl::BuiltinFn::kMax, 1_i, 2_i);
         b.Return(f);
     });
 
@@ -83,9 +78,8 @@
 
     auto* f = b.Function("f", ty.i32());
     b.Append(f->Block(), [&] {  //
-        auto* result = b.InstructionResult(ty.i32());
-        b.Append(b.ir.CreateInstruction<wgsl::ir::BuiltinCall>(
-            result, wgsl::BuiltinFn::kWorkgroupUniformLoad, Vector{wgvar->Result(0)}));
+        auto* result = b.Call<wgsl::ir::BuiltinCall>(
+            ty.i32(), wgsl::BuiltinFn::kWorkgroupUniformLoad, wgvar->Result(0));
         b.Return(f, result);
     });
 
diff --git a/src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.cc b/src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.cc
index 83ed512..e795ef6 100644
--- a/src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.cc
+++ b/src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.cc
@@ -983,9 +983,8 @@
                     if (b->Fn() == wgsl::BuiltinFn::kBitcast) {
                         inst = impl.builder_.Bitcast(ty, args[0]);
                     } else {
-                        auto* res = impl.builder_.InstructionResult(ty);
-                        inst = impl.builder_.ir.CreateInstruction<wgsl::ir::BuiltinCall>(
-                            res, b->Fn(), std::move(args));
+                        inst =
+                            impl.builder_.Call<wgsl::ir::BuiltinCall>(ty, b->Fn(), std::move(args));
                     }
                 } else if (sem->Target()->As<sem::ValueConstructor>()) {
                     inst = impl.builder_.Construct(ty, std::move(args));