summaryrefslogtreecommitdiff
path: root/compiler/optimizing/optimizing_unit_test.h
diff options
context:
space:
mode:
author Artem Serov <artem.serov@arm.com> 2024-10-07 13:48:54 +0100
committer Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2024-10-15 09:27:57 +0000
commitb544a1017753bfef7b91a2ea3024ffbde6cd5bb9 (patch)
tree0b54d507a49e9980337893949ed51e681b82fc83 /compiler/optimizing/optimizing_unit_test.h
parentd3af812dd1c95e9f87c55cfa996354a115c08414 (diff)
Arm64: Fix PackedSwitch codegen for large methods.
This patch fixes a bug in arm64 PackedSwitch code generation for very large methods where we exceeded the range of Adr instruction - jump tables were emited in the very end of the method. Instead we now emit the jump table in-place as part of the PackedSwitch visitor - in the same way how it is done in arm32 backend. This patch also removes an incorrect assumption that the size of a method has a linear dependency on the number of its HIR instructions. This was used to choose whether to emit a jump table for a PackedSwitch. Test: art/test.py --target --host --optimizing Test: art/test.py --gtest art_compiler_tests Change-Id: I0795811a6408a25021879ab6be9e23ef5f1f50e4
Diffstat (limited to 'compiler/optimizing/optimizing_unit_test.h')
-rw-r--r--compiler/optimizing/optimizing_unit_test.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/optimizing/optimizing_unit_test.h b/compiler/optimizing/optimizing_unit_test.h
index abd1ffe03e..a7c3558c5f 100644
--- a/compiler/optimizing/optimizing_unit_test.h
+++ b/compiler/optimizing/optimizing_unit_test.h
@@ -382,7 +382,7 @@ class OptimizingUnitTestHelper {
pre_header->AddSuccessor(loop);
loop->AddSuccessor(loop_exit); // true successor
- loop->AddSuccessor(loop); // fakse successor
+ loop->AddSuccessor(loop); // false successor
MakeGoto(pre_header);