Frequent c1 compiler errors running IntelliJ with Openjdk 15 (JavaCallWrapper::JavaCallWrapper - failed: cannot make java calls from the native compiler)
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Wed Jan 27 11:46:36 UTC 2021
(CCing hotspot-runtime-dev since it is related to nestmates support.)
Hi Clemens,
It does look very similar to JDK-8217765 [1], but the bug was fixed long
time ago.
Please, file new bug.
Best regards,
Vladimir Ivanov
[1] https://bugs.openjdk.java.net/browse/JDK-8217765
On 27.01.2021 13:53, Clemens Eisserer wrote:
> Hi,
>
> Since I started using IntelliJ for working on the java2d opengl backend I
> get internal errors in C1, in the method JavaCallWrapper::JavaCallWrapper:
> https://pastebin.com/rbNLeAvL
> I observed those crashes with both - fedora bundled openjdk as well as with
> a build of adoptopenjdk:
>
> Fedora-33:
> openjdk version "15.0.1" 2020-10-20
> OpenJDK Runtime Environment 20.9 (build 15.0.1+9)
> AdoptOpenJDK:
> openjdk version "15.0.2" 2021-01-19
> OpenJDK Runtime Environment AdoptOpenJDK (build 15.0.2+7)
>
> The crash log looks quite equal each time (log attached).
>
> I wonder, is this a known problem - is should I report it?
>
> Thanks, Clemens
>
> # Internal Error (javaCalls.cpp:60), pid=35643, tid=35656
> # guarantee(thread->can_call_java()) failed: cannot make java calls from
> the native compiler
> #
>
> Current CompileTask:
> C1: 485187 64127 3
> com.intellij.codeInspection.sameParameterValue.SameParameterValueInspection$LocalSameParameterValueInspection$1::visitMethod
> (362 bytes)
>
> Stack: [0x00007fe2fc0fb000,0x00007fe2fc1fc000], sp=0x00007fe2fc1f8fc0,
> free space=1015k
> Native frames: (J=compiled Java code, A=aot compiled Java code,
> j=interpreted, Vv=VM code, C=native code)
> V [libjvm.so+0x7ded64] JavaCallWrapper::JavaCallWrapper(methodHandle
> const&, Handle, JavaValue*, Thread*)+0x1c4
> V [libjvm.so+0x7e2253] JavaCalls::call_helper(JavaValue*, methodHandle
> const&, JavaCallArguments*, Thread*)+0x183
> V [libjvm.so+0x7e066c] JavaCalls::call_special(JavaValue*, Handle,
> Klass*, Symbol*, Symbol*, Handle, Handle, Thread*)+0x1cc
> V [libjvm.so+0xdfe55d]
> SystemDictionary::validate_protection_domain(InstanceKlass*, Handle,
> Handle, Thread*)+0x20d
> V [libjvm.so+0xe0113c]
> SystemDictionary::resolve_instance_class_or_null(Symbol*, Handle, Handle,
> Thread*)+0xb1c
> V [libjvm.so+0xe012ea]
> SystemDictionary::resolve_instance_class_or_null_helper(Symbol*, Handle,
> Handle, Thread*)+0x2a
> V [libjvm.so+0xe026ce] SystemDictionary::resolve_or_fail(Symbol*, Handle,
> Handle, bool, Thread*)+0x2e
> V [libjvm.so+0x598baf] ConstantPool::klass_at_impl(constantPoolHandle
> const&, int, bool, Thread*)+0xdf
> V [libjvm.so+0x7bf7e0] ConstantPool::klass_at(int, Thread*)+0x60
> V [libjvm.so+0x7b9d17] InstanceKlass::has_nest_member(InstanceKlass*,
> Thread*) const+0x397
> V [libjvm.so+0x7bbbbe] InstanceKlass::nest_host(Thread*) [clone
> .part.349]+0x3ae
> V [libjvm.so+0x7bbd1c]
> InstanceKlass::has_nestmate_access_to(InstanceKlass*, Thread*)+0x4c
> V [libjvm.so+0xc5b707] Reflection::verify_member_access(Klass const*,
> Klass const*, Klass const*, AccessFlags, bool, bool, Thread*)+0x207
> V [libjvm.so+0xa17b21] LinkResolver::check_method_accessability(Klass*,
> Klass*, Klass*, methodHandle const&, Thread*)+0x61
> V [libjvm.so+0xa18776] LinkResolver::resolve_method(LinkInfo const&,
> Bytecodes::Code, Thread*)+0x3e6
> V [libjvm.so+0xa1b947]
> LinkResolver::linktime_resolve_virtual_method(LinkInfo const&,
> Thread*)+0x27
> V [libjvm.so+0xa1bbb2]
> LinkResolver::linktime_resolve_virtual_method_or_null(LinkInfo const&)+0x32
> V [libjvm.so+0x4d137c] ciEnv::get_method_by_index_impl(constantPoolHandle
> const&, int, Bytecodes::Code, ciInstanceKlass*)+0x3ec
> V [libjvm.so+0x4d1910] ciEnv::get_method_by_index(constantPoolHandle
> const&, int, Bytecodes::Code, ciInstanceKlass*)+0x310
> V [libjvm.so+0x4f58ee] ciBytecodeStream::get_method(bool&,
> ciSignature**)+0x11e
> V [libjvm.so+0x407323] GraphBuilder::invoke(Bytecodes::Code)+0x33
> V [libjvm.so+0x409667]
> GraphBuilder::iterate_bytecodes_for_block(int)+0x10b7
> V [libjvm.so+0x40b0d4] GraphBuilder::iterate_all_blocks(bool)+0x174
> V [libjvm.so+0x40cf30] GraphBuilder::GraphBuilder(Compilation*,
> IRScope*)+0x440
> V [libjvm.so+0x410a72] IRScope::IRScope(Compilation*, IRScope*, int,
> ciMethod*, int, bool)+0x1d2
> V [libjvm.so+0x4116b6] IR::IR(Compilation*, ciMethod*, int)+0xa6
> V [libjvm.so+0x3f1586] Compilation::build_hir() [clone .part.95]+0x166
> V [libjvm.so+0x3f1dd3] Compilation::compile_java_method()+0x3a3
> V [libjvm.so+0x3f1f6f] Compilation::compile_method()+0x12f
> V [libjvm.so+0x3f23cc] Compilation::Compilation(AbstractCompiler*,
> ciEnv*, ciMethod*, int, BufferBlob*, DirectiveSet*)+0x22c
> V [libjvm.so+0x3f2cae] Compiler::compile_method(ciEnv*, ciMethod*, int,
> DirectiveSet*)+0xae
> V [libjvm.so+0x5720cc]
> CompileBroker::invoke_compiler_on_method(CompileTask*)+0xeec
> V [libjvm.so+0x572eb8] CompileBroker::compiler_thread_loop()+0x5b8
> V [libjvm.so+0xe50f8a] JavaThread::thread_main_inner()+0x1da
> V [libjvm.so+0xe55baf] Thread::call_run()+0xff
> V [libjvm.so+0xbc77e7] thread_native_entry(Thread*)+0xe7
>
More information about the hotspot-compiler-dev
mailing list