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

12

/art/runtime/verifier/
H A Dmethod_verifier_test.cc32 void VerifyClass(const std::string& descriptor)
34 ASSERT_TRUE(descriptor != NULL);
35 mirror::Class* klass = class_linker_->FindSystemClass(Thread::Current(), descriptor.c_str());
50 const char* descriptor = dex->GetClassDescriptor(class_def); local
51 VerifyClass(descriptor);
H A Dreg_type.h276 RegType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
278 : descriptor_(descriptor), klass_(GcRoot<mirror::Class>(klass)), cache_id_(cache_id) {
310 static ConflictType* CreateInstance(mirror::Class* klass, const std::string& descriptor,
318 ConflictType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
320 : RegType(klass, descriptor, cache_id) {
340 static UndefinedType* CreateInstance(mirror::Class* klass, const std::string& descriptor,
348 UndefinedType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
350 : RegType(klass, descriptor, cache_id) {
361 PrimitiveType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
367 Cat1Type(mirror::Class* klass, const std::string& descriptor, uint16_
687 UninitializedType(mirror::Class* klass, const std::string& descriptor, uint32_t allocation_pc, uint16_t cache_id) argument
[all...]
H A Dreg_type_cache.cc39 // We weren't looking for a precise reference, as we're looking up based on a descriptor, but
40 // we found a matching entry based on the descriptor. Return the precise entry in that case.
68 RegType& RegTypeCache::FromDescriptor(mirror::ClassLoader* loader, const char* descriptor, argument
71 if (descriptor[1] == '\0') {
72 switch (descriptor[0]) {
93 } else if (descriptor[0] == 'L' || descriptor[0] == '[') {
94 return From(loader, descriptor, precise);
125 bool RegTypeCache::MatchDescriptor(size_t idx, const StringPiece& descriptor, bool precise) { argument
127 if (descriptor !
139 ResolveClass(const char* descriptor, mirror::ClassLoader* loader) argument
159 From(mirror::ClassLoader* loader, const char* descriptor, bool precise) argument
213 FromClass(const char* descriptor, mirror::Class* klass, bool precise) argument
284 CreatePrimitiveTypeInstance(const std::string& descriptor) argument
[all...]
H A Dreg_type.cc67 PrimitiveType::PrimitiveType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
69 : RegType(klass, descriptor, cache_id) {
71 CHECK(!descriptor.empty());
74 Cat1Type::Cat1Type(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
76 : PrimitiveType(klass, descriptor, cache_id) {
79 Cat2Type::Cat2Type(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id)
81 : PrimitiveType(klass, descriptor, cache_id) {
145 DoubleHiType* DoubleHiType::CreateInstance(mirror::Class* klass, const std::string& descriptor, argument
148 instance_ = new DoubleHiType(klass, descriptor, cache_id);
165 DoubleLoType* DoubleLoType::CreateInstance(mirror::Class* klass, const std::string& descriptor, argument
185 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
193 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
225 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
244 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
264 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
284 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
304 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
324 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
344 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
368 CreateInstance(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
388 PreciseReferenceType(mirror::Class* klass, const std::string& descriptor, uint16_t cache_id) argument
[all...]
H A 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)
H A Dmethod_verifier.cc808 const char* descriptor = dex_file_->StringByTypeIdx(idx); local
809 if (descriptor[0] != 'L') {
810 Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "can't call new-instance on type '" << descriptor << "'";
841 const char* descriptor = dex_file_->StringByTypeIdx(idx); local
842 const char* cp = descriptor;
849 << "can't new-array class '" << descriptor << "' (not an array)";
854 << "can't new-array class '" << descriptor << "' (exceeds limit)";
1158 static bool IsPrimitiveDescriptor(char descriptor) { argument
1159 switch (descriptor) {
1201 const char* descriptor local
1207 << " args, found more (" << descriptor << ")"; local
1248 << " args, found more (" << descriptor << ")"; local
1270 const char* descriptor = dex_file_->GetReturnTypeDescriptor(proto_id); local
2212 const char* descriptor = dex_file_->StringByTypeIdx(return_type_idx); local
2313 const char* descriptor; local
2371 const char* descriptor; local
2645 const char* descriptor = called_method->GetReturnTypeDescriptor(); local
2931 const char* descriptor = dex_file_->StringByTypeIdx(class_idx); local
3393 const char* descriptor = local
3727 const char* descriptor = dex_file_->GetFieldTypeDescriptor(field_id); local
3799 const char* descriptor = dex_file_->GetFieldTypeDescriptor(field_id); local
3909 const char* descriptor = field->GetTypeDescriptor(); local
4065 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(return_type_idx)); local
4075 const char* descriptor local
[all...]
/art/compiler/sea_ir/types/
H A Dtype_inference.cc23 bool TypeInference::IsPrimitiveDescriptor(char descriptor) { argument
24 switch (descriptor) {
43 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(method_id.class_idx_)); local
44 declaring_class_ = &(type_cache_->FromDescriptor(NULL, descriptor, false));
53 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(method_id.class_idx_)); local
54 declaring_class_ = &(type_cache_->FromDescriptor(NULL, descriptor, false));
60 const char* descriptor = dex_file_->StringByTypeIdx(return_type_idx); local
62 const Type& return_type = type_cache_->FromDescriptor(NULL, descriptor, false);
94 const char* descriptor = iterator.GetDescriptor(); local
95 if (descriptor
[all...]
H A Dtype_inference.h43 // Returns true if @descriptor corresponds to a primitive type.
44 static bool IsPrimitiveDescriptor(char descriptor);
/art/compiler/
H A Dimage_test.cc173 const char* descriptor = dex->GetClassDescriptor(class_def); local
174 mirror::Class* klass = class_linker_->FindSystemClass(soa.Self(), descriptor);
175 EXPECT_TRUE(klass != nullptr) << descriptor;
176 if (image_classes.find(descriptor) != image_classes.end()) {
178 EXPECT_LT(image_begin, reinterpret_cast<byte*>(klass)) << descriptor;
179 EXPECT_LT(reinterpret_cast<byte*>(klass), image_end) << descriptor; local
182 reinterpret_cast<byte*>(klass) < image_begin) << descriptor;
H A Doat_test.cc162 const char* descriptor = dex_file->GetClassDescriptor(class_def); local
164 mirror::Class* klass = class_linker->FindClass(soa.Self(), descriptor,
168 CHECK_EQ(mirror::Class::Status::kStatusNotReady, oat_class.GetStatus()) << descriptor;
170 oat_class.GetType()) << descriptor;
/art/runtime/native/
H A Djava_lang_VMClassLoader.cc35 std::string descriptor(DotToDescriptor(name.c_str()));
36 mirror::Class* c = cl->LookupClass(descriptor.c_str(), loader);
43 c = cl->FindClassInPathClassLoader(soa, soa.Self(), descriptor.c_str(), hs.NewHandle(loader));
H A Djava_lang_Class.cc62 std::string descriptor(DotToDescriptor(name.c_str()));
67 hs.NewHandle(class_linker->FindClass(soa.Self(), descriptor.c_str(), class_loader)));
H A Ddalvik_system_DexFile.cc181 const std::string descriptor(DotToDescriptor(class_name.c_str()));
184 const DexFile::ClassDef* dex_class_def = dex_file->FindClassDef(descriptor.c_str());
192 mirror::Class* result = class_linker->DefineClass(descriptor.c_str(), class_loader, *dex_file,
223 const char* descriptor = dex_file->GetClassDescriptor(class_def); local
224 descriptors.insert(descriptor);
235 std::string descriptor(DescriptorToDot(*it));
236 ScopedLocalRef<jstring> jdescriptor(env, env->NewStringUTF(descriptor.c_str()));
/art/runtime/
H A Dutils.cc243 std::string PrettyDescriptor(const char* descriptor) { argument
245 const char* c = descriptor;
270 default: return descriptor;
621 std::string descriptor(class_name);
622 std::replace(descriptor.begin(), descriptor.end(), '.', '/');
623 if (descriptor.length() > 0 && descriptor[0] != '[') {
624 descriptor = "L" + descriptor
629 DescriptorToDot(const char* descriptor) argument
648 DescriptorToName(const char* descriptor) argument
[all...]
H A Dclass_linker.h71 // Finds a class by its descriptor, loading it if necessary.
73 mirror::Class* FindClass(Thread* self, const char* descriptor,
79 Thread* self, const char* descriptor,
83 // Finds a class by its descriptor using the "system" class loader, ie by searching the
85 mirror::Class* FindSystemClass(Thread* self, const char* descriptor)
96 mirror::Class* DefineClass(const char* descriptor,
101 // Finds a class by its descriptor, returning NULL if it isn't wasn't loaded
103 mirror::Class* LookupClass(const char* descriptor, const mirror::ClassLoader* class_loader)
107 // Finds all the classes with the given descriptor, regardless of ClassLoader.
108 void LookupClasses(const char* descriptor, st
745 const char* descriptor = class_roots_descriptors_[class_root]; local
[all...]
H A Dclass_linker.cc369 SetClassRoot(kPrimitiveChar, char_class.Get()); // needs descriptor
1931 mirror::Class* ClassLinker::EnsureResolved(Thread* self, const char* descriptor, argument
1955 klass = LookupClass(descriptor, h_class.Get()->GetClassLoader());
1987 // Search a collection of DexFiles for a descriptor
1988 ClassPathEntry FindInClassPath(const char* descriptor, argument
1992 const DexFile::ClassDef* dex_class_def = dex_file->FindClassDef(descriptor);
2003 Thread* self, const char* descriptor,
2011 ClassPathEntry pair = FindInClassPath(descriptor, boot_class_path_);
2014 mirror::Class* klass = LookupClass(descriptor, nullptr);
2016 return EnsureResolved(self, descriptor, klas
2002 FindClassInPathClassLoader(ScopedObjectAccessAlreadyRunnable& soa, Thread* self, const char* descriptor, Handle<mirror::ClassLoader> class_loader) argument
2087 FindClass(Thread* self, const char* descriptor, Handle<mirror::ClassLoader> class_loader) argument
2185 DefineClass(const char* descriptor, Handle<mirror::ClassLoader> class_loader, const DexFile& dex_file, const DexFile::ClassDef& dex_class_def) argument
2304 const char* descriptor = dex_file.GetFieldTypeDescriptor(field_id); local
2698 const char* descriptor = dex_file.GetClassDescriptor(dex_class_def); local
3037 const char* descriptor = Primitive::Descriptor(type); local
3056 CreateArrayClass(Thread* self, const char* descriptor, Handle<mirror::ClassLoader> class_loader) argument
3221 InsertClass(const char* descriptor, mirror::Class* klass, size_t hash) argument
3255 UpdateClass(const char* descriptor, mirror::Class* klass, size_t hash) argument
3299 RemoveClass(const char* descriptor, const mirror::ClassLoader* class_loader) argument
3314 LookupClass(const char* descriptor, const mirror::ClassLoader* class_loader) argument
3344 LookupClassFromTableLocked(const char* descriptor, const mirror::ClassLoader* class_loader, size_t hash) argument
3392 const char* descriptor = klass->GetDescriptor(&temp); local
3411 LookupClassFromImage(const char* descriptor) argument
3438 LookupClasses(const char* descriptor, std::vector<mirror::Class*>& result) argument
4366 LinkClass(Thread* self, const char* descriptor, Handle<mirror::Class> klass, Handle<mirror::ObjectArray<mirror::Class>> interfaces, mirror::Class** new_class) argument
5195 const char* descriptor = dex_file.StringByTypeIdx(type_idx); local
[all...]
H A Dclass_linker-inl.h32 inline mirror::Class* ClassLinker::FindSystemClass(Thread* self, const char* descriptor) { argument
33 return FindClass(self, descriptor, NullHandle<mirror::ClassLoader>());
45 std::string descriptor = "["; local
47 descriptor += (*element_class)->GetDescriptor(&temp);
51 mirror::Class* array_class = FindClass(self, descriptor.c_str(), class_loader);
H A Ddex_file_verifier.cc137 bool DexFileVerifier::CheckShortyDescriptorMatch(char shorty_char, const char* descriptor, argument
154 if (UNLIKELY((descriptor[0] != shorty_char) || (descriptor[1] != '\0'))) {
156 shorty_char, descriptor);
161 if (UNLIKELY((descriptor[0] != 'L') && (descriptor[0] != '['))) {
162 ErrorStringPrintf("Shorty vs. type mismatch: '%c', '%s'", shorty_char, descriptor);
1493 LOAD_STRING(descriptor, item->descriptor_idx_, "inter_type_id_item descriptor_idx")
1495 // Check that the descriptor is a valid type.
1496 if (UNLIKELY(!IsValidDescriptor(descriptor))) {
1538 const char* descriptor = it.GetDescriptor(); local
[all...]
H A Dclass_linker_test.cc47 void AssertNonExistentClass(const std::string& descriptor)
50 EXPECT_TRUE(class_linker_->FindSystemClass(self, descriptor.c_str()) == NULL);
59 void AssertPrimitiveClass(const std::string& descriptor)
62 AssertPrimitiveClass(descriptor, class_linker_->FindSystemClass(self, descriptor.c_str()));
65 void AssertPrimitiveClass(const std::string& descriptor, mirror::Class* primitive)
72 ASSERT_STREQ(descriptor.c_str(), primitive->GetDescriptor(&temp));
189 void AssertClass(const std::string& descriptor, Handle<mirror::Class> klass)
192 EXPECT_STREQ(descriptor.c_str(), klass->GetDescriptor(&temp));
193 if (descriptor
338 const char* descriptor = dex->GetClassDescriptor(class_def); local
344 const char* descriptor = dex->GetTypeDescriptor(type_id); local
665 std::string descriptor; local
[all...]
H A Ddex_file.cc416 const DexFile::ClassDef* DexFile::FindClassDef(const char* descriptor) const {
417 // If we have an index lookup the descriptor via that as its constant time to search.
420 auto it = index->find(descriptor);
429 const StringId* string_id = FindStringId(descriptor);
455 const char* descriptor = GetClassDescriptor(class_def); local
456 index->insert(std::make_pair(descriptor, &class_def));
654 if (offset >= end) { // expect some descriptor following [
662 if (offset >= end) { // unexpected early termination of descriptor
670 std::string descriptor(signature.data() + start_offset, offset - start_offset);
671 const DexFile::StringId* string_id = FindStringId(descriptor
765 const char* descriptor = GetMethodDeclaringClassDescriptor(GetMethodId(method_idx)); local
783 const char* descriptor = it.GetDescriptor(); local
[all...]
H A Ddex_file_verifier.h44 bool CheckShortyDescriptorMatch(char shorty_char, const char* descriptor, bool is_return_type);
H A Dutils.h276 // Returns a human-readable equivalent of 'descriptor'. So "I" would be "int",
279 std::string PrettyDescriptor(mirror::String* descriptor)
281 std::string PrettyDescriptor(const char* descriptor);
345 std::string DescriptorToDot(const char* descriptor);
349 std::string DescriptorToName(const char* descriptor);
/art/compiler/driver/
H A Dcompiler_driver.cc521 const char* descriptor = dex_file.GetClassDescriptor(class_def); local
523 mirror::Class* klass = class_linker->FindClass(self, descriptor, class_loader);
623 bool CompilerDriver::IsImageClass(const char* descriptor) const {
627 return image_classes_->find(descriptor) != image_classes_->end();
709 const std::string& descriptor(*it);
712 hs.NewHandle(class_linker->FindSystemClass(self, descriptor.c_str())));
714 VLOG(compiler) << "Failed to find class " << descriptor;
743 const char* descriptor = dex_file->GetTypeDescriptor(type_id); local
744 LOG(FATAL) << "Failed to resolve class " << descriptor;
768 const char* descriptor local
1485 const char* descriptor = exception->GetClass()->GetDescriptor(&temp); local
1683 const char* descriptor = dex_file.GetClassDescriptor(class_def); local
1740 const char* descriptor = dex_file.GetClassDescriptor(class_def); local
1785 const char* descriptor = dex_file.StringDataByIdx(class_type_id.descriptor_idx_); local
1911 const char* descriptor = dex_file.GetClassDescriptor(class_def); local
[all...]
H A Dcompiler_driver_test.cc82 const char* descriptor = dex_file.GetClassDescriptor(class_def); local
87 mirror::Class* c = class_linker->FindClass(soa.Self(), descriptor, loader);
/art/runtime/mirror/
H A Dclass.cc173 const char* descriptor = h_this->GetDescriptor(&temp); local
175 if ((descriptor[0] != 'L') && (descriptor[0] != '[')) {
176 // The descriptor indicates that this is the class for
179 switch (descriptor[0]) {
190 LOG(FATAL) << "Unknown primitive type: " << PrintableChar(descriptor[0]);
196 name = String::AllocFromModifiedUtf8(self, DescriptorToDot(descriptor).c_str());
341 // Compare the package part of the descriptor string.

Completed in 7097 milliseconds

12