Lines Matching refs:instruction
43 bool TryMergeIntoUsersShifterOperand(HInstruction* instruction);
62 HInstruction* instruction = it.Current(); in VisitBasicBlock() local
63 if (instruction->IsInBlock()) { in VisitBasicBlock()
64 instruction->Accept(this); in VisitBasicBlock()
69 void VisitAnd(HAnd* instruction) override;
70 void VisitArrayGet(HArrayGet* instruction) override;
71 void VisitArraySet(HArraySet* instruction) override;
72 void VisitMul(HMul* instruction) override;
73 void VisitOr(HOr* instruction) override;
74 void VisitShl(HShl* instruction) override;
75 void VisitShr(HShr* instruction) override;
76 void VisitTypeConversion(HTypeConversion* instruction) override;
77 void VisitUShr(HUShr* instruction) override;
187 void InstructionSimplifierArmVisitor::VisitAnd(HAnd* instruction) { in VisitAnd() argument
188 if (TryMergeNegatedInput(instruction)) { in VisitAnd()
193 void InstructionSimplifierArmVisitor::VisitArrayGet(HArrayGet* instruction) { in VisitArrayGet() argument
194 size_t data_offset = CodeGenerator::GetArrayDataOffset(instruction); in VisitArrayGet()
195 DataType::Type type = instruction->GetType(); in VisitArrayGet()
201 if (mirror::kUseStringCompression && instruction->IsStringCharAt()) { in VisitArrayGet()
218 if (TryExtractArrayAccessAddress(instruction, in VisitArrayGet()
219 instruction->GetArray(), in VisitArrayGet()
220 instruction->GetIndex(), in VisitArrayGet()
226 void InstructionSimplifierArmVisitor::VisitArraySet(HArraySet* instruction) { in VisitArraySet() argument
227 size_t access_size = DataType::Size(instruction->GetComponentType()); in VisitArraySet()
229 DataType::Type type = instruction->GetComponentType(); in VisitArraySet()
239 if (TryExtractArrayAccessAddress(instruction, in VisitArraySet()
240 instruction->GetArray(), in VisitArraySet()
241 instruction->GetIndex(), in VisitArraySet()
247 void InstructionSimplifierArmVisitor::VisitMul(HMul* instruction) { in VisitMul() argument
248 if (TryCombineMultiplyAccumulate(instruction, InstructionSet::kArm)) { in VisitMul()
253 void InstructionSimplifierArmVisitor::VisitOr(HOr* instruction) { in VisitOr() argument
254 if (TryMergeNegatedInput(instruction)) { in VisitOr()
259 void InstructionSimplifierArmVisitor::VisitShl(HShl* instruction) { in VisitShl() argument
260 if (instruction->InputAt(1)->IsConstant()) { in VisitShl()
261 TryMergeIntoUsersShifterOperand(instruction); in VisitShl()
265 void InstructionSimplifierArmVisitor::VisitShr(HShr* instruction) { in VisitShr() argument
266 if (instruction->InputAt(1)->IsConstant()) { in VisitShr()
267 TryMergeIntoUsersShifterOperand(instruction); in VisitShr()
271 void InstructionSimplifierArmVisitor::VisitTypeConversion(HTypeConversion* instruction) { in VisitTypeConversion() argument
272 DataType::Type result_type = instruction->GetResultType(); in VisitTypeConversion()
273 DataType::Type input_type = instruction->GetInputType(); in VisitTypeConversion()
281 TryMergeIntoUsersShifterOperand(instruction); in VisitTypeConversion()
285 void InstructionSimplifierArmVisitor::VisitUShr(HUShr* instruction) { in VisitUShr() argument
286 if (instruction->InputAt(1)->IsConstant()) { in VisitUShr()
287 TryMergeIntoUsersShifterOperand(instruction); in VisitUShr()