Home
last modified time | relevance | path

Searched refs:instr (Results 26 – 50 of 56) sorted by relevance

123

/art/compiler/optimizing/
Dnodes_shared.h197 HDataProcWithShifterOp(HInstruction* instr,
205 : HExpression(kDataProcWithShifterOp, instr->GetType(), SideEffects::None(), dex_pc),
206 instr_kind_(instr->GetKind()), op_kind_(op),
207 shift_amount_(shift & (instr->GetType() == DataType::Type::kInt32
210 DCHECK(!instr->HasSideEffects());
Dgraph_visualizer.h66 void AddInstructionInterval(HInstruction* instr, size_t start, size_t end) { in AddInstructionInterval() argument
67 instruction_intervals_.Put(instr, {start, end}); in AddInstructionInterval()
Dscheduler_test.cc128 for (HInstruction* instr : block_instructions) { in TestBuildDependencyGraphAndSchedule()
129 block1->AddInstruction(instr); in TestBuildDependencyGraphAndSchedule()
145 for (HInstruction* instr : ReverseRange(block_instructions)) { in TestBuildDependencyGraphAndSchedule()
146 scheduling_graph.AddNode(instr); in TestBuildDependencyGraphAndSchedule()
272 for (HInstruction* instr : block_instructions) { in TestDependencyGraphOnAliasingArrayAccesses()
273 entry->AddInstruction(instr); in TestDependencyGraphOnAliasingArrayAccesses()
281 for (HInstruction* instr : ReverseRange(block_instructions)) { in TestDependencyGraphOnAliasingArrayAccesses()
284 scheduling_graph.AddNode(instr); in TestDependencyGraphOnAliasingArrayAccesses()
Dscheduler.cc155 const HInstruction* instr) const { in FieldAccessHeapLocation()
156 DCHECK(instr != nullptr); in FieldAccessHeapLocation()
157 DCHECK(GetFieldInfo(instr) != nullptr); in FieldAccessHeapLocation()
160 size_t heap_loc = heap_location_collector_->GetFieldHeapLocation(instr->InputAt(0), in FieldAccessHeapLocation()
161 GetFieldInfo(instr)); in FieldAccessHeapLocation()
791 bool HScheduler::IsSchedulingBarrier(const HInstruction* instr) const { in IsSchedulingBarrier()
792 return instr->IsControlFlow() || in IsSchedulingBarrier()
794 instr->IsParameterValue() || in IsSchedulingBarrier()
796 instr->IsSuspendCheck(); in IsSchedulingBarrier()
Dgraph_test.cc39 HInstruction* instr = graph->GetIntConstant(4); in CreateIfBlock() local
40 HInstruction* equal = new (GetAllocator()) HEqual(instr, instr); in CreateIfBlock()
42 instr = new (GetAllocator()) HIf(equal); in CreateIfBlock()
43 if_block->AddInstruction(instr); in CreateIfBlock()
Dsuperblock_cloner.cc42 static bool IsUsedOutsideRegion(const HInstruction* instr, const HBasicBlockSet& bb_set) { in IsUsedOutsideRegion() argument
43 auto& uses = instr->GetUses(); in IsUsedOutsideRegion()
51 auto& env_uses = instr->GetEnvUses(); in IsUsedOutsideRegion()
574 HInstruction* instr = it.Current(); in CollectLiveOutsAndCheckClonable() local
575 DCHECK(instr->IsClonable()); in CollectLiveOutsAndCheckClonable()
577 if (IsUsedOutsideRegion(instr, orig_bb_set_)) { in CollectLiveOutsAndCheckClonable()
578 live_outs->FindOrAdd(instr, instr); in CollectLiveOutsAndCheckClonable()
583 HInstruction* instr = it.Current(); in CollectLiveOutsAndCheckClonable() local
584 if (!instr->IsClonable()) { in CollectLiveOutsAndCheckClonable()
588 if (IsUsedOutsideRegion(instr, orig_bb_set_)) { in CollectLiveOutsAndCheckClonable()
[all …]
Dcode_generator_arm64.h291 void Visit##name(H##name* instr) override;
321 void HandleBinaryOp(HBinaryOperation* instr);
363 void HandleShift(HBinaryOperation* instr);
413 void Visit##name(H##name* instr) override;
427 void HandleBinaryOp(HBinaryOperation* instr);
430 void HandleInvoke(HInvoke* instr);
432 void HandleShift(HBinaryOperation* instr);
446 void Visit##name(H##name* instr) override;
466 void Visit##name(H##name* instr) override;
479 void Visit##name(H##name* instr) override;
[all …]
Dcode_generator_arm64.cc397 explicit NullCheckSlowPathARM64(HNullCheck* instr) : SlowPathCodeARM64(instr) {} in NullCheckSlowPathARM64() argument
1955 void LocationsBuilderARM64::HandleBinaryOp(HBinaryOperation* instr) { in HandleBinaryOp() argument
1956 DCHECK_EQ(instr->InputCount(), 2U); in HandleBinaryOp()
1957 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instr); in HandleBinaryOp()
1958 DataType::Type type = instr->GetResultType(); in HandleBinaryOp()
1963 locations->SetInAt(1, ARM64EncodableConstantOrRegister(instr->InputAt(1), instr)); in HandleBinaryOp()
1975 LOG(FATAL) << "Unexpected " << instr->DebugName() << " type " << type; in HandleBinaryOp()
2117 void InstructionCodeGeneratorARM64::HandleBinaryOp(HBinaryOperation* instr) { in HandleBinaryOp() argument
2118 DataType::Type type = instr->GetType(); in HandleBinaryOp()
2123 Register dst = OutputRegister(instr); in HandleBinaryOp()
[all …]
Dcode_generator_arm_vixl.h291 void Visit##name(H##name* instr) override;
329 void Visit##name(H##name* instr) override;
784 void MaybeRecordImplicitNullCheck(HInstruction* instr) final { in MaybeRecordImplicitNullCheck() argument
790 CodeGenerator::MaybeRecordImplicitNullCheck(instr); in MaybeRecordImplicitNullCheck()
Dnodes.cc3000 HInstruction* ReplaceInstrOrPhiByClone(HInstruction* instr) { in ReplaceInstrOrPhiByClone() argument
3001 HInstruction* clone = instr->Clone(instr->GetBlock()->GetGraph()->GetAllocator()); in ReplaceInstrOrPhiByClone()
3002 HBasicBlock* block = instr->GetBlock(); in ReplaceInstrOrPhiByClone()
3004 if (instr->IsPhi()) { in ReplaceInstrOrPhiByClone()
3005 HPhi* phi = instr->AsPhi(); in ReplaceInstrOrPhiByClone()
3010 block->ReplaceAndRemoveInstructionWith(instr, clone); in ReplaceInstrOrPhiByClone()
3011 if (instr->HasEnvironment()) { in ReplaceInstrOrPhiByClone()
3012 clone->CopyEnvironmentFrom(instr->GetEnvironment()); in ReplaceInstrOrPhiByClone()
3014 if (instr->IsSuspendCheck() && loop_info != nullptr) { in ReplaceInstrOrPhiByClone()
Dcode_generator_x86.h181 void Visit##name(H##name* instr) override;
215 void Visit##name(H##name* instr) override;
Dcode_generator_x86_64.h185 void Visit##name(H##name* instr) override;
219 void Visit##name(H##name* instr) override;
Dloop_optimization.cc380 for (HInstruction* instr : *iset) { in CheckInductionSetFullyRemoved()
381 if (instr->GetBlock() != nullptr || in CheckInductionSetFullyRemoved()
382 !instr->GetUses().empty() || in CheckInductionSetFullyRemoved()
383 !instr->GetEnvUses().empty() || in CheckInductionSetFullyRemoved()
384 HasEnvironmentUsedByOthers(instr)) { in CheckInductionSetFullyRemoved()
Dintrinsics_arm_vixl.cc2550 static void GenBitCount(HInvoke* instr, DataType::Type type, ArmVIXLAssembler* assembler) { in GenBitCount() argument
2552 DCHECK_EQ(instr->GetType(), DataType::Type::kInt32); in GenBitCount()
2553 DCHECK_EQ(DataType::Kind(instr->InputAt(0)->GetType()), type); in GenBitCount()
2556 LocationSummary* locations = instr->GetLocations(); in GenBitCount()
2562 vixl32::Register out_r = OutputRegister(instr); in GenBitCount()
Dintrinsics_arm64.cc363 static void GenBitCount(HInvoke* instr, DataType::Type type, MacroAssembler* masm) { in GenBitCount() argument
365 DCHECK_EQ(instr->GetType(), DataType::Type::kInt32); in GenBitCount()
366 DCHECK_EQ(DataType::Kind(instr->InputAt(0)->GetType()), type); in GenBitCount()
370 Register src = InputRegisterAt(instr, 0); in GenBitCount()
371 Register dst = RegisterFrom(instr->GetLocations()->Out(), type); in GenBitCount()
/art/runtime/interpreter/
Dinterpreter.cc527 static int16_t GetReceiverRegisterForStringInit(const Instruction* instr) { in GetReceiverRegisterForStringInit() argument
528 DCHECK(instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE || in GetReceiverRegisterForStringInit()
529 instr->Opcode() == Instruction::INVOKE_DIRECT); in GetReceiverRegisterForStringInit()
530 return (instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE) ? in GetReceiverRegisterForStringInit()
531 instr->VRegC_3rc() : instr->VRegC_35c(); in GetReceiverRegisterForStringInit()
564 const Instruction* instr = &accessor.InstructionAt(dex_pc); in EnterInterpreterFromDeoptimize() local
579 } else if (instr->Opcode() == Instruction::MONITOR_ENTER || in EnterInterpreterFromDeoptimize()
580 instr->Opcode() == Instruction::MONITOR_EXIT) { in EnterInterpreterFromDeoptimize()
587 new_dex_pc = dex_pc + instr->SizeInCodeUnits(); in EnterInterpreterFromDeoptimize()
588 } else if (instr->IsInvoke()) { in EnterInterpreterFromDeoptimize()
[all …]
Dinterpreter_common.h1030 static inline bool IsStringInit(const Instruction* instr, ArtMethod* caller) in IsStringInit() argument
1032 if (instr->Opcode() == Instruction::INVOKE_DIRECT || in IsStringInit()
1033 instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE) { in IsStringInit()
1034 uint16_t callee_method_idx = (instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE) ? in IsStringInit()
1035 instr->VRegB_3rc() : instr->VRegB_35c(); in IsStringInit()
/art/runtime/arch/arm/
Dfault_handler_arm.cc42 uint16_t instr = pc[0] | pc[1] << 8; in GetInstructionSize() local
43 bool is_32bit = ((instr & 0xF000) == 0xF000) || ((instr & 0xF800) == 0xE800); in GetInstructionSize()
/art/runtime/entrypoints/quick/
Dquick_trampoline_entrypoints.cc856 instrumentation::Instrumentation* instr = Runtime::Current()->GetInstrumentation(); in artQuickProxyInvokeHandler() local
857 if (instr->HasMethodEntryListeners()) { in artQuickProxyInvokeHandler()
858 instr->MethodEnterEvent(soa.Self(), in artQuickProxyInvokeHandler()
863 instr->MethodUnwindEvent(self, in artQuickProxyInvokeHandler()
872 if (instr->HasMethodUnwindListeners()) { in artQuickProxyInvokeHandler()
873 instr->MethodUnwindEvent(self, in artQuickProxyInvokeHandler()
878 } else if (instr->HasMethodExitListeners()) { in artQuickProxyInvokeHandler()
879 instr->MethodExitEvent(self, in artQuickProxyInvokeHandler()
1246 const Instruction& instr = accessor.InstructionAt(dex_pc); in artQuickResolutionTrampoline() local
1247 Instruction::Code instr_code = instr.Opcode(); in artQuickResolutionTrampoline()
[all …]
/art/runtime/interpreter/mterp/
Dnterp.cc41 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); in CanRuntimeUseNterp() local
46 return IsNterpSupported() && CanUseMterp() && !instr->InterpretOnly(); in CanRuntimeUseNterp()
/art/dexdump/
Ddexdump.cc982 const u2 instr = get2LE((const u1*) &accessor.Insns()[insnIdx]); in dumpInstruction() local
983 if (instr == Instruction::kPackedSwitchSignature) { in dumpInstruction()
985 } else if (instr == Instruction::kSparseSwitchSignature) { in dumpInstruction()
987 } else if (instr == Instruction::kArrayDataSignature) { in dumpInstruction()
/art/dexlayout/
Ddexlayout.cc838 const uint16_t instr = Get2LE((const uint8_t*) &insns[insn_idx]); in DumpInstruction() local
839 if (instr == Instruction::kPackedSwitchSignature) { in DumpInstruction()
841 } else if (instr == Instruction::kSparseSwitchSignature) { in DumpInstruction()
843 } else if (instr == Instruction::kArrayDataSignature) { in DumpInstruction()
/art/runtime/
Dinstrumentation.cc1455 const Instruction& instr = m->DexInstructions().InstructionAt(stack_visitor->GetDexPc()); in GetRuntimeMethodShorty()
1456 if (instr.IsInvoke()) { in GetRuntimeMethodShorty()
1474 uint16_t method_index = get_method_index_fn(m, instr, stack_visitor->GetDexPc()); in GetRuntimeMethodShorty()
/art/openjdkjvmti/
Devents.cc1238 art::instrumentation::Instrumentation* instr = art::Runtime::Current()->GetInstrumentation(); in SetupTraceListener() local
1241 instr->AddListener(listener, new_events); in SetupTraceListener()
1243 instr->RemoveListener(listener, new_events); in SetupTraceListener()
/art/runtime/interpreter/mterp/arm/
Dother.S329 FETCH_ADVANCE_INST 1 @ advance to next instr, load rINST

123