summaryrefslogtreecommitdiff
path: root/compiler/driver/compiler_driver.cc
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2017-04-19 12:31:42 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2017-04-19 12:31:43 +0000
commit25009fdd7a5dccc957afc8178ca5d3733f899147 (patch)
treea6c03673b4247b338b8418a0d3feaf128068c71f /compiler/driver/compiler_driver.cc
parent46d342f845f5faadac1a61d064ccca3a5d2601c7 (diff)
parentc7da1d61ba0fc38950f303813d4ba8c2d6d05c7f (diff)
Merge "Record class status after verification."
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
-rw-r--r--compiler/driver/compiler_driver.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc
index e823f67d3c..1a4452429e 100644
--- a/compiler/driver/compiler_driver.cc
+++ b/compiler/driver/compiler_driver.cc
@@ -2181,6 +2181,10 @@ class VerifyClassVisitor : public CompilationVisitor {
CHECK(klass->ShouldVerifyAtRuntime() || klass->IsVerified() || klass->IsErroneous())
<< klass->PrettyDescriptor() << ": state=" << klass->GetStatus();
+ // Class has a meaningful status for the compiler now, record it.
+ ClassReference ref(manager_->GetDexFile(), class_def_index);
+ manager_->GetCompiler()->RecordClassStatus(ref, klass->GetStatus());
+
// It is *very* problematic if there are verification errors in the boot classpath. For example,
// we rely on things working OK without verification when the decryption dialog is brought up.
// So abort in a debug build if we find this violated.