Lines Matching refs:art
51 DCHECK(art::MemMap::kCanReplaceMapping); in InitializeMemory()
68 art::MemMap source; in InitializeMemory()
118 jvmtiError ArtClassDefinition::InitCommon(art::Thread* self, jclass klass) { in InitCommon()
119 art::ScopedObjectAccess soa(self); in InitCommon()
120 art::ObjPtr<art::mirror::Class> m_klass(soa.Decode<art::mirror::Class>(klass)); in InitCommon()
135 static void DequickenDexFile(const art::DexFile* dex_file, in DequickenDexFile()
138 REQUIRES_SHARED(art::Locks::mutator_lock_) { in DequickenDexFile()
146 static void GetDexDataForRetransformation(art::Handle<art::mirror::Class> klass, in GetDexDataForRetransformation()
148 REQUIRES_SHARED(art::Locks::mutator_lock_) { in GetDexDataForRetransformation()
149 art::StackHandleScope<3> hs(art::Thread::Current()); in GetDexDataForRetransformation()
150 art::Handle<art::mirror::ClassExt> ext(hs.NewHandle(klass->GetExtData())); in GetDexDataForRetransformation()
151 const art::DexFile* dex_file = nullptr; in GetDexDataForRetransformation()
153 art::Handle<art::mirror::Object> orig_dex(hs.NewHandle(ext->GetOriginalDexFile())); in GetDexDataForRetransformation()
157 art::Handle<art::mirror::ByteArray> orig_dex_bytes(hs.NewHandle(orig_dex->AsByteArray())); in GetDexDataForRetransformation()
167 art::ObjPtr<art::mirror::Class> prim_long_class( in GetDexDataForRetransformation()
168 art::GetClassRoot(art::ClassRoot::kPrimitiveLong)); in GetDexDataForRetransformation()
169 art::JValue val; in GetDexDataForRetransformation()
170 if (!art::UnboxPrimitiveForResult(orig_dex.Get(), prim_long_class, &val)) { in GetDexDataForRetransformation()
174 dex_file = reinterpret_cast<const art::DexFile*>(static_cast<uintptr_t>(val.GetJ())); in GetDexDataForRetransformation()
185 static bool DexNeedsDequickening(art::Handle<art::mirror::Class> klass, in DexNeedsDequickening()
187 REQUIRES_SHARED(art::Locks::mutator_lock_) { in DexNeedsDequickening()
188 art::ObjPtr<art::mirror::ClassExt> ext(klass->GetExtData()); in DexNeedsDequickening()
194 art::ObjPtr<art::mirror::Object> orig_dex(ext->GetOriginalDexFile()); in DexNeedsDequickening()
214 static const art::DexFile* GetQuickenedDexFile(art::Handle<art::mirror::Class> klass) in GetQuickenedDexFile()
215 REQUIRES_SHARED(art::Locks::mutator_lock_) { in GetQuickenedDexFile()
216 art::ObjPtr<art::mirror::ClassExt> ext(klass->GetExtData()); in GetQuickenedDexFile()
221 art::ObjPtr<art::mirror::Object> orig_dex(ext->GetOriginalDexFile()); in GetQuickenedDexFile()
230 art::ObjPtr<art::mirror::Class> prim_long_class( in GetQuickenedDexFile()
231 art::GetClassRoot(art::ClassRoot::kPrimitiveLong)); in GetQuickenedDexFile()
232 art::JValue val; in GetQuickenedDexFile()
233 if (!art::UnboxPrimitiveForResult(orig_dex.Ptr(), prim_long_class, &val)) { in GetQuickenedDexFile()
236 return reinterpret_cast<const art::DexFile*>(static_cast<uintptr_t>(val.GetJ())); in GetQuickenedDexFile()
241 const art::DexFile* quick_dex) { in InitWithDex()
242 art::Thread* self = art::Thread::Current(); in InitWithDex()
244 if (art::MemMap::kCanReplaceMapping && kEnableOnDemandDexDequicken) { in InitWithDex()
249 dex_data_mmap_ = art::MemMap::MapAnonymous(mmap_name.c_str(), in InitWithDex()
255 temp_mmap_ = art::MemMap::MapAnonymous(mmap_name.c_str(), in InitWithDex()
263 dex_data_ = art::ArrayRef<const unsigned char>(dex_data_mmap_.Begin(), in InitWithDex()
270 const art::DexFile& cur_dex = self->DecodeJObject(klass_)->AsClass()->GetDexFile(); in InitWithDex()
271 current_dex_file_ = art::ArrayRef<const unsigned char>(cur_dex.Begin(), cur_dex.Size()); in InitWithDex()
276 current_dex_file_ = art::ArrayRef<const unsigned char>(dex_data_mmap_.Begin(), in InitWithDex()
288 dex_data_ = art::ArrayRef<const unsigned char>(dex_data_memory_); in InitWithDex()
294 const art::DexFile& cur_dex = self->DecodeJObject(klass_)->AsClass()->GetDexFile(); in InitWithDex()
295 current_dex_file_ = art::ArrayRef<const unsigned char>(cur_dex.Begin(), cur_dex.Size()); in InitWithDex()
302 current_dex_file_ = art::ArrayRef<const unsigned char>(current_dex_memory_); in InitWithDex()
306 jvmtiError ArtClassDefinition::Init(art::Thread* self, jclass klass) { in Init()
311 art::ScopedObjectAccess soa(self); in Init()
312 art::StackHandleScope<1> hs(self); in Init()
313 art::Handle<art::mirror::Class> m_klass(hs.NewHandle(self->DecodeJObject(klass)->AsClass())); in Init()
317 art::ObjPtr<art::mirror::ByteArray> orig_dex( in Init()
321 dex_data_ = art::ArrayRef<const unsigned char>(dex_data_memory_); in Init()
324 const art::DexFile& cur_dex = m_klass->GetDexFile(); in Init()
326 current_dex_file_ = art::ArrayRef<const unsigned char>(cur_dex.Begin(), cur_dex.Size()); in Init()
332 const art::DexFile* quick_dex = GetQuickenedDexFile(m_klass); in Init()
334 REQUIRES_SHARED(art::Locks::mutator_lock_) { in Init()
341 jvmtiError ArtClassDefinition::Init(art::Thread* self, const jvmtiClassDefinition& def) { in Init()
348 current_dex_file_ = art::ArrayRef<const unsigned char>(def.class_bytes, def.class_byte_count); in Init()
349 dex_data_ = art::ArrayRef<const unsigned char>(def.class_bytes, def.class_byte_count); in Init()
354 art::Handle<art::mirror::ClassLoader> klass_loader, in InitFirstLoad()
355 const art::DexFile& dex_file) { in InitFirstLoad()
356 art::Thread* self = art::Thread::Current(); in InitFirstLoad()
357 art::ScopedObjectAccess soa(self); in InitFirstLoad()
367 REQUIRES_SHARED(art::Locks::mutator_lock_) { in InitFirstLoad()