Early out Is checks.

This CL adds a check to the `Is` castable methods to determine if the
target type is `final`. If the type being compared too is `final` we
bail out early in the walk up the hierarchy as it won't be a parent
class.

Change-Id: Ieba4dd686e47207a3db0cf3a8ea46fbc1a8d1c91
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/96600
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
diff --git a/PRESUBMIT.py b/PRESUBMIT.py
index 7cfb3ae..ecd0c62 100644
--- a/PRESUBMIT.py
+++ b/PRESUBMIT.py
@@ -117,6 +117,7 @@
         "src/dawn/node/tools/src/cmd/run-cts/main.go",  # Terminal type name
         "src/dawn/samples/ComputeBoids.cpp",  # External URL
         "src/dawn/tests/end2end/DepthBiasTests.cpp",  # External URL
+        "src/tint/transform/canonicalize_entry_point_io.cc",  # External URL
         "test/tint/samples/compute_boids.wgsl",  # External URL
         "third_party/khronos/KHR/khrplatform.h",  # Third party file
         "tools/roll-all",  # Branch name