Lines Matching defs:dex2oat

152     // It seems only "/system/bin/dex2oat" is left, or not even that. Use a pretty line.
153 return "Starting dex2oat.";
179 UsageError("Usage: dex2oat [options]...");
364 UsageError(" This option is incompatible with read barriers (e.g., if dex2oat has been");
396 const char* reason = "dex2oat watch dog thread startup";
407 const char* reason = "dex2oat watch dog thread shutdown";
422 ::art::SetThreadName("dex2oat watch dog");
442 const char* reason = "dex2oat watch dog thread waiting";
447 Fatal(StringPrintf("dex2oat did not finish after %" PRId64 " seconds",
463 // watchdog (PackageManagerService.WATCHDOG_TIMEOUT, 10 minutes), so that dex2oat will abort
825 LOG(WARNING) << "Mismatch between dex2oat instruction set features ("
826 << *instruction_set_features_ << ") and those of dex2oat executable ("
1063 LOG(INFO) << "dex2oat: option[" << i << "]=" << argv[i];
1128 LOG(INFO) << "dex2oat: option[" << i << "]=" << argv[i];
1290 TimingLogger::ScopedTiming t("dex2oat Setup", timings_);
1421 // Note that dex2oat won't close the swap_fd_. The compiler driver's swap space will do that.
1485 TimingLogger::ScopedTiming t("dex2oat Compile", timings_);
1622 TimingLogger::ScopedTiming t("dex2oat Oat", timings_);
1643 // Use the default non moving space capacity since dex2oat does not have a separate non-
1645 // as the growth limit for dex2oat, but smaller in the zygote.
1660 TimingLogger::ScopedTiming t2("dex2oat Prepare image address space", timings_);
1669 TimingLogger::ScopedTiming t2("dex2oat Write ELF", timings_);
1764 TimingLogger::ScopedTiming t("dex2oat ImageWriter", timings_);
1786 TimingLogger::ScopedTiming t("dex2oat OatFile copy", timings_);
1810 TimingLogger::ScopedTiming t2("dex2oat Flush ELF", timings_);
1990 // for dex2oat when we want to skip the shared libraries check.
2147 std::string tmp_file_name(StringPrintf("/data/local/tmp/dex2oat.%d.%zd.dex",
2192 // from getting a statically linked version of dex2oat (because of dlsym and RTLD_NEXT).
2196 // foreground collector by default for dex2oat.
2390 LOG(INFO) << "dex2oat took " << PrettyDuration(NanoTime() - start_ns_)
2532 static int CompileImage(Dex2Oat& dex2oat) {
2533 dex2oat.LoadClassProfileDescriptors();
2534 dex2oat.Compile();
2536 if (!dex2oat.WriteOatFiles()) {
2537 dex2oat.EraseOatFiles();
2544 if (dex2oat.ShouldKeepOatFileOpen()) {
2545 if (!dex2oat.FlushOatFiles()) {
2548 } else if (!dex2oat.FlushCloseOatFiles()) {
2553 if (!dex2oat.HandleImage()) {
2558 if (dex2oat.IsHost()) {
2559 dex2oat.DumpTiming();
2564 if (!dex2oat.CopyStrippedToUnstripped()) {
2569 if (!dex2oat.FlushCloseOatFiles()) {
2573 dex2oat.DumpTiming();
2577 static int CompileApp(Dex2Oat& dex2oat) {
2578 dex2oat.Compile();
2580 if (!dex2oat.WriteOatFiles()) {
2581 dex2oat.EraseOatFiles();
2589 if (dex2oat.IsHost()) {
2590 if (!dex2oat.FlushCloseOatFiles()) {
2594 dex2oat.DumpTiming();
2600 if (!dex2oat.CopyStrippedToUnstripped()) {
2605 if (!dex2oat.FlushCloseOatFiles()) {
2609 dex2oat.DumpTiming();
2613 static int dex2oat(int argc, char** argv) {
2618 // Allocate `dex2oat` on the heap instead of on the stack, as Clang
2622 std::unique_ptr<Dex2Oat> dex2oat = MakeUnique<Dex2Oat>(&timings);
2625 dex2oat->ParseArgs(argc, argv);
2629 if (dex2oat->UseProfileGuidedCompilation()) {
2630 if (!dex2oat->LoadProfile()) {
2637 if (!dex2oat->OpenFile()) {
2647 if (kIsDebugBuild || dex2oat->IsBootImage() || dex2oat->IsHost() || !kIsTargetBuild) {
2653 if (!dex2oat->Setup()) {
2654 dex2oat->EraseOatFiles();
2659 if (dex2oat->IsImage()) {
2660 result = CompileImage(*dex2oat);
2662 result = CompileApp(*dex2oat);
2665 dex2oat->Shutdown();
2671 int result = art::dex2oat(argc, argv);