From 639cc8c7bbb7d8c341173bcf24604ccb4328acb8 Mon Sep 17 00:00:00 2001 From: Aart Bik Date: Tue, 18 Oct 2016 13:03:31 -0700 Subject: Improve recognition of select-based period induction. Rationale: Similar to the previous CL, this helps to eliminate more dead induction. Now, CaffeineLogic, when compiled with dx (rather than jack) improves by a 1.5 speedup (9000us -> 6000us). Note: We need to run the simplifier before induction analysis to trigger the select simplification first. Although a bit of a compile-time hit, it seems a good idea to run a simplifier here again anyway. Test: test-art-host Change-Id: I93b91ca40a4d64385c64393028e8d213f0c904a8 --- compiler/optimizing/induction_var_range.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'compiler/optimizing/induction_var_range.cc') diff --git a/compiler/optimizing/induction_var_range.cc b/compiler/optimizing/induction_var_range.cc index 663cbaf2de..7cc8b1ea4c 100644 --- a/compiler/optimizing/induction_var_range.cc +++ b/compiler/optimizing/induction_var_range.cc @@ -862,7 +862,7 @@ bool InductionVarRange::GenerateCode(HInductionVarAnalysis::InductionInfo* info, } // Verify type safety. Primitive::Type type = Primitive::kPrimInt; - if (info->type != type) { + if (info->type != Primitive::kPrimInt && info->type != Primitive::kPrimBoolean) { return false; } // Handle current operation. -- cgit v1.2.3-59-g8ed1b