/art/compiler/optimizing/ |
H A D | instruction_simplifier_arm.cc | 23 void InstructionSimplifierArmVisitor::VisitMul(HMul* instruction) { argument 24 if (TryCombineMultiplyAccumulate(instruction, kArm)) { 29 void InstructionSimplifierArmVisitor::VisitOr(HOr* instruction) { argument 30 if (TryMergeNegatedInput(instruction)) { 35 void InstructionSimplifierArmVisitor::VisitAnd(HAnd* instruction) { argument 36 if (TryMergeNegatedInput(instruction)) {
|
H A D | constant_folding.cc | 50 void VisitAbove(HAbove* instruction) OVERRIDE; 51 void VisitAboveOrEqual(HAboveOrEqual* instruction) OVERRIDE; 52 void VisitBelow(HBelow* instruction) OVERRIDE; 53 void VisitBelowOrEqual(HBelowOrEqual* instruction) OVERRIDE; 55 void VisitAnd(HAnd* instruction) OVERRIDE; 56 void VisitCompare(HCompare* instruction) OVERRIDE; 57 void VisitMul(HMul* instruction) OVERRIDE; 58 void VisitOr(HOr* instruction) OVERRIDE; 59 void VisitRem(HRem* instruction) OVERRIDE; 60 void VisitShl(HShl* instruction) OVERRID 130 VisitShift(HBinaryOperation* instruction) argument 143 VisitAbove(HAbove* instruction) argument 155 VisitAboveOrEqual(HAboveOrEqual* instruction) argument 167 VisitBelow(HBelow* instruction) argument 179 VisitBelowOrEqual(HBelowOrEqual* instruction) argument 191 VisitAnd(HAnd* instruction) argument 203 VisitCompare(HCompare* instruction) argument 223 VisitMul(HMul* instruction) argument 240 VisitOr(HOr* instruction) argument 257 VisitRem(HRem* instruction) argument 293 VisitShl(HShl* instruction) argument 297 VisitShr(HShr* instruction) argument 301 VisitSub(HSub* instruction) argument 326 VisitUShr(HUShr* instruction) argument 330 VisitXor(HXor* instruction) argument [all...] |
H A D | instruction_simplifier_arm64.h | 42 bool TryMergeIntoUsersShifterOperand(HInstruction* instruction); 63 HInstruction* instruction = it.Current(); variable 64 if (instruction->IsInBlock()) { 65 instruction->Accept(this); 71 void VisitAnd(HAnd* instruction) OVERRIDE; 72 void VisitArrayGet(HArrayGet* instruction) OVERRIDE; 73 void VisitArraySet(HArraySet* instruction) OVERRIDE; 74 void VisitMul(HMul* instruction) OVERRIDE; 75 void VisitOr(HOr* instruction) OVERRIDE; 76 void VisitShl(HShl* instruction) OVERRID [all...] |
H A D | locations.cc | 24 LocationSummary::LocationSummary(HInstruction* instruction, argument 27 : inputs_(instruction->InputCount(), 28 instruction->GetBlock()->GetGraph()->GetArena()->Adapter(kArenaAllocLocationSummary)), 29 temps_(instruction->GetBlock()->GetGraph()->GetArena()->Adapter(kArenaAllocLocationSummary)), 36 instruction->SetLocations(this); 39 ArenaAllocator* arena = instruction->GetBlock()->GetGraph()->GetArena(); 45 Location Location::RegisterOrConstant(HInstruction* instruction) { argument 46 return instruction->IsConstant() 47 ? Location::ConstantLocation(instruction->AsConstant()) 51 Location Location::RegisterOrInt32Constant(HInstruction* instruction) { argument 62 FpuRegisterOrInt32Constant(HInstruction* instruction) argument 73 ByteRegisterOrConstant(int reg, HInstruction* instruction) argument 79 FpuRegisterOrConstant(HInstruction* instruction) argument [all...] |
H A D | instruction_simplifier.cc | 47 bool TryReplaceWithRotate(HBinaryOperation* instruction); 65 void VisitTypeConversion(HTypeConversion* instruction) OVERRIDE; 66 void VisitNullCheck(HNullCheck* instruction) OVERRIDE; 67 void VisitArrayLength(HArrayLength* instruction) OVERRIDE; 68 void VisitCheckCast(HCheckCast* instruction) OVERRIDE; 69 void VisitAdd(HAdd* instruction) OVERRIDE; 70 void VisitAnd(HAnd* instruction) OVERRIDE; 71 void VisitCondition(HCondition* instruction) OVERRIDE; 80 void VisitDiv(HDiv* instruction) OVERRIDE; 81 void VisitMul(HMul* instruction) OVERRID 235 VisitShift(HBinaryOperation* instruction) argument 495 VisitInstanceOf(HInstanceOf* instruction) argument 543 VisitInstanceFieldSet(HInstanceFieldSet* instruction) argument 550 VisitStaticFieldSet(HStaticFieldSet* instruction) argument 724 VisitIf(HIf* instruction) argument 734 VisitArrayLength(HArrayLength* instruction) argument 746 VisitArraySet(HArraySet* instruction) argument 817 VisitTypeConversion(HTypeConversion* instruction) argument 895 VisitAdd(HAdd* instruction) argument 946 VisitAnd(HAnd* instruction) argument 1106 VisitDiv(HDiv* instruction) argument 1160 VisitMul(HMul* instruction) argument 1259 VisitNeg(HNeg* instruction) argument 1304 VisitNot(HNot* instruction) argument 1325 VisitOr(HOr* instruction) argument 1357 VisitShl(HShl* instruction) argument 1361 VisitShr(HShr* instruction) argument 1365 VisitSub(HSub* instruction) argument 1447 VisitUShr(HUShr* instruction) argument 1451 VisitXor(HXor* instruction) argument 1499 SimplifyStringEquals(HInvoke* instruction) argument 1563 SimplifySystemArrayCopy(HInvoke* instruction) argument 1682 VisitInvoke(HInvoke* instruction) argument [all...] |
H A D | nodes_arm64.cc | 24 void HArm64DataProcWithShifterOp::GetOpInfoFromInstruction(HInstruction* instruction, argument 27 DCHECK(CanFitInShifterOperand(instruction)); 28 if (instruction->IsShl()) { 30 *shift_amount = instruction->AsShl()->GetRight()->AsIntConstant()->GetValue(); 31 } else if (instruction->IsShr()) { 33 *shift_amount = instruction->AsShr()->GetRight()->AsIntConstant()->GetValue(); 34 } else if (instruction->IsUShr()) { 36 *shift_amount = instruction->AsUShr()->GetRight()->AsIntConstant()->GetValue(); 38 DCHECK(instruction->IsTypeConversion()); 39 Primitive::Type result_type = instruction [all...] |
H A D | instruction_simplifier_arm64.cc | 36 // HArm64IntermediateAddress instruction yet. 46 // memory access instruction, so do not split the access. 65 // Both instructions must depend on GC to prevent any instruction that can 152 // Merge a bitfield move instruction into its uses if it can be merged in all of them. 162 // Check whether we can merge the instruction in all its users' shifter operand. 173 // Merge the instruction into its uses. 185 void InstructionSimplifierArm64Visitor::VisitAnd(HAnd* instruction) { argument 186 if (TryMergeNegatedInput(instruction)) { 191 void InstructionSimplifierArm64Visitor::VisitArrayGet(HArrayGet* instruction) { argument 192 TryExtractArrayAccessAddress(instruction, 198 VisitArraySet(HArraySet* instruction) argument 205 VisitMul(HMul* instruction) argument 211 VisitOr(HOr* instruction) argument 217 VisitShl(HShl* instruction) argument 223 VisitShr(HShr* instruction) argument 229 VisitTypeConversion(HTypeConversion* instruction) argument 243 VisitUShr(HUShr* instruction) argument 249 VisitXor(HXor* instruction) argument [all...] |
H A D | instruction_builder.cc | 45 // be deleted when the first throwing instruction with the vreg undefined 49 // the first throwing instruction. 77 // Make sure there was at least one throwing instruction which initialized 168 // Vreg was undefined at a previously encountered throwing instruction 176 // This is the first instruction throwing into `catch_block` where 189 void HInstructionBuilder::AppendInstruction(HInstruction* instruction) { argument 190 current_block_->AddInstruction(instruction); 191 InitializeInstruction(instruction); 194 void HInstructionBuilder::InsertInstructionAtTop(HInstruction* instruction) { argument 196 current_block_->AddInstruction(instruction); 203 InitializeInstruction(HInstruction* instruction) argument 473 If_22t(const Instruction& instruction, uint32_t dex_pc) argument 483 If_21t(const Instruction& instruction, uint32_t dex_pc) argument 492 Unop_12x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc) argument 500 Conversion_12x(const Instruction& instruction, Primitive::Type input_type, Primitive::Type result_type, uint32_t dex_pc) argument 510 Binop_23x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc) argument 520 Binop_23x_shift(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc) argument 529 Binop_23x_cmp(const Instruction& instruction, Primitive::Type type, ComparisonBias bias, uint32_t dex_pc) argument 540 Binop_12x_shift(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc) argument 550 Binop_12x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc) argument 560 Binop_22s(const Instruction& instruction, bool reverse, uint32_t dex_pc) argument 571 Binop_22b(const Instruction& instruction, bool reverse, uint32_t dex_pc) argument 589 IsFallthroughInstruction(const Instruction& instruction, uint32_t dex_pc, HBasicBlock* block) argument 596 BuildSwitch(const Instruction& instruction, uint32_t dex_pc) argument 623 BuildReturn(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc) argument 767 BuildInvoke(const Instruction& instruction, uint32_t dex_pc, uint32_t method_idx, uint32_t number_of_vreg_arguments, bool is_range, uint32_t* args, uint32_t register_index) argument 1187 BuildInstanceFieldAccess(const Instruction& instruction, uint32_t dex_pc, bool is_put) argument 1301 BuildUnresolvedStaticFieldAccess(const Instruction& instruction, uint32_t dex_pc, bool is_put, Primitive::Type field_type) argument 1318 BuildStaticFieldAccess(const Instruction& instruction, uint32_t dex_pc, bool is_put) argument 1453 BuildArrayAccess(const Instruction& instruction, uint32_t dex_pc, bool is_put, Primitive::Type anticipated_type) argument 1535 BuildFillArrayData(const Instruction& instruction, uint32_t dex_pc) argument 1621 BuildTypeCheck(const Instruction& instruction, uint8_t destination, uint8_t reference, uint16_t type_index, uint32_t dex_pc) argument 1707 ProcessDexInstruction(const Instruction& instruction, uint32_t dex_pc) argument [all...] |
H A D | licm.cc | 22 static bool IsPhiOf(HInstruction* instruction, HBasicBlock* block) { argument 23 return instruction->IsPhi() && instruction->GetBlock() == block; 27 * Returns whether `instruction` has all its inputs and environment defined 30 static bool InputsAreDefinedBeforeLoop(HInstruction* instruction) { argument 31 DCHECK(instruction->IsInLoop()); 32 HLoopInformation* info = instruction->GetBlock()->GetLoopInformation(); 33 for (HInputIterator it(instruction); !it.Done(); it.Advance()) { 42 for (HEnvironment* environment = instruction->GetEnvironment(); 50 // We can move an instruction tha 131 HInstruction* instruction = inst_it.Current(); local [all...] |
H A D | load_store_elimination.cc | 366 ReferenceInfo* GetOrCreateReferenceInfo(HInstruction* instruction) { argument 367 ReferenceInfo* ref_info = FindReferenceInfoOf(instruction); 370 ref_info = new (GetGraph()->GetArena()) ReferenceInfo(instruction, pos); 376 void CreateReferenceInfoForReferenceType(HInstruction* instruction) { argument 377 if (instruction->GetType() != Primitive::kPrimNot) { 380 DCHECK(FindReferenceInfoOf(instruction) == nullptr); 381 GetOrCreateReferenceInfo(instruction); 415 void VisitInstanceFieldGet(HInstanceFieldGet* instruction) OVERRIDE { 416 VisitFieldAccess(instruction->InputAt(0), instruction 417 CreateReferenceInfoForReferenceType(instruction); variable 430 CreateReferenceInfoForReferenceType(instruction); variable 443 CreateReferenceInfoForReferenceType(instruction); variable 457 CreateReferenceInfoForReferenceType(instruction); variable 461 CreateReferenceInfoForReferenceType(instruction); variable 465 CreateReferenceInfoForReferenceType(instruction); variable 469 CreateReferenceInfoForReferenceType(instruction); variable 473 CreateReferenceInfoForReferenceType(instruction); variable 679 TryRemovingNullCheck(HInstruction* instruction) argument 709 VisitGetLocation(HInstruction* instruction, HInstruction* ref, size_t offset, HInstruction* index, int16_t declaring_class_def_index) argument 772 VisitSetLocation(HInstruction* instruction, HInstruction* ref, size_t offset, HInstruction* index, int16_t declaring_class_def_index, HInstruction* value) argument 948 HandleInvoke(instruction); variable 953 HandleInvoke(instruction); variable 958 HandleInvoke(instruction); variable 963 HandleInvoke(instruction); variable 993 FindSubstitute(HInstruction* instruction) argument [all...] |
H A D | graph_checker.cc | 30 static bool IsAllowedToJumpToExitBlock(HInstruction* instruction) { argument 31 return instruction->IsThrow() || instruction->IsReturn() || instruction->IsReturnVoid(); 94 // Ensure `block` ends with a branch instruction. 97 // instruction. Such code is removed during the SSA-building DCE phase. 99 AddError(StringPrintf("Block %d does not end with a branch instruction.", 111 AddError(StringPrintf("Unexpected instruction %s:%d jumps into the exit block.", 144 AddError(StringPrintf("The recorded last instruction of block %d does not match " 145 "the actual last instruction 315 VisitInstruction(HInstruction* instruction) argument 545 VisitInstanceOf(HInstanceOf* instruction) argument 837 HandleBooleanInput(HInstruction* instruction, size_t input_index) argument 861 VisitPackedSwitch(HPackedSwitch* instruction) argument 877 VisitIf(HIf* instruction) argument 882 VisitSelect(HSelect* instruction) argument 887 VisitBooleanNot(HBooleanNot* instruction) argument 922 VisitNeg(HNeg* instruction) argument 994 VisitConstant(HConstant* instruction) argument 1005 VisitBoundType(HBoundType* instruction) argument 1017 VisitTypeConversion(HTypeConversion* instruction) argument [all...] |
H A D | graph_checker.h | 50 void VisitInstruction(HInstruction* instruction) OVERRIDE; 54 void VisitBooleanNot(HBooleanNot* instruction) OVERRIDE; 55 void VisitBoundType(HBoundType* instruction) OVERRIDE; 59 void VisitConstant(HConstant* instruction) OVERRIDE; 60 void VisitDeoptimize(HDeoptimize* instruction) OVERRIDE; 61 void VisitIf(HIf* instruction) OVERRIDE; 65 void VisitNeg(HNeg* instruction) OVERRIDE; 66 void VisitPackedSwitch(HPackedSwitch* instruction) OVERRIDE; 69 void VisitSelect(HSelect* instruction) OVERRIDE; 71 void VisitTypeConversion(HTypeConversion* instruction) OVERRID [all...] |
H A D | pretty_printer.h | 29 void PrintPreInstruction(HInstruction* instruction) { argument 31 PrintInt(instruction->GetId()); 35 void VisitInstruction(HInstruction* instruction) OVERRIDE { 36 PrintPreInstruction(instruction); variable 37 PrintString(instruction->DebugName()); 38 PrintPostInstruction(instruction); variable 41 void PrintPostInstruction(HInstruction* instruction) { argument 42 if (instruction->InputCount() != 0) { 45 for (HInputIterator it(instruction); !it.Done(); it.Advance()) { 55 if (instruction [all...] |
H A D | instruction_builder.h | 79 bool ProcessDexInstruction(const Instruction& instruction, uint32_t dex_pc); 91 void UpdateLocal(uint32_t register_index, HInstruction* instruction); 93 void AppendInstruction(HInstruction* instruction); 94 void InsertInstructionAtTop(HInstruction* instruction); 95 void InitializeInstruction(HInstruction* instruction); 108 void Unop_12x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 111 void Binop_23x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 114 void Binop_23x_shift(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 116 void Binop_23x_cmp(const Instruction& instruction, 122 void Binop_12x(const Instruction& instruction, Primitiv [all...] |
H A D | instruction_simplifier_arm.h | 38 void VisitMul(HMul* instruction) OVERRIDE; 39 void VisitOr(HOr* instruction) OVERRIDE; 40 void VisitAnd(HAnd* instruction) OVERRIDE;
|
H A D | induction_var_range.cc | 48 /** Returns true for 32/64-bit constant instruction. */ 49 static bool IsIntAndGet(HInstruction* instruction, int64_t* value) { argument 50 if (instruction->IsIntConstant()) { 51 *value = instruction->AsIntConstant()->GetValue(); 53 } else if (instruction->IsLongConstant()) { 54 *value = instruction->AsLongConstant()->GetValue(); 68 v.instruction->IsDiv() && 69 v.instruction->InputAt(0)->IsArrayLength() && 70 IsIntAndGet(v.instruction->InputAt(1), &value) && v.a_constant == value) { 71 return InductionVarRange::Value(v.instruction 109 Insert(HBasicBlock* block, HInstruction* instruction) argument 126 GetInductionRange(HInstruction* context, HInstruction* instruction, Value* min_val, Value* max_val, bool* needs_finite_test) argument 190 CanGenerateCode(HInstruction* context, HInstruction* instruction, bool* needs_finite_test, bool* needs_taken_test) argument 201 GenerateRangeCode(HInstruction* context, HInstruction* instruction, HGraph* graph, HBasicBlock* block, HInstruction** lower, HInstruction** upper) argument 348 GetFetch(HInstruction* instruction, HInductionVarAnalysis::InductionInfo* trip, bool in_body, bool is_min) const argument 605 GenerateCode(HInstruction* context, HInstruction* instruction, HGraph* graph, HBasicBlock* block, HInstruction** lower, HInstruction** upper, HInstruction** taken_test, bool* needs_finite_test, bool* needs_taken_test) const argument [all...] |
H A D | code_generator_mips64.cc | 110 explicit BoundsCheckSlowPathMIPS64(HBoundsCheck* instruction) : SlowPathCodeMIPS64(instruction) {} argument 146 explicit DivZeroCheckSlowPathMIPS64(HDivZeroCheck* instruction) : SlowPathCodeMIPS64(instruction) {} argument 216 // The instruction where this slow path is happening. 231 explicit LoadStringSlowPathMIPS64(HLoadString* instruction) : SlowPathCodeMIPS64(instruction) {} argument 292 SuspendCheckSlowPathMIPS64(HSuspendCheck* instruction, HBasicBlock* successor) argument 293 : SlowPathCodeMIPS64(instruction), successor_(successor) {} 331 explicit TypeCheckSlowPathMIPS64(HInstruction* instruction) argument 382 DeoptimizationSlowPathMIPS64(HDeoptimize* instruction) argument 957 InvokeRuntime(QuickEntrypointEnum entrypoint, HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path) argument 967 InvokeRuntime(int32_t entry_point_offset, HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path) argument 992 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument 1018 HandleBinaryOp(HBinaryOperation* instruction) argument 1059 HandleBinaryOp(HBinaryOperation* instruction) argument 1258 VisitAdd(HAdd* instruction) argument 1262 VisitAdd(HAdd* instruction) argument 1266 VisitAnd(HAnd* instruction) argument 1270 VisitAnd(HAnd* instruction) argument 1274 VisitArrayGet(HArrayGet* instruction) argument 1286 VisitArrayGet(HArrayGet* instruction) argument 1421 VisitArrayLength(HArrayLength* instruction) argument 1427 VisitArrayLength(HArrayLength* instruction) argument 1436 VisitArraySet(HArraySet* instruction) argument 1457 VisitArraySet(HArraySet* instruction) argument 1521 instruction, local 1587 VisitBoundsCheck(HBoundsCheck* instruction) argument 1599 VisitBoundsCheck(HBoundsCheck* instruction) argument 1614 VisitCheckCast(HCheckCast* instruction) argument 1624 VisitCheckCast(HCheckCast* instruction) argument 1692 VisitCompare(HCompare* instruction) argument 1783 HandleCondition(HCondition* instruction) argument 1803 HandleCondition(HCondition* instruction) argument 1846 DivRemOneOrMinusOne(HBinaryOperation* instruction) argument 1875 DivRemByPowerOfTwo(HBinaryOperation* instruction) argument 1979 GenerateDivRemWithAnyConstant(HBinaryOperation* instruction) argument 2053 GenerateDivRemIntegral(HBinaryOperation* instruction) argument 2114 VisitDiv(HDiv* instruction) argument 2139 VisitDivZeroCheck(HDivZeroCheck* instruction) argument 2150 VisitDivZeroCheck(HDivZeroCheck* instruction) argument 2564 GenerateTestAndBranch(HInstruction* instruction, size_t condition_input_index, Mips64Label* true_target, Mips64Label* false_target) argument 2712 HandleFieldGet(HInstruction* instruction, const FieldInfo& field_info ATTRIBUTE_UNUSED) argument 2724 HandleFieldGet(HInstruction* instruction, const FieldInfo& field_info) argument 2772 HandleFieldSet(HInstruction* instruction, const FieldInfo& field_info ATTRIBUTE_UNUSED) argument 2784 HandleFieldSet(HInstruction* instruction, const FieldInfo& field_info, bool value_can_be_null) argument 2832 VisitInstanceFieldGet(HInstanceFieldGet* instruction) argument 2836 VisitInstanceFieldGet(HInstanceFieldGet* instruction) argument 2840 VisitInstanceFieldSet(HInstanceFieldSet* instruction) argument 2844 VisitInstanceFieldSet(HInstanceFieldSet* instruction) argument 2848 VisitInstanceOf(HInstanceOf* instruction) argument 2859 VisitInstanceOf(HInstanceOf* instruction) argument 3298 VisitMonitorOperation(HMonitorOperation* instruction) argument 3305 VisitMonitorOperation(HMonitorOperation* instruction) argument 3342 VisitMul(HMul* instruction) argument 3395 VisitNeg(HNeg* instruction) argument 3425 VisitNewArray(HNewArray* instruction) argument 3435 VisitNewArray(HNewArray* instruction) argument 3446 VisitNewInstance(HNewInstance* instruction) argument 3459 VisitNewInstance(HNewInstance* instruction) argument 3479 VisitNot(HNot* instruction) argument 3485 VisitNot(HNot* instruction) argument 3503 VisitBooleanNot(HBooleanNot* instruction) argument 3509 VisitBooleanNot(HBooleanNot* instruction) argument 3516 VisitNullCheck(HNullCheck* instruction) argument 3527 GenerateImplicitNullCheck(HNullCheck* instruction) argument 3537 GenerateExplicitNullCheck(HNullCheck* instruction) argument 3546 VisitNullCheck(HNullCheck* instruction) argument 3550 VisitOr(HOr* instruction) argument 3554 VisitOr(HOr* instruction) argument 3562 VisitParallelMove(HParallelMove* instruction) argument 3566 VisitParameterValue(HParameterValue* instruction) argument 3582 VisitCurrentMethod(HCurrentMethod* instruction) argument 3593 VisitPhi(HPhi* instruction) argument 3633 VisitRem(HRem* instruction) argument 3709 VisitSub(HSub* instruction) argument 3713 VisitSub(HSub* instruction) argument 3717 VisitStaticFieldGet(HStaticFieldGet* instruction) argument 3721 VisitStaticFieldGet(HStaticFieldGet* instruction) argument 3725 VisitStaticFieldSet(HStaticFieldSet* instruction) argument 3729 VisitStaticFieldSet(HStaticFieldSet* instruction) argument 3733 VisitUnresolvedInstanceFieldGet( HUnresolvedInstanceFieldGet* instruction) argument 3740 VisitUnresolvedInstanceFieldGet( HUnresolvedInstanceFieldGet* instruction) argument 3750 VisitUnresolvedInstanceFieldSet( HUnresolvedInstanceFieldSet* instruction) argument 3757 VisitUnresolvedInstanceFieldSet( HUnresolvedInstanceFieldSet* instruction) argument 3767 VisitUnresolvedStaticFieldGet( HUnresolvedStaticFieldGet* instruction) argument 3774 VisitUnresolvedStaticFieldGet( HUnresolvedStaticFieldGet* instruction) argument 3784 VisitUnresolvedStaticFieldSet( HUnresolvedStaticFieldSet* instruction) argument 3791 VisitUnresolvedStaticFieldSet( HUnresolvedStaticFieldSet* instruction) argument 3801 VisitSuspendCheck(HSuspendCheck* instruction) argument 3805 VisitSuspendCheck(HSuspendCheck* instruction) argument 3819 VisitThrow(HThrow* instruction) argument 3826 VisitThrow(HThrow* instruction) argument 3828 instruction, local 4032 VisitXor(HXor* instruction) argument 4036 VisitXor(HXor* instruction) argument [all...] |
H A D | code_generator_arm64.cc | 99 // There is no dex instruction or HIR that would need the missing conditions 164 // If the offset does not fit in the instruction's immediate field, use an alternate register 222 explicit BoundsCheckSlowPathARM64(HBoundsCheck* instruction) : SlowPathCodeARM64(instruction) {} argument 254 explicit DivZeroCheckSlowPathARM64(HDivZeroCheck* instruction) : SlowPathCodeARM64(instruction) {} argument 322 // The instruction where this slow path is happening. 337 explicit LoadStringSlowPathARM64(HLoadString* instruction) : SlowPathCodeARM64(instruction) {} argument 392 SuspendCheckSlowPathARM64(HSuspendCheck* instruction, HBasicBloc argument 433 TypeCheckSlowPathARM64(HInstruction* instruction, bool is_fatal) argument 490 DeoptimizationSlowPathARM64(HDeoptimize* instruction) argument 512 ArraySetSlowPathARM64(HInstruction* instruction) argument 579 ReadBarrierMarkSlowPathARM64(HInstruction* instruction, Location out, Location obj) argument 628 ReadBarrierForHeapReferenceSlowPathARM64(HInstruction* instruction, Location out, Location ref, Location obj, uint32_t offset, Location index) argument 810 ReadBarrierForRootSlowPathARM64(HInstruction* instruction, Location out, Location root) argument 1316 LoadAcquire(HInstruction* instruction, CPURegister dst, const MemOperand& src, bool needs_null_check) argument 1454 InvokeRuntime(QuickEntrypointEnum entrypoint, HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path) argument 1464 InvokeRuntime(int32_t entry_point_offset, HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path) argument 1513 GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor) argument 1600 HandleFieldGet(HInstruction* instruction) argument 1623 HandleFieldGet(HInstruction* instruction, const FieldInfo& field_info) argument 1672 HandleFieldSet(HInstruction* instruction) argument 1683 HandleFieldSet(HInstruction* instruction, const FieldInfo& field_info, bool value_can_be_null) argument 1831 VisitAdd(HAdd* instruction) argument 1835 VisitAdd(HAdd* instruction) argument 1839 VisitAnd(HAnd* instruction) argument 1843 VisitAnd(HAnd* instruction) argument 1876 VisitArm64DataProcWithShifterOp( HArm64DataProcWithShifterOp* instruction) argument 1891 VisitArm64DataProcWithShifterOp( HArm64DataProcWithShifterOp* instruction) argument 1951 VisitArm64IntermediateAddress(HArm64IntermediateAddress* instruction) argument 1962 VisitArm64IntermediateAddress( HArm64IntermediateAddress* instruction) argument 2026 VisitArrayGet(HArrayGet* instruction) argument 2048 VisitArrayGet(HArrayGet* instruction) argument 2114 VisitArrayLength(HArrayLength* instruction) argument 2120 VisitArrayLength(HArrayLength* instruction) argument 2127 VisitArraySet(HArraySet* instruction) argument 2147 VisitArraySet(HArraySet* instruction) argument 2324 VisitBoundsCheck(HBoundsCheck* instruction) argument 2336 VisitBoundsCheck(HBoundsCheck* instruction) argument 2367 GenerateFcmp(HInstruction* instruction) argument 2458 HandleCondition(HCondition* instruction) argument 2478 HandleCondition(HCondition* instruction) argument 2517 DivRemOneOrMinusOne(HBinaryOperation* instruction) argument 2540 DivRemByPowerOfTwo(HBinaryOperation* instruction) argument 2575 GenerateDivRemWithAnyConstant(HBinaryOperation* instruction) argument 2626 GenerateDivRemIntegral(HBinaryOperation* instruction) argument 2703 VisitDivZeroCheck(HDivZeroCheck* instruction) argument 2714 VisitDivZeroCheck(HDivZeroCheck* instruction) argument 2806 GenerateTestAndBranch(HInstruction* instruction, size_t condition_input_index, vixl::Label* true_target, vixl::Label* false_target) argument 3083 VisitInstanceFieldGet(HInstanceFieldGet* instruction) argument 3087 VisitInstanceFieldGet(HInstanceFieldGet* instruction) argument 3091 VisitInstanceFieldSet(HInstanceFieldSet* instruction) argument 3095 VisitInstanceFieldSet(HInstanceFieldSet* instruction) argument 3107 VisitInstanceOf(HInstanceOf* instruction) argument 3138 VisitInstanceOf(HInstanceOf* instruction) argument 3292 VisitCheckCast(HCheckCast* instruction) argument 3325 VisitCheckCast(HCheckCast* instruction) argument [all...] |
H A D | bounds_check_elimination.cc | 36 ValueBound(HInstruction* instruction, int32_t constant) { argument 37 if (instruction != nullptr && instruction->IsIntConstant()) { 38 // Normalize ValueBound with constant instruction. 39 int32_t instr_const = instruction->AsIntConstant()->GetValue(); 46 instruction_ = instruction; 66 // Return true if instruction can be expressed as "left_instruction + right_constant". 67 static bool IsAddOrSubAConstant(HInstruction* instruction, argument 72 while (instruction->IsAdd() || instruction 95 AsValueBound(HInstruction* instruction) argument 109 DetectValueBoundFromValue(HInstruction* instruction, bool* found) argument 162 HuntForDeclaration(HInstruction* instruction) argument 593 LookupValueRange(HInstruction* instruction, HBasicBlock* basic_block) argument 610 AssignRange(HBasicBlock* basic_block, HInstruction* instruction, ValueRange* range) argument 616 ApplyRangeFromComparison(HInstruction* instruction, HBasicBlock* basic_block, HBasicBlock* successor, ValueRange* range) argument 638 HandleIfBetweenTwoMonotonicValueRanges(HIf* instruction, HInstruction* left, HInstruction* right, IfCondition cond, MonotonicValueRange* left_range, MonotonicValueRange* right_range) argument 704 HandleIf(HIf* instruction, HInstruction* left, HInstruction* right, IfCondition cond) argument 912 HInstruction* instruction = phi->InputAt(1); variable 1041 FindAndHandlePartialArrayLength(HBinaryOperation* instruction) argument 1324 TryDynamicBCE(HBoundsCheck* instruction) argument 1501 GetPreHeader(HLoopInformation* loop, HInstruction* instruction) argument 1543 HoistToPreHeaderOrDeoptBlock(HLoopInformation* loop, HInstruction* instruction) argument 1641 HInstruction* instruction = it.Current(); local 1682 NewPhi(HBasicBlock* new_preheader, HInstruction* instruction, Primitive::Type type) argument 1705 ReplaceInstruction(HInstruction* instruction, HInstruction* replacement) argument [all...] |
H A D | code_generator.cc | 95 // Check that a location summary is consistent with an instruction. 96 static bool CheckTypeConsistency(HInstruction* instruction) { argument 97 LocationSummary* locations = instruction->GetLocations(); 104 DCHECK(CheckType(instruction->GetType(), locations->InAt(0))) 105 << instruction->GetType() 108 DCHECK(CheckType(instruction->GetType(), locations->Out())) 109 << instruction->GetType() 113 for (size_t i = 0, e = instruction->InputCount(); i < e; ++i) { 114 DCHECK(CheckType(instruction->InputAt(i)->GetType(), locations->InAt(i))) 115 << instruction 166 DisassemblyScope(HInstruction* instruction, const CodeGenerator& codegen) argument 528 AllocateLocations(HInstruction* instruction) argument 667 const Instruction& instruction = *Instruction::At(code_ptr); local 699 RecordPcInfo(HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path) argument 820 MaybeRecordNativeDebugInfo(HInstruction* instruction, uint32_t dex_pc, SlowPathCode* slow_path) argument 1110 GenerateNullCheck(HNullCheck* instruction) argument 1151 ValidateInvokeRuntime(HInstruction* instruction, SlowPathCode* slow_path) argument [all...] |
H A D | graph_visualizer.cc | 332 void VisitParallelMove(HParallelMove* instruction) OVERRIDE { 333 StartAttributeStream("liveness") << instruction->GetLifetimePosition(); 335 for (size_t i = 0, e = instruction->NumMoves(); i < e; ++i) { 336 MoveOperands* move = instruction->MoveOperandsAt(i); 345 void VisitIntConstant(HIntConstant* instruction) OVERRIDE { 346 StartAttributeStream() << instruction->GetValue(); 349 void VisitLongConstant(HLongConstant* instruction) OVERRIDE { 350 StartAttributeStream() << instruction->GetValue(); 353 void VisitFloatConstant(HFloatConstant* instruction) OVERRIDE { 354 StartAttributeStream() << instruction 493 PrintInstruction(HInstruction* instruction) argument 607 HInstruction* instruction = it.Current(); local 734 HInstruction* instruction = it.Current(); variable [all...] |
H A D | code_generator_arm64.h | 70 explicit SlowPathCodeARM64(HInstruction* instruction) argument 71 : SlowPathCode(instruction), entry_label_(), exit_label_() {} 204 void VisitInstruction(HInstruction* instruction) OVERRIDE { 205 LOG(FATAL) << "Unreachable instruction " << instruction->DebugName() 206 << " (id " << instruction->GetId() << ")"; 214 void GenerateSuspendCheck(HSuspendCheck* instruction, HBasicBlock* successor); 217 void HandleFieldSet(HInstruction* instruction, 220 void HandleFieldGet(HInstruction* instruction, const FieldInfo& field_info); 221 void HandleCondition(HCondition* instruction); [all...] |
/art/runtime/interpreter/mterp/mips64/ |
H A D | fcvtFooter.S | 3 * from or to a floating-point type and jumps to the next instruction. 18 GOTO_OPCODE v0 # jump to next instruction
|
H A D | op_nop.S | 3 GOTO_OPCODE v0 # jump to next instruction
|
/art/runtime/interpreter/mterp/mips/ |
H A D | op_nop.S | 3 GOTO_OPCODE(t0) # jump to next instruction
|