JDK-8277753 : Long*VectorTests.java fail with "bad AD file" on x86_32 after JDK-8276162
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 18
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-11-24
  • Updated: 2021-12-13
  • Resolved: 2021-12-02
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 18
18 b27Fixed
Related Reports
Relates :  
Description
The following tests fail with "bad AD file" on x86_32
```
jdk/incubator/vector/Long128VectorTests.java
jdk/incubator/vector/Long256VectorTests.java
jdk/incubator/vector/Long512VectorTests.java
jdk/incubator/vector/LongMaxVectorTests.java
jdk/incubator/vector/Long64VectorTests.java
```

```
test Long256VectorTests.UNSIGNED_GELong256VectorTests(long[i], long[i]): success
o582  CMoveP  === o525 o1010 o1011  [[o99 o99 o100  519  519 ]]  #java/lang/Boolean:NotNull:exact *  Oop:java/lang/Boolean:NotNull:exact *

--N: o582  CMoveP  === o525 o1010 o1011  [[o99 o99 o100  519  519 ]]  #java/lang/Boolean:NotNull:exact *  Oop:java/lang/Boolean:NotNull:exact *

   --N: o1010  Binary  === _ o541 o557  [[o582 ]]
   _Binary_cmpOpU_flagsReg_ulong_LTGE  300  _Binary_cmpOpU_flagsReg_ulong_LTGE
   _Binary_cmpOpU_flagsReg_ulong_EQNE  500  _Binary_cmpOpU_flagsReg_ulong_EQNE
   _Binary_cmpOpU_commute_flagsReg_ulong_LEGT  300  _Binary_cmpOpU_commute_flagsReg_ulong_LEGT

      --N: o541  Bool  === _ o557  [[o559 o1010 ]] [lt]
      CMPOP  0  CMPOP
      CMPOPU  0  CMPOPU
      CMPOPUCF  0  CMPOPUCF
      CMPOP_FCMOV  0  CMPOP_FCMOV
      CMPOP_COMMUTE  0  CMPOP_COMMUTE
      CMPOPU_COMMUTE  0  CMPOPU_COMMUTE
      CMPOP_VCMPPD  0  CMPOP_VCMPPD

      --N: o557  CmpUL  === _ o196 o562  [[o541 o559 o1010 ]]
      FLAGSREG_ULONG_LTGE  300  cmpUL_reg_flags_LTGE
      FLAGSREG_ULONG_EQNE  500  cmpUL_reg_flags_EQNE
      FLAGSREG_ULONG_LEGT  300  cmpUL_reg_flags_LEGT

         --N: o196  LoadL  === o318 o67 o319  |o138  [[o557 o98 ]]  @long[int:>=0]:exact+any *, idx=8; #long
         EREGL  0  EREGL
         EADXREGL  0  EADXREGL
         EBCXREGL  0  EBCXREGL
         EADXREGL_LOW_ONLY  0  EADXREGL_LOW_ONLY
         STACKSLOTL  200  storeSSL

         --N: o562  LoadL  === o563 o67 o566  |o139  [[o557 ]]  @long[int:>=0]:exact+any *, idx=8; #long
         EREGL  0  EREGL
         EADXREGL  0  EADXREGL
         EBCXREGL  0  EBCXREGL
         EADXREGL_LOW_ONLY  0  EADXREGL_LOW_ONLY
         STACKSLOTL  200  storeSSL

   --N: o1011  Binary  === _ o323 o322  [[o582 ]]
   _Binary_eRegP_eRegP  200  _Binary_eRegP_eRegP
   _Binary_eAXRegP_eRegP  200  _Binary_eAXRegP_eRegP
   _Binary_eAXRegP_eCXRegP  200  _Binary_eAXRegP_eCXRegP
   _Binary_eDIRegP_eSIRegP  200  _Binary_eDIRegP_eSIRegP

      --N: o323  ConP  === o0  [[o1011 o1009 ]]  #java/lang/Boolean:exact *  Oop:java/lang/Boolean:exact *
      IMMP  10  IMMP
      ANYREGP  100  loadConP
      EREGP  100  loadConP
      RREGP  100  loadConP
      EREGP_NO_EBP  200  loadConP
      NAXREGP  100  loadConP
      NABXREGP  100  loadConP
      PREGP  100  loadConP
      EAXREGP  100  loadConP
      EBXREGP  100  loadConP
      ECXREGP  100  loadConP
      EDXREGP  100  loadConP
      ESIREGP  100  loadConP
      EDIREGP  100  loadConP
      DIRECT  10  DIRECT
      INDIRECT  100  loadConP
      LOAD_LONG_REGP  200  loadConP
      LOAD_LONG_INDIRECT  200  loadConP
      STACKSLOTP  200  storeSSP
      LOAD_LONG_MEMORY  200  LOAD_LONG_INDIRECT
      MEMORY  10  DIRECT
      LONG_MEMORY  10  DIRECT

      --N: o322  ConP  === o0  [[o1009 o1011 ]]  #java/lang/Boolean:exact *  Oop:java/lang/Boolean:exact *
      IMMP  10  IMMP
      ANYREGP  100  loadConP
      EREGP  100  loadConP
      RREGP  100  loadConP
      EREGP_NO_EBP  200  loadConP
      NAXREGP  100  loadConP
      NABXREGP  100  loadConP
      PREGP  100  loadConP
      EAXREGP  100  loadConP
      EBXREGP  100  loadConP
      ECXREGP  100  loadConP
      EDXREGP  100  loadConP
      ESIREGP  100  loadConP
      EDIREGP  100  loadConP
      DIRECT  10  DIRECT
      INDIRECT  100  loadConP
      LOAD_LONG_REGP  200  loadConP
      LOAD_LONG_INDIRECT  200  loadConP
      STACKSLOTP  200  storeSSP
      LOAD_LONG_MEMORY  200  LOAD_LONG_INDIRECT
      MEMORY  10  DIRECT
      LONG_MEMORY  10  DIRECT
```

Comments
Changeset: 65960f71 Author: Jie Fu <jiefu@openjdk.org> Date: 2021-12-02 15:15:06 +0000 URL: https://git.openjdk.java.net/jdk/commit/65960f712ed6d4c4478d74f0842ce78d500d4229
02-12-2021

ILW = compile failed on vector tests on x86 = MMH = P3
24-11-2021