/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 | dex_file_test.cc | 35 std::unique_ptr<const DexFile> dex(OpenTestDexFile("Nested")); in TEST_F() 136 static std::unique_ptr<const DexFile> OpenDexFileBase64(const char* base64, in OpenDexFileBase64() 158 std::vector<std::unique_ptr<const DexFile>> tmp; in OpenDexFileBase64() 159 bool success = DexFile::Open(location, location, &error_msg, &tmp); in OpenDexFileBase64() 162 std::unique_ptr<const DexFile> dex_file = std::move(tmp[0]); in OpenDexFileBase64() 170 std::unique_ptr<const DexFile> raw(OpenDexFileBase64(kRawDex, tmp.GetFilename().c_str())); in TEST_F() 173 const DexFile::Header& header = raw->GetHeader(); in TEST_F() 201 std::unique_ptr<const DexFile> raw(OpenTestDexFile("Main")); in TEST_F() 209 EXPECT_TRUE(DexFile::GetChecksum(GetLibCoreDexFileName().c_str(), &checksum, &error_msg)) in TEST_F() 216 std::unique_ptr<const DexFile> raw(OpenTestDexFile("Nested")); in TEST_F() [all …]
|
D | dex_file.cc | 56 const uint8_t DexFile::kDexMagic[] = { 'd', 'e', 'x', '\n' }; 57 const uint8_t DexFile::kDexMagicVersion[] = { '0', '3', '5', '\0' }; 79 bool DexFile::GetChecksum(const char* filename, uint32_t* checksum, std::string* error_msg) { in GetChecksum() 88 if (DexFile::IsMultiDexLocation(filename)) { in GetChecksum() 118 std::unique_ptr<const DexFile> dex_file( in GetChecksum() 119 DexFile::OpenFile(fd.release(), filename, false, error_msg)); in GetChecksum() 130 bool DexFile::Open(const char* filename, const char* location, std::string* error_msg, in Open() 131 std::vector<std::unique_ptr<const DexFile>>* dex_files) { in Open() 140 return DexFile::OpenZip(fd.release(), location, error_msg, dex_files); in Open() 143 std::unique_ptr<const DexFile> dex_file(DexFile::OpenFile(fd.release(), location, true, in Open() [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 std::unique_ptr<const DexFile> OpenDexFileBase64(const char* base64, in OpenDexFileBase64() 126 std::vector<std::unique_ptr<const DexFile>> tmp; in OpenDexFileBase64() 127 bool success = DexFile::Open(location, location, error_msg, &tmp); in OpenDexFileBase64() 130 std::unique_ptr<const DexFile> dex_file = std::move(tmp[0]); in OpenDexFileBase64() 155 std::unique_ptr<const DexFile> raw(OpenDexFileBase64(kGoodTestDex, tmp.GetFilename().c_str(), in TEST_F() 161 DexFile::Header* header = reinterpret_cast<DexFile::Header*>(dex_file); in FixUpChecksum() 164 const uint32_t non_sum = sizeof(DexFile::Header::magic_) + sizeof(DexFile::Header::checksum_); in FixUpChecksum() 170 static std::unique_ptr<const DexFile> FixChecksumAndOpen(uint8_t* bytes, size_t length, in FixChecksumAndOpen() 192 std::vector<std::unique_ptr<const DexFile>> tmp; in FixChecksumAndOpen() 193 if (!DexFile::Open(location, location, error_msg, &tmp)) { in FixChecksumAndOpen() [all …]
|
D | common_runtime_test.h | 34 class DexFile; variable 100 std::unique_ptr<const DexFile> LoadExpectSingleDexFile(const char* location); 124 std::vector<std::unique_ptr<const DexFile>> OpenTestDexFiles(const char* name) 127 std::unique_ptr<const DexFile> OpenTestDexFile(const char* name) 140 const DexFile* java_lang_dex_file_; 141 std::vector<const DexFile*> boot_class_path_; 145 std::vector<const DexFile*> GetDexFiles(jobject jclass_loader); 148 const DexFile* GetFirstDexFile(jobject jclass_loader); 155 std::vector<std::unique_ptr<const DexFile>> loaded_dex_files_;
|
D | art_method-inl.h | 271 return dex_method_index_ == DexFile::kDexNoIndex; in IsRuntimeMethod() 324 inline const DexFile* ArtMethod::GetDexFile() { in GetDexFile() 330 if (UNLIKELY(dex_method_idx == DexFile::kDexNoIndex)) { in GetDeclaringClassDescriptor() 334 const DexFile* dex_file = GetDexFile(); in GetDeclaringClassDescriptor() 340 const DexFile* dex_file = GetDexFile(); in GetShorty() 346 if (dex_method_idx != DexFile::kDexNoIndex) { in GetSignature() 348 const DexFile* dex_file = GetDexFile(); in GetSignature() 356 if (LIKELY(dex_method_idx != DexFile::kDexNoIndex)) { in GetName() 358 const DexFile* dex_file = GetDexFile(); in GetName() 377 inline const DexFile::CodeItem* ArtMethod::GetCodeItem() { in GetCodeItem() [all …]
|
D | dex_file_verifier.h | 29 static bool Verify(const DexFile* dex_file, const uint8_t* begin, size_t size, 37 DexFileVerifier(const DexFile* dex_file, const uint8_t* 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 | oat_file_test.cc | 65 static std::vector<const DexFile*> ToConstDexFiles( in ToConstDexFiles() 66 const std::vector<std::unique_ptr<const DexFile>>& in) { in ToConstDexFiles() 67 std::vector<const DexFile*> ret; in ToConstDexFiles() 92 std::vector<std::unique_ptr<const DexFile>> dex_files1 = OpenTestDexFiles("Main"); in TEST_F() 93 std::vector<const DexFile*> dex_files_const1 = ToConstDexFiles(dex_files1); in TEST_F() 102 std::vector<std::unique_ptr<const DexFile>> dex_files2 = OpenTestDexFiles("MultiDex"); in TEST_F() 104 std::vector<const DexFile*> dex_files_const2 = ToConstDexFiles(dex_files2); in TEST_F()
|
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_;
|
D | dex_file.h | 54 class DexFile { 389 std::vector<std::unique_ptr<const DexFile>>* dex_files); 396 static std::unique_ptr<const DexFile> Open(const uint8_t* base, size_t size, in Open() 407 std::vector<std::unique_ptr<const DexFile>>* dex_files); 410 virtual ~DexFile(); 577 const FieldId* FindFieldId(const DexFile::TypeId& declaring_klass, 578 const DexFile::StringId& name, 579 const DexFile::TypeId& type) const; 583 const DexFile::TypeId& type_id = GetTypeId(field_id.class_idx_); in GetFieldDeclaringClassDescriptor() 589 const DexFile::TypeId& type_id = GetTypeId(field_id.type_idx_); in GetFieldTypeDescriptor() [all …]
|
D | class_linker.h | 112 void InitWithoutImage(std::vector<std::unique_ptr<const DexFile>> boot_class_path) 152 const DexFile& dex_file, const DexFile::ClassDef& dex_class_def) 194 mirror::String* ResolveString(const DexFile& dex_file, uint32_t string_idx, 201 mirror::Class* ResolveType(const DexFile& dex_file, uint16_t type_idx, mirror::Class* referrer) 217 mirror::Class* ResolveType(const DexFile& dex_file, uint16_t type_idx, 227 ArtMethod* ResolveMethod(const DexFile& dex_file, uint32_t method_idx, 250 ArtField* ResolveField(const DexFile& dex_file, 261 ArtField* ResolveFieldJLS(const DexFile& dex_file, uint32_t field_idx, 281 void RegisterDexFile(const DexFile& dex_file) 284 void RegisterDexFile(const DexFile& dex_file, Handle<mirror::DexCache> dex_cache) [all …]
|
D | art_method.cc | 63 const DexFile::MethodId& method_id = dex_file->GetMethodId(dex_method_idx); in GetNameAsString() 98 const DexFile* dex_file = method1->GetDexFile(); in HasSameNameAndSignature() 99 const DexFile::MethodId& mid = dex_file->GetMethodId(method1->GetDexMethodIndex()); in HasSameNameAndSignature() 101 const DexFile::MethodId& mid2 = dex_file->GetMethodId(method2->GetDexMethodIndex()); in HasSameNameAndSignature() 104 const DexFile* dex_file2 = method2->GetDexFile(); in HasSameNameAndSignature() 105 const DexFile::MethodId& mid2 = dex_file2->GetMethodId(method2->GetDexMethodIndex()); in HasSameNameAndSignature() 151 uint32_t ArtMethod::FindDexMethodIndexInOtherDexFile(const DexFile& other_dexfile, in FindDexMethodIndexInOtherDexFile() 153 const DexFile* dexfile = GetDexFile(); in FindDexMethodIndexInOtherDexFile() 155 const DexFile::MethodId& mid = dexfile->GetMethodId(dex_method_idx); in FindDexMethodIndexInOtherDexFile() 156 const DexFile::MethodId& name_and_sig_mid = other_dexfile.GetMethodId(name_and_signature_idx); in FindDexMethodIndexInOtherDexFile() [all …]
|
D | method_reference.h | 24 class DexFile; variable 28 MethodReference(const DexFile* file, uint32_t index) : dex_file(file), dex_method_index(index) { in MethodReference() 30 const DexFile* dex_file;
|
D | common_runtime_test.cc | 279 std::unique_ptr<const DexFile> CommonRuntimeTest::LoadExpectSingleDexFile(const char* location) { in LoadExpectSingleDexFile() 280 std::vector<std::unique_ptr<const DexFile>> dex_files; in LoadExpectSingleDexFile() 283 if (!DexFile::Open(location, location, &error_msg, &dex_files)) { in LoadExpectSingleDexFile() 457 std::vector<std::unique_ptr<const DexFile>> CommonRuntimeTest::OpenTestDexFiles(const char* name) { in OpenTestDexFiles() 460 std::vector<std::unique_ptr<const DexFile>> dex_files; in OpenTestDexFiles() 461 bool success = DexFile::Open(filename.c_str(), filename.c_str(), &error_msg, &dex_files); in OpenTestDexFiles() 470 std::unique_ptr<const DexFile> CommonRuntimeTest::OpenTestDexFile(const char* name) { in OpenTestDexFile() 471 std::vector<std::unique_ptr<const DexFile>> vector = OpenTestDexFiles(name); in OpenTestDexFile() 476 std::vector<const DexFile*> CommonRuntimeTest::GetDexFiles(jobject jclass_loader) { in GetDexFiles() 477 std::vector<const DexFile*> ret; in GetDexFiles() [all …]
|
/art/compiler/driver/ |
D | dex_compilation_unit.h | 40 const DexFile& dex_file, const DexFile::CodeItem* code_item, 56 const DexFile* GetDexFile() const { in GetDexFile() 68 const DexFile::CodeItem* GetCodeItem() const { in GetCodeItem() 73 const DexFile::MethodId& method_id = dex_file_->GetMethodId(dex_method_idx_); in GetShorty() 78 const DexFile::MethodId& method_id = dex_file_->GetMethodId(dex_method_idx_); in GetShorty() 119 const DexFile* const dex_file_; 121 const DexFile::CodeItem* const code_item_;
|
D | compiler_driver.h | 115 void CompileAll(jobject class_loader, const std::vector<const DexFile*>& dex_files, 190 void AddRequiresConstructorBarrier(Thread* self, const DexFile* dex_file, 192 bool RequiresConstructorBarrier(Thread* self, const DexFile* dex_file, 197 bool CanAssumeTypeIsPresentInDexCache(const DexFile& dex_file, uint32_t type_idx); 199 bool CanAssumeStringIsPresentInDexCache(const DexFile& dex_file, uint32_t string_idx) 203 bool CanAccessTypeWithoutChecks(uint32_t referrer_idx, const DexFile& dex_file, 210 bool CanAccessInstantiableTypeWithoutChecks(uint32_t referrer_idx, const DexFile& dex_file, 214 bool CanEmbedTypeInCode(const DexFile& dex_file, uint32_t type_idx, 254 Handle<mirror::ClassLoader> class_loader, const DexFile* dex_file, 260 ArtField* resolved_field, const DexFile** declaring_dex_file, [all …]
|
D | compiler_driver.cc | 339 const art::DexFile::CodeItem* code_item, 345 const art::DexFile& dex_file); 498 const std::vector<const DexFile*>& dex_files, in CompileAll() 512 Thread* self, Handle<mirror::ClassLoader> class_loader, const DexFile& dex_file, in GetDexToDexCompilationlevel() 513 const DexFile::ClassDef& class_def) { in GetDexToDexCompilationlevel() 549 const DexFile* dex_file; in CompileOne() 563 const DexFile::CodeItem* code_item = dex_file->GetCodeItem(method->GetCodeItemOffset()); in CompileOne() 566 std::vector<const DexFile*> dex_files; in CompileOne() 576 const DexFile::ClassDef& class_def = dex_file->GetClassDef(class_def_idx); in CompileOne() 598 const DexFile* dex_file = method->GetDexFile(); in CompileMethod() [all …]
|
/art/runtime/native/ |
D | dalvik_system_DexFile.cc | 42 static std::unique_ptr<std::vector<const DexFile*>> 48 return std::unique_ptr<std::vector<const DexFile*>>(); in ConvertJavaArrayToNative() 56 return std::unique_ptr<std::vector<const DexFile*>>(); in ConvertJavaArrayToNative() 59 std::unique_ptr<std::vector<const DexFile*>> ret(new std::vector<const DexFile*>()); in ConvertJavaArrayToNative() 62 ret->push_back(reinterpret_cast<const DexFile*>(static_cast<uintptr_t>(*(long_data + i)))); in ConvertJavaArrayToNative() 67 return std::unique_ptr<std::vector<const DexFile*>>(); in ConvertJavaArrayToNative() 74 std::vector<std::unique_ptr<const DexFile>>& vec) { in ConvertNativeToJavaArray() 164 std::vector<std::unique_ptr<const DexFile>> dex_files; in DexFile_openDexFileNative() 196 std::unique_ptr<std::vector<const DexFile*>> dex_files = ConvertJavaArrayToNative(env, cookie); in DexFile_closeDexFile() 220 std::unique_ptr<std::vector<const DexFile*>> dex_files = ConvertJavaArrayToNative(env, cookie); in DexFile_defineClassNative() [all …]
|
/art/compiler/ |
D | compiler.h | 45 virtual bool CanCompileMethod(uint32_t method_idx, const DexFile& dex_file, CompilationUnit* cu) 48 virtual CompiledMethod* Compile(const DexFile::CodeItem* code_item, 54 const DexFile& dex_file) const = 0; 58 const DexFile& dex_file) const = 0; 87 static bool IsPathologicalCase(const DexFile::CodeItem& code_item, 89 const DexFile& dex_file);
|
/art/compiler/utils/ |
D | test_dex_file_builder.h | 81 std::unique_ptr<const DexFile> Build(const std::string& dex_location) { in Build() 84 uint8_t data[sizeof(DexFile::Header)]; in Build() 88 DexFile::Header* header = reinterpret_cast<DexFile::Header*>(&header_data.data); in Build() 89 std::copy_n(DexFile::kDexMagic, 4u, header->magic_); in Build() 90 std::copy_n(DexFile::kDexMagicVersion, 4u, header->magic_ + 4u); in Build() 92 header->endian_tag_ = DexFile::kDexEndianConstant; in Build() 99 uint32_t string_ids_offset = sizeof(DexFile::Header); in Build() 110 uint32_t type_ids_offset = string_ids_offset + strings_.size() * sizeof(DexFile::StringId); in Build() 119 uint32_t proto_ids_offset = type_ids_offset + types_.size() * sizeof(DexFile::TypeId); in Build() 127 data_section_size = entry.second.data_offset + 4u + num_args * sizeof(DexFile::TypeItem); in Build() [all …]
|
/art/test/134-nodex2oat-nofallback/ |
D | expected.txt | 8 at dalvik.system.DexFile.openDexFileNative(Native Method) 9 at dalvik.system.DexFile.openDexFile(DexFile.java:295) 10 at dalvik.system.DexFile.<init>(DexFile.java:80) 11 at dalvik.system.DexFile.<init>(DexFile.java:59) 39 at dalvik.system.DexFile.openDexFileNative(Native Method) 40 at dalvik.system.DexFile.openDexFile(DexFile.java:295) 41 at dalvik.system.DexFile.<init>(DexFile.java:80) 42 at dalvik.system.DexFile.<init>(DexFile.java:59)
|
/art/runtime/verifier/ |
D | method_verifier.h | 143 static FailureKind VerifyClass(Thread* self, const DexFile* dex_file, 146 const DexFile::ClassDef* class_def, 151 const DexFile* dex_file, 154 const DexFile::ClassDef* class_def, 155 const DexFile::CodeItem* code_item, ArtMethod* method, 211 MethodVerifier(Thread* self, const DexFile* dex_file, Handle<mirror::DexCache> dex_cache, in MethodVerifier() 212 Handle<mirror::ClassLoader> class_loader, const DexFile::ClassDef* class_def, in MethodVerifier() 213 const DexFile::CodeItem* code_item, uint32_t method_idx, in MethodVerifier() 237 const DexFile::CodeItem* CodeItem() const; 282 MethodVerifier(Thread* self, const DexFile* dex_file, Handle<mirror::DexCache> dex_cache, [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_);
|
D | quick_compiler.h | 37 bool CanCompileMethod(uint32_t method_idx, const DexFile& dex_file, CompilationUnit* cu) const 40 CompiledMethod* Compile(const DexFile::CodeItem* code_item, 46 const DexFile& dex_file) const OVERRIDE; 50 const DexFile& dex_file) const OVERRIDE;
|