diff options
| author | 2017-04-08 00:46:55 +0000 | |
|---|---|---|
| committer | 2017-04-08 00:46:57 +0000 | |
| commit | 7da4b9102ee2689960b73d4b5d729e926fd18bfe (patch) | |
| tree | 4f9bea0622ac67908fd71ad7850e33619ac9f036 /compiler/optimizing/loop_optimization.cc | |
| parent | 80060f25cb80b63475927e94df48b8f403b39bb0 (diff) | |
| parent | fa76296bc624bc2c879167c260ad6925238efb3d (diff) | |
Merge "Fixed missing context while detecting unit strides."
Diffstat (limited to 'compiler/optimizing/loop_optimization.cc')
| -rw-r--r-- | compiler/optimizing/loop_optimization.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/optimizing/loop_optimization.cc b/compiler/optimizing/loop_optimization.cc index 1a79601a93..bf18cc9bbc 100644 --- a/compiler/optimizing/loop_optimization.cc +++ b/compiler/optimizing/loop_optimization.cc @@ -580,7 +580,7 @@ bool HLoopOptimization::VectorizeDef(LoopNode* node, HInstruction* offset = nullptr; if (TrySetVectorType(type, &restrictions) && node->loop_info->IsDefinedOutOfTheLoop(base) && - induction_range_.IsUnitStride(index, &offset) && + induction_range_.IsUnitStride(instruction, index, &offset) && VectorizeUse(node, value, generate_code, type, restrictions)) { if (generate_code) { GenerateVecSub(index, offset); @@ -633,7 +633,7 @@ bool HLoopOptimization::VectorizeUse(LoopNode* node, HInstruction* offset = nullptr; if (type == instruction->GetType() && node->loop_info->IsDefinedOutOfTheLoop(base) && - induction_range_.IsUnitStride(index, &offset)) { + induction_range_.IsUnitStride(instruction, index, &offset)) { if (generate_code) { GenerateVecSub(index, offset); GenerateVecMem(instruction, vector_map_->Get(index), nullptr, type); |