summaryrefslogtreecommitdiff
path: root/compiler/optimizing/intrinsics.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/intrinsics.cc')
-rw-r--r--compiler/optimizing/intrinsics.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/optimizing/intrinsics.cc b/compiler/optimizing/intrinsics.cc
index f8dc316e45..dfe6d791c6 100644
--- a/compiler/optimizing/intrinsics.cc
+++ b/compiler/optimizing/intrinsics.cc
@@ -178,7 +178,8 @@ bool IntrinsicsRecognizer::Recognize(HInvoke* invoke,
return true;
}
-void IntrinsicsRecognizer::Run() {
+bool IntrinsicsRecognizer::Run() {
+ bool didRecognize = false;
ScopedObjectAccess soa(Thread::Current());
for (HBasicBlock* block : graph_->GetReversePostOrder()) {
for (HInstructionIterator inst_it(block->GetInstructions()); !inst_it.Done();
@@ -187,6 +188,7 @@ void IntrinsicsRecognizer::Run() {
if (inst->IsInvoke()) {
bool wrong_invoke_type = false;
if (Recognize(inst->AsInvoke(), /* art_method */ nullptr, &wrong_invoke_type)) {
+ didRecognize = true;
MaybeRecordStat(stats_, MethodCompilationStat::kIntrinsicRecognized);
} else if (wrong_invoke_type) {
LOG(WARNING)
@@ -197,6 +199,7 @@ void IntrinsicsRecognizer::Run() {
}
}
}
+ return didRecognize;
}
std::ostream& operator<<(std::ostream& os, const Intrinsics& intrinsic) {