Temporarily add debug logging for b/31357497
Note the check can't be a DCHECK because 103-string-append runs with the
non-debug build (libart.so).
Bug: 31357497
Bug: 12687968
Test: run-test 103-string-append on N9.
Change-Id: I30ebe9111fa6c42796dcafa182ae066214805173
diff --git a/runtime/interpreter/interpreter_common.h b/runtime/interpreter/interpreter_common.h
index 6b28110..7d54d0a 100644
--- a/runtime/interpreter/interpreter_common.h
+++ b/runtime/interpreter/interpreter_common.h
@@ -185,6 +185,13 @@
return false;
}
const uint32_t vtable_idx = (is_range) ? inst->VRegB_3rc() : inst->VRegB_35c();
+ // Debug code for b/31357497. To be removed.
+ if (kUseReadBarrier) {
+ CHECK(receiver->GetClass() != nullptr)
+ << "Null class found in object " << receiver << " in region type "
+ << Runtime::Current()->GetHeap()->ConcurrentCopyingCollector()->
+ RegionSpace()->GetRegionType(receiver);
+ }
CHECK(receiver->GetClass()->ShouldHaveEmbeddedVTable());
ArtMethod* const called_method = receiver->GetClass()->GetEmbeddedVTableEntry(
vtable_idx, kRuntimePointerSize);