/art/libdexfile/dex/ |
H A D | descriptors_names.h | 28 // Returns a human-readable equivalent of 'descriptor'. So "I" would be "int", 31 void AppendPrettyDescriptor(const char* descriptor, std::string* result); 32 std::string PrettyDescriptor(const char* descriptor); 46 std::string DescriptorToDot(const char* descriptor); 50 std::string DescriptorToName(const char* descriptor);
|
H A D | descriptors_names.cc | 29 void AppendPrettyDescriptor(const char* descriptor, std::string* result) { argument 31 const char* c = descriptor; 56 default: result->append(descriptor); return; 76 std::string PrettyDescriptor(const char* descriptor) { argument 78 AppendPrettyDescriptor(descriptor, &result); 129 std::string descriptor(class_name); 130 std::replace(descriptor.begin(), descriptor.end(), '.', '/'); 131 if (descriptor.length() > 0 && descriptor[ 137 DescriptorToDot(const char* descriptor) argument 156 DescriptorToName(const char* descriptor) argument [all...] |
H A D | descriptors_names_test.cc | 86 std::vector<uint8_t> descriptor( 88 EXPECT_TRUE(IsValidDescriptor(reinterpret_cast<char*>(&descriptor[0])));
|
/art/runtime/verifier/ |
H A D | method_verifier_test.cc | 36 void VerifyClass(const std::string& descriptor) 38 ASSERT_TRUE(descriptor != nullptr); 40 mirror::Class* klass = class_linker_->FindSystemClass(self, descriptor.c_str()); 47 if (android::base::StartsWith(descriptor, "Ljava/lang/invoke")) { 61 const char* descriptor = dex.GetClassDescriptor(class_def); local 62 VerifyClass(descriptor);
|
H A D | reg_type.h | 322 const StringPiece& descriptor, 324 : descriptor_(descriptor), 392 const StringPiece& descriptor, 404 ConflictType(mirror::Class* klass, const StringPiece& descriptor, 406 : RegType(klass, descriptor, cache_id) { 427 const StringPiece& descriptor, 439 UndefinedType(mirror::Class* klass, const StringPiece& descriptor, 441 : RegType(klass, descriptor, cache_id) { 450 PrimitiveType(mirror::Class* klass, const StringPiece& descriptor, 458 Cat1Type(mirror::Class* klass, const StringPiece& descriptor, 909 UninitializedType(mirror::Class* klass, const StringPiece& descriptor, uint32_t allocation_pc, uint16_t cache_id) argument [all...] |
H A D | reg_type_cache.cc | 49 // We weren't looking for a precise reference, as we're looking up based on a descriptor, but 50 // we found a matching entry based on the descriptor. Return the precise entry in that case. 81 const char* descriptor, 84 if (descriptor[1] == '\0') { 85 switch (descriptor[0]) { 106 } else if (descriptor[0] == 'L' || descriptor[0] == '[') { 107 return From(loader, descriptor, precise); 138 bool RegTypeCache::MatchDescriptor(size_t idx, const StringPiece& descriptor, bool precise) { argument 140 if (descriptor ! 80 FromDescriptor(mirror::ClassLoader* loader, const char* descriptor, bool precise) argument 152 ResolveClass(const char* descriptor, mirror::ClassLoader* loader) argument 178 From(mirror::ClassLoader* loader, const char* descriptor, bool precise) argument 256 InsertClass(const StringPiece& descriptor, mirror::Class* klass, bool precise) argument 268 FromClass(const char* descriptor, mirror::Class* klass, bool precise) argument 331 const char* descriptor; member in struct:art::verifier::__anon180::TypeHelper 660 const char* descriptor = klass->GetDescriptor(&temp); local [all...] |
H A D | reg_type.cc | 57 PrimitiveType::PrimitiveType(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 58 : RegType(klass, descriptor, cache_id) { 60 CHECK(!descriptor.empty()); 63 Cat1Type::Cat1Type(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 64 : PrimitiveType(klass, descriptor, cache_id) { 67 Cat2Type::Cat2Type(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 68 : PrimitiveType(klass, descriptor, cache_id) { 133 const StringPiece& descriptor, 136 instance_ = new DoubleHiType(klass, descriptor, cache_id); 148 const StringPiece& descriptor, 132 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 147 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 162 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 169 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 190 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 204 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 218 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 232 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 246 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 260 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 275 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 293 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 308 PreciseReferenceType(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument 974 CreateInstance(mirror::Class* klass, const StringPiece& descriptor, uint16_t cache_id) argument [all...] |
H A D | reg_type_cache.h | 77 const RegType& From(mirror::ClassLoader* loader, const char* descriptor, bool precise) 82 // Insert a new class with a specified descriptor, must not already be in the cache. 83 const RegType* InsertClass(const StringPiece& descriptor, mirror::Class* klass, bool precise) 86 const RegType& FromClass(const char* descriptor, mirror::Class* klass, bool precise) 94 const RegType& FromDescriptor(mirror::ClassLoader* loader, const char* descriptor, bool precise) 161 mirror::Class* ResolveClass(const char* descriptor, mirror::ClassLoader* loader) 163 bool MatchDescriptor(size_t idx, const StringPiece& descriptor, bool precise)
|
H A D | method_verifier.cc | 1239 const char* descriptor = dex_file_->StringByTypeIdx(idx); local 1240 if (UNLIKELY(descriptor[0] != 'L')) { 1241 Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "can't call new-instance on type '" << descriptor << "'"; 1243 } else if (UNLIKELY(strcmp(descriptor, "Ljava/lang/Class;") == 0)) { 1285 const char* descriptor = dex_file_->StringByTypeIdx(idx); local 1286 const char* cp = descriptor; 1293 << "can't new-array class '" << descriptor << "' (not an array)"; 1298 << "can't new-array class '" << descriptor << "' (exceeds limit)"; 1630 static bool IsPrimitiveDescriptor(char descriptor) { argument 1631 switch (descriptor) { 1690 const char* descriptor = iterator.GetDescriptor(); local 1696 << " args, found more (" << descriptor << ")"; local 1739 << " args, found more (" << descriptor << ")"; local 1768 const char* descriptor = dex_file_->GetReturnTypeDescriptor(proto_id); local 2905 const char* descriptor = dex_file_->StringByTypeIdx(return_type_idx); local 3000 const char* descriptor; local 3055 const char* descriptor; local 3645 UninstantiableError(const char* descriptor) argument 3668 const char* descriptor = dex_file_->StringByTypeIdx(class_idx); local 3674 const char* descriptor = dex_file_->StringByTypeIdx(class_idx); local 3678 const char* descriptor = dex_file_->StringByTypeIdx(class_idx); local 3683 const char* descriptor = dex_file_->StringByTypeIdx(class_idx); local 4847 const char* descriptor = dex_file_->GetFieldTypeDescriptor(field_id); local 5012 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(return_type_idx)); local 5022 const char* descriptor local 5126 FromClass(const char* descriptor, mirror::Class* klass, bool precise) argument [all...] |
/art/runtime/jit/ |
H A D | debugger_interface.cc | 139 // Mark the descriptor as "locked", so native tools know the data is being modified. 140 static void ActionSeqlock(JITDescriptor& descriptor) { argument 141 DCHECK_EQ(descriptor.action_seqlock_.load() & 1, 0u) << "Already locked"; 142 descriptor.action_seqlock_.fetch_add(1, std::memory_order_relaxed); 147 // Mark the descriptor as "unlocked", so native tools know the data is safe to read. 148 static void ActionSequnlock(JITDescriptor& descriptor) { argument 149 DCHECK_EQ(descriptor.action_seqlock_.load() & 1, 1u) << "Already unlocked"; 152 descriptor.action_seqlock_.fetch_add(1, std::memory_order_relaxed); 156 JITDescriptor& descriptor, 162 uint64_t timestamp = std::max(descriptor [all...] |
/art/runtime/native/ |
H A D | java_lang_VMClassLoader.cc | 41 const char* descriptor, 46 return cl->LookupClass(self, descriptor, hash, class_loader); 52 const char* descriptor, 57 if (cl->FindClassInBaseDexClassLoader(soa, self, descriptor, hash, class_loader, &result)) { 75 std::string descriptor(DotToDescriptor(name.c_str())); 76 const size_t descriptor_hash = ComputeModifiedUtf8Hash(descriptor.c_str()); 80 descriptor.c_str(), 111 descriptor.c_str(),
|
/art/runtime/ |
H A D | type_lookup_table_test.cc | 46 const char* descriptor = pair.first; local 47 size_t hash = ComputeModifiedUtf8Hash(descriptor); 48 uint32_t class_def_idx = table->Lookup(descriptor, hash);
|
H A D | class_table.cc | 66 mirror::Class* ClassTable::UpdateClass(const char* descriptor, mirror::Class* klass, size_t hash) { argument 69 DescriptorHashPair pair(descriptor, hash); 74 LOG(FATAL) << "Updating class found in frozen table " << descriptor; 77 LOG(FATAL) << "Updating class not found " << descriptor; 80 CHECK_NE(existing, klass) << descriptor; 81 CHECK(!existing->IsResolved()) << descriptor; 82 CHECK_EQ(klass->GetStatus(), ClassStatus::kResolving) << descriptor; 83 CHECK(!klass->IsTemp()) << descriptor; 85 // Update the element in the hash set with the new class. This is safe to do since the descriptor 132 mirror::Class* ClassTable::Lookup(const char* descriptor, size_ argument 186 Remove(const char* descriptor) argument [all...] |
H A D | art_field.cc | 47 ObjPtr<mirror::Class> ArtField::ProxyFindSystemClass(const char* descriptor) { argument 50 Thread::Current(), descriptor, /* class_loader */ nullptr);
|
H A D | class_linker.cc | 147 static bool HasInitWithString(Thread* self, ClassLinker* class_linker, const char* descriptor) 153 ObjPtr<mirror::Class> exception_class = class_linker->FindClass(self, descriptor, class_loader); 190 const char* descriptor = obj->AsClass()->GetDescriptor(&temp); local 192 if (HasInitWithString(self, class_linker, descriptor)) { 193 self->ThrowNewException(descriptor, c->PrettyDescriptor().c_str()); 195 self->ThrowNewException(descriptor, nullptr); 393 void ClassLinker::CheckSystemClass(Thread* self, Handle<mirror::Class> c1, const char* descriptor) { argument 394 ObjPtr<mirror::Class> c2 = FindSystemClass(self, descriptor); 396 LOG(FATAL) << "Could not find class " << descriptor; 403 LOG(FATAL) << "InitWithoutImage: Class mismatch for " << descriptor 2289 EnsureResolved(Thread* self, const char* descriptor, ObjPtr<mirror::Class> klass) argument 2369 FindInClassPath(const char* descriptor, size_t hash, const std::vector<const DexFile*>& class_path) argument 2380 FindClassInBaseDexClassLoader(ScopedObjectAccessAlreadyRunnable& soa, Thread* self, const char* descriptor, size_t hash, Handle<mirror::ClassLoader> class_loader, ObjPtr<mirror::Class>* result) argument 2440 FindClassInBootClassLoaderClassPath(Thread* self, const char* descriptor, size_t hash) argument 2465 FindClassInBaseDexClassLoaderClassPath( ScopedObjectAccessAlreadyRunnable& soa, const char* descriptor, size_t hash, Handle<mirror::ClassLoader> class_loader) argument 2499 FindClass(Thread* self, const char* descriptor, Handle<mirror::ClassLoader> class_loader) argument 2670 DefineClass(Thread* self, const char* descriptor, size_t hash, Handle<mirror::ClassLoader> class_loader, const DexFile& dex_file, const DexFile::ClassDef& dex_class_def) argument 2852 const char* descriptor = dex_file.GetFieldTypeDescriptor(field_id); local 3080 const char* descriptor = dex_file.GetClassDescriptor(dex_class_def); local 3633 const char* descriptor = Primitive::Descriptor(type); local 3654 CreateArrayClass(Thread* self, const char* descriptor, size_t hash, Handle<mirror::ClassLoader> class_loader) argument 3832 InsertClass(const char* descriptor, ObjPtr<mirror::Class> klass, size_t hash) argument 3887 LookupClass(Thread* self, const char* descriptor, ObjPtr<mirror::ClassLoader> class_loader) argument 3893 LookupClass(Thread* self, const char* descriptor, size_t hash, ObjPtr<mirror::ClassLoader> class_loader) argument 3932 LookupClassesVisitor(const char* descriptor, size_t hash, std::vector<ObjPtr<mirror::Class>>* result) argument 3955 LookupClasses(const char* descriptor, std::vector<ObjPtr<mirror::Class>>& result) argument 5329 LinkClass(Thread* self, const char* descriptor, Handle<mirror::Class> klass, Handle<mirror::ObjectArray<mirror::Class>> interfaces, MutableHandle<mirror::Class>* h_new_class_out) argument 7787 const char* descriptor = dex_file.StringByTypeIdx(type_idx); local 7815 const char* descriptor = dex_cache->GetDexFile()->StringByTypeIdx(type_idx); local 8704 const char* descriptor = class_roots_descriptors[class_root]; local [all...] |
H A D | class_linker_test.cc | 60 void AssertNonExistentClass(const std::string& descriptor) 63 EXPECT_TRUE(class_linker_->FindSystemClass(self, descriptor.c_str()) == nullptr); 72 void AssertPrimitiveClass(const std::string& descriptor) 75 AssertPrimitiveClass(descriptor, class_linker_->FindSystemClass(self, descriptor.c_str())); 78 void AssertPrimitiveClass(const std::string& descriptor, mirror::Class* primitive) 85 ASSERT_STREQ(descriptor.c_str(), primitive->GetDescriptor(&temp)); 259 void AssertClass(const std::string& descriptor, Handle<mirror::Class> klass) 262 EXPECT_STREQ(descriptor.c_str(), klass->GetDescriptor(&temp)); 263 if (descriptor 428 const char* descriptor = dex.GetClassDescriptor(class_def); local 434 const char* descriptor = dex.GetTypeDescriptor(type_id); local 893 std::string descriptor; local 1335 const char* descriptor = "LErroneous;"; local 1661 VerifyClassResolution(const std::string& descriptor, jobject class_loader_to_search_obj, jobject expected_class_loader_obj, bool should_find = true) argument [all...] |
H A D | class_table.h | 101 // Data contains the class pointer GcRoot as well as the low bits of the descriptor hash. 112 // Same class loader and descriptor. 115 // Same descriptor. 133 // Hash set that hashes class descriptor, and compares descriptors and class loaders. Results 134 // should be compared for a matching class descriptor and class loader. 175 mirror::Class* UpdateClass(const char* descriptor, mirror::Class* new_klass, size_t hash) 202 // Return the first class that matches the descriptor. Returns null if there are none. 203 mirror::Class* Lookup(const char* descriptor, size_t hash) 207 // Return the first class that matches the descriptor of klass. Returns null if there are none. 213 // with the same descriptor i [all...] |
H A D | class_linker.h | 191 // Finds a class by its descriptor, loading it if necessary. 194 const char* descriptor, 199 // Finds a class by its descriptor using the "system" class loader, ie by searching the 201 mirror::Class* FindSystemClass(Thread* self, const char* descriptor) 204 return FindClass(self, descriptor, ScopedNullHandle<mirror::ClassLoader>()); 219 const char* descriptor, 227 // Finds a class by its descriptor, returning null if it isn't wasn't loaded 230 const char* descriptor, 235 // Finds all the classes with the given descriptor, regardless of ClassLoader. 236 void LookupClasses(const char* descriptor, st [all...] |
/art/test/ti-agent/ |
H A D | jni_binder.cc | 126 static std::string DescriptorToDot(const char* descriptor) { argument 127 size_t length = strlen(descriptor); 129 if (descriptor[0] == 'L' && descriptor[length - 1] == ';') { 131 std::string result(descriptor + 1, length - 2); 136 std::string result(descriptor); 142 return descriptor; 157 std::string descriptor = android::base::StringPrintf("L%s;", class_name); local 158 std::string dot_name = DescriptorToDot(descriptor.c_str());
|
/art/openjdkjvmti/ |
H A D | fixed_up_dex_file.h | 53 const char* descriptor);
|
H A D | ti_class_definition.cc | 125 std::string descriptor(m_klass->GetDescriptor(&descriptor_store)); 126 name_ = descriptor.substr(1, descriptor.size() - 2); 133 const char* descriptor, 136 std::unique_ptr<FixedUpDexFile> fixed_dex_file(FixedUpDexFile::Create(*dex_file, descriptor)); 356 void ArtClassDefinition::InitFirstLoad(const char* descriptor, argument 365 std::string descriptor_str(descriptor); 371 DequickenDexFile(&dex_file, descriptor, dex_data);
|
H A D | ti_class.cc | 84 const char* descriptor, 98 "Unable to allocate dex file for transformation of %s", descriptor).c_str()); 107 descriptor); 120 LOG(WARNING) << "Unable to load modified dex file for " << descriptor << ": " << error_msg; 123 descriptor, 133 descriptor); 159 void ClassPreDefine(const char* descriptor, 173 if (descriptor[0] != 'L') { 183 LOG(WARNING) << "Ignoring load of class <" << descriptor << "> as it is being loaded during " 190 def.InitFirstLoad(descriptor, class_loade 701 const char* descriptor = klass->GetDescriptor(&storage); local [all...] |
H A D | fixed_up_dex_file.cc | 105 const char* descriptor) { 125 // Add a filter to only include the class that has the matching descriptor. 128 options.class_filter_.insert(descriptor); 104 Create(const art::DexFile& original, const char* descriptor) argument
|
/art/dex2oat/linker/ |
H A D | image_test.h | 487 const char* descriptor = dex->GetClassDescriptor(class_def); local 488 mirror::Class* klass = class_linker_->FindSystemClass(soa.Self(), descriptor); 489 EXPECT_TRUE(klass != nullptr) << descriptor; 490 if (image_classes.find(descriptor) == image_classes.end()) { 492 reinterpret_cast<uint8_t*>(klass) < image_begin) << descriptor; 495 EXPECT_LT(image_begin, reinterpret_cast<uint8_t*>(klass)) << descriptor; 496 EXPECT_LT(reinterpret_cast<uint8_t*>(klass), image_end) << descriptor;
|
/art/compiler/driver/ |
H A D | compiler_driver.cc | 395 const char* descriptor = dex_file.GetClassDescriptor(class_def); local 397 mirror::Class* klass = class_linker->FindClass(self, descriptor, class_loader); 881 const char* descriptor = dex_file->GetClassDescriptor(class_def); local 882 cls.Assign(class_linker->FindClass(soa.Self(), descriptor, class_loader)); 960 bool CompilerDriver::IsImageClass(const char* descriptor) const { 963 return image_classes_->find(descriptor) != image_classes_->end(); 970 bool CompilerDriver::IsClassToCompile(const char* descriptor) const { 974 return classes_to_compile_->find(descriptor) != classes_to_compile_->end(); 1099 const std::string& descriptor(*it); 1102 hs.NewHandle(class_linker->FindSystemClass(self, descriptor 1143 const char* descriptor = dex_file->GetTypeDescriptor(type_id); local 1170 const char* descriptor = klass->GetDescriptor(&temp); local 1363 const char* descriptor = klass->GetDescriptor(&temp); local 1642 const char* descriptor = exception->GetClass()->GetDescriptor(&temp); local 1893 const char* descriptor = dex_file.GetClassDescriptor(class_def); local 2042 const char* descriptor = dex_file.GetClassDescriptor(class_def); variable 2171 const char* descriptor = dex_file.GetClassDescriptor(class_def); variable 2236 const char* descriptor = dex_file.StringDataByIdx(class_type_id.descriptor_idx_); variable 2258 const char* descriptor = dex_file.StringDataByIdx(class_type_id.descriptor_idx_); local 2361 *file_log << descriptor << "\\n"; local 2940 const char* descriptor = dex_file.GetClassDescriptor(dex_file.GetClassDef(class_def_idx)); local [all...] |