/art/runtime/ |
D | dex_file_verifier.cc | 33 case DexFile::kDexTypeHeaderItem: return 1 << 0; in MapTypeToBitMask() 34 case DexFile::kDexTypeStringIdItem: return 1 << 1; in MapTypeToBitMask() 35 case DexFile::kDexTypeTypeIdItem: return 1 << 2; in MapTypeToBitMask() 36 case DexFile::kDexTypeProtoIdItem: return 1 << 3; in MapTypeToBitMask() 37 case DexFile::kDexTypeFieldIdItem: return 1 << 4; in MapTypeToBitMask() 38 case DexFile::kDexTypeMethodIdItem: return 1 << 5; in MapTypeToBitMask() 39 case DexFile::kDexTypeClassDefItem: return 1 << 6; in MapTypeToBitMask() 40 case DexFile::kDexTypeMapList: return 1 << 7; in MapTypeToBitMask() 41 case DexFile::kDexTypeTypeList: return 1 << 8; in MapTypeToBitMask() 42 case DexFile::kDexTypeAnnotationSetRefList: return 1 << 9; in MapTypeToBitMask() [all …]
|
D | method_helper.cc | 29 const DexFile* dex_file = method_->GetDexFile(); in GetNameAsString() 32 const DexFile::MethodId& method_id = dex_file->GetMethodId(dex_method_idx); in GetNameAsString() 43 const DexFile::TypeList* types = method_->GetParameterTypeList(); in HasSameSignatureWithDifferentClassLoaders() 44 const DexFile::TypeList* other_types = other->method_->GetParameterTypeList(); in HasSameSignatureWithDifferentClassLoaders() 65 uint32_t MethodHelper::FindDexMethodIndexInOtherDexFile(const DexFile& other_dexfile) in FindDexMethodIndexInOtherDexFile() 68 const DexFile* dexfile = method->GetDexFile(); in FindDexMethodIndexInOtherDexFile() 72 const DexFile::MethodId& mid = dexfile->GetMethodId(method->GetDexMethodIndex()); in FindDexMethodIndexInOtherDexFile() 74 const DexFile::StringId* other_descriptor = in FindDexMethodIndexInOtherDexFile() 77 const DexFile::TypeId* other_type_id = in FindDexMethodIndexInOtherDexFile() 81 const DexFile::StringId* other_name = other_dexfile.FindStringId(mid_name); in FindDexMethodIndexInOtherDexFile() [all …]
|
D | dex_file_test.cc | 34 const DexFile* dex(OpenTestDexFile("Nested")); in TEST_F() 135 static const DexFile* OpenDexFileBase64(const char* base64, in OpenDexFileBase64() 154 std::vector<const DexFile*> tmp; in OpenDexFileBase64() 155 bool success = DexFile::Open(location, location, &error_msg, &tmp); in OpenDexFileBase64() 158 const DexFile* dex_file = tmp[0]; in OpenDexFileBase64() 166 std::unique_ptr<const DexFile> raw(OpenDexFileBase64(kRawDex, tmp.GetFilename().c_str())); in TEST_F() 169 const DexFile::Header& header = raw->GetHeader(); in TEST_F() 197 const DexFile* raw(OpenTestDexFile("Main")); in TEST_F() 205 EXPECT_TRUE(DexFile::GetChecksum(GetLibCoreDexFileName().c_str(), &checksum, &error_msg)) in TEST_F() 212 const DexFile* raw(OpenTestDexFile("Nested")); in TEST_F() [all …]
|
D | dex_file.cc | 50 const byte DexFile::kDexMagic[] = { 'd', 'e', 'x', '\n' }; 51 const byte DexFile::kDexMagicVersion[] = { '0', '3', '5', '\0' }; 73 bool DexFile::GetChecksum(const char* filename, uint32_t* checksum, std::string* error_msg) { in GetChecksum() 82 if (DexFile::IsMultiDexLocation(filename)) { in GetChecksum() 110 …std::unique_ptr<const DexFile> dex_file(DexFile::OpenFile(fd.release(), filename, false, error_msg… in GetChecksum() 121 bool DexFile::Open(const char* filename, const char* location, std::string* error_msg, in Open() 122 std::vector<const DexFile*>* dex_files) { in Open() 130 return DexFile::OpenZip(fd.release(), location, error_msg, dex_files); in Open() 133 std::unique_ptr<const DexFile> dex_file(DexFile::OpenFile(fd.release(), location, true, in Open() 146 int DexFile::GetPermissions() const { in GetPermissions() [all …]
|
D | dex_file-inl.h | 28 inline int32_t DexFile::GetStringLength(const StringId& string_id) const { in GetStringLength() 33 inline const char* DexFile::GetStringDataAndUtf16Length(const StringId& string_id, in GetStringDataAndUtf16Length() 41 inline const Signature DexFile::GetMethodSignature(const MethodId& method_id) const { in GetMethodSignature() 45 inline const DexFile::TryItem* DexFile::GetTryItems(const CodeItem& code_item, uint32_t offset) { in GetTryItems() 51 static inline bool DexFileStringEquals(const DexFile* df1, uint32_t sidx1, in DexFileStringEquals() 52 const DexFile* df2, uint32_t sidx2) { in DexFileStringEquals() 85 const DexFile::TypeId& return_type_id = dex_file_->GetTypeId(proto_id_->return_type_idx_); 86 const DexFile::TypeId& rhs_return_type_id = 94 const DexFile::TypeList* params = dex_file_->GetProtoParameters(*proto_id_); 95 const DexFile::TypeList* rhs_params = rhs.dex_file_->GetProtoParameters(*rhs.proto_id_); [all …]
|
D | dex_file_verifier_test.cc | 104 static const DexFile* OpenDexFileBase64(const char* base64, const char* location, in OpenDexFileBase64() 122 std::vector<const DexFile*> tmp; in OpenDexFileBase64() 123 bool success = DexFile::Open(location, location, error_msg, &tmp); in OpenDexFileBase64() 126 const DexFile* dex_file = tmp[0]; in OpenDexFileBase64() 151 std::unique_ptr<const DexFile> raw(OpenDexFileBase64(kGoodTestDex, tmp.GetFilename().c_str(), in TEST_F() 157 DexFile::Header* header = reinterpret_cast<DexFile::Header*>(dex_file); in FixUpChecksum() 160 const uint32_t non_sum = sizeof(DexFile::Header::magic_) + sizeof(DexFile::Header::checksum_); in FixUpChecksum() 166 static const DexFile* FixChecksumAndOpen(byte* bytes, size_t length, const char* location, in FixChecksumAndOpen() 184 std::vector<const DexFile*> tmp; in FixChecksumAndOpen() 185 if (!DexFile::Open(location, location, error_msg, &tmp)) { in FixChecksumAndOpen() [all …]
|
D | method_helper-inl.h | 30 const DexFile* dex_file = method_->GetDexFile(); in HasSameNameAndSignature() 31 const DexFile::MethodId& mid = dex_file->GetMethodId(GetMethod()->GetDexMethodIndex()); in HasSameNameAndSignature() 33 const DexFile::MethodId& other_mid = in HasSameNameAndSignature() 37 const DexFile* other_dex_file = other->method_->GetDexFile(); in HasSameNameAndSignature() 38 const DexFile::MethodId& other_mid = in HasSameNameAndSignature() 58 const DexFile* dex_file = method->GetDexFile(); in GetReturnType() 59 const DexFile::MethodId& method_id = dex_file->GetMethodId(method->GetDexMethodIndex()); in GetReturnType() 60 const DexFile::ProtoId& proto_id = dex_file->GetMethodPrototype(method_id); in GetReturnType()
|
D | dex_file_verifier.h | 29 static bool Verify(const DexFile* dex_file, const byte* begin, size_t size, 37 DexFileVerifier(const DexFile* dex_file, const byte* begin, size_t size, const char* location) in DexFileVerifier() 58 bool CheckAndGetHandlerOffsets(const DexFile::CodeItem* code_item, 108 const DexFile::FieldId* CheckLoadFieldId(uint32_t idx, const char* error_fmt); 109 const DexFile::MethodId* CheckLoadMethodId(uint32_t idx, const char* error_fmt); 114 const DexFile* const dex_file_; 118 const DexFile::Header* const header_; 127 std::unordered_set<decltype(DexFile::ClassDef::class_idx_)> defined_classes_;
|
D | class_linker.h | 65 void InitWithoutImage(const std::vector<const DexFile*>& boot_class_path) 98 const DexFile& dex_file, const DexFile::ClassDef& dex_class_def) 140 mirror::String* ResolveString(const DexFile& dex_file, uint32_t string_idx, 147 mirror::Class* ResolveType(const DexFile& dex_file, uint16_t type_idx, mirror::Class* referrer) 163 mirror::Class* ResolveType(const DexFile& dex_file, uint16_t type_idx, 173 mirror::ArtMethod* ResolveMethod(const DexFile& dex_file, 199 mirror::ArtField* ResolveField(const DexFile& dex_file, 210 mirror::ArtField* ResolveFieldJLS(const DexFile& dex_file, uint32_t field_idx, 229 void RegisterDexFile(const DexFile& dex_file) 232 void RegisterDexFile(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache) [all …]
|
D | common_runtime_test.h | 33 class DexFile; variable 83 const DexFile* LoadExpectSingleDexFile(const char* location); 102 std::vector<const DexFile*> OpenTestDexFiles(const char* name) 105 const DexFile* OpenTestDexFile(const char* name) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); 111 const DexFile* java_lang_dex_file_; // owned by runtime_ 112 std::vector<const DexFile*> boot_class_path_; 119 std::vector<const DexFile*> opened_dex_files_;
|
D | dex_file.h | 51 class DexFile { 386 std::vector<const DexFile*>* dex_files); 389 static const DexFile* Open(const uint8_t* base, size_t size, in Open() 398 std::string* error_msg, std::vector<const DexFile*>* dex_files); 401 virtual ~DexFile(); 557 const FieldId* FindFieldId(const DexFile::TypeId& declaring_klass, 558 const DexFile::StringId& name, 559 const DexFile::TypeId& type) const; 563 const DexFile::TypeId& type_id = GetTypeId(field_id.class_idx_); in GetFieldDeclaringClassDescriptor() 569 const DexFile::TypeId& type_id = GetTypeId(field_id.type_idx_); in GetFieldTypeDescriptor() [all …]
|
D | dex_method_iterator.h | 28 explicit DexMethodIterator(const std::vector<const DexFile*>& dex_files) in DexMethodIterator() 106 const DexFile& GetDexFile() { in GetDexFile() 128 const DexFile& GetDexFileInternal() const { in GetDexFileInternal() 130 const DexFile* dex_file = dex_files_[dex_file_index_]; in GetDexFileInternal() 135 const std::vector<const DexFile*>& dex_files_; 141 const DexFile::ClassDef* class_def_;
|
/art/compiler/driver/ |
D | compiler_driver.h | 112 void CompileAll(jobject class_loader, const std::vector<const DexFile*>& dex_files, 187 void AddRequiresConstructorBarrier(Thread* self, const DexFile* dex_file, 189 bool RequiresConstructorBarrier(Thread* self, const DexFile* dex_file, uint16_t class_def_index); 193 bool CanAssumeTypeIsPresentInDexCache(const DexFile& dex_file, uint32_t type_idx); 195 bool CanAssumeStringIsPresentInDexCache(const DexFile& dex_file, uint32_t string_idx) 199 bool CanAccessTypeWithoutChecks(uint32_t referrer_idx, const DexFile& dex_file, 206 bool CanAccessInstantiableTypeWithoutChecks(uint32_t referrer_idx, const DexFile& dex_file, 210 bool CanEmbedTypeInCode(const DexFile& dex_file, uint32_t type_idx, 237 mirror::ArtField* resolved_field, const DexFile** declaring_dex_file, 267 mirror::ArtMethod* resolved_method, const DexFile** declaring_dex_file, [all …]
|
D | dex_compilation_unit.h | 39 const DexFile& dex_file, const DexFile::CodeItem* code_item, 55 const DexFile* GetDexFile() const { in GetDexFile() 67 const DexFile::CodeItem* GetCodeItem() const { in GetCodeItem() 72 const DexFile::MethodId& method_id = dex_file_->GetMethodId(dex_method_idx_); in GetShorty() 77 const DexFile::MethodId& method_id = dex_file_->GetMethodId(dex_method_idx_); in GetShorty() 114 const DexFile* const dex_file_; 116 const DexFile::CodeItem* const code_item_;
|
D | compiler_driver.cc | 319 const art::DexFile::CodeItem* code_item, 325 const art::DexFile& dex_file); 507 const std::vector<const DexFile*>& dex_files, in CompileAll() 519 Thread* self, Handle<mirror::ClassLoader> class_loader, const DexFile& dex_file, in GetDexToDexCompilationlevel() 520 const DexFile::ClassDef& class_def) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) { in GetDexToDexCompilationlevel() 552 const DexFile* dex_file; in CompileOne() 567 const DexFile::CodeItem* code_item = dex_file->GetCodeItem(method->GetCodeItemOffset()); in CompileOne() 570 std::vector<const DexFile*> dex_files; in CompileOne() 580 const DexFile::ClassDef& class_def = dex_file->GetClassDef(class_def_idx); in CompileOne() 595 void CompilerDriver::Resolve(jobject class_loader, const std::vector<const DexFile*>& dex_files, in Resolve() [all …]
|
/art/compiler/ |
D | compilers.h | 32 CompiledMethod* Compile(const DexFile::CodeItem* code_item, 38 const DexFile& dex_file) const OVERRIDE; 42 const DexFile& dex_file) const OVERRIDE; 49 const std::vector<const art::DexFile*>& dex_files, 78 CompiledMethod* Compile(const DexFile::CodeItem* code_item, 84 const DexFile& dex_file) const OVERRIDE; 86 CompiledMethod* TryCompile(const DexFile::CodeItem* code_item, 92 const DexFile& dex_file) const;
|
D | compiler.cc | 30 extern "C" art::CompiledMethod* SeaIrCompileMethod(const art::DexFile::CodeItem* code_item, 36 const art::DexFile& dex_file); 40 CompiledMethod* Compiler::TryCompileWithSeaIR(const art::DexFile::CodeItem* code_item, in TryCompileWithSeaIR() 46 const art::DexFile& dex_file) { in TryCompileWithSeaIR() 71 const art::DexFile::CodeItem* code_item, 77 const art::DexFile& dex_file); 81 const art::DexFile& dex_file); 99 CompiledMethod* Compile(const DexFile::CodeItem* code_item, in Compile() 105 const DexFile& dex_file) const OVERRIDE { in Compile() 129 const DexFile& dex_file) const OVERRIDE { in JniCompile() [all …]
|
D | compilers.cc | 29 const art::DexFile::CodeItem* code_item, 35 const art::DexFile& dex_file); 39 const art::DexFile& dex_file); 52 CompiledMethod* QuickCompiler::Compile(const DexFile::CodeItem* code_item, in Compile() 58 const DexFile& dex_file) const { in Compile() 82 const DexFile& dex_file) const { in JniCompile() 92 const std::vector<const art::DexFile*>& dex_files, in WriteElf() 140 CompiledMethod* OptimizingCompiler::Compile(const DexFile::CodeItem* code_item, in Compile() 146 const DexFile& dex_file) const { in Compile()
|
D | compiler.h | 50 virtual CompiledMethod* Compile(const DexFile::CodeItem* code_item, 56 const DexFile& dex_file) const = 0; 58 static CompiledMethod* TryCompileWithSeaIR(const art::DexFile::CodeItem* code_item, 64 const art::DexFile& dex_file); 68 const DexFile& dex_file) const = 0; 75 const std::vector<const art::DexFile*>& dex_files,
|
/art/runtime/verifier/ |
D | method_verifier.h | 144 static FailureKind VerifyClass(const DexFile* dex_file, Handle<mirror::DexCache> dex_cache, 146 const DexFile::ClassDef* class_def, 151 const DexFile* dex_file, 154 const DexFile::ClassDef* class_def, 155 const DexFile::CodeItem* code_item, 206 MethodVerifier(const DexFile* dex_file, Handle<mirror::DexCache>* dex_cache, in MethodVerifier() 207 Handle<mirror::ClassLoader>* class_loader, const DexFile::ClassDef* class_def, in MethodVerifier() 208 const DexFile::CodeItem* code_item, uint32_t method_idx, mirror::ArtMethod* method, in MethodVerifier() 229 const DexFile::CodeItem* CodeItem() const; 244 MethodVerifier(const DexFile* dex_file, Handle<mirror::DexCache>* dex_cache, [all …]
|
/art/compiler/sea_ir/ |
D | frontend.cc | 42 const DexFile::CodeItem* code_item, in CompileMethodWithSeaIr() 45 jobject class_loader, const DexFile& dex_file, in CompileMethodWithSeaIr() 66 const DexFile::CodeItem* code_item, in SeaIrCompileOneMethod() 72 const DexFile& dex_file, in SeaIrCompileOneMethod() 80 const art::DexFile::CodeItem* code_item, in SeaIrCompileMethod() 83 const art::DexFile& dex_file) { in SeaIrCompileMethod()
|
/art/runtime/native/ |
D | dalvik_system_DexFile.cc | 112 std::unique_ptr<std::vector<const DexFile*>> dex_files(new std::vector<const DexFile*>()); in DexFile_openDexFileNative() 140 static std::vector<const DexFile*>* toDexFiles(jlong dex_file_address, JNIEnv* env) { in toDexFiles() 141 std::vector<const DexFile*>* dex_files = reinterpret_cast<std::vector<const DexFile*>*>( in toDexFiles() 151 std::unique_ptr<std::vector<const DexFile*>> dex_files(toDexFiles(cookie, env)); in DexFile_closeDexFile() 158 for (const DexFile* dex_file : *dex_files) { in DexFile_closeDexFile() 171 std::vector<const DexFile*>* dex_files = toDexFiles(cookie, env); in DexFile_defineClassNative() 183 for (const DexFile* dex_file : *dex_files) { in DexFile_defineClassNative() 184 const DexFile::ClassDef* dex_class_def = dex_file->FindClassDef(descriptor.c_str()); in DexFile_defineClassNative() 214 std::vector<const DexFile*>* dex_files = toDexFiles(cookie, env); in DexFile_getClassNameList() 220 for (const DexFile* dex_file : *dex_files) { in DexFile_getClassNameList() [all …]
|
/art/runtime/mirror/ |
D | art_method-inl.h | 300 return GetDexMethodIndex() == DexFile::kDexNoIndex; in IsRuntimeMethod() 401 inline const DexFile* ArtMethod::GetDexFile() { in GetDexFile() 408 if (UNLIKELY(dex_method_idx == DexFile::kDexNoIndex)) { in GetDeclaringClassDescriptor() 411 const DexFile* dex_file = method->GetDexFile(); in GetDeclaringClassDescriptor() 417 const DexFile* dex_file = method->GetDexFile(); in GetShorty() 424 if (dex_method_idx != DexFile::kDexNoIndex) { in GetSignature() 425 const DexFile* dex_file = method->GetDexFile(); in GetSignature() 434 if (LIKELY(dex_method_idx != DexFile::kDexNoIndex)) { in GetName() 435 const DexFile* dex_file = method->GetDexFile(); in GetName() 454 inline const DexFile::CodeItem* ArtMethod::GetCodeItem() { in GetCodeItem() [all …]
|
/art/compiler/sea_ir/ir/ |
D | sea.h | 262 static SeaGraph* GetGraph(const art::DexFile&); 265 const art::DexFile::CodeItem* code_item, uint16_t class_def_idx, 266 uint32_t method_idx, uint32_t method_access_flags, const art::DexFile& dex_file); 280 const art::DexFile* GetDexFile() const { in GetDexFile() 296 explicit SeaGraph(const art::DexFile& df); 313 void BuildMethodSeaGraph(const art::DexFile::CodeItem* code_item, 314 const art::DexFile& dex_file, uint16_t class_def_idx, 342 CodeGenData* GenerateLLVM(const std::string& function_name, const art::DexFile& dex_file); 344 void InsertSignatureNodes(const art::DexFile::CodeItem* code_item, Region* r); 349 const art::DexFile& dex_file_; [all …]
|
/art/compiler/dex/quick/ |
D | dex_file_to_method_inliner_map.h | 30 class DexFile; variable 43 DexFileMethodInliner* GetMethodInliner(const DexFile* dex_file) NO_THREAD_SAFETY_ANALYSIS; 49 std::map<const DexFile*, DexFileMethodInliner*> inliners_ GUARDED_BY(lock_);
|