/art/runtime/entrypoints/quick/ |
H A D | quick_field_entrypoints.cc | 28 extern "C" int8_t artGetByteStaticFromCode(uint32_t field_idx, ArtMethod* referrer, 32 ArtField* field = FindFieldFast(field_idx, referrer, StaticPrimitiveRead, sizeof(int8_t)); 36 field = FindFieldFromCode<StaticPrimitiveRead, true>(field_idx, referrer, self, sizeof(int8_t)); 43 extern "C" uint8_t artGetBooleanStaticFromCode(uint32_t field_idx, ArtMethod* referrer, 47 ArtField* field = FindFieldFast(field_idx, referrer, StaticPrimitiveRead, sizeof(int8_t)); 51 field = FindFieldFromCode<StaticPrimitiveRead, true>(field_idx, referrer, self, sizeof(int8_t)); 58 extern "C" int16_t artGetShortStaticFromCode(uint32_t field_idx, ArtMethod* referrer, 62 ArtField* field = FindFieldFast(field_idx, referrer, StaticPrimitiveRead, sizeof(int16_t)); 66 field = FindFieldFromCode<StaticPrimitiveRead, true>(field_idx, referrer, self, sizeof(int16_t)); 74 ArtMethod* referrer, [all...] |
/art/runtime/ |
H A D | common_throws.cc | 36 static void AddReferrerLocation(std::ostream& os, mirror::Class* referrer) 38 if (referrer != nullptr) { 39 std::string location(referrer->GetLocation()); 41 os << " (declaration of '" << PrettyDescriptor(referrer) 48 mirror::Class* referrer, const char* fmt, va_list* args = nullptr) 58 AddReferrerLocation(msg, referrer); 64 mirror::Class* referrer, const char* fmt, va_list* args = nullptr) 74 AddReferrerLocation(msg, referrer); 132 void ThrowClassFormatError(mirror::Class* referrer, const char* fmt, ...) { argument 135 ThrowException("Ljava/lang/ClassFormatError;", referrer, fm 140 ThrowIllegalAccessErrorClass(mirror::Class* referrer, mirror::Class* accessed) argument 147 ThrowIllegalAccessErrorClassForMethodDispatch(mirror::Class* referrer, mirror::Class* accessed, ArtMethod* called, InvokeType type) argument 157 ThrowIllegalAccessErrorMethod(mirror::Class* referrer, ArtMethod* accessed) argument 164 ThrowIllegalAccessErrorField(mirror::Class* referrer, ArtField* accessed) argument 171 ThrowIllegalAccessErrorFinalField(ArtMethod* referrer, ArtField* accessed) argument 180 ThrowIllegalAccessError(mirror::Class* referrer, const char* fmt, ...) argument 202 ThrowIncompatibleClassChangeError(InvokeType expected_type, InvokeType found_type, ArtMethod* method, ArtMethod* referrer) argument 212 ThrowIncompatibleClassChangeErrorClassForInterfaceDispatch(ArtMethod* interface_method, mirror::Object* this_object, ArtMethod* referrer) argument 228 ThrowIncompatibleClassChangeErrorField(ArtField* resolved_field, bool is_static, ArtMethod* referrer) argument 238 ThrowIncompatibleClassChangeError(mirror::Class* referrer, const char* fmt, ...) argument 263 ThrowLinkageError(mirror::Class* referrer, const char* fmt, ...) argument 270 ThrowWrappedLinkageError(mirror::Class* referrer, const char* fmt, ...) argument 518 ThrowVerifyError(mirror::Class* referrer, const char* fmt, ...) argument [all...] |
H A D | common_throws.h | 67 void ThrowClassFormatError(mirror::Class* referrer, const char* fmt, ...) 73 void ThrowIllegalAccessErrorClass(mirror::Class* referrer, mirror::Class* accessed) 76 void ThrowIllegalAccessErrorClassForMethodDispatch(mirror::Class* referrer, mirror::Class* accessed, 81 void ThrowIllegalAccessErrorMethod(mirror::Class* referrer, ArtMethod* accessed) 84 void ThrowIllegalAccessErrorField(mirror::Class* referrer, ArtField* accessed) 87 void ThrowIllegalAccessErrorFinalField(ArtMethod* referrer, ArtField* accessed) 90 void ThrowIllegalAccessError(mirror::Class* referrer, const char* fmt, ...) 107 ArtMethod* method, ArtMethod* referrer) 112 ArtMethod* referrer) 116 ArtMethod* referrer) [all...] |
H A D | class_linker-inl.h | 60 ArtMethod* referrer) { 61 mirror::Class* declaring_class = referrer->GetDeclaringClass(); 76 ArtMethod* referrer) { 77 mirror::Class* resolved_type = referrer->GetDexCacheResolvedType(type_idx); 79 mirror::Class* declaring_class = referrer->GetDeclaringClass(); 91 inline mirror::Class* ClassLinker::ResolveType(uint16_t type_idx, ArtField* referrer) { argument 92 mirror::Class* declaring_class = referrer->GetDeclaringClass(); 107 inline ArtMethod* ClassLinker::GetResolvedMethod(uint32_t method_idx, ArtMethod* referrer) { argument 108 ArtMethod* resolved_method = referrer->GetDexCacheResolvedMethod( 117 ArtMethod* referrer, InvokeTyp 59 ResolveString(uint32_t string_idx, ArtMethod* referrer) argument 75 ResolveType(uint16_t type_idx, ArtMethod* referrer) argument 116 ResolveMethod(Thread* self, uint32_t method_idx, ArtMethod* referrer, InvokeType type) argument 142 ResolveField(uint32_t field_idx, ArtMethod* referrer, bool is_static) argument [all...] |
H A D | class_linker.h | 187 // result in the DexCache. The referrer is used to identify the 189 mirror::String* ResolveString(uint32_t string_idx, ArtMethod* referrer) 199 // result in the DexCache. The referrer is used to identity the 201 mirror::Class* ResolveType(const DexFile& dex_file, uint16_t type_idx, mirror::Class* referrer) 205 // result in the DexCache. The referrer is used to identify the 207 mirror::Class* ResolveType(uint16_t type_idx, ArtMethod* referrer) 210 mirror::Class* ResolveType(uint16_t type_idx, ArtField* referrer) 229 Handle<mirror::ClassLoader> class_loader, ArtMethod* referrer, 233 ArtMethod* GetResolvedMethod(uint32_t method_idx, ArtMethod* referrer) 235 ArtMethod* ResolveMethod(Thread* self, uint32_t method_idx, ArtMethod* referrer, InvokeTyp [all...] |
H A D | class_linker.cc | 609 // as referrer so the used dex cache is core's one. 5310 mirror::Class* referrer) { 5312 Handle<mirror::DexCache> dex_cache(hs.NewHandle(referrer->GetDexCache())); 5313 Handle<mirror::ClassLoader> class_loader(hs.NewHandle(referrer->GetClassLoader())); 5353 ArtMethod* referrer, InvokeType type) { 5416 ThrowIncompatibleClassChangeError(type, resolved->GetInvokeType(), resolved, referrer); 5436 // If we found something, check that it can be accessed by the referrer. 5438 if (resolved != nullptr && referrer != nullptr) { 5440 mirror::Class* referring_class = referrer->GetDeclaringClass(); 5458 ThrowIncompatibleClassChangeError(type, kVirtual, resolved, referrer); 5309 ResolveType(const DexFile& dex_file, uint16_t type_idx, mirror::Class* referrer) argument 5350 ResolveMethod(const DexFile& dex_file, uint32_t method_idx, Handle<mirror::DexCache> dex_cache, Handle<mirror::ClassLoader> class_loader, ArtMethod* referrer, InvokeType type) argument 5578 MethodShorty(uint32_t method_idx, ArtMethod* referrer, uint32_t* length) argument [all...] |
/art/runtime/arch/ |
H A D | stub_test.cc | 71 // TODO: Set up a frame according to referrer's specs. 73 ArtMethod* referrer) { 84 "pushl %[referrer]\n\t" // Store referrer. 86 "addl $16, %%esp" // Pop referrer 89 : "a"(arg0), "c"(arg1), "d"(arg2), "D"(code), [referrer]"r"(referrer) 100 "mov r9, %[referrer]\n\n" 101 "str r9, [sp, #-8]!\n\t" // Push referrer, +8B padding so 16B aligned 128 [referrer] " 72 Invoke3WithReferrer(size_t arg0, size_t arg1, size_t arg2, uintptr_t code, Thread* self, ArtMethod* referrer) argument 422 Invoke3WithReferrerAndHidden(size_t arg0, size_t arg1, size_t arg2, uintptr_t code, Thread* self, ArtMethod* referrer, size_t hidden) argument 778 Invoke3UWithReferrer(size_t arg0, uint64_t arg1, uintptr_t code, Thread* self, ArtMethod* referrer) argument 1956 referrer); local 1999 referrer); local 2031 referrer); local [all...] |
/art/runtime/entrypoints/ |
H A D | entrypoint_utils-inl.h | 82 mirror::Class* referrer = method->GetDeclaringClass(); local 83 if (UNLIKELY(!referrer->CanAccess(klass))) { 84 ThrowIllegalAccessErrorClass(referrer, klass); 214 mirror::Class* referrer = method->GetDeclaringClass(); local 215 if (UNLIKELY(!referrer->CanAccess(klass))) { 216 ThrowIllegalAccessErrorClass(referrer, klass); 264 mirror::Class* referrer = method->GetDeclaringClass(); local 265 if (UNLIKELY(!referrer->CanAccess(klass))) { 266 ThrowIllegalAccessErrorClass(referrer, klass); 277 inline ArtField* FindFieldFromCode(uint32_t field_idx, ArtMethod* referrer, argument 370 FindMethodFromCode(uint32_t method_idx, mirror::Object** this_object, ArtMethod** referrer, Thread* self) argument 495 FindFieldFast(uint32_t field_idx, ArtMethod* referrer, FindFieldType type, size_t expected_size) argument 546 FindMethodFast(uint32_t method_idx, mirror::Object* this_object, ArtMethod* referrer, bool access_check, InvokeType type) argument 585 ResolveVerifyAndClinit(uint32_t type_idx, ArtMethod* referrer, Thread* self, bool can_run_clinit, bool verify_access) argument 619 ResolveStringFromCode(ArtMethod* referrer, uint32_t string_idx) argument [all...] |
H A D | entrypoint_utils.h | 136 uint32_t field_idx, ArtMethod* referrer, Thread* self, size_t expected_size) 141 uint32_t method_idx, mirror::Object** this_object, ArtMethod** referrer, Thread* self) 146 uint32_t field_idx, ArtMethod* referrer, FindFieldType type, size_t expected_size) 151 uint32_t method_idx, mirror::Object* this_object, ArtMethod* referrer, bool access_check, 156 uint32_t type_idx, ArtMethod* referrer, Thread* self, bool can_run_clinit, bool verify_access) 161 inline mirror::String* ResolveStringFromCode(ArtMethod* referrer, uint32_t string_idx)
|
H A D | entrypoint_utils.cc | 38 ArtMethod* referrer, 46 mirror::Class* klass = referrer->GetDexCacheResolvedType<false>(type_idx); 48 klass = Runtime::Current()->GetClassLinker()->ResolveType(type_idx, referrer); 67 mirror::Class* referrer_klass = referrer->GetDeclaringClass(); 79 ArtMethod* referrer, Thread* self, 82 mirror::Class* klass = CheckFilledNewArrayAlloc(type_idx, component_count, referrer, self, 99 ArtMethod* referrer, 103 mirror::Class* klass = CheckFilledNewArrayAlloc(type_idx, component_count, referrer, self, 78 CheckAndAllocArrayFromCode(uint32_t type_idx, int32_t component_count, ArtMethod* referrer, Thread* self, bool access_check, gc::AllocatorType ) argument 97 CheckAndAllocArrayFromCodeInstrumented(uint32_t type_idx, int32_t component_count, ArtMethod* referrer, Thread* self, bool access_check, gc::AllocatorType ) argument
|
/art/runtime/arch/mips/ |
H A D | quick_entrypoints_mips.S | 565 lw $a2, 0($sp) # pass referrer's Method* 711 lw $a1, 0($sp) # pass referrer's Method* 713 jal artGetBooleanStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 722 lw $a1, 0($sp) # pass referrer's Method* 724 jal artGetByteStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 734 lw $a1, 0($sp) # pass referrer's Method* 736 jal artGetCharStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 745 lw $a1, 0($sp) # pass referrer's Method* 747 jal artGetShortStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 757 lw $a1, 0($sp) # pass referrer' [all...] |
/art/runtime/arch/mips64/ |
H A D | quick_entrypoints_mips64.S | 825 ld $a2, FRAME_SIZE_REFS_ONLY_CALLEE_SAVE($sp) # pass referrer's Method* 973 ld $a1, FRAME_SIZE_REFS_ONLY_CALLEE_SAVE($sp) # pass referrer's Method* 974 jal artGetBooleanStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 985 ld $a1, FRAME_SIZE_REFS_ONLY_CALLEE_SAVE($sp) # pass referrer's Method* 986 jal artGetByteStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 997 ld $a1, FRAME_SIZE_REFS_ONLY_CALLEE_SAVE($sp) # pass referrer's Method* 998 jal artGetCharStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 1009 ld $a1, FRAME_SIZE_REFS_ONLY_CALLEE_SAVE($sp) # pass referrer's Method* 1010 jal artGetShortStaticFromCode # (uint32_t field_idx, const Method* referrer, Thread*) 1021 ld $a1, FRAME_SIZE_REFS_ONLY_CALLEE_SAVE($sp) # pass referrer' [all...] |
/art/runtime/arch/arm/ |
H A D | quick_entrypoints_arm.S | 241 // Macros taking opportunity of code similarities for downcalls with referrer for non-wide fields. 246 ldr r1, [sp, #FRAME_SIZE_REFS_ONLY_CALLEE_SAVE] @ pass referrer 248 bl \entrypoint @ (uint32_t field_idx, const Method* referrer, Thread*) 258 ldr r2, [sp, #FRAME_SIZE_REFS_ONLY_CALLEE_SAVE] @ pass referrer 260 bl \entrypoint @ (field_idx, Object*, referrer, Thread*) 270 ldr r3, [sp, #FRAME_SIZE_REFS_ONLY_CALLEE_SAVE] @ pass referrer 273 bl \entrypoint @ (field_idx, Object*, new_val, referrer, Thread*) 743 ldr r1, [sp, #FRAME_SIZE_REFS_ONLY_CALLEE_SAVE] @ pass referrer 745 bl artGet64StaticFromCode @ (uint32_t field_idx, const Method* referrer, Thread*) 769 ldr r2, [sp, #FRAME_SIZE_REFS_ONLY_CALLEE_SAVE] @ pass referrer [all...] |
/art/runtime/verifier/ |
H A D | method_verifier.cc | 3160 const RegType& referrer = GetDeclaringClass(); local 3167 << "' in " << referrer; local 3177 !referrer.IsUnresolvedTypes() && !referrer.CanAccess(result)) { 3179 << referrer << "' -> '" << result << "'"; 3247 const RegType& referrer = GetDeclaringClass(); local 3293 if (!referrer.CanAccessMember(res_method->GetDeclaringClass(), res_method->GetAccessFlags())) { 3295 << " from " << referrer << ")";
|