/art/patchoat/ |
H A D | patchoat.h | 54 PatchOat(ElfFile* oat_file, off_t delta, TimingLogger* timings) argument 55 : oat_file_(oat_file), delta_(delta), timings_(timings) {} 60 PatchOat(ElfFile* oat_file, MemMap* image, gc::accounting::ContinuousSpaceBitmap* bitmap, argument 62 : oat_file_(oat_file), image_(image), bitmap_(bitmap), heap_(heap), 79 // Patches oat in place, modifying the oat_file given to the constructor.
|
/art/compiler/ |
H A D | elf_patcher.h | 26 #include "oat_file.h" 43 const OatFile* oat_file, uintptr_t oat_data_begin, 57 const OatFile* oat_file, uintptr_t oat_data_begin, 60 return ElfPatcher::Patch(driver, elf_file, oat_file, oat_data_begin, 65 ElfPatcher(const CompilerDriver* driver, ElfFile* elf_file, const OatFile* oat_file, argument 68 : compiler_driver_(driver), elf_file_(elf_file), oat_file_(oat_file), 110 // The oat_file that is actually loaded.
|
H A D | elf_patcher.cc | 44 const OatFile* oat_file = class_linker->FindOpenedOatFileFromOatLocation(oat_location); local 45 if (oat_file == nullptr) { 47 oat_file = OatFile::Open(oat_location, oat_location, NULL, false, error_msg); 48 if (oat_file == nullptr) { 53 CHECK_EQ(class_linker->RegisterOatFile(oat_file), oat_file); 55 return ElfPatcher::Patch(driver, elf_file, oat_file, 56 reinterpret_cast<uintptr_t>(oat_file->Begin()), cb, cb_data, error_msg); 59 bool ElfPatcher::Patch(const CompilerDriver* driver, ElfFile* elf, const OatFile* oat_file, argument 73 ElfPatcher p(driver, elf, oat_file, oat_heade [all...] |
/art/runtime/gc/space/ |
H A D | image_space.cc | 31 #include "oat_file.h" 668 OatFile* oat_file = OatFile::Open(oat_filename, oat_filename, image_header.GetOatDataBegin(), local 670 if (oat_file == NULL) { 675 uint32_t oat_checksum = oat_file->GetOatHeader().GetChecksum(); 683 int32_t oat_patch_delta = oat_file->GetOatHeader().GetImagePatchDelta(); 691 return oat_file;
|
/art/runtime/ |
H A D | oat_file.cc | 17 #include "oat_file.h" 48 std::unique_ptr<OatFile> oat_file(new OatFile(location, false)); 49 oat_file->elf_file_.reset(elf_file); 51 oat_file->begin_ = elf_file->Begin() + hdr->sh_offset; 52 oat_file->end_ = elf_file->Begin() + hdr->sh_size + hdr->sh_offset; 53 return oat_file->Setup(error_msg) ? oat_file.release() : nullptr; 61 std::unique_ptr<OatFile> oat_file(new OatFile(location, false)); 62 oat_file->begin_ = &oat_contents[0]; 63 oat_file 433 OatDexFile(const OatFile* oat_file, const std::string& dex_file_location, const std::string& canonical_dex_file_location, uint32_t dex_file_location_checksum, const byte* dex_file_pointer, const uint32_t* oat_class_offsets_pointer) argument 502 OatClass(const OatFile* oat_file, mirror::Class::Status status, OatClassType type, uint32_t bitmap_size, const uint32_t* bitmap_pointer, const OatMethodOffsets* methods_pointer) argument [all...] |
H A D | class_linker.cc | 48 #include "oat_file.h" 660 const OatFile* ClassLinker::RegisterOatFile(const OatFile* oat_file) { argument 664 CHECK_NE(oat_file, oat_files_[i]) << oat_file->GetLocation(); 667 VLOG(class_linker) << "Registering " << oat_file->GetLocation(); 668 oat_files_.push_back(oat_file); 669 return oat_file; 674 OatFile* oat_file = space->ReleaseOatFile(); local 675 CHECK_EQ(RegisterOatFile(oat_file), oat_file); local 719 LoadMultiDexFilesFromOatFile(const OatFile* oat_file, const char* dex_location, const uint32_t* dex_location_checksum, bool generated, std::vector<std::string>* error_msgs, std::vector<const DexFile*>* dex_files) argument 893 const OatFile* oat_file = open_oat_file.release(); // Avoid deleting it. local 1052 VerifyOatImageChecksum(const OatFile* oat_file, const InstructionSet instruction_set) argument 1071 VerifyOatChecksums(const OatFile* oat_file, const InstructionSet instruction_set, std::string* error_msg) argument 1114 VerifyOatAndDexFileChecksums(const OatFile* oat_file, const char* dex_location, uint32_t dex_location_checksum, const InstructionSet instruction_set, std::string* error_msg) argument 1147 VerifyOatWithDexFile(const OatFile* oat_file, const char* dex_location, const uint32_t* dex_location_checksum, std::string* error_msg) argument 1218 const OatFile* oat_file = oat_files_[i]; local 1476 GetRequiredDelta(const OatFile* oat_file, InstructionSet isa) argument 1493 CheckOatFile(const OatFile* oat_file, InstructionSet isa, bool* checksum_verified, std::string* error_msg) argument 1552 const OatFile* oat_file = FindOpenedOatFileFromOatLocation(oat_location); local 1591 OatFile& oat_file = GetImageOatFile(space); local [all...] |
/art/dex2oat/ |
H A D | dex2oat.cc | 328 bool PatchOatCode(const CompilerDriver* compiler_driver, File* oat_file, argument 332 std::unique_ptr<ElfFile> elf_file(ElfFile::Open(oat_file, PROT_READ|PROT_WRITE, 348 File* oat_file, 424 if (!driver->WriteElf(android_root, is_host, dex_files, &oat_writer, oat_file)) { 425 LOG(ERROR) << "Failed to write ELF file " << oat_file->GetPath(); 432 oat_file->Flush(); 437 if (!PatchOatCode(driver.get(), oat_file, oat_location, &error_msg)) { 438 LOG(ERROR) << "Failed to fixup ELF file " << oat_file->GetPath() << ": " << error_msg; 463 std::unique_ptr<File> oat_file(OS::OpenFileReadWrite(oat_filename.c_str())); 464 if (oat_file 344 CreateOatFile(const std::string& boot_image_option, const std::string& android_root, bool is_host, const std::vector<const DexFile*>& dex_files, File* oat_file, const std::string& oat_location, const std::string& bitcode_filename, bool image, std::unique_ptr<std::set<std::string>>& image_classes, bool dump_stats, bool dump_passes, TimingLogger& timings, CumulativeLogger& compiler_phases_timings, std::string profile_file, SafeMap<std::string, std::string>* key_value_store) argument 1217 std::unique_ptr<File> oat_file; local [all...] |
/art/oatdump/ |
H A D | oatdump.cc | 48 #include "oat_file-inl.h" 141 explicit OatDumper(const OatFile& oat_file, OatDumperOptions* options) argument 142 : oat_file_(oat_file), 143 oat_dex_files_(oat_file.GetOatDexFiles()), 147 oat_file.Begin()))) { 1034 const OatFile* oat_file = class_linker->FindOpenedOatFileFromOatLocation(oat_location); local 1035 if (oat_file == nullptr) { 1036 oat_file = OatFile::Open(oat_location, oat_location, nullptr, false, &error_msg); 1037 if (oat_file == nullptr) { 1044 stats_.oat_file_bytes = oat_file 1763 OatFile* oat_file = local [all...] |