Xcode 12b3 (and later) emits arm64e binaries; try that architecture.

In Xcode 12 beta 3, pointer authentication was turned on for ARM64
binaries, yielding arm64e architecture. Attempting to run with only
arm64 specified does not allow an arm64e slice to run. Prefer arm64e
if available, but allow an arm64 slice if that's the only option.
(If provided multiple architectures, arch uses the first one that can
be used.)

Bug: 1103236
Change-Id: Id3498816a2495a449a16b3b6a66b0e776b70f4e0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2404709
Reviewed-by: Dirk Pranke <dpranke@google.com>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Adam Norberg <norberg@google.com>
diff --git a/gclient_scm.py b/gclient_scm.py
index a321920..76a32b9 100644
--- a/gclient_scm.py
+++ b/gclient_scm.py
@@ -1407,7 +1407,7 @@
       # the native ARM slice instead of the Intel slice.
       # TODO(thakis): Remove this again once we ship an arm64 python3
       # binary.
-      cmd = ['arch', '-arch', 'arm64'] + cmd
+      cmd = ['arch', '-arch', 'arm64e', '-arch', 'arm64'] + cmd
     gclient_utils.CheckCallAndFilter(cmd, env=env, **kwargs)