Try to provide valid instance of HotSpotResolvedJavaMethodImpl to CompilerToVM::getResolvedJavaMethod with offset set to 0. It'll lead to a crash:
assert(((Metadata*)obj)->is_valid()) failed: obj is valid
Stack: [0x00007f778d1e6000,0x00007f778d2e7000], sp=0x00007f778d2e4880, free space=1018k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x121a981] VMError::report_and_die()+0x151
V [libjvm.so+0x84c3fb] report_vm_error(char const*, int, char const*, char const*)+0x7b
V [libjvm.so+0x4ac7ef] methodHandle::methodHandle(Method*)+0xbf
V [libjvm.so+0xc369c9] c2v_getResolvedJavaMethod(JNIEnv_*, _jobject*, _jobject*, long)+0x619
...
an test example to reproduce problem and hs_err are attached
Also, probably related issue is that externally setting Method** raw pointer to HotSpotResolvedJavaMethodImpl and providing it to getResolvedJavaMethod(uncomment line 85-93 in attached source to enable this logic) will make it return null value.