diff options
author | 2023-10-07 18:20:55 +0100 | |
---|---|---|
committer | 2023-10-10 08:51:40 +0000 | |
commit | 30ec3a148e19fba2d54cdf482b16a9b82bec6da4 (patch) | |
tree | 7027e78d73932971beb05db30ad0c6bfaaa7cb5c /runtime/art_method.cc | |
parent | c3ff31ceac2021fc0dca3ea159813c776a908dcb (diff) |
Add debugging info for crash on bots.
Test: test.py
Change-Id: I08674ce18031c3bb0cfdd150e3265132f7f946a7
Diffstat (limited to 'runtime/art_method.cc')
-rw-r--r-- | runtime/art_method.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/runtime/art_method.cc b/runtime/art_method.cc index 5872a66d10..7fc3ad4d5a 100644 --- a/runtime/art_method.cc +++ b/runtime/art_method.cc @@ -647,7 +647,15 @@ const OatQuickMethodHeader* ArtMethod::GetOatQuickMethodHeader(uintptr_t pc) { OatFile::OatMethod oat_method = FindOatMethodFor(this, class_linker->GetImagePointerSize(), &found); if (!found) { - CHECK(IsNative()) << PrettyMethod(); + if (!IsNative()) { + PrintFileToLog("/proc/self/maps", LogSeverity::FATAL_WITHOUT_ABORT); + MemMap::DumpMaps(LOG_STREAM(FATAL_WITHOUT_ABORT), /* terse= */ true); + LOG(FATAL) + << PrettyMethod() + << " pc=" << pc + << ", entrypoint= " << std::hex << reinterpret_cast<uintptr_t>(existing_entry_point) + << ", jit= " << jit; + } // We are running the GenericJNI stub. The entrypoint may point // to different entrypoints or to a JIT-compiled JNI stub. DCHECK(class_linker->IsQuickGenericJniStub(existing_entry_point) || |