summaryrefslogtreecommitdiff
path: root/compiler/optimizing/instruction_simplifier_arm64.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/instruction_simplifier_arm64.cc')
-rw-r--r--compiler/optimizing/instruction_simplifier_arm64.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler/optimizing/instruction_simplifier_arm64.cc b/compiler/optimizing/instruction_simplifier_arm64.cc
index 260bfafeaf..ff0859b456 100644
--- a/compiler/optimizing/instruction_simplifier_arm64.cc
+++ b/compiler/optimizing/instruction_simplifier_arm64.cc
@@ -277,14 +277,17 @@ void InstructionSimplifierArm64Visitor::VisitXor(HXor* instruction) {
}
void InstructionSimplifierArm64Visitor::VisitVecLoad(HVecLoad* instruction) {
- if (!instruction->IsStringCharAt()
- && TryExtractVecArrayAccessAddress(instruction, instruction->GetIndex())) {
+ // TODO: Extract regular HIntermediateAddress.
+ if (!instruction->IsPredicated() && !instruction->IsStringCharAt() &&
+ TryExtractVecArrayAccessAddress(instruction, instruction->GetIndex())) {
RecordSimplification();
}
}
void InstructionSimplifierArm64Visitor::VisitVecStore(HVecStore* instruction) {
- if (TryExtractVecArrayAccessAddress(instruction, instruction->GetIndex())) {
+ // TODO: Extract regular HIntermediateAddress.
+ if (!instruction->IsPredicated() &&
+ TryExtractVecArrayAccessAddress(instruction, instruction->GetIndex())) {
RecordSimplification();
}
}