Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8258134

assert(size == calc_size) failed: incorrect size calculation on x86_32 with AVX512 machines

XMLWordPrintable

    • b30

        # Symptom
        ```
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (/home/jdk/src/hotspot/cpu/x86/x86_32.ad:1016), pid=93816, tid=93832
        # assert(size == calc_size) failed: incorrect size calculation
        #
        # JRE version: OpenJDK Runtime Environment (17.0+4) (fastdebug build 17-internal+4-adhoc.jvm.jdk)
        # Java VM: OpenJDK Server VM (fastdebug 17-internal+4-adhoc.jvm.jdk, mixed mode, tiered, g1 gc, linux-x86)
        # Problematic frame:
        # V [libjvm.so+0x24cef3] vec_stack_to_stack_helper(CodeBuffer*, bool, int, int, unsigned int, outputStream*)+0x463


        Current CompileTask:
        C2: 19561 3141 b 4 FloatMaxVectorTests::gatherMaskedFloatMaxVectorTests (166 bytes)

        Stack: [0xa1f7f000,0xa2000000], sp=0xa1ffd3a0, free space=504k
        Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
        V [libjvm.so+0x24c793] vec_stack_to_stack_helper(CodeBuffer*, bool, int, int, unsigned int, outputStream*)+0x463
        V [libjvm.so+0x250f8d] MachSpillCopyNode::implementation(CodeBuffer*, PhaseRegAlloc*, bool, outputStream*) const+0xaed
        V [libjvm.so+0x251c2b] MachSpillCopyNode::emit(CodeBuffer&, PhaseRegAlloc*) const+0x1b
        V [libjvm.so+0x113fe7c] PhaseOutput::scratch_emit_size(Node const*)+0x4cc
        V [libjvm.so+0xf3b125] MachNode::size(PhaseRegAlloc*) const+0x65
        V [libjvm.so+0x249f9f] MachSpillCopyNode::size(PhaseRegAlloc*) const+0x1f
        V [libjvm.so+0x1138994] PhaseOutput::shorten_branches(unsigned int*)+0xd94
        V [libjvm.so+0x1147aad] PhaseOutput::Output()+0x94d
        V [libjvm.so+0x8159fc] Compile::Code_Gen()+0x55c
        V [libjvm.so+0x81c47a] Compile::Compile(ciEnv*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0x154a
        V [libjvm.so+0x69433a] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1fa
        V [libjvm.so+0x829ce5] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xb15
        V [libjvm.so+0x82a5b1] CompileBroker::compiler_thread_loop()+0x441
        V [libjvm.so+0x14ae289] compiler_thread_entry(JavaThread*, Thread*)+0x59
        V [libjvm.so+0x14b5822] JavaThread::thread_main_inner()+0x242
        V [libjvm.so+0x14baeea] Thread::call_run()+0xfa
        V [libjvm.so+0x111e957] thread_native_entry(Thread*)+0x137
        C [libpthread.so.0+0x63bd] start_thread+0xfd
        ```

        # Reproduce
        Run the following tests on x86_32 with AVX512 machines:
         - jdk/incubator/vector/FloatMaxVectorTests.java
         - jdk/incubator/vector/IntMaxVectorTests.java

              jiefu Jie Fu
              jiefu Jie Fu
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: