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

Register to register spill may use AVX 512 move instruction on unsupported platform.

XMLWordPrintable

    • b27
    • x86
    • Not verified

        We noticed that the register to register moves in x86.ad file attempts to generate emovdqu when UseAVX==2.
        The instruction emovdquq is only supported on platforms where UseAVX > 2 (AVX 512).

        The following rules in x86.ad file need to be corrected:
        MoveVecX2Leg
        MoveLeg2VecX
        MoveVecY2Leg
        MoveLeg2VecY
        The above move rules when activated through register allocator and could result in illegal instruction exception.

        Also there is similar usage of (UseAVX < 2) in c1_LIRAssembler which could be written as (UseAVX <=2) for better code sequence.

              sviswanathan Sandhya Viswanathan
              sviswanathan Sandhya Viswanathan
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

                Created:
                Updated:
                Resolved: