summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Bharadwaj Kalandhabhatta <bharadwajsk@google.com> 2017-06-27 11:14:49 -0700
committer Bharadwaj Kalandhabhatta <bharadwajsk@google.com> 2017-06-27 11:23:40 -0700
commit271c1e19c16609b966e0ceb67d4532e2772e73b5 (patch)
tree4120b60989fc8122cce17c9c8a721f60ee2bfa9f
parent9d7fd996bb79d28c86ae4e31e0f3c05c779e27dd (diff)
Adding additional logging to Class Verbose Log
The additional logging is so that every class that is verified is logged (even if there are no failures). Additionally, logging was added to see which classes are being re-verified. Bug: 37754950 Test: m -j test-art-host Change-Id: I946a5a35558666a81a11a1a2825a4731f47857ef
-rw-r--r--runtime/class_linker.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index 141df1ec1a..928645ac0f 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -4107,6 +4107,10 @@ verifier::FailureKind ClassLinker::VerifyClass(
}
}
+ VLOG(class_linker) << "Beginning verification for class: "
+ << klass->PrettyDescriptor()
+ << " in " << klass->GetDexCache()->GetLocation()->ToModifiedUtf8();
+
// Verify super class.
StackHandleScope<2> hs(self);
MutableHandle<mirror::Class> supertype(hs.NewHandle(klass->GetSuperClass()));
@@ -4161,6 +4165,13 @@ verifier::FailureKind ClassLinker::VerifyClass(
const DexFile& dex_file = *klass->GetDexCache()->GetDexFile();
mirror::Class::Status oat_file_class_status(mirror::Class::kStatusNotReady);
bool preverified = VerifyClassUsingOatFile(dex_file, klass.Get(), oat_file_class_status);
+
+ VLOG(class_linker) << "Class preverified status for class "
+ << klass->PrettyDescriptor()
+ << " in " << klass->GetDexCache()->GetLocation()->ToModifiedUtf8()
+ << ": "
+ << preverified;
+
// If the oat file says the class had an error, re-run the verifier. That way we will get a
// precise error message. To ensure a rerun, test:
// mirror::Class::IsErroneous(oat_file_class_status) => !preverified