summaryrefslogtreecommitdiff
path: root/compiler/driver/compiler_driver.cc
diff options
context:
space:
mode:
author Mathieu Chartier <mathieuc@google.com> 2014-08-14 00:17:32 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2014-08-14 00:12:54 +0000
commit3e6ff5bcf6f365fd869a5ce62235d4957c71bdbe (patch)
tree97f046c61bddbdddcab3bc587623f29e0f54aed0 /compiler/driver/compiler_driver.cc
parentb74ff132f217776c1ab698712bc2dbc526297288 (diff)
parent093ef212b7db4c17ed62df5cac0c1ac3a24e691d (diff)
Merge "Move explicit GC after we are done initalizing all classes."
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
-rw-r--r--compiler/driver/compiler_driver.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc
index 0b217a1219..645fc1c155 100644
--- a/compiler/driver/compiler_driver.cc
+++ b/compiler/driver/compiler_driver.cc
@@ -1885,10 +1885,6 @@ void CompilerDriver::InitializeClasses(jobject jni_class_loader, const DexFile&
thread_count = thread_count_;
}
context.ForAll(0, dex_file.NumClassDefs(), InitializeClass, thread_count);
- if (IsImage()) {
- // Prune garbage objects created during aborted transactions.
- Runtime::Current()->GetHeap()->CollectGarbage(true);
- }
}
void CompilerDriver::InitializeClasses(jobject class_loader,
@@ -1899,6 +1895,10 @@ void CompilerDriver::InitializeClasses(jobject class_loader,
CHECK(dex_file != NULL);
InitializeClasses(class_loader, *dex_file, dex_files, thread_pool, timings);
}
+ if (IsImage()) {
+ // Prune garbage objects created during aborted transactions.
+ Runtime::Current()->GetHeap()->CollectGarbage(true);
+ }
}
void CompilerDriver::Compile(jobject class_loader, const std::vector<const DexFile*>& dex_files,