Home
last modified time | relevance | path

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

12

/art/runtime/verifier/
Dreg_type.h276 RegType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) in RegType() argument
278 : descriptor_(descriptor), klass_(GcRoot<mirror::Class>(klass)), cache_id_(cache_id) { in RegType()
310 static ConflictType* CreateInstance(mirror::Class* klass, const std::string& descriptor,
318 ConflictType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) in ConflictType() argument
320 : RegType(klass, descriptor, cache_id) { in ConflictType()
340 static UndefinedType* CreateInstance(mirror::Class* klass, const std::string& descriptor,
348 UndefinedType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) in UndefinedType() argument
350 : RegType(klass, descriptor, cache_id) { in UndefinedType()
361 PrimitiveType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
367 Cat1Type(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
[all …]
Dreg_type_cache.cc68 RegType& RegTypeCache::FromDescriptor(mirror::ClassLoader* loader, const char* descriptor, in FromDescriptor() argument
71 if (descriptor[1] == '\0') { in FromDescriptor()
72 switch (descriptor[0]) { in FromDescriptor()
93 } else if (descriptor[0] == 'L' || descriptor[0] == '[') { in FromDescriptor()
94 return From(loader, descriptor, precise); in FromDescriptor()
125 bool RegTypeCache::MatchDescriptor(size_t idx, const StringPiece& descriptor, bool precise) { in MatchDescriptor() argument
127 if (descriptor != entry->descriptor_) { in MatchDescriptor()
139 mirror::Class* RegTypeCache::ResolveClass(const char* descriptor, mirror::ClassLoader* loader) { in ResolveClass() argument
148 klass = class_linker->FindClass(self, descriptor, class_loader); in ResolveClass()
150 klass = class_linker->LookupClass(descriptor, ComputeModifiedUtf8Hash(descriptor), loader); in ResolveClass()
[all …]
Dmethod_verifier_test.cc32 void VerifyClass(const std::string& descriptor) in VerifyClass() argument
34 ASSERT_TRUE(descriptor != NULL); in VerifyClass()
35 mirror::Class* klass = class_linker_->FindSystemClass(Thread::Current(), descriptor.c_str()); in VerifyClass()
50 const char* descriptor = dex->GetClassDescriptor(class_def); in VerifyDexFile() local
51 VerifyClass(descriptor); in VerifyDexFile()
Dreg_type.cc67 PrimitiveType::PrimitiveType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) in PrimitiveType() argument
69 : RegType(klass, descriptor, cache_id) { in PrimitiveType()
71 CHECK(!descriptor.empty()); in PrimitiveType()
74 Cat1Type::Cat1Type(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) in Cat1Type() argument
76 : PrimitiveType(klass, descriptor, cache_id) { in Cat1Type()
79 Cat2Type::Cat2Type(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) in Cat2Type() argument
81 : PrimitiveType(klass, descriptor, cache_id) { in Cat2Type()
145 DoubleHiType* DoubleHiType::CreateInstance(mirror::Class* klass, const std::string& descriptor, in CreateInstance() argument
148 instance_ = new DoubleHiType(klass, descriptor, cache_id); in CreateInstance()
165 DoubleLoType* DoubleLoType::CreateInstance(mirror::Class* klass, const std::string& descriptor, in CreateInstance() argument
[all …]
Dreg_type_cache.h55 RegType& From(mirror::ClassLoader* loader, const char* descriptor, bool precise)
57 RegType& FromClass(const char* descriptor, mirror::Class* klass, bool precise)
65 RegType& FromDescriptor(mirror::ClassLoader* loader, const char* descriptor, bool precise)
154 mirror::Class* ResolveClass(const char* descriptor, mirror::ClassLoader* loader)
156 bool MatchDescriptor(size_t idx, const StringPiece& descriptor, bool precise)
164 static Type* CreatePrimitiveTypeInstance(const std::string& descriptor)
Dmethod_verifier.cc825 const char* descriptor = dex_file_->StringByTypeIdx(idx); in CheckNewInstance() local
826 if (descriptor[0] != 'L') { in CheckNewInstance()
827 Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "can't call new-instance on type '" << descriptor << "'"; in CheckNewInstance()
858 const char* descriptor = dex_file_->StringByTypeIdx(idx); in CheckNewArray() local
859 const char* cp = descriptor; in CheckNewArray()
866 << "can't new-array class '" << descriptor << "' (not an array)"; in CheckNewArray()
871 << "can't new-array class '" << descriptor << "' (exceeds limit)"; in CheckNewArray()
1175 static bool IsPrimitiveDescriptor(char descriptor) { in IsPrimitiveDescriptor() argument
1176 switch (descriptor) { in IsPrimitiveDescriptor()
1218 const char* descriptor = iterator.GetDescriptor(); in SetTypesFromSignature() local
[all …]
/art/compiler/sea_ir/types/
Dtype_inference.cc23 bool TypeInference::IsPrimitiveDescriptor(char descriptor) { in IsPrimitiveDescriptor() argument
24 switch (descriptor) { in IsPrimitiveDescriptor()
43 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(method_id.class_idx_)); in FunctionTypeInfo() local
44 declaring_class_ = &(type_cache_->FromDescriptor(NULL, descriptor, false)); in FunctionTypeInfo()
53 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(method_id.class_idx_)); in FunctionTypeInfo() local
54 declaring_class_ = &(type_cache_->FromDescriptor(NULL, descriptor, false)); in FunctionTypeInfo()
60 const char* descriptor = dex_file_->StringByTypeIdx(return_type_idx); in GetReturnValueType() local
62 const Type& return_type = type_cache_->FromDescriptor(NULL, descriptor, false); in GetReturnValueType()
94 const char* descriptor = iterator.GetDescriptor(); in GetDeclaredArgumentTypes() local
95 if (descriptor == NULL) { in GetDeclaredArgumentTypes()
[all …]
Dtype_inference.h44 static bool IsPrimitiveDescriptor(char descriptor);
/art/runtime/native/
Djava_lang_VMClassLoader.cc35 std::string descriptor(DotToDescriptor(name.c_str())); in VMClassLoader_findLoadedClass() local
36 const size_t descriptor_hash = ComputeModifiedUtf8Hash(descriptor.c_str()); in VMClassLoader_findLoadedClass()
37 mirror::Class* c = cl->LookupClass(descriptor.c_str(), descriptor_hash, loader); in VMClassLoader_findLoadedClass()
44 c = cl->FindClassInPathClassLoader(soa, soa.Self(), descriptor.c_str(), descriptor_hash, in VMClassLoader_findLoadedClass()
Ddalvik_system_DexFile.cc181 const std::string descriptor(DotToDescriptor(class_name.c_str())); in DexFile_defineClassNative() local
182 const size_t hash(ComputeModifiedUtf8Hash(descriptor.c_str())); in DexFile_defineClassNative()
184 const DexFile::ClassDef* dex_class_def = dex_file->FindClassDef(descriptor.c_str(), hash); in DexFile_defineClassNative()
192 mirror::Class* result = class_linker->DefineClass(soa.Self(), descriptor.c_str(), hash, in DexFile_defineClassNative()
223 const char* descriptor = dex_file->GetClassDescriptor(class_def); in DexFile_getClassNameList() local
224 descriptors.insert(descriptor); in DexFile_getClassNameList()
235 std::string descriptor(DescriptorToDot(*it)); in DexFile_getClassNameList() local
236 ScopedLocalRef<jstring> jdescriptor(env, env->NewStringUTF(descriptor.c_str())); in DexFile_getClassNameList()
Djava_lang_Class.cc62 std::string descriptor(DotToDescriptor(name.c_str())); in Class_classForName() local
67 hs.NewHandle(class_linker->FindClass(soa.Self(), descriptor.c_str(), class_loader))); in Class_classForName()
/art/compiler/
Dimage_test.cc176 const char* descriptor = dex->GetClassDescriptor(class_def); in TEST_F() local
177 mirror::Class* klass = class_linker_->FindSystemClass(soa.Self(), descriptor); in TEST_F()
178 EXPECT_TRUE(klass != nullptr) << descriptor; in TEST_F()
179 if (image_classes.find(descriptor) != image_classes.end()) { in TEST_F()
181 EXPECT_LT(image_begin, reinterpret_cast<byte*>(klass)) << descriptor; in TEST_F()
182 EXPECT_LT(reinterpret_cast<byte*>(klass), image_end) << descriptor; in TEST_F()
185 reinterpret_cast<byte*>(klass) < image_begin) << descriptor; in TEST_F()
Doat_test.cc162 const char* descriptor = dex_file->GetClassDescriptor(class_def); in TEST_F() local
164 mirror::Class* klass = class_linker->FindClass(soa.Self(), descriptor, in TEST_F()
168 CHECK_EQ(mirror::Class::Status::kStatusNotReady, oat_class.GetStatus()) << descriptor; in TEST_F()
170 oat_class.GetType()) << descriptor; in TEST_F()
/art/runtime/
Dutils.cc243 std::string PrettyDescriptor(const char* descriptor) { in PrettyDescriptor() argument
245 const char* c = descriptor; in PrettyDescriptor()
270 default: return descriptor; in PrettyDescriptor()
621 std::string descriptor(class_name); in DotToDescriptor() local
622 std::replace(descriptor.begin(), descriptor.end(), '.', '/'); in DotToDescriptor()
623 if (descriptor.length() > 0 && descriptor[0] != '[') { in DotToDescriptor()
624 descriptor = "L" + descriptor + ";"; in DotToDescriptor()
626 return descriptor; in DotToDescriptor()
629 std::string DescriptorToDot(const char* descriptor) { in DescriptorToDot() argument
630 size_t length = strlen(descriptor); in DescriptorToDot()
[all …]
Dclass_linker.h75 mirror::Class* FindClass(Thread* self, const char* descriptor,
82 Thread* self, const char* descriptor, size_t hash,
88 mirror::Class* FindSystemClass(Thread* self, const char* descriptor)
99 mirror::Class* DefineClass(Thread* self, const char* descriptor, size_t hash,
106 mirror::Class* LookupClass(const char* descriptor, size_t hash,
112 void LookupClasses(const char* descriptor, std::vector<mirror::Class*>& classes)
120 bool RemoveClass(const char* descriptor, mirror::ClassLoader* class_loader)
402 mirror::Class* InsertClass(const char* descriptor, mirror::Class* klass, size_t hash)
459 mirror::Class* CreateArrayClass(Thread* self, const char* descriptor, size_t hash,
519 bool IsSameDescriptorInDifferentClassContexts(Thread* self, const char* descriptor,
[all …]
Dclass_linker.cc1962 mirror::Class* ClassLinker::EnsureResolved(Thread* self, const char* descriptor, in EnsureResolved() argument
1986 klass = LookupClass(descriptor, ComputeModifiedUtf8Hash(descriptor), in EnsureResolved()
2020 ClassPathEntry FindInClassPath(const char* descriptor, in FindInClassPath() argument
2023 const DexFile::ClassDef* dex_class_def = dex_file->FindClassDef(descriptor, hash); in FindInClassPath()
2032 Thread* self, const char* descriptor, in FindClassInPathClassLoader() argument
2041 ClassPathEntry pair = FindInClassPath(descriptor, hash, boot_class_path_); in FindClassInPathClassLoader()
2044 mirror::Class* klass = LookupClass(descriptor, hash, nullptr); in FindClassInPathClassLoader()
2046 return EnsureResolved(self, descriptor, klass); in FindClassInPathClassLoader()
2048 klass = DefineClass(self, descriptor, hash, NullHandle<mirror::ClassLoader>(), *pair.first, in FindClassInPathClassLoader()
2053 CHECK(self->IsExceptionPending()) << descriptor; in FindClassInPathClassLoader()
[all …]
Dclass_linker-inl.h32 inline mirror::Class* ClassLinker::FindSystemClass(Thread* self, const char* descriptor) { in FindSystemClass() argument
33 return FindClass(self, descriptor, NullHandle<mirror::ClassLoader>()); in FindSystemClass()
45 std::string descriptor = "["; in FindArrayClass() local
47 descriptor += (*element_class)->GetDescriptor(&temp); in FindArrayClass()
51 mirror::Class* array_class = FindClass(self, descriptor.c_str(), class_loader); in FindArrayClass()
Dclass_linker_test.cc47 void AssertNonExistentClass(const std::string& descriptor) in AssertNonExistentClass() argument
50 EXPECT_TRUE(class_linker_->FindSystemClass(self, descriptor.c_str()) == NULL); in AssertNonExistentClass()
59 void AssertPrimitiveClass(const std::string& descriptor) in AssertPrimitiveClass() argument
62 AssertPrimitiveClass(descriptor, class_linker_->FindSystemClass(self, descriptor.c_str())); in AssertPrimitiveClass()
65 void AssertPrimitiveClass(const std::string& descriptor, mirror::Class* primitive) in AssertPrimitiveClass() argument
72 ASSERT_STREQ(descriptor.c_str(), primitive->GetDescriptor(&temp)); in AssertPrimitiveClass()
186 void AssertClass(const std::string& descriptor, Handle<mirror::Class> klass) in AssertClass() argument
189 EXPECT_STREQ(descriptor.c_str(), klass->GetDescriptor(&temp)); in AssertClass()
190 if (descriptor == "Ljava/lang/Object;") { in AssertClass()
322 void AssertDexFileClass(mirror::ClassLoader* class_loader, const std::string& descriptor) in AssertDexFileClass() argument
[all …]
Ddex_file_verifier.cc137 bool DexFileVerifier::CheckShortyDescriptorMatch(char shorty_char, const char* descriptor, in CheckShortyDescriptorMatch() argument
154 if (UNLIKELY((descriptor[0] != shorty_char) || (descriptor[1] != '\0'))) { in CheckShortyDescriptorMatch()
156 shorty_char, descriptor); in CheckShortyDescriptorMatch()
161 if (UNLIKELY((descriptor[0] != 'L') && (descriptor[0] != '['))) { in CheckShortyDescriptorMatch()
162 ErrorStringPrintf("Shorty vs. type mismatch: '%c', '%s'", shorty_char, descriptor); in CheckShortyDescriptorMatch()
1493 LOAD_STRING(descriptor, item->descriptor_idx_, "inter_type_id_item descriptor_idx") in CheckInterTypeIdItem()
1496 if (UNLIKELY(!IsValidDescriptor(descriptor))) { in CheckInterTypeIdItem()
1497 ErrorStringPrintf("Invalid type descriptor: '%s'", descriptor); in CheckInterTypeIdItem()
1538 const char* descriptor = it.GetDescriptor(); in CheckInterProtoIdItem() local
1539 if (!CheckShortyDescriptorMatch(*shorty, descriptor, false)) { in CheckInterProtoIdItem()
[all …]
Ddex_file.cc422 const DexFile::ClassDef* DexFile::FindClassDef(const char* descriptor, size_t hash) const { in FindClassDef() argument
423 DCHECK_EQ(ComputeModifiedUtf8Hash(descriptor), hash); in FindClassDef()
427 auto it = index->FindWithHash(descriptor, hash); in FindClassDef()
436 const StringId* string_id = FindStringId(descriptor); in FindClassDef()
462 const char* descriptor = GetClassDescriptor(class_def); in FindClassDef() local
463 index->Insert(std::make_pair(descriptor, &class_def)); in FindClassDef()
677 std::string descriptor(signature.data() + start_offset, offset - start_offset); in CreateTypeList() local
678 const DexFile::StringId* string_id = FindStringId(descriptor.c_str()); in CreateTypeList()
772 const char* descriptor = GetMethodDeclaringClassDescriptor(GetMethodId(method_idx)); in DecodeDebugInfo0() local
774 local_in_reg[arg_reg].descriptor_ = descriptor; in DecodeDebugInfo0()
[all …]
Dutils.h320 std::string PrettyDescriptor(mirror::String* descriptor)
322 std::string PrettyDescriptor(const char* descriptor);
386 std::string DescriptorToDot(const char* descriptor);
390 std::string DescriptorToName(const char* descriptor);
/art/compiler/driver/
Dcompiler_driver.cc522 const char* descriptor = dex_file.GetClassDescriptor(class_def); in GetDexToDexCompilationlevel() local
524 mirror::Class* klass = class_linker->FindClass(self, descriptor, class_loader); in GetDexToDexCompilationlevel()
629 bool CompilerDriver::IsImageClass(const char* descriptor) const { in IsImageClass()
633 return image_classes_->find(descriptor) != image_classes_->end(); in IsImageClass()
637 bool CompilerDriver::IsClassToCompile(const char* descriptor) const { in IsClassToCompile()
644 return classes_to_compile_->find(descriptor) != classes_to_compile_->end(); in IsClassToCompile()
726 const std::string& descriptor(*it); in LoadImageClasses() local
729 hs.NewHandle(class_linker->FindSystemClass(self, descriptor.c_str()))); in LoadImageClasses()
731 VLOG(compiler) << "Failed to find class " << descriptor; in LoadImageClasses()
760 const char* descriptor = dex_file->GetTypeDescriptor(type_id); in LoadImageClasses() local
[all …]
Dcompiler_driver_test.cc82 const char* descriptor = dex_file.GetClassDescriptor(class_def); in MakeDexFileExecutable() local
87 mirror::Class* c = class_linker->FindClass(soa.Self(), descriptor, loader); in MakeDexFileExecutable()
/art/oatdump/
Doatdump.cc287 const char* descriptor = m->GetDeclaringClassDescriptor(); in GetQuickOatCode() local
289 dex_file->FindClassDef(descriptor, ComputeModifiedUtf8Hash(descriptor)); in GetQuickOatCode()
380 const char* descriptor = dex_file->GetClassDescriptor(class_def); in DumpOatDexFile() local
384 class_def_index, descriptor, oat_class_offset, class_def.class_idx_) in DumpOatDexFile()
1153 const char* descriptor = field->GetTypeDescriptor(); in PrintField() local
1155 if (descriptor[0] != 'L' && descriptor[0] != '[') { in PrintField()
1174 os << StringPrintf("null %s\n", PrettyDescriptor(descriptor).c_str()); in PrintField()
1183 os << StringPrintf("%p %s\n", value, PrettyDescriptor(descriptor).c_str()); in PrintField()
1463 void Update(const char* descriptor, size_t object_bytes) { in Update()
1464 SizeAndCountTable::iterator it = sizes_and_counts.find(descriptor); in Update()
[all …]
/art/runtime/mirror/
Dclass.cc172 const char* descriptor = h_this->GetDescriptor(&temp); in ComputeName() local
174 if ((descriptor[0] != 'L') && (descriptor[0] != '[')) { in ComputeName()
178 switch (descriptor[0]) { in ComputeName()
189 LOG(FATAL) << "Unknown primitive type: " << PrintableChar(descriptor[0]); in ComputeName()
195 name = String::AllocFromModifiedUtf8(self, DescriptorToDot(descriptor).c_str()); in ComputeName()

12