Home | History | Annotate | Download | only in runtime

Lines Matching refs:oat

33 #include "oat.h"
80 // generate oat files starting from symlinks which go into dalvik cache.
81 // (recall that the oat files in dalvik cache are encoded by replacing '/'
83 // The boot image oat files (which are symlinked in dalvik-cache) are not
84 // loaded via the oat file assistant.
115 // Get the oat filename.
120 LOG(WARNING) << "Failed to determine oat file name for dex location "
136 VLOG(oat) << "Dex parent of " << dex_location_ << " is not writable: " << strerror(errno);
158 VLOG(oat) << "Dex location " << dex_location_ << " is in boot class path";
175 // oat location for the same reasoning.
178 // to generate oat files anyway.
236 // dex2oat to generate the oat file. Always generate the oat file as if it
264 // means we must have a vdex file with no corresponding oat file. In
313 LOG(WARNING) << "Failed to open dex file from oat dex file: " << error_msg;
329 LOG(WARNING) << "Failed to open dex file from oat dex file: " << error_msg;
410 VLOG(oat) << "Dex checksum does not match for dex: " << dex
452 VLOG(oat) << "No image for oat image checksum to match against.";
459 // the oat file. This could technically lead to crashes, but there's no
460 // way we could find a better oat file to use for this dex location,
465 << "Allow oat file use. This is potentially dangerous.";
467 VLOG(oat) << "Oat image checksum does not match image checksum.";
471 VLOG(oat) << "Image checksum test skipped for compiler filter " << current_compiler_filter;
478 VLOG(oat) << "No image to check oat relocation against.";
482 // Verify the oat_data_begin recorded for the image in the oat file matches
483 // the actual oat_data_begin for boot.oat in the image.
487 VLOG(oat) << file.GetLocation() <<
488 ": Oat file image oat_data_begin (" << oat_data_begin << ")"
494 // Verify the oat_patch_delta recorded for the image in the oat file matches
498 VLOG(oat) << file.GetLocation() <<
499 ": Oat file image patch delta (" << oat_patch_delta << ")"
505 // Oat files compiled in PIC mode do not require relocation.
506 VLOG(oat) << "Oat relocation test skipped for PIC oat file";
509 VLOG(oat) << "Oat relocation test skipped for compiler filter " << current_compiler_filter;
524 // .odex and inserting an oat/<isa> directory. For example:
526 // odex_location = /foo/bar/oat/<isa>/baz.odex
528 // Find the directory portion of the dex location and add the oat/<isa>
536 // Add the oat directory.
537 dir += "oat";
587 *error_msg = "Could not create the oat dir " + dir + ":" + strerror(errno);
622 *error_msg = "Generation of oat file for dex location " + dex_location_
628 *error_msg = "Generation of oat file for dex location " + dex_location_
629 + " not attempted because the oat file name could not be determined.";
644 // If this is the odex location, we need to create the odex file layout (../oat/isa/..)
651 // Set the permissions for the oat and the vdex files.
660 *error_msg = "Generation of oat file " + oat_file_name
667 *error_msg = "Generation of oat file " + oat_file_name
675 *error_msg = "Generation of oat file " + oat_file_name
676 + " not attempted because the oat file could not be created.";
681 *error_msg = "Generation of oat file " + oat_file_name
682 + " not attempted because the oat file could not be made world readable.";
690 args.push_back("--oat-fd=" + std::to_string(oat_file->Fd()));
691 args.push_back("--oat-location=" + oat_file_name);
695 // Manually delete the oat and vdex files. This ensures there is no garbage
711 *error_msg = "Unable to close oat file " + oat_file_name;
792 // TODO: The oat file assistant should be the definitive place for
793 // determining the oat file name from the dex location, not
822 VLOG(oat) << "OatFileAssistant: " << error_msg;
882 // as the best oat file. This corresponds to the regular use case when
885 // writable and thus the oat location might be more up to date.
891 // If the oat location is usable take it.
896 // The oat file is not usable but the odex file might be up to date.
903 // The oat file is not usable and the odex file is not up to date.
905 // the oat location up to date.
911 // - the oat location is not usable
914 // Pick the odex if it exists, or the oat if not.
974 VLOG(oat) << "unable to open vdex file " << vdex_filename << ": " << error_msg;
980 VLOG(oat) << error_msg;
988 VLOG(oat) << file->GetLocation() << " is " << status_
1001 // The oat file is in good shape as is.
1006 // If no compilation is desired, then it doesn't matter if the oat
1032 CHECK(!file_released_) << "GetFile called after oat file released.";
1046 VLOG(oat) << "OatFileAssistant test for existing oat file "
1063 VLOG(oat) << "Compiler filter not okay because Profile changed";
1096 VLOG(oat) << "Oat File Assistant: No relocated oat file found,"
1097 << " attempting to fall back to interpreting oat file instead.";
1104 // We are loading an oat file for runtime use that needs relocation.
1106 // dex code in the oat file rather than trying to execute the unrelocated