eclipse-openj9 / openj9

Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Other
3.28k stars 721 forks source link

Assertion failure at omr/compiler/optimizer/CompactLocals.cpp:303: _localsIG->getNumNodes()>=MAX_NUMBER_OF_LOCALS || *_liveVars == *liveLocals._blockAnalysisInfo[block->getNumber()] #17832

Open dylanjtuttle opened 1 year ago

dylanjtuttle commented 1 year ago

The assertion at

/u/jenkins/workspace/Build_JDK11_s390x_zos_Personal/omr/compiler/optimizer/CompactLocals.cpp:303: _localsIG->getNumNodes()>=MAX_NUMBER_OF_LOCALS || *_liveVars == *liveLocals._blockAnalysisInfo[block->getNumber()]

fails during sanity.functional test cases decomp001 and decomp002 on s390x_zos for Java 11.

Link to the Jenkins job.

Stack trace:

*** Starting test suite: Decompilation Tests ***
        Testing: decomp001
        Test start time: 2023/07/20 18:23:27 Greenwich Mean Time
        Running command: "/home/jenkins/workspace/Test_openjdk11_ibm_sanity.functional_s390x_zos_Personal_testList_0/openjdkbinary/j2sdk-image/bin/java"  -Xcompressedrefs -Xgcpolicy:gencon -Xjit:enableOSR,count=0  -Xdump -Xgcthreads1  -Xdump:system:events=abort  -agentlib:jvmtitest=test:decomp001 -cp "/home/jenkins/workspace/Test_openjdk11_ibm_sanity.functional_s390x_zos_Personal_testList_0/aqa-tests/TKG/../../jvmtest/functional/cmdLineTests/jvmtitests/jvmtitest.jar" com.ibm.jvmti.tests.util.TestRunner
        Time spent starting: 76 milliseconds
        Time spent executing: 13774 milliseconds
        Test result: FAILED
        Output from test:
         [ERR] Assertion failed at /u/jenkins/workspace/Build_JDK11_s390x_zos_Personal/omr/compiler/optimizer/CompactLocals.cpp:303: _localsIG->getNumNodes()>=MAX_NUMBER_OF_LOCALS || *_liveVars == *liveLocals._blockAnalysisInfo[block->getNumber()]
         [ERR] 
         [ERR]  live-on-entry info does not match
         [ERR] 
         [ERR] compiling java/io/ExpiringCache.entryFor(Ljava/lang/String;)Ljava/io/ExpiringCache$Entry; at level: warm
         [ERR] 
        >> Success condition was not found: [Return code: 0]

        Testing: decomp002
        Test start time: 2023/07/20 18:23:40 Greenwich Mean Time
        Running command: "/home/jenkins/workspace/Test_openjdk11_ibm_sanity.functional_s390x_zos_Personal_testList_0/openjdkbinary/j2sdk-image/bin/java"  -Xcompressedrefs -Xgcpolicy:gencon -Xjit:enableOSR,count=0  -Xdump -Xgcthreads1  -Xdump:system:events=abort  -agentlib:jvmtitest=test:decomp002 -cp "/home/jenkins/workspace/Test_openjdk11_ibm_sanity.functional_s390x_zos_Personal_testList_0/aqa-tests/TKG/../../jvmtest/functional/cmdLineTests/jvmtitests/jvmtitest.jar" com.ibm.jvmti.tests.util.TestRunner
        Time spent starting: 18 milliseconds
        Time spent executing: 12569 milliseconds
        Test result: FAILED
        Output from test:
         [ERR] Assertion failed at /u/jenkins/workspace/Build_JDK11_s390x_zos_Personal/omr/compiler/optimizer/CompactLocals.cpp:303: _localsIG->getNumNodes()>=MAX_NUMBER_OF_LOCALS || *_liveVars == *liveLocals._blockAnalysisInfo[block->getNumber()]
         [ERR] 
         [ERR]  live-on-entry info does not match
         [ERR] 
         [ERR] compiling java/io/ExpiringCache.entryFor(Ljava/lang/String;)Ljava/io/ExpiringCache$Entry; at level: warm
         [ERR] 
        >> Success condition was not found: [Return code: 0]
hzongaro commented 1 year ago

Nazim @nbhuiyan, may I ask you to look at this TR_ASSERT failure in Compact Locals? I don't think there's anything z-specific about it.

nbhuiyan commented 1 year ago

From initial investigations, seems like this failure is only reproducible on Z OS, and failure rate is 50%. The failure is not reproducible on zlinux or xlinux.