/art/compiler/dex/ |
D | dex_to_dex_compiler.cc | 46 QuickenedInfo(uint32_t pc, uint16_t index) : dex_pc(pc), dex_member_index(index) {} in QuickenedInfo() 48 uint32_t dex_pc; member 76 void CompileReturnVoid(Instruction* inst, uint32_t dex_pc); 81 Instruction* CompileCheckCast(Instruction* inst, uint32_t dex_pc); 89 void CompileInstanceFieldAccess(Instruction* inst, uint32_t dex_pc, 98 void CompileInvokeVirtual(Instruction* inst, uint32_t dex_pc, 117 const uint32_t dex_pc = it.CurrentDexPc(); in Compile() local 120 CompileReturnVoid(inst, dex_pc); in Compile() 124 inst = CompileCheckCast(inst, dex_pc); in Compile() 133 CompileInstanceFieldAccess(inst, dex_pc, Instruction::IGET_QUICK, false); in Compile() [all …]
|
D | verified_method.cc | 75 uint32_t dex_pc = inst->GetDexPc(code_item->insns_); in GenerateSafeCastSet() local 76 if (!method_verifier->GetInstructionFlags(dex_pc).IsVisited()) { in GenerateSafeCastSet() 80 const verifier::RegisterLine* line = method_verifier->GetRegLine(dex_pc); in GenerateSafeCastSet() 104 DCHECK(safe_cast_set_->empty() || safe_cast_set_->back() < dex_pc); in GenerateSafeCastSet() 105 safe_cast_set_->push_back(dex_pc); in GenerateSafeCastSet()
|
/art/dexdump/ |
D | dexdump_cfg.cc | 42 for (uint32_t dex_pc = 0; in dumpMethodCFGImpl() local 43 dex_pc < code_item->insns_size_in_code_units_; in dumpMethodCFGImpl() 44 dex_pc += inst->SizeInCodeUnits(), inst = inst->Next()) { in dumpMethodCFGImpl() 46 dex_pc_is_branch_target.insert(dex_pc + inst->GetTargetOffset()); in dumpMethodCFGImpl() 48 const uint16_t* insns = code_item->insns_ + dex_pc; in dumpMethodCFGImpl() 64 dex_pc_is_branch_target.insert(dex_pc + offset); in dumpMethodCFGImpl() 78 for (uint32_t dex_pc = 0; in dumpMethodCFGImpl() local 79 dex_pc < code_item->insns_size_in_code_units_; in dumpMethodCFGImpl() 80 dex_pc += inst->SizeInCodeUnits(), inst = inst->Next()) { in dumpMethodCFGImpl() 81 if (dex_pc == 0 || in dumpMethodCFGImpl() [all …]
|
/art/compiler/optimizing/ |
D | instruction_builder.cc | 37 HBasicBlock* HInstructionBuilder::FindBlockStartingAt(uint32_t dex_pc) const { in FindBlockStartingAt() 38 return block_builder_->GetBlockAt(dex_pc); in FindBlockStartingAt() 228 HInstruction* HInstructionBuilder::LoadNullCheckedLocal(uint32_t register_index, uint32_t dex_pc) { in LoadNullCheckedLocal() argument 234 HNullCheck* null_check = new (arena_) HNullCheck(ref, dex_pc); in LoadNullCheckedLocal() 327 uint32_t dex_pc = it.CurrentDexPc(); in Build() local 328 if (dex_pc != block_dex_pc && FindBlockStartingAt(dex_pc) != nullptr) { in Build() 337 if (native_debuggable && native_debug_info_locations->IsBitSet(dex_pc)) { in Build() 338 AppendInstruction(new (arena_) HNativeDebugInfo(dex_pc)); in Build() 341 if (!ProcessDexInstruction(it.CurrentInstruction(), dex_pc, quicken_index)) { in Build() 496 void HInstructionBuilder::If_22t(const Instruction& instruction, uint32_t dex_pc) { in If_22t() argument [all …]
|
D | instruction_builder.h | 87 bool ProcessDexInstruction(const Instruction& instruction, uint32_t dex_pc, size_t quicken_index); 93 HBasicBlock* FindBlockStartingAt(uint32_t dex_pc) const; 102 HInstruction* LoadNullCheckedLocal(uint32_t register_index, uint32_t dex_pc); 117 void Unop_12x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 120 void Binop_23x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 123 void Binop_23x_shift(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 128 uint32_t dex_pc); 131 void Binop_12x(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 134 void Binop_12x_shift(const Instruction& instruction, Primitive::Type type, uint32_t dex_pc); 137 void Binop_22b(const Instruction& instruction, bool reverse, uint32_t dex_pc); [all …]
|
D | nodes_vector.h | 71 uint32_t dex_pc) in HVecOperation() argument 73 dex_pc, in HVecOperation() 140 uint32_t dex_pc) in HVecUnaryOperation() argument 146 dex_pc) { in HVecUnaryOperation() 166 uint32_t dex_pc) in HVecBinaryOperation() argument 172 dex_pc) { in HVecBinaryOperation() 196 uint32_t dex_pc) in HVecMemoryOperation() argument 197 : HVecOperation(arena, packed_type, side_effects, number_of_inputs, vector_length, dex_pc), in HVecMemoryOperation() 253 uint32_t dex_pc = kNoDexPc) 254 : HVecUnaryOperation(arena, scalar, packed_type, vector_length, dex_pc) { in HVecUnaryOperation() argument [all …]
|
D | block_builder.cc | 24 HBasicBlock* HBasicBlockBuilder::MaybeCreateBlockAt(uint32_t dex_pc) { in MaybeCreateBlockAt() argument 25 return MaybeCreateBlockAt(dex_pc, dex_pc); in MaybeCreateBlockAt() 80 uint32_t dex_pc = it.CurrentDexPc(); in CreateBranchTargets() local 85 MaybeCreateBlockAt(dex_pc + instruction.GetTargetOffset()); in CreateBranchTargets() 87 DexSwitchTable table(instruction, dex_pc); in CreateBranchTargets() 89 MaybeCreateBlockAt(dex_pc + s_it.CurrentTargetOffset()); in CreateBranchTargets() 97 MaybeCreateBlockAt(dex_pc, s_it.GetDexPcForCurrentIndex()); in CreateBranchTargets() 113 MaybeCreateBlockAt(dex_pc + it.CurrentInstruction().SizeInCodeUnits()); in CreateBranchTargets() 130 uint32_t dex_pc = it.CurrentDexPc(); in ConnectBasicBlocks() local 133 HBasicBlock* next_block = GetBlockAt(dex_pc); in ConnectBasicBlocks() [all …]
|
D | block_builder.h | 50 HBasicBlock* GetBlockAt(uint32_t dex_pc) const { return branch_targets_[dex_pc]; } in GetBlockAt() argument 52 size_t GetQuickenIndex(uint32_t dex_pc) const; 56 HBasicBlock* MaybeCreateBlockAt(uint32_t dex_pc);
|
D | nodes_shared.h | 34 uint32_t dex_pc = kNoDexPc) 35 : HExpression(type, SideEffects::None(), dex_pc), op_kind_(op) { in HExpression() argument 67 uint32_t dex_pc = kNoDexPc) 68 : HBinaryOperation(result_type, left, right, SideEffects::None(), dex_pc), in HBinaryOperation() argument 129 HIntermediateAddress(HInstruction* base_address, HInstruction* offset, uint32_t dex_pc) in HIntermediateAddress() argument 130 : HExpression(Primitive::kPrimInt, SideEffects::DependsOnGC(), dex_pc) { in HIntermediateAddress() 173 HInstruction* index, HInstruction* offset, HInstruction* shift, uint32_t dex_pc) in HIntermediateAddressIndex() argument 174 : HExpression(Primitive::kPrimInt, SideEffects::None(), dex_pc) { in HIntermediateAddressIndex() 222 uint32_t dex_pc = kNoDexPc) 223 : HExpression(instr->GetType(), SideEffects::None(), dex_pc),
|
D | nodes.h | 513 HConstant* GetConstant(Primitive::Type type, int64_t value, uint32_t dex_pc = kNoDexPc); 518 HNullConstant* GetNullConstant(uint32_t dex_pc = kNoDexPc); 520 HIntConstant* GetIntConstant(int32_t value, uint32_t dex_pc = kNoDexPc) { 521 return CreateConstant(value, &cached_int_constants_, dex_pc); 523 HLongConstant* GetLongConstant(int64_t value, uint32_t dex_pc = kNoDexPc) { 524 return CreateConstant(value, &cached_long_constants_, dex_pc); 526 HFloatConstant* GetFloatConstant(float value, uint32_t dex_pc = kNoDexPc) { 527 return CreateConstant(bit_cast<int32_t, float>(value), &cached_float_constants_, dex_pc); 529 HDoubleConstant* GetDoubleConstant(double value, uint32_t dex_pc = kNoDexPc) { 530 return CreateConstant(bit_cast<int64_t, double>(value), &cached_double_constants_, dex_pc); [all …]
|
D | nodes_x86.h | 67 uint32_t dex_pc) in HX86FPNeg() argument 68 : HExpression(result_type, SideEffects::None(), dex_pc) { in HX86FPNeg() 91 uint32_t dex_pc) in HX86PackedSwitch() argument 92 : HTemplateInstruction(SideEffects::None(), dex_pc), in HX86PackedSwitch()
|
D | nodes_mips.h | 44 uint32_t dex_pc) in HMipsPackedSwitch() argument 45 : HTemplateInstruction(SideEffects::None(), dex_pc), in HMipsPackedSwitch()
|
D | stack_map_stream.cc | 27 void StackMapStream::BeginStackMapEntry(uint32_t dex_pc, in BeginStackMapEntry() argument 33 DCHECK_EQ(0u, current_entry_.dex_pc) << "EndStackMapEntry not called after BeginStackMapEntry"; in BeginStackMapEntry() 34 DCHECK_NE(dex_pc, static_cast<uint32_t>(-1)) << "invalid dex_pc"; in BeginStackMapEntry() 35 current_entry_.dex_pc = dex_pc; in BeginStackMapEntry() 55 dex_pc_max_ = std::max(dex_pc_max_, dex_pc); in BeginStackMapEntry() 106 uint32_t dex_pc, in BeginInlineInfoEntry() argument 114 if (dex_pc != static_cast<uint32_t>(-1) && kIsDebugBuild) { in BeginInlineInfoEntry() 120 current_inline_info_.dex_pc = dex_pc; in BeginInlineInfoEntry() 259 if (inline_entry.dex_pc != DexFile::kDexNoIndex && in ComputeInlineInfoEncoding() 260 (dex_pc_max == DexFile::kDexNoIndex || dex_pc_max < inline_entry.dex_pc)) { in ComputeInlineInfoEncoding() [all …]
|
D | stack_map_stream.h | 113 uint32_t dex_pc; member 129 uint32_t dex_pc; // DexFile::kDexNoIndex for intrinsified native methods. member 137 void BeginStackMapEntry(uint32_t dex_pc, 150 uint32_t dex_pc,
|
/art/runtime/jit/ |
D | profiling_info.cc | 50 uint32_t dex_pc = 0; in Create() local 61 entries.push_back(dex_pc); in Create() 67 dex_pc += instruction.SizeInCodeUnits(); in Create() 79 InlineCache* ProfilingInfo::GetInlineCache(uint32_t dex_pc) { in GetInlineCache() argument 82 if (cache_[i].dex_pc_ == dex_pc) { in GetInlineCache() 86 LOG(FATAL) << "No inline cache found for " << ArtMethod::PrettyMethod(method_) << "@" << dex_pc; in GetInlineCache() 90 void ProfilingInfo::AddInvokeInfo(uint32_t dex_pc, mirror::Class* cls) { in AddInvokeInfo() argument 91 InlineCache* cache = GetInlineCache(dex_pc); in AddInvokeInfo()
|
D | profile_compilation_info_test.cc | 137 for (uint16_t dex_pc = 0; dex_pc < 11; dex_pc++) { in SaveProfilingInfoWithFakeInlineCaches() local 140 caches.emplace_back(dex_pc, /*is_missing_types*/false, classes); in SaveProfilingInfoWithFakeInlineCaches() 143 for (uint16_t dex_pc = 11; dex_pc < 22; dex_pc++) { in SaveProfilingInfoWithFakeInlineCaches() local 148 caches.emplace_back(dex_pc, /*is_missing_types*/false, classes); in SaveProfilingInfoWithFakeInlineCaches() 151 for (uint16_t dex_pc = 22; dex_pc < 33; dex_pc++) { in SaveProfilingInfoWithFakeInlineCaches() local 156 caches.emplace_back(dex_pc, /*is_missing_types*/false, classes); in SaveProfilingInfoWithFakeInlineCaches() 159 for (uint16_t dex_pc = 33; dex_pc < 44; dex_pc++) { in SaveProfilingInfoWithFakeInlineCaches() local 161 caches.emplace_back(dex_pc, /*is_missing_types*/true, classes); in SaveProfilingInfoWithFakeInlineCaches() 191 inline_cache.dex_pc, ProfileCompilationInfo::DexPcData(arena_.get()))->second; in ConvertProfileMethodInfo() 217 for (uint16_t dex_pc = 0; dex_pc < 11; dex_pc++) { in GetOfflineProfileMethodInfo() local [all …]
|
/art/runtime/ |
D | instrumentation.h | 69 uint32_t dex_pc) REQUIRES_SHARED(Locks::mutator_lock_) = 0; 74 uint32_t dex_pc, 84 uint32_t dex_pc, 93 uint32_t dex_pc) 107 uint32_t dex_pc, 113 uint32_t dex_pc, 122 uint32_t dex_pc, 135 uint32_t dex_pc, 143 uint32_t dex_pc, 351 ArtMethod* method, uint32_t dex_pc) const in MethodEnterEvent() argument [all …]
|
D | oat_quick_method_header.cc | 66 const uint32_t dex_pc, in ToNativeQuickPc() argument 80 LIKELY(is_for_catch_handler) ? code_info.GetCatchStackMapForDexPc(dex_pc, encoding) in ToNativeQuickPc() 81 : code_info.GetStackMapForDexPc(dex_pc, encoding); in ToNativeQuickPc() 88 LOG(FATAL) << "Failed to find native offset for dex pc 0x" << std::hex << dex_pc in ToNativeQuickPc()
|
D | instrumentation.cc | 54 uint32_t dex_pc, in MethodExited() argument 60 MethodExited(thread, this_object, method, dex_pc, v); in MethodExited() 66 uint32_t dex_pc, in FieldWritten() argument 72 FieldWritten(thread, this_object, method, dex_pc, field, v); in FieldWritten() 330 uint32_t dex_pc = visitor.dex_pcs_.back(); in InstrumentationInstallStack() local 333 instrumentation->MethodEnterEvent(thread, (*isi).this_object_, (*isi).method_, dex_pc); in InstrumentationInstallStack() 949 uint32_t dex_pc) const { in MethodEnterEventImpl() 956 listener->MethodEntered(thread, thiz, method, dex_pc); in MethodEnterEventImpl() 965 uint32_t dex_pc, in MethodExitEventImpl() argument 975 listener->MethodExited(thread, thiz, method, dex_pc, return_value); in MethodExitEventImpl() [all …]
|
D | bytecode_utils.h | 58 DexSwitchTable(const Instruction& instruction, uint32_t dex_pc) in DexSwitchTable() argument 60 dex_pc_(dex_pc), in DexSwitchTable() 167 inline const Instruction& GetDexInstructionAt(const DexFile::CodeItem& code_item, uint32_t dex_pc) { in GetDexInstructionAt() argument 168 return CodeItemIterator(code_item, dex_pc).CurrentInstruction(); in GetDexInstructionAt()
|
D | trace.h | 146 uint32_t dex_pc) 152 uint32_t dex_pc, 159 uint32_t dex_pc) 171 uint32_t dex_pc, 177 uint32_t dex_pc, 186 uint32_t dex_pc, 192 uint32_t dex_pc,
|
D | instrumentation_test.cc | 58 uint32_t dex_pc ATTRIBUTE_UNUSED) in MethodEntered() 66 uint32_t dex_pc ATTRIBUTE_UNUSED, in MethodExited() 75 uint32_t dex_pc ATTRIBUTE_UNUSED, in MethodExited() 84 uint32_t dex_pc ATTRIBUTE_UNUSED) in MethodUnwind() 100 uint32_t dex_pc ATTRIBUTE_UNUSED, in FieldRead() 109 uint32_t dex_pc ATTRIBUTE_UNUSED, in FieldWritten() 119 uint32_t dex_pc ATTRIBUTE_UNUSED, in FieldWritten() 134 uint32_t dex_pc ATTRIBUTE_UNUSED, in Branch() 143 uint32_t dex_pc ATTRIBUTE_UNUSED, in InvokeVirtualOrInterface() 376 uint32_t dex_pc) in ReportEvent() argument [all …]
|
/art/runtime/interpreter/ |
D | shadow_frame.h | 60 ArtMethod* method, uint32_t dex_pc) { in CreateDeoptimizedFrame() argument 62 return CreateShadowFrameImpl(num_vregs, link, method, dex_pc, memory); in CreateDeoptimizedFrame() 74 #define CREATE_SHADOW_FRAME(num_vregs, link, method, dex_pc) ({ \ argument 78 ShadowFrame::CreateShadowFrameImpl((num_vregs), (link), (method), (dex_pc), \ 114 void SetDexPC(uint32_t dex_pc) { in SetDexPC() argument 115 dex_pc_ = dex_pc; in SetDexPC() 347 uint32_t dex_pc, in CreateShadowFrameImpl() argument 349 return new (memory) ShadowFrame(num_vregs, link, method, dex_pc, true); in CreateShadowFrameImpl() 366 uint32_t dex_pc, bool has_reference_array) in ShadowFrame() argument 373 dex_pc_(dex_pc), in ShadowFrame()
|
/art/test/004-ReferenceMap/ |
D | stack_walk_refmap_jni.cc | 23 #define CHECK_REGS_CONTAIN_REFS(dex_pc, abort_if_not_found, ...) do { \ argument 28 dex_pc, \
|
/art/runtime/verifier/ |
D | method_verifier-inl.h | 33 inline RegisterLine* MethodVerifier::GetRegLine(uint32_t dex_pc) { in GetRegLine() argument 34 return reg_table_.GetLine(dex_pc); in GetRegLine()
|