Lines Matching refs:descriptor
179 void UninstantiableError(const char* descriptor) { in UninstantiableError() argument
181 << "non-instantiable klass " << descriptor; in UninstantiableError()
671 const char* descriptor in GetDeclaringClass() local
673 declaring_class_ = ®_types_.FromDescriptor(class_loader_, descriptor); in GetDeclaringClass()
690 const RegType& FromClass(const char* descriptor, ObjPtr<mirror::Class> klass, bool precise) in FromClass() argument
695 << "non-instantiable klass " << descriptor; in FromClass()
698 return reg_types_.FromClass(descriptor, klass, precise); in FromClass()
1289 const std::string_view descriptor = dex_file_->GetTypeDescriptorView(idx); in CheckNewInstance() local
1290 if (UNLIKELY(descriptor[0] != 'L')) { in CheckNewInstance()
1291 Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "can't call new-instance on type '" << descriptor << "'"; in CheckNewInstance()
1293 } else if (UNLIKELY(descriptor == "Ljava/lang/Class;")) { in CheckNewInstance()
1309 const char* descriptor = dex_file_->GetTypeDescriptor(idx); in CheckNewArray() local
1310 const char* cp = descriptor; in CheckNewArray()
1317 << "can't new-array class '" << descriptor << "' (not an array)"; in CheckNewArray()
1322 << "can't new-array class '" << descriptor << "' (exceeds limit)"; in CheckNewArray()
1628 static bool IsPrimitiveDescriptor(char descriptor) { in IsPrimitiveDescriptor() argument
1629 switch (descriptor) { in IsPrimitiveDescriptor()
1688 const char* descriptor = iterator.GetDescriptor(); in SetTypesFromSignature() local
1689 if (descriptor == nullptr) { in SetTypesFromSignature()
1694 << " args, found more (" << descriptor << ")"; in SetTypesFromSignature()
1697 switch (descriptor[0]) { in SetTypesFromSignature()
1737 << " args, found more (" << descriptor << ")"; in SetTypesFromSignature()
1743 if (descriptor[0] == 'J') { in SetTypesFromSignature()
1756 << descriptor << "'"; in SetTypesFromSignature()
1766 const char* descriptor = dex_file_->GetReturnTypeDescriptor(proto_id); in SetTypesFromSignature() local
1770 if (IsPrimitiveDescriptor(descriptor[0]) || descriptor[0] == 'V') { in SetTypesFromSignature()
1771 result = descriptor[1] == '\0'; in SetTypesFromSignature()
1772 } else if (descriptor[0] == '[') { // single/multi-dimensional array of object/primitive in SetTypesFromSignature()
1776 } while (descriptor[i] == '['); // process leading [ in SetTypesFromSignature()
1777 if (descriptor[i] == 'L') { // object array in SetTypesFromSignature()
1780 } while (descriptor[i] != ';' && descriptor[i] != '\0'); in SetTypesFromSignature()
1781 result = descriptor[i] == ';'; in SetTypesFromSignature()
1783 result = IsPrimitiveDescriptor(descriptor[i]) && descriptor[i + 1] == '\0'; in SetTypesFromSignature()
1785 } else if (descriptor[0] == 'L') { in SetTypesFromSignature()
1790 } while (descriptor[i] != ';' && descriptor[i] != '\0'); in SetTypesFromSignature()
1791 result = descriptor[i] == ';'; in SetTypesFromSignature()
1797 << descriptor << "'"; in SetTypesFromSignature()
2879 const char* descriptor = dex_file_->GetTypeDescriptor(return_type_idx); in CodeFlowVerifyInstruction() local
2880 return_type = ®_types_.FromDescriptor(class_loader_, descriptor); in CodeFlowVerifyInstruction()
2974 const char* descriptor; in CodeFlowVerifyInstruction() local
2980 descriptor = dex_file_->GetTypeDescriptor(return_type_idx); in CodeFlowVerifyInstruction()
2982 descriptor = called_method->GetReturnTypeDescriptor(); in CodeFlowVerifyInstruction()
2984 const RegType& return_type = reg_types_.FromDescriptor(class_loader_, descriptor); in CodeFlowVerifyInstruction()
3029 const char* descriptor; in CodeFlowVerifyInstruction() local
3035 descriptor = dex_file_->GetTypeDescriptor(return_type_idx); in CodeFlowVerifyInstruction()
3037 descriptor = abs_method->GetReturnTypeDescriptor(); in CodeFlowVerifyInstruction()
3039 const RegType& return_type = reg_types_.FromDescriptor(class_loader_, descriptor); in CodeFlowVerifyInstruction()
3603 const char* descriptor = dex_file_->GetTypeDescriptor(class_idx); in ResolveClass() local
3604 UninstantiableError(descriptor); in ResolveClass()
3609 const char* descriptor = dex_file_->GetTypeDescriptor(class_idx); in ResolveClass() local
3610 result = reg_types_.InsertClass(descriptor, klass, precise); in ResolveClass()
3613 const char* descriptor = dex_file_->GetTypeDescriptor(class_idx); in ResolveClass() local
3614 result = ®_types_.FromDescriptor(class_loader_, descriptor); in ResolveClass()
3618 const char* descriptor = dex_file_->GetTypeDescriptor(class_idx); in ResolveClass() local
3619 Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "accessing broken descriptor '" << descriptor in ResolveClass()
4742 const char* descriptor = dex_file_->GetFieldTypeDescriptor(field_id); in VerifyISFieldAccess() local
4743 field_type = ®_types_.FromDescriptor(class_loader_, descriptor); in VerifyISFieldAccess()
4862 const char* descriptor = dex_file_->GetTypeDescriptor(dex_file_->GetTypeId(return_type_idx)); in GetMethodReturnType() local
4863 return_type_ = ®_types_.FromDescriptor(class_loader_, descriptor); in GetMethodReturnType()