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

JVM crashes when matching VectorMaskCmp Node

XMLWordPrintable

    • b29
    • generic
    • generic

        reproduce:
        run the attachment with `--add-modules=jdk.incubator.vector TestVectorShuffleIota` on x86 or aarch64

        Then we get crash like this:

        o576 VectorMaskCmp === _ o634 o572 [[o579 ]] 7 #vectord[4]:{byte}

        --N: o576 VectorMaskCmp === _ o634 o572 [[o579 ]] 7 #vectord[4]:{byte}

           --N: o634 Binary === _ o575 o573 [[o576 ]]
           _Binary_vecD_vecD 0 _Binary_vecD_vecD

              --N: o575 ReplicateB === _ o133 [[o634 o578 ]] #vectord[4]:{byte}
              VECD 0 VECD

              --N: o573 LShiftVB === _ o571 o572 [[o634 o577 ]] #vectord[4]:{byte}
              VECD 0 VECD

           --N: o572 ConI === o0 [[o573 o576 ]] #int:1
           IMMI 0 IMMI
           IMMI_1 0 IMMI_1
           IMMIEXT 0 IMMIEXT
           IMMI_LE_4 0 IMMI_LE_4
           IMMI_BITMASK 0 IMMI_BITMASK
           IMMISCALE 0 IMMISCALE
           IMMI26 0 IMMI26
           IMMI19 0 IMMI19
           IMMIU12 0 IMMIU12
           IMMIOFFSET 0 IMMIOFFSET
           IMMIOFFSET1 0 IMMIOFFSET1
           IMMIOFFSET2 0 IMMIOFFSET2
           IMMIOFFSET4 0 IMMIOFFSET4
           IMMIOFFSET8 0 IMMIOFFSET8
           IMMIOFFSET16 0 IMMIOFFSET16
           IMMI8 0 IMMI8
           IMMI8_SHIFT8 0 IMMI8_SHIFT8
           IMMIADDSUB 0 IMMIADDSUB
           IMMILOG 0 IMMILOG
           IREGI 100 loadConI
           IREGINOSP 100 loadConI
           IREGI_R0 100 loadConI
           IREGI_R2 100 loadConI
           IREGI_R3 100 loadConI
           IREGI_R4 100 loadConI
           IREGIORL2I 100 IREGI

        # To suppress the following error report, specify this argument
        # after -XX: or in .hotspotrc: SuppressErrorAt=/matcher.cpp:1685
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (/home/wanghuang/repo/jdk/src/hotspot/share/opto/matcher.cpp:1685), pid=55602, tid=55621
        # assert(false) failed: bad AD file
        #
        # JRE version: OpenJDK Runtime Environment (17.0) (slowdebug build 17-internal+0-adhoc.wanghuang.jdk)
        # Java VM: OpenJDK 64-Bit Server VM (slowdebug 17-internal+0-adhoc.wanghuang.jdk, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-aarch64)
        # Problematic frame:
        # V [libjvm.so+0xee2398][thread 55603 also had an error]
          Matcher::Label_Root(Node const*, State*, Node*, Node*&)+0x5a4
        #
        # Core dump will be written. Default location: /home/wanghuang/repo/jdk/core.%e.55602.%t
        #
        # An error report file with more information is saved as:
        # /home/wanghuang/repo/jdk/hs_err_pid55602.log
        #
        # Compiler replay data is saved as:
        # /home/wanghuang/repo/jdk/replay_pid55602.log
        #
        # If you would like to submit a bug report, please visit:
        # https://bugreport.java.com/bugreport/crash.jsp
        #
        Aborted (core dumped)

        Then reason is when ` (vlen < 2 || bit_size < 64) ` , we should not use VectorMaskCmp here.

              whuang Wang Huang
              whuang Wang Huang
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: