diff options
| author | 2017-12-08 03:52:32 +0000 | |
|---|---|---|
| committer | 2017-12-08 03:52:32 +0000 | |
| commit | 5449e076f6314fc21592a9e089258647f2750e9b (patch) | |
| tree | b1f74c221456c93d2611b5eb3ece31b1130c7f20 /compiler/optimizing/loop_optimization.cc | |
| parent | f223f76bdd360664a1e8068eeac6ce35f7392bc6 (diff) | |
| parent | 2dd7b672ea0afd7ea4448b43d24829e9886de3af (diff) | |
Merge "Fixed spilling bug (visible on ARM64): missed SIMD type."
Diffstat (limited to 'compiler/optimizing/loop_optimization.cc')
| -rw-r--r-- | compiler/optimizing/loop_optimization.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/optimizing/loop_optimization.cc b/compiler/optimizing/loop_optimization.cc index 1ca096035e..3dc1ef7534 100644 --- a/compiler/optimizing/loop_optimization.cc +++ b/compiler/optimizing/loop_optimization.cc @@ -1749,7 +1749,8 @@ void HLoopOptimization::GenerateVecReductionPhiInputs(HPhi* phi, HInstruction* r HInstruction* HLoopOptimization::ReduceAndExtractIfNeeded(HInstruction* instruction) { if (instruction->IsPhi()) { HInstruction* input = instruction->InputAt(1); - if (input->IsVecOperation() && !input->IsVecExtractScalar()) { + if (HVecOperation::ReturnsSIMDValue(input)) { + DCHECK(!input->IsPhi()); HVecOperation* input_vector = input->AsVecOperation(); uint32_t vector_length = input_vector->GetVectorLength(); DataType::Type type = input_vector->GetPackedType(); |