Home
last modified time | relevance | path

Searched refs:resolved_field (Results 1 – 11 of 11) sorted by relevance

/art/dex2oat/driver/
Dcompiler_driver-inl.h70 ArtField* resolved_field = Runtime::Current()->GetClassLinker()->ResolveField( in ResolveField() local
72 DCHECK_EQ(resolved_field == nullptr, soa.Self()->IsExceptionPending()); in ResolveField()
73 if (UNLIKELY(resolved_field == nullptr)) { in ResolveField()
78 if (UNLIKELY(resolved_field->IsStatic() != is_static)) { in ResolveField()
83 return resolved_field; in ResolveField()
89 ArtField* resolved_field, in IsFastInstanceField() argument
91 DCHECK(!resolved_field->IsStatic()); in IsFastInstanceField()
92 ObjPtr<mirror::Class> fields_class = resolved_field->GetDeclaringClass(); in IsFastInstanceField()
95 resolved_field, in IsFastInstanceField()
98 bool fast_put = fast_get && (!resolved_field->IsFinal() || fields_class == referrer_class); in IsFastInstanceField()
Dcompiler_driver.cc1309 ArtField* resolved_field; in ComputeInstanceFieldInfo() local
1314 resolved_field = ResolveField(soa, dex_cache, class_loader, field_idx, /* is_static= */ false); in ComputeInstanceFieldInfo()
1315 referrer_class = resolved_field != nullptr in ComputeInstanceFieldInfo()
1319 if (resolved_field != nullptr && referrer_class != nullptr) { in ComputeInstanceFieldInfo()
1321 dex_cache.Get(), referrer_class, resolved_field, field_idx); in ComputeInstanceFieldInfo()
1325 return can_link ? resolved_field : nullptr; in ComputeInstanceFieldInfo()
1332 ArtField* resolved_field = ComputeInstanceFieldInfo(field_idx, mUnit, is_put, soa); in ComputeInstanceFieldInfo() local
1334 if (resolved_field == nullptr) { in ComputeInstanceFieldInfo()
1340 *is_volatile = resolved_field->IsVolatile(); in ComputeInstanceFieldInfo()
1341 *field_offset = resolved_field->GetOffset(); in ComputeInstanceFieldInfo()
Dcompiler_driver.h166 ArtField* resolved_field,
/art/runtime/interpreter/mterp/
Dnterp.cc430 ArtField* resolved_field = class_linker->ResolveFieldJLS(field_index, in ResolveFieldWithAccessChecks() local
433 if (resolved_field == nullptr) { in ResolveFieldWithAccessChecks()
437 ObjPtr<mirror::Class> fields_class = resolved_field->GetDeclaringClass(); in ResolveFieldWithAccessChecks()
438 if (UNLIKELY(resolved_field->IsStatic() != is_static)) { in ResolveFieldWithAccessChecks()
439 ThrowIncompatibleClassChangeErrorField(resolved_field, is_static, caller); in ResolveFieldWithAccessChecks()
444 resolved_field, in ResolveFieldWithAccessChecks()
449 if (UNLIKELY(is_put && resolved_field->IsFinal() && (fields_class != referring_class))) { in ResolveFieldWithAccessChecks()
450 ThrowIllegalAccessErrorFinalField(caller, resolved_field); in ResolveFieldWithAccessChecks()
453 if (resolve_field_type != 0u && resolved_field->ResolveType() == nullptr) { in ResolveFieldWithAccessChecks()
457 return resolved_field; in ResolveFieldWithAccessChecks()
[all …]
/art/runtime/entrypoints/
Dentrypoint_utils-inl.h322 ArtField* resolved_field; in FindFieldFromCode() local
336 resolved_field = class_linker->ResolveFieldJLS(field_idx, in FindFieldFromCode()
342 resolved_field = class_linker->ResolveField(field_idx, referrer, is_static); in FindFieldFromCode()
345 if (UNLIKELY(resolved_field == nullptr)) { in FindFieldFromCode()
349 ObjPtr<mirror::Class> fields_class = resolved_field->GetDeclaringClass(); in FindFieldFromCode()
351 if (UNLIKELY(resolved_field->IsStatic() != is_static)) { in FindFieldFromCode()
352 ThrowIncompatibleClassChangeErrorField(resolved_field, is_static, referrer); in FindFieldFromCode()
357 resolved_field, in FindFieldFromCode()
363 if (UNLIKELY(is_set && !resolved_field->CanBeChangedBy(referrer))) { in FindFieldFromCode()
364 ThrowIllegalAccessErrorFinalField(referrer, resolved_field); in FindFieldFromCode()
[all …]
/art/compiler/optimizing/
Dinstruction_builder.cc1941 ArtField* resolved_field = ResolveField(field_index, /* is_static= */ false, is_put); in BuildInstanceFieldAccess() local
1946 HInstruction* object = (resolved_field == nullptr) in BuildInstanceFieldAccess()
1954 if (resolved_field == nullptr) { in BuildInstanceFieldAccess()
1963 uint16_t class_def_index = resolved_field->GetDeclaringClass()->GetDexClassDefIndex(); in BuildInstanceFieldAccess()
1966 resolved_field, in BuildInstanceFieldAccess()
1968 resolved_field->GetOffset(), in BuildInstanceFieldAccess()
1969 resolved_field->IsVolatile(), in BuildInstanceFieldAccess()
1978 if (resolved_field == nullptr) { in BuildInstanceFieldAccess()
1986 uint16_t class_def_index = resolved_field->GetDeclaringClass()->GetDexClassDefIndex(); in BuildInstanceFieldAccess()
1988 resolved_field, in BuildInstanceFieldAccess()
[all …]
Dinliner.cc1623 ArtField* resolved_field = in CreateInstanceFieldGet() local
1625 DCHECK(resolved_field != nullptr); in CreateInstanceFieldGet()
1628 resolved_field, in CreateInstanceFieldGet()
1629 DataType::FromShorty(resolved_field->GetTypeDescriptor()[0]), in CreateInstanceFieldGet()
1630 resolved_field->GetOffset(), in CreateInstanceFieldGet()
1631 resolved_field->IsVolatile(), in CreateInstanceFieldGet()
1633 resolved_field->GetDeclaringClass()->GetDexClassDefIndex(), in CreateInstanceFieldGet()
1658 ArtField* resolved_field = in CreateInstanceFieldSet() local
1660 DCHECK(resolved_field != nullptr); in CreateInstanceFieldSet()
1664 *is_final = resolved_field->IsFinal(); in CreateInstanceFieldSet()
[all …]
/art/runtime/
Dclass_linker-inl.h448 ArtField* resolved_field = referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedField( in ResolveField() local
450 if (UNLIKELY(resolved_field == nullptr)) { in ResolveField()
455 resolved_field = ResolveField(field_idx, dex_cache, class_loader, is_static); in ResolveField()
459 return resolved_field; in ResolveField()
Dcommon_throws.h148 void ThrowIncompatibleClassChangeErrorField(ArtField* resolved_field,
Dcommon_throws.cc305 void ThrowIncompatibleClassChangeErrorField(ArtField* resolved_field, bool is_static, in ThrowIncompatibleClassChangeErrorField() argument
308 msg << "Expected '" << ArtField::PrettyField(resolved_field) << "' to be a " in ThrowIncompatibleClassChangeErrorField()
Dclass_linker.cc5447 ArtField* resolved_field = dex_cache->GetResolvedField(field_idx); in InitializeClass() local
5448 if (resolved_field == nullptr) { in InitializeClass()
5456 DCHECK_EQ(field, resolved_field); in InitializeClass()