Test: runtime/SelectionResolution/InvokeInterfaceSuccessTest.java
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/System/Volumes/Data/mesos/work_dir/slaves/0c72054a-24ab-4dbb-944f-97f9341a1b96-S131499/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/35653521-a0c6-4c07-8b64-6982330ad9ee/runs/05b29f7f-19ed-4148-86af-88c02d7139cf/workspace/open/src/hotspot/share/oops/compressedOops.inline.hpp:58), pid=81209, tid=25091
# assert(Universe::is_in_heap(result)) failed: object not in heap 0x0000000000000010
#
# JRE version: Java(TM) SE Runtime Environment (20.0+24) (fastdebug build 20-ea+24-1720)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 20-ea+24-1720, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, bsd-amd64)
# Core dump will be written. Default location: core.81209
#
-------------- T H R E A D ---------------
Current thread (0x00007fb3c7787f50): WorkerThread "GC Thread#2" [stack: 0x0000700010689000,0x0000700010789000] [id=25091]
Stack: [0x0000700010689000,0x0000700010789000], sp=0x00007000107885b0, free space=1021k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.dylib+0x12c2019] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x6d9 (compressedOops.inline.hpp:58)
V [libjvm.dylib+0x12c268b] VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x3b
V [libjvm.dylib+0x6cdb3d] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd
V [libjvm.dylib+0x30dd4a] CompressedOops::decode_not_null(narrowOop)+0x13a
V [libjvm.dylib+0x89beaa] void G1ScanEvacuatedObjClosure::do_oop_work<narrowOop>(narrowOop*)+0x2a
V [libjvm.dylib+0x897cbb] void objArrayOopDesc::oop_iterate_range<G1ScanEvacuatedObjClosure>(G1ScanEvacuatedObjClosure*, int, int)+0x26b
V [libjvm.dylib+0x8979fc] G1ParScanThreadState::do_partial_array(PartialArrayScanTask)+0x75c
V [libjvm.dylib+0x898638] G1ParScanThreadState::dispatch_task(ScannerTask)+0x108
V [libjvm.dylib+0x898db3] G1ParScanThreadState::trim_queue_to_threshold(unsigned int)+0x1e3
V [libjvm.dylib+0x89493d] G1ParScanThreadState::trim_queue_partially()+0x5d
V [libjvm.dylib+0x8c83f5] void G1ParCopyClosure<(G1Barrier)1, false>::do_oop_work<oop>(oop*)+0x435
V [libjvm.dylib+0x5ec11a] ClassLoaderData::oops_do(OopClosure*, int, bool)+0x8a
V [libjvm.dylib+0x8948a3] G1CLDScanClosure::do_cld(ClassLoaderData*)+0x33
V [libjvm.dylib+0x5f1752] ClassLoaderDataGraph::roots_cld_do(CLDClosure*, CLDClosure*)+0x52
V [libjvm.dylib+0x8cb1b4] G1RootProcessor::process_java_roots(G1RootClosures*, G1GCPhaseTimes*, unsigned int)+0xc4
V [libjvm.dylib+0x8cb03e] G1RootProcessor::evacuate_roots(G1ParScanThreadState*, unsigned int)+0x5e
V [libjvm.dylib+0x8dc14f] G1EvacuateRegionsTask::scan_roots(G1ParScanThreadState*, unsigned int)+0x1f
V [libjvm.dylib+0x8dbfe3] G1EvacuateRegionsBaseTask::work(unsigned int)+0x93
V [libjvm.dylib+0x131f3ac] WorkerThread::run()+0x7c
V [libjvm.dylib+0x12104e7] Thread::call_run()+0x177
V [libjvm.dylib+0xf7032f] thread_native_entry(Thread*)+0x14f
C [libsystem_pthread.dylib+0x6109] _pthread_start+0x94
C [libsystem_pthread.dylib+0x1b8b] thread_start+0xf
G1 has found a bad oop, but where did it come from?