From 8192f5832f9f5b43e4f1b9784c90d9bc5db1ad1a Mon Sep 17 00:00:00 2001 From: VladimĂ­r Marko Date: Fri, 26 Apr 2024 13:16:48 +0000 Subject: Revert^2 "Fast-path for `HInstanceOf`/`kInterfaceCheck`." This reverts commit 5117fe6bf9bd58b49b2b7647b148b4c3ea3b17ed. Reason for revert: Fix wrong operator in x86-64 codegen. Change-Id: Id17686bdb5b5e0336f8d70bfeecd85e9c33a7b80 Test: m test-art-host-gtest Test: testrunner.py --host --optimizing --jit --picimage --no-image Test: run-gtests.sh Test: testrunner.py --target --optimizing Bug: 333690895 --- compiler/optimizing/code_generator.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'compiler/optimizing/code_generator.h') diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h index 970da76c43..3ac4bd7dcc 100644 --- a/compiler/optimizing/code_generator.h +++ b/compiler/optimizing/code_generator.h @@ -461,11 +461,13 @@ class CodeGenerator : public DeletableArenaObject { DataType::Type type2); bool InstanceOfNeedsReadBarrier(HInstanceOf* instance_of) { - // Used only for kExactCheck, kAbstractClassCheck, kClassHierarchyCheck and kArrayObjectCheck. + // Used only for `kExactCheck`, `kAbstractClassCheck`, `kClassHierarchyCheck`, + // `kArrayObjectCheck` and `kInterfaceCheck`. DCHECK(instance_of->GetTypeCheckKind() == TypeCheckKind::kExactCheck || instance_of->GetTypeCheckKind() == TypeCheckKind::kAbstractClassCheck || instance_of->GetTypeCheckKind() == TypeCheckKind::kClassHierarchyCheck || - instance_of->GetTypeCheckKind() == TypeCheckKind::kArrayObjectCheck) + instance_of->GetTypeCheckKind() == TypeCheckKind::kArrayObjectCheck || + instance_of->GetTypeCheckKind() == TypeCheckKind::kInterfaceCheck) << instance_of->GetTypeCheckKind(); // If the target class is in the boot or app image, it's non-moveable and it doesn't matter // if we compare it with a from-space or to-space reference, the result is the same. -- cgit v1.2.3-59-g8ed1b