diff --git a/DEPS b/DEPS
index 991d17b..c62c71f 100644
--- a/DEPS
+++ b/DEPS
@@ -66,8 +66,8 @@
   # The list of revisions for these tools comes from Fuchsia, here:
   # https://fuchsia.googlesource.com/integration/+/HEAD/toolchain
   # If there are problems with the toolchain, contact fuchsia-toolchain@.
-  "clang_revision": "aaaf8e4c409f080f35ea227b20dc6ac8a45c2fa4",
-  "gn_revision": "e62d4e1938a45babc9afb6db543f388cd1802a52",
+  "clang_revision": "60d276923902051192eba692e5312e605c9d9f65",
+  "gn_revision": "0bcd37bd2b83f1a9ee17088037ebdfe6eab6d31a",
 
   # Scripts that make 'git cl format' work.
   "clang_format_scripts_rev": "bb994c6f067340c1135eb43eed84f4b33cfa7397",
@@ -454,8 +454,7 @@
               "version": "git_revision:" + Var("clang_revision"),
           },
       ],
-      # TODO(https://fxbug.dev/73385): Use arm64 toolchain on arm64 when it exists.
-      "condition": "host_cpu == x64 and host_os == mac or host_cpu == arm64 and host_os == mac",
+      "condition": "host_os == mac", # On ARM64 Macs too because Goma doesn't support the host-arm64 toolchain.
       "dep_type": "cipd",
   },
   Var("dart_root") + "/buildtools/win-x64/clang": {
@@ -478,6 +477,16 @@
       "condition": "host_os == 'linux' and host_cpu == 'arm64'",
       "dep_type": "cipd",
   },
+  Var("dart_root") + "/buildtools/mac-arm64/clang": {
+      "packages": [
+          {
+              "package": "fuchsia/third_party/clang/mac-arm64",
+              "version": "git_revision:" + Var("clang_revision"),
+          },
+      ],
+      "condition": "host_os == 'mac' and host_cpu == 'arm64'",
+      "dep_type": "cipd",
+  },
 
   Var("dart_root") + "/third_party/webdriver/chrome": {
     "packages": [
diff --git a/build/config/clang/clang.gni b/build/config/clang/clang.gni
index c2ba3f7..49cc509 100644
--- a/build/config/clang/clang.gni
+++ b/build/config/clang/clang.gni
@@ -2,9 +2,11 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
+import("../../toolchain/goma.gni")
+
 _toolchain_cpu = host_cpu
-if (host_os == "mac") {
-  # TODO(https://fxbug.dev/73385): Use arm64 toolchain on arm64 when it exists.
+if (host_os == "mac" && use_goma) {
+  # Goma does not support ARM64.
   _toolchain_cpu = "x64"
 }
 
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 1508689..4e2a79d 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -377,7 +377,10 @@
     } else if (is_linux) {
       toolchain_stamp_file =
           "//buildtools/linux-x64/clang/.versions/clang.cipd_version"
-    } else {
+    } else if (is_mac && host_cpu == "arm64") {
+      toolchain_stamp_file =
+          "//buildtools/mac-arm64/clang/.versions/clang.cipd_version"
+    } else if (is_mac) {
       toolchain_stamp_file =
           "//buildtools/mac-x64/clang/.versions/clang.cipd_version"
     }
diff --git a/build/toolchain/mac/BUILD.gn b/build/toolchain/mac/BUILD.gn
index 2b9c426..1dd0cda 100644
--- a/build/toolchain/mac/BUILD.gn
+++ b/build/toolchain/mac/BUILD.gn
@@ -20,6 +20,15 @@
   goma_prefix = ""
 }
 
+# Goma doesn't support the host-arm64 toolchain, so continue using Rosetta.
+if (host_cpu == "arm64" && !use_goma) {
+  rebased_clang_dir =
+      rebase_path("//buildtools/mac-arm64/clang/bin", root_build_dir)
+} else {
+  rebased_clang_dir =
+      rebase_path("//buildtools/mac-x64/clang/bin", root_build_dir)
+}
+
 # Shared toolchain definition. Invocations should set toolchain_os to set the
 # build args in this definition.
 template("mac_toolchain") {
@@ -211,28 +220,10 @@
   }
 }
 
-# Toolchain used for Mac host targets.
 mac_toolchain("clang_x64") {
   toolchain_cpu = "x64"
   toolchain_os = "mac"
-  prefix = rebase_path("//buildtools/mac-x64/clang/bin", root_build_dir)
-  cc = "${goma_prefix}$prefix/clang"
-  cxx = "${goma_prefix}$prefix/clang++"
-  ar = "${prefix}/llvm-ar"
-  ld = cxx
-  strip = "strip"
-  is_clang = true
-  if (mac_enable_relative_sdk_path) {
-    mac_sdk_path = rebase_path(mac_sdk_path, root_build_dir)
-  }
-  sysroot_flags = "-isysroot $mac_sdk_path -mmacosx-version-min=$mac_sdk_min"
-}
-
-# Toolchain used for Mac host (i386) targets.
-mac_toolchain("clang_x86") {
-  toolchain_cpu = "i386"
-  toolchain_os = "mac"
-  prefix = rebase_path("//buildtools/mac-x64/clang/bin", root_build_dir)
+  prefix = rebased_clang_dir
   cc = "${goma_prefix}$prefix/clang"
   cxx = "${goma_prefix}$prefix/clang++"
   ar = "${prefix}/llvm-ar"
@@ -248,7 +239,7 @@
 mac_toolchain("clang_arm64") {
   toolchain_cpu = "arm64"
   toolchain_os = "mac"
-  prefix = rebase_path("//buildtools/mac-x64/clang/bin", root_build_dir)
+  prefix = rebased_clang_dir
   cc = "${goma_prefix}$prefix/clang"
   cxx = "${goma_prefix}$prefix/clang++"
   ar = "${prefix}/llvm-ar"
