From 21b859210d690d25563423eeed5fd630023d23cc Mon Sep 17 00:00:00 2001 From: Aart Bik Date: Wed, 6 Sep 2017 13:29:16 -0700 Subject: Added vectorization stats. Rationale: Provides a (somewhat crude) quantative way to detect changes in loop vectorization and idiom recognition (e.g. by means of market scans, or just inspecting the same application before/after a change). Test: market scan Change-Id: Ic85938ba2b33c967de3159742c60301454a152a0 --- compiler/optimizing/loop_optimization.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'compiler/optimizing/loop_optimization.cc') diff --git a/compiler/optimizing/loop_optimization.cc b/compiler/optimizing/loop_optimization.cc index f8f4eb2ae3..6b2697bf18 100644 --- a/compiler/optimizing/loop_optimization.cc +++ b/compiler/optimizing/loop_optimization.cc @@ -625,6 +625,7 @@ bool HLoopOptimization::OptimizeInnerLoop(LoopNode* node) { TryAssignLastValue(node->loop_info, main_phi, preheader, /*collect_loop_uses*/ true)) { Vectorize(node, body, exit, trip_count); graph_->SetHasSIMD(true); // flag SIMD usage + MaybeRecordStat(stats_, MethodCompilationStat::kLoopVectorized); return true; } return false; @@ -1724,6 +1725,7 @@ bool HLoopOptimization::VectorizeHalvingAddIdiom(LoopNode* node, vector_length_, is_unsigned, is_rounded)); + MaybeRecordStat(stats_, MethodCompilationStat::kLoopVectorizedIdiom); } else { GenerateVecOp(instruction, vector_map_->Get(r), vector_map_->Get(s), type); } -- cgit v1.2.3-59-g8ed1b