summaryrefslogtreecommitdiffstats
path: root/compiler
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2014-09-16 18:37:35 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-09-16 18:37:36 +0000
commit0b4f345ddf2919d496eb632bc4d5e7d7926a441a (patch)
tree371c1b03d1acf0d4e67ce295a14799d1a497479d /compiler
parentbace0378d720a1d2938ec7f6be17e2814671d20a (diff)
parent61ff009e37fa73ddfa7676bd9832cf3ee9702f97 (diff)
downloadandroid_art-0b4f345ddf2919d496eb632bc4d5e7d7926a441a.tar.gz
android_art-0b4f345ddf2919d496eb632bc4d5e7d7926a441a.tar.bz2
android_art-0b4f345ddf2919d496eb632bc4d5e7d7926a441a.zip
Merge "ART: Check for exceptions from unresolved classes"
Diffstat (limited to 'compiler')
-rw-r--r--compiler/driver/compiler_driver.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc
index 6910e04be1..d743f907a3 100644
--- a/compiler/driver/compiler_driver.cc
+++ b/compiler/driver/compiler_driver.cc
@@ -607,7 +607,7 @@ void CompilerDriver::PreCompile(jobject class_loader, const std::vector<const De
Resolve(class_loader, dex_files, thread_pool, timings);
if (!compiler_options_->IsVerificationEnabled()) {
- VLOG(compiler) << "Verify none mode specified, skipping verification.";
+ LOG(INFO) << "Verify none mode specified, skipping verification.";
SetVerified(class_loader, dex_files, thread_pool, timings);
return;
}
@@ -1796,8 +1796,11 @@ static void SetVerifiedClass(const ParallelCompilationManager* manager, size_t c
ClassReference ref(manager->GetDexFile(), class_def_index);
manager->GetCompiler()->RecordClassStatus(ref, klass->GetStatus());
}
+ } else {
+ Thread* self = soa.Self();
+ DCHECK(self->IsExceptionPending());
+ self->ClearException();
}
- soa.Self()->AssertNoPendingException();
}
void CompilerDriver::SetVerifiedDexFile(jobject class_loader, const DexFile& dex_file,