summaryrefslogtreecommitdiff
path: root/compiler/optimizing/nodes_vector.h
diff options
context:
space:
mode:
author Aart Bik <ajcbik@google.com> 2017-09-20 14:11:11 -0700
committer Aart Bik <ajcbik@google.com> 2017-09-20 14:11:11 -0700
commit5e3afa950f05bca470ef6b92460940f37831c27f (patch)
tree3656fb1d9153a87b55b56c71a93833da49c112d4 /compiler/optimizing/nodes_vector.h
parentb407afe983f8b106a5007d07aa2523ffc6525018 (diff)
Ensure extract is seen as having scalar result.
Rationale: Extracting from a vector yields a scalar, yet our parallel mover and one DCHECK did not account for that fact (note that moving towards a vector type system will prevent such errors). Regression test for this is part of the SAD CL. Test: test-art-host test-art-target Bug: 64091002 Change-Id: Id154edd1a069c54e7d8da069c368dea0a8f973f4
Diffstat (limited to 'compiler/optimizing/nodes_vector.h')
-rw-r--r--compiler/optimizing/nodes_vector.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/optimizing/nodes_vector.h b/compiler/optimizing/nodes_vector.h
index 886d75e5c7..c5e75a7ca4 100644
--- a/compiler/optimizing/nodes_vector.h
+++ b/compiler/optimizing/nodes_vector.h
@@ -815,7 +815,7 @@ class HVecUShr FINAL : public HVecBinaryOperation {
class HVecSetScalars FINAL : public HVecOperation {
public:
HVecSetScalars(ArenaAllocator* arena,
- HInstruction** scalars, // array
+ HInstruction* scalars[],
Primitive::Type packed_type,
size_t vector_length,
size_t number_of_scalars,
@@ -827,7 +827,7 @@ class HVecSetScalars FINAL : public HVecOperation {
vector_length,
dex_pc) {
for (size_t i = 0; i < number_of_scalars; i++) {
- DCHECK(!scalars[i]->IsVecOperation());
+ DCHECK(!scalars[i]->IsVecOperation() || scalars[i]->IsVecExtractScalar());
SetRawInputAt(0, scalars[i]);
}
}