/art/dex2oat/driver/ |
D | compiler_driver-inl.h | 70 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()
|
D | compiler_driver.cc | 1392 ArtField* resolved_field; in ComputeInstanceFieldInfo() local 1397 resolved_field = ResolveField(soa, dex_cache, class_loader, field_idx, /* is_static= */ false); in ComputeInstanceFieldInfo() 1398 referrer_class = resolved_field != nullptr in ComputeInstanceFieldInfo() 1402 if (resolved_field != nullptr && referrer_class != nullptr) { in ComputeInstanceFieldInfo() 1404 dex_cache.Get(), referrer_class, resolved_field, field_idx); in ComputeInstanceFieldInfo() 1408 return can_link ? resolved_field : nullptr; in ComputeInstanceFieldInfo() 1415 ArtField* resolved_field = ComputeInstanceFieldInfo(field_idx, mUnit, is_put, soa); in ComputeInstanceFieldInfo() local 1417 if (resolved_field == nullptr) { in ComputeInstanceFieldInfo() 1423 *is_volatile = resolved_field->IsVolatile(); in ComputeInstanceFieldInfo() 1424 *field_offset = resolved_field->GetOffset(); in ComputeInstanceFieldInfo()
|
D | compiler_driver.h | 167 ArtField* resolved_field,
|
/art/runtime/interpreter/mterp/ |
D | nterp.cc | 324 ArtField* resolved_field = class_linker->ResolveFieldJLS(field_index, in ResolveFieldWithAccessChecks() local 327 if (resolved_field == nullptr) { in ResolveFieldWithAccessChecks() 331 ObjPtr<mirror::Class> fields_class = resolved_field->GetDeclaringClass(); in ResolveFieldWithAccessChecks() 332 if (UNLIKELY(resolved_field->IsStatic() != is_static)) { in ResolveFieldWithAccessChecks() 333 ThrowIncompatibleClassChangeErrorField(resolved_field, is_static, caller); in ResolveFieldWithAccessChecks() 338 resolved_field, in ResolveFieldWithAccessChecks() 343 if (UNLIKELY(is_put && resolved_field->IsFinal() && (fields_class != referring_class))) { in ResolveFieldWithAccessChecks() 344 ThrowIllegalAccessErrorFinalField(caller, resolved_field); in ResolveFieldWithAccessChecks() 347 return resolved_field; in ResolveFieldWithAccessChecks() 356 ArtField* resolved_field = ResolveFieldWithAccessChecks( in NterpGetStaticField() local [all …]
|
/art/runtime/entrypoints/ |
D | entrypoint_utils-inl.h | 322 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/ |
D | instruction_builder.cc | 1825 ArtField* resolved_field = ResolveField(field_index, /* is_static= */ false, is_put); in BuildInstanceFieldAccess() local 1830 HInstruction* object = (resolved_field == nullptr) in BuildInstanceFieldAccess() 1838 if (resolved_field == nullptr) { in BuildInstanceFieldAccess() 1847 uint16_t class_def_index = resolved_field->GetDeclaringClass()->GetDexClassDefIndex(); in BuildInstanceFieldAccess() 1850 resolved_field, in BuildInstanceFieldAccess() 1852 resolved_field->GetOffset(), in BuildInstanceFieldAccess() 1853 resolved_field->IsVolatile(), in BuildInstanceFieldAccess() 1862 if (resolved_field == nullptr) { in BuildInstanceFieldAccess() 1870 uint16_t class_def_index = resolved_field->GetDeclaringClass()->GetDexClassDefIndex(); in BuildInstanceFieldAccess() 1872 resolved_field, in BuildInstanceFieldAccess() [all …]
|
D | inliner.cc | 1720 ArtField* resolved_field = in CreateInstanceFieldGet() local 1722 DCHECK(resolved_field != nullptr); in CreateInstanceFieldGet() 1725 resolved_field, in CreateInstanceFieldGet() 1726 DataType::FromShorty(resolved_field->GetTypeDescriptor()[0]), in CreateInstanceFieldGet() 1727 resolved_field->GetOffset(), in CreateInstanceFieldGet() 1728 resolved_field->IsVolatile(), in CreateInstanceFieldGet() 1730 resolved_field->GetDeclaringClass()->GetDexClassDefIndex(), in CreateInstanceFieldGet() 1755 ArtField* resolved_field = in CreateInstanceFieldSet() local 1757 DCHECK(resolved_field != nullptr); in CreateInstanceFieldSet() 1761 *is_final = resolved_field->IsFinal(); in CreateInstanceFieldSet() [all …]
|
/art/runtime/ |
D | class_linker-inl.h | 439 ArtField* resolved_field = referrer->GetDexCache<kWithoutReadBarrier>()->GetResolvedField( in ResolveField() local 441 if (UNLIKELY(resolved_field == nullptr)) { in ResolveField() 446 resolved_field = ResolveField(field_idx, dex_cache, class_loader, is_static); in ResolveField() 450 return resolved_field; in ResolveField()
|
D | common_throws.h | 148 void ThrowIncompatibleClassChangeErrorField(ArtField* resolved_field,
|
D | common_throws.cc | 305 void ThrowIncompatibleClassChangeErrorField(ArtField* resolved_field, bool is_static, in ThrowIncompatibleClassChangeErrorField() argument 308 msg << "Expected '" << ArtField::PrettyField(resolved_field) << "' to be a " in ThrowIncompatibleClassChangeErrorField()
|
D | class_linker.cc | 5585 ArtField* resolved_field = dex_cache->GetResolvedField(field_idx, image_pointer_size_); in InitializeClass() local 5586 if (resolved_field == nullptr) { in InitializeClass() 5594 DCHECK_EQ(field, resolved_field); in InitializeClass()
|