summaryrefslogtreecommitdiff
path: root/compiler/driver/compiler_driver.cc
diff options
context:
space:
mode:
author Andreas Gampe <agampe@google.com> 2014-12-02 19:25:07 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2014-12-02 19:25:07 +0000
commit5055c8e008fef62b23e485504472cd215b1b5bfd (patch)
tree5767bcd8a3beedbdd57be29ac6a87b524ef23621 /compiler/driver/compiler_driver.cc
parent4256440d7566510e13a796176c90841bad29d0e5 (diff)
parentdbfe254f5ca96f6c5b2284478597d6140c01a394 (diff)
Merge "ART: Print initialization failures to file"
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
-rw-r--r--compiler/driver/compiler_driver.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc
index 6d7713fdb1..3e3231a2d9 100644
--- a/compiler/driver/compiler_driver.cc
+++ b/compiler/driver/compiler_driver.cc
@@ -1821,6 +1821,12 @@ static void InitializeClass(const ParallelCompilationManager* manager, size_t cl
mirror::Throwable* exception = soa.Self()->GetException(&throw_location);
VLOG(compiler) << "Initialization of " << descriptor << " aborted because of "
<< exception->Dump();
+ std::ostream* file_log = manager->GetCompiler()->
+ GetCompilerOptions().GetInitFailureOutput();
+ if (file_log != nullptr) {
+ *file_log << descriptor << "\n";
+ *file_log << exception->Dump() << "\n";
+ }
soa.Self()->ClearException();
transaction.Abort();
CHECK_EQ(old_status, klass->GetStatus()) << "Previous class status not restored";