Update tools/format

This Cl updates tools/format to match the various Dawn extensions and to
use the `clang_format.py` file from depot_tools instead of the one from
clang. This fixes up some formatting differences so `tools/format` will
now match `git cl format`.

Bug: dawn:1339
Change-Id: I32a2cdbd2d7e950794268616fae38b5bf54ab370
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86874
Auto-Submit: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
diff --git a/src/dawn/native/Limits.cpp b/src/dawn/native/Limits.cpp
index 3b20a1b..3b006bd 100644
--- a/src/dawn/native/Limits.cpp
+++ b/src/dawn/native/Limits.cpp
@@ -151,14 +151,14 @@
 
     Limits ReifyDefaultLimits(const Limits& limits) {
         Limits out;
-#define X(Class, limitName, base, ...)                                           \
-    if (IsLimitUndefined(limits.limitName) ||                                     \
-        CheckLimit<LimitClass::Class>::IsBetter(                       \
-            static_cast<decltype(limits.limitName)>(base), limits.limitName)) {   \
-        /* If the limit is undefined or the default is better, use the default */ \
-        out.limitName = base;                                                     \
-    } else {                                                                      \
-        out.limitName = limits.limitName;                                         \
+#define X(Class, limitName, base, ...)                                                         \
+    if (IsLimitUndefined(limits.limitName) ||                                                  \
+        CheckLimit<LimitClass::Class>::IsBetter(static_cast<decltype(limits.limitName)>(base), \
+                                                limits.limitName)) {                           \
+        /* If the limit is undefined or the default is better, use the default */              \
+        out.limitName = base;                                                                  \
+    } else {                                                                                   \
+        out.limitName = limits.limitName;                                                      \
     }
         LIMITS(X)
 #undef X
@@ -166,11 +166,11 @@
     }
 
     MaybeError ValidateLimits(const Limits& supportedLimits, const Limits& requiredLimits) {
-#define X(Class, limitName, ...)                                                  \
-    if (!IsLimitUndefined(requiredLimits.limitName)) {                             \
-        DAWN_TRY_CONTEXT(CheckLimit<LimitClass::Class>::Validate(       \
-                             supportedLimits.limitName, requiredLimits.limitName), \
-                         "validating " #limitName);                                \
+#define X(Class, limitName, ...)                                                            \
+    if (!IsLimitUndefined(requiredLimits.limitName)) {                                      \
+        DAWN_TRY_CONTEXT(CheckLimit<LimitClass::Class>::Validate(supportedLimits.limitName, \
+                                                                 requiredLimits.limitName), \
+                         "validating " #limitName);                                         \
     }
         LIMITS(X)
 #undef X
@@ -192,17 +192,17 @@
         }                                                            \
     }
 
-#define X_CHECK_BETTER_AND_CLAMP(Class, limitName, ...)                                       \
-    {                                                                                          \
-        constexpr std::array<decltype(Limits::limitName), kTierCount> tiers{__VA_ARGS__};      \
-        decltype(Limits::limitName) tierValue = tiers[i - 1];                                  \
-        if (CheckLimit<LimitClass::Class>::IsBetter(tierValue, limits.limitName)) { \
-            /* The tier is better. Go to the next tier. */                                     \
-            continue;                                                                          \
-        } else if (tierValue != limits.limitName) {                                            \
-            /* Better than the tier. Degrade |limits| to the tier. */                          \
-            limits.limitName = tiers[i - 1];                                                   \
-        }                                                                                      \
+#define X_CHECK_BETTER_AND_CLAMP(Class, limitName, ...)                                   \
+    {                                                                                     \
+        constexpr std::array<decltype(Limits::limitName), kTierCount> tiers{__VA_ARGS__}; \
+        decltype(Limits::limitName) tierValue = tiers[i - 1];                             \
+        if (CheckLimit<LimitClass::Class>::IsBetter(tierValue, limits.limitName)) {       \
+            /* The tier is better. Go to the next tier. */                                \
+            continue;                                                                     \
+        } else if (tierValue != limits.limitName) {                                       \
+            /* Better than the tier. Degrade |limits| to the tier. */                     \
+            limits.limitName = tiers[i - 1];                                              \
+        }                                                                                 \
     }
 
         LIMITS_EACH_GROUP(X_EACH_GROUP)
diff --git a/src/dawn/node/interop/Core.h b/src/dawn/node/interop/Core.h
index 8408d15..034dfa5 100644
--- a/src/dawn/node/interop/Core.h
+++ b/src/dawn/node/interop/Core.h
@@ -119,7 +119,7 @@
         // stringified values append to the error message.
         // If Result is a success, then a success Result is returned.
         template <typename... VALUES>
-        Result Append(VALUES&&... values) {
+        Result Append(VALUES && ... values) {
             if (*this) {
                 return *this;
             }
diff --git a/src/dawn/tests/unittests/wire/WireErrorCallbackTests.cpp b/src/dawn/tests/unittests/wire/WireErrorCallbackTests.cpp
index a9c5522..0dfb60c 100644
--- a/src/dawn/tests/unittests/wire/WireErrorCallbackTests.cpp
+++ b/src/dawn/tests/unittests/wire/WireErrorCallbackTests.cpp
@@ -271,18 +271,18 @@
 
 // Empty stack (We are emulating the errors that would be callback-ed from native).
 TEST_F(WireErrorCallbackTests, PopErrorScopeEmptyStack) {
-        WGPUErrorCallback callback;
-        void* userdata;
-        EXPECT_CALL(api, OnDevicePopErrorScope(apiDevice, _, _))
-            .WillOnce(DoAll(SaveArg<1>(&callback), SaveArg<2>(&userdata), Return(true)));
-        wgpuDevicePopErrorScope(device, ToMockDevicePopErrorScopeCallback, this);
-        FlushClient();
+    WGPUErrorCallback callback;
+    void* userdata;
+    EXPECT_CALL(api, OnDevicePopErrorScope(apiDevice, _, _))
+        .WillOnce(DoAll(SaveArg<1>(&callback), SaveArg<2>(&userdata), Return(true)));
+    wgpuDevicePopErrorScope(device, ToMockDevicePopErrorScopeCallback, this);
+    FlushClient();
 
-        EXPECT_CALL(*mockDevicePopErrorScopeCallback,
-                    Call(WGPUErrorType_Validation, StrEq("No error scopes to pop"), this))
-            .Times(1);
-        callback(WGPUErrorType_Validation, "No error scopes to pop", userdata);
-        FlushServer();
+    EXPECT_CALL(*mockDevicePopErrorScopeCallback,
+                Call(WGPUErrorType_Validation, StrEq("No error scopes to pop"), this))
+        .Times(1);
+    callback(WGPUErrorType_Validation, "No error scopes to pop", userdata);
+    FlushServer();
 }
 
 // Test the return wire for device lost callback
diff --git a/src/tint/reader/spirv/parser_impl_module_var_test.cc b/src/tint/reader/spirv/parser_impl_module_var_test.cc
index d50959d..c8f6935 100644
--- a/src/tint/reader/spirv/parser_impl_module_var_test.cc
+++ b/src/tint/reader/spirv/parser_impl_module_var_test.cc
@@ -1272,7 +1272,6 @@
       << module_str;
 }
 
-
 TEST_F(SpvModuleScopeVarParserTest, BindingDecoration_Valid) {
   auto p = parser(test::Assemble(Preamble() + FragMain() + R"(
      OpDecorate %1 DescriptorSet 0 ; WGSL validation requires this already
diff --git a/tools/format b/tools/format
index d0c9c64..d6de133 100755
--- a/tools/format
+++ b/tools/format
@@ -13,7 +13,9 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-find src -name "*.h"  -exec clang-format -i {} \;
-find src -name "*.cc"  -exec clang-format -i {} \;
-find src/tint/cmd -name "*.h"  -exec clang-format -i {} \;
-find src/tint/cmd -name "*.cc"  -exec clang-format -i {} \;
+find src -name "*.h"  -exec clang_format.py -i {} \;
+find src -name "*.cc"  -exec clang_format.py -i {} \;
+find src -name "*.cpp"  -exec clang_format.py -i {} \;
+find src -name "*.m"  -exec clang_format.py -i {} \;
+find src -name "*.mm"  -exec clang_format.py -i {} \;
+find include -name "*.h"  -exec clang_format.py -i {} \;