Home
last modified time | relevance | path

Searched refs:field_idx (Results 1 – 25 of 39) sorted by relevance

12

/art/runtime/entrypoints/quick/
Dquick_field_entrypoints.cc35 ALWAYS_INLINE static inline ArtField* FindInstanceField(uint32_t field_idx, in FindInstanceField() argument
44 ArtField* field = FindFieldFromCode<type, kAccessCheck>(field_idx, referrer, self, size); in FindInstanceField()
71 extern "C" RetType artGet ## Kind ## StaticFromCode(uint32_t field_idx, \
77 field_idx, referrer, Static ## PrimitiveOrObject ## Read, \
83 field_idx, referrer, self, sizeof(PrimitiveType)); \
91 extern "C" RetType artGet ## Kind ## InstanceFromCode(uint32_t field_idx, \
98 field_idx, referrer, Instance ## PrimitiveOrObject ## Read, \
104 field_idx, referrer, self, sizeof(PrimitiveType), &obj); \
112 extern "C" int artSet ## Kind ## StaticFromCode(uint32_t field_idx, \
119 field_idx, referrer, Static ## PrimitiveOrObject ## Write, \
[all …]
/art/libdexfile/dex/
Ddex_instruction.cc238 uint32_t field_idx = VRegB_21c(); in DumpString() local
239 …s << opcode << " v" << static_cast<int>(VRegA_21c()) << ", " << file->PrettyField(field_idx, true) in DumpString()
240 << " // field@" << field_idx; in DumpString()
252 uint32_t field_idx = VRegB_21c(); in DumpString() local
253 …os << opcode << " v" << static_cast<int>(VRegA_21c()) << ", " << file->PrettyField(field_idx, true) in DumpString()
254 << " // field@" << field_idx; in DumpString()
278 uint32_t field_idx = VRegC_22c(); in DumpString() local
280 << file->PrettyField(field_idx, true) << " // field@" << field_idx; in DumpString()
287 uint32_t field_idx = VRegC_22c(); in DumpString() local
289 << "// offset@" << field_idx; in DumpString()
[all …]
Ddex_file.cc552 std::string DexFile::PrettyField(uint32_t field_idx, bool with_type) const { in PrettyField() argument
553 if (field_idx >= NumFieldIds()) { in PrettyField()
554 return StringPrintf("<<invalid-field-idx-%d>>", field_idx); in PrettyField()
556 const FieldId& field_id = GetFieldId(field_idx); in PrettyField()
Dtest_dex_file_builder.h141 uint32_t field_idx = 0u; in Build() local
143 entry.second = field_idx; in Build()
144 field_idx += 1u; in Build()
/art/dex2oat/driver/
Dcompiler_driver-inl.h68 uint32_t field_idx, in ResolveField() argument
71 field_idx, dex_cache, class_loader, is_static); in ResolveField()
90 uint16_t field_idx) { in IsFastInstanceField() argument
97 field_idx); in IsFastInstanceField()
Dcompiler_driver.h160 uint32_t field_idx,
168 uint16_t field_idx)
175 bool ComputeInstanceFieldInfo(uint32_t field_idx, const DexCompilationUnit* mUnit, bool is_put,
179 ArtField* ComputeInstanceFieldInfo(uint32_t field_idx,
/art/runtime/mirror/
Ddex_cache-inl.h240 inline uint32_t DexCache::FieldSlotIndex(uint32_t field_idx) { in FieldSlotIndex() argument
241 DCHECK_LT(field_idx, GetDexFile()->NumFieldIds()); in FieldSlotIndex()
242 const uint32_t slot_idx = field_idx % kDexCacheFieldCacheSize; in FieldSlotIndex()
247 inline ArtField* DexCache::GetResolvedField(uint32_t field_idx, PointerSize ptr_size) { in GetResolvedField() argument
249 auto pair = GetNativePairPtrSize(GetResolvedFields(), FieldSlotIndex(field_idx), ptr_size); in GetResolvedField()
250 return pair.GetObjectForIndex(field_idx); in GetResolvedField()
253 inline void DexCache::SetResolvedField(uint32_t field_idx, ArtField* field, PointerSize ptr_size) { in SetResolvedField() argument
256 FieldDexCachePair pair(field, field_idx); in SetResolvedField()
257 SetNativePairPtrSize(GetResolvedFields(), FieldSlotIndex(field_idx), pair, ptr_size); in SetResolvedField()
260 inline void DexCache::ClearResolvedField(uint32_t field_idx, PointerSize ptr_size) { in ClearResolvedField() argument
[all …]
Dclass-inl.h458 uint32_t field_idx) { in ResolvedFieldAccessTest() argument
464 dex::TypeIndex class_idx = dex_cache->GetDexFile()->GetFieldId(field_idx).class_idx_; in ResolvedFieldAccessTest()
531 uint32_t field_idx) { in CanAccessResolvedField() argument
532 return ResolvedFieldAccessTest<false>(access_to, field, dex_cache, field_idx); in CanAccessResolvedField()
538 uint32_t field_idx) { in CheckResolvedFieldAccess() argument
539 return ResolvedFieldAccessTest<true>(access_to, field, dex_cache, field_idx); in CheckResolvedFieldAccess()
/art/tools/dexanalyze/
Ddexanalyze_bytecode.cc273 uint32_t field_idx = types[holder_type.index_].fields_.Get(dex_field_idx); in ProcessCodeItem() local
274 ExtendPrefix(&out_reg, &field_idx); in ProcessCodeItem()
275 CHECK(InstNibbles(new_opcode, {out_reg, field_idx})); in ProcessCodeItem()
284 uint32_t field_idx = types[holder_type.index_].fields_.Get(dex_field_idx); in ProcessCodeItem() local
285 ExtendPrefix(&type_idx, &field_idx); in ProcessCodeItem()
286 CHECK(InstNibbles(new_opcode, {out_reg, receiver, type_idx, field_idx})); in ProcessCodeItem()
333 uint32_t field_idx = types[holder_type.index_].fields_.Get(dex_field_idx); in ProcessCodeItem() local
334 ExtendPrefix(&out_reg, &field_idx); in ProcessCodeItem()
335 if (InstNibbles(new_opcode, {out_reg, field_idx})) { in ProcessCodeItem()
345 uint32_t field_idx = types[holder_type.index_].fields_.Get(dex_field_idx); in ProcessCodeItem() local
[all …]
/art/compiler/dex/
Dinline_method_analyser.h56 uint16_t field_idx; member
150 uint32_t field_idx,
Dinline_method_analyser.cc599 uint32_t field_idx = instruction->VRegC_22c(); in AnalyseIGetMethod() local
626 if (!ComputeSpecialAccessorInfo(method, field_idx, false, data)) { in AnalyseIGetMethod()
668 uint32_t field_idx = instruction->VRegC_22c(); in AnalyseIPutMethod() local
694 if (!ComputeSpecialAccessorInfo(method, field_idx, true, data)) { in AnalyseIPutMethod()
708 uint32_t field_idx, in ComputeSpecialAccessorInfo() argument
716 ArtField* field = class_linker->LookupResolvedField(field_idx, method, /* is_static= */ false); in ComputeSpecialAccessorInfo()
722 if (!method_class->CanAccessResolvedField(field_class, field, dex_cache, field_idx) || in ComputeSpecialAccessorInfo()
731 result->field_idx = field_idx; in ComputeSpecialAccessorInfo()
/art/tools/veridex/
Dhidden_api_finder.h51 void CheckField(uint32_t field_idx, VeridexResolver* resolver, MethodReference ref);
/art/runtime/
Dclass_linker-inl.h419 inline ArtField* ClassLinker::LookupResolvedField(uint32_t field_idx, in LookupResolvedField() argument
425 field_idx, image_pointer_size_); in LookupResolvedField()
428 field = LookupResolvedField(field_idx, referrer->GetDexCache(), class_loader, is_static); in LookupResolvedField()
433 inline ArtField* ClassLinker::ResolveField(uint32_t field_idx, in ResolveField() argument
440 field_idx, image_pointer_size_); in ResolveField()
446 resolved_field = ResolveField(field_idx, dex_cache, class_loader, is_static); in ResolveField()
Dcommon_throws.cc651 uint16_t field_idx = method->GetIndexFromQuickening(throw_dex_pc); in ThrowNullPointerExceptionFromDexPC() local
653 CHECK_NE(field_idx, DexFile::kDexNoIndex16); in ThrowNullPointerExceptionFromDexPC()
655 field_idx, method, /* is_static= */ false); in ThrowNullPointerExceptionFromDexPC()
680 uint16_t field_idx = method->GetIndexFromQuickening(throw_dex_pc); in ThrowNullPointerExceptionFromDexPC() local
682 CHECK_NE(field_idx, DexFile::kDexNoIndex16); in ThrowNullPointerExceptionFromDexPC()
684 field_idx, method, /* is_static= */ false); in ThrowNullPointerExceptionFromDexPC()
Dclass_linker.h366 ArtField* LookupResolvedField(uint32_t field_idx, ArtMethod* referrer, bool is_static)
368 ArtField* ResolveField(uint32_t field_idx, ArtMethod* referrer, bool is_static)
376 ArtField* ResolveField(uint32_t field_idx,
387 ArtField* ResolveFieldJLS(uint32_t field_idx,
400 uint32_t field_idx,
411 uint32_t field_idx)
1064 ArtField* LookupResolvedField(uint32_t field_idx,
/art/runtime/utils/
Ddex_cache_arrays_layout-inl.h130 inline size_t DexCacheArraysLayout::FieldOffset(uint32_t field_idx) const { in FieldOffset() argument
131 uint32_t field_hash = field_idx % mirror::DexCache::kDexCacheFieldCacheSize; in FieldOffset()
Ddex_cache_arrays_layout.h98 size_t FieldOffset(uint32_t field_idx) const;
/art/runtime/verifier/
Dverifier_deps.h98 uint32_t field_idx,
175 FieldResolution(uint32_t field_idx, uint16_t access_flags, dex::StringIndex declaring_class_idx) in FieldResolution()
176 : FieldResolutionBase(field_idx, access_flags, declaring_class_idx) {} in FieldResolution()
309 uint32_t field_idx,
Dmethod_verifier.cc561 ArtField* GetInstanceField(const RegType& obj_type, int field_idx)
565 ArtField* GetStaticField(int field_idx) REQUIRES_SHARED(Locks::mutator_lock_);
758 uint16_t field_idx = method_being_verified_->GetIndexFromQuickening(work_insn_idx_); in GetFieldIdxOfFieldAccess() local
759 CHECK_NE(field_idx, DexFile::kDexNoIndex16); in GetFieldIdxOfFieldAccess()
760 return field_idx; in GetFieldIdxOfFieldAccess()
4656 ArtField* MethodVerifier<kVerifierDebug>::GetStaticField(int field_idx) { in GetStaticField() argument
4657 const dex::FieldId& field_id = dex_file_->GetFieldId(field_idx); in GetStaticField()
4662 field_idx, dex_file_->GetFieldName(field_id), in GetStaticField()
4675 ArtField* field = class_linker->ResolveFieldJLS(field_idx, dex_cache_, class_loader_); in GetStaticField()
4678 VerifierDeps::MaybeRecordFieldResolution(*dex_file_, field_idx, field); in GetStaticField()
[all …]
Dverifier_deps.cc311 uint32_t field_idx, in AddFieldResolution() argument
325 dex_deps->fields_.emplace(FieldResolution(field_idx, in AddFieldResolution()
328 field_idx, in AddFieldResolution()
551 uint32_t field_idx, in MaybeRecordFieldResolution() argument
555 thread_deps->AddFieldResolution(dex_file, field_idx, field); in MaybeRecordFieldResolution()
/art/runtime/entrypoints/
Dentrypoint_utils-inl.h313 inline ArtField* FindFieldFromCode(uint32_t field_idx, in FindFieldFromCode() argument
336 resolved_field = class_linker->ResolveFieldJLS(field_idx, in FindFieldFromCode()
342 resolved_field = class_linker->ResolveField(field_idx, referrer, is_static); in FindFieldFromCode()
359 field_idx))) { in FindFieldFromCode()
402 ArtField* FindFieldFromCode<_type, _access_check>(uint32_t field_idx, \
607 inline ArtField* FindFieldFast(uint32_t field_idx, ArtMethod* referrer, FindFieldType type, in FindFieldFast() argument
611 referrer->GetDexCache()->GetResolvedField(field_idx, kRuntimePointerSize); in FindFieldFast()
Dentrypoint_utils.h132 inline ArtField* FindFieldFromCode(uint32_t field_idx,
148 inline ArtField* FindFieldFast(uint32_t field_idx,
/art/dex2oat/dex/
Ddex_to_dex_compiler.cc433 uint32_t field_idx = GetIndexForInstruction(inst, inst->VRegC_22c()); in CompileInstanceFieldAccess() local
436 bool fast_path = driver_.ComputeInstanceFieldInfo(field_idx, &unit_, is_put, in CompileInstanceFieldAccess()
441 << " by replacing field index " << field_idx in CompileInstanceFieldAccess()
451 quickened_info_.push_back(QuickenedInfo(dex_pc, field_idx)); in CompileInstanceFieldAccess()
/art/runtime/native/
Ddalvik_system_VMRuntime.cc429 uint32_t field_idx, in PreloadDexCachesResolveField() argument
432 uint32_t slot_idx = dex_cache->FieldSlotIndex(field_idx); in PreloadDexCachesResolveField()
440 const dex::FieldId& field_id = dex_file->GetFieldId(field_idx); in PreloadDexCachesResolveField()
447 ? mirror::Class::FindStaticField(Thread::Current(), klass, dex_cache, field_idx) in PreloadDexCachesResolveField()
448 : klass->FindInstanceField(dex_cache, field_idx); in PreloadDexCachesResolveField()
452 dex_cache->SetResolvedField(field_idx, field, kRuntimePointerSize); in PreloadDexCachesResolveField()
/art/runtime/interpreter/mterp/
Dmterp.cc725 uint32_t field_idx = kIsStatic ? inst->VRegB_21c() : inst->VRegC_22c(); in MterpFieldAccessSlow() local
727 field_idx, referrer, self, sizeof(PrimType)); in MterpFieldAccessSlow()
766 uint32_t field_idx = kIsStatic ? inst->VRegB_21c() : inst->VRegC_22c(); in MterpFieldAccessFast() local
768 field_idx, shadow_frame->GetMethod(), self, sizeof(PrimType)); in MterpFieldAccessFast()
791 uint32_t field_idx = kIsStatic ? inst->VRegB_21c() : inst->VRegC_22c(); in MterpFieldAccessFast() local
792 ArtField* field = dex_cache->GetResolvedField(field_idx, kRuntimePointerSize); in MterpFieldAccessFast()
797 field_idx, referrer, self, sizeof(PrimType)))); in MterpFieldAccessFast()

12