openj9 icon indicating copy to clipboard operation
openj9 copied to clipboard

jdk24 threadMXBeanTimersTest vmState=0x0005ff04 badILOp BadILOp cannot be evaluated

Open pshipton opened this issue 6 months ago • 4 comments

https://openj9-jenkins.osuosl.org/job/Test_openjdk24_j9_extended.functional_x86-64_mac_Nightly_testList_1/69/ - mac14-x86-2 threadMXBeanTimersTest_3

No diagnostic files - failed to transfer to artifactory

00:19:04  Assertion failed at /Users/jenkins/workspace/Build_JDK24_x86-64_mac_Nightly/omr/compiler/codegen/OMRTreeEvaluator.cpp:590: false
00:19:04  VMState: 0x0005ff04
00:19:04  	badILOp BadILOp cannot be evaluated
00:19:04  
00:19:04  compiling org/openj9/test/java/lang/management/ThreadMXBean/TimersTest$ATimerThread.threadTimerLoop()Z at level: warm
00:19:04  
00:19:04  Unhandled exception
00:19:04  Type=Unhandled trap vmState=0x0005ff04
00:19:04  J9Generic_Signal_Number=00000108 Signal_Number=00000005 Error_Value=00000000 Signal_Code=00000001
00:19:04  Handler1=0000000006A9D830 Handler2=00000000067D27E0
00:19:04  RDI=0000000000004D03 RSI=0000000000000005 RAX=0000000000000000 RBX=0000000000000005
00:19:04  RCX=000070000234B928 RDX=0000000000000000 R8=FFFFFFFFFFFFFFE9 R9=00007FF7B998C3D8
00:19:04  R10=0000700002352000 R11=0000000000000246 R12=0000000000004D03 R13=0000000000000001
00:19:04  R14=0000700002352000 R15=0000000000000016
00:19:04  RIP=00007FF80EDDBD96 GS=0000 FS=0000 RSP=000070000234B928
00:19:04  RFlags=0000000000000246 CS=0007 RBP=000070000234B950 ERR=0000000002000148
00:19:04  TRAPNO=0200014800000085 CPU=0000020001480000 FAULTVADDR=0000000000000000
00:19:04  XMM0=0000003000000020 (f: 32.000000, d: 1.018558e-312)
00:19:04  XMM1=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM2=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM3=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM4=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM5=0000000100000001 (f: 1.000000, d: 2.121996e-314)
00:19:04  XMM6=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM7=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM8=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM9=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM10=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM11=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM12=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM13=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM14=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  XMM15=0000000000000000 (f: 0.000000, d: 0.000000e+00)
00:19:04  Module=/usr/lib/system/libsystem_kernel.dylib
00:19:04  Module_base_address=00007FF80EDD4000 Symbol=__pthread_kill
00:19:04  Symbol_address=00007FF80EDDBD8C
00:19:04  
00:19:04  Method_being_compiled=org/openj9/test/java/lang/management/ThreadMXBean/TimersTest$ATimerThread.threadTimerLoop()Z
00:19:04  Target=2_90_20250506_75 (Mac OS X 14.7.4)
00:19:04  CPU=amd64 (12 logical CPUs) (0x400000000 RAM)
00:19:04  ----------- Stack Backtrace -----------
00:19:04  __pthread_kill+0xb (0x00007FF80EDDBD97 [libsystem_kernel.dylib+0x7d97])
00:19:04  pthread_kill+0x106 (0x00007FF80EE14EBD [libsystem_pthread.dylib+0x5ebd])
00:19:04  raise+0x18 (0x00007FF80ED000A8 [libsystem_c.dylib+0x450a8])
00:19:04  _ZN2TR4trapEv+0x23 (0x0000000008A74323 [libj9jit29.dylib+0x3c2323])
00:19:04  _ZN2TRL18va_fatal_assertionEPKciS1_S1_P13__va_list_tag+0xe (0x0000000008A7450E [libj9jit29.dylib+0x3c250e])
00:19:04  _ZN2TR15fatal_assertionEPKciS1_S1_z+0x6d (0x0000000008A7457D [libj9jit29.dylib+0x3c257d])
00:19:04  _ZN3OMR13TreeEvaluator16badILOpEvaluatorEPN2TR4NodeEPNS1_13CodeGeneratorE+0x2d (0x0000000008A023CD [libj9jit29.dylib+0x3503cd])
00:19:04  _ZN3OMR13CodeGenerator8evaluateEPN2TR4NodeE+0x49 (0x0000000008A03AF9 [libj9jit29.dylib+0x351af9])
00:19:04  _ZN2J913CodeGenerator22doInstructionSelectionEv+0x2993 (0x00000000086DE9F3 [libj9jit29.dylib+0x2c9f3])
00:19:04  _ZN3OMR12CodeGenPhase32performInstructionSelectionPhaseEPN2TR13CodeGeneratorEPNS1_12CodeGenPhaseE+0x164 (0x0000000008A0E384 [libj9jit29.dylib+0x35c384])
00:19:04  _ZN3OMR12CodeGenPhase10performAllEv+0xbd (0x0000000008A0FFAD [libj9jit29.dylib+0x35dfad])
00:19:04  _ZN3OMR13CodeGenerator12generateCodeEv+0x135 (0x0000000008A07F75 [libj9jit29.dylib+0x355f75])
00:19:04  _ZN3OMR11Compilation7compileEv+0x7a7 (0x0000000008A2DEC7 [libj9jit29.dylib+0x37bec7])
00:19:04  _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadPNS_11CompilationEP17TR_ResolvedMethodR11TR_J9VMBaseP19TR_OptimizationPlanRKNS_16SegmentAllocatorE+0x7e5 (0x0000000008712FD5 [libj9jit29.dylib+0x60fd5])
00:19:04  _ZN2TR28CompilationInfoPerThreadBase14wrappedCompileEP13J9PortLibraryPv+0x4c4 (0x0000000008710B94 [libj9jit29.dylib+0x5eb94])
00:19:04  omrsig_protect+0x3b0 (0x00000000067D1330 [libj9prt29.dylib+0x20330])
00:19:04  _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadP21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x403 (0x000000000870C163 [libj9jit29.dylib+0x5a163])
00:19:04  _ZN2TR24CompilationInfoPerThread12processEntryER21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x211 (0x000000000870B7B1 [libj9jit29.dylib+0x597b1])
00:19:04  _ZN2TR24CompilationInfoPerThread14processEntriesEv+0x1af (0x000000000870AB1F [libj9jit29.dylib+0x58b1f])
00:19:04  _ZN2TR24CompilationInfoPerThread3runEv+0xe9 (0x000000000870A8D9 [libj9jit29.dylib+0x588d9])
00:19:04  _Z30protectedCompilationThreadProcP13J9PortLibraryPN2TR24CompilationInfoPerThreadE+0x93 (0x000000000870A693 [libj9jit29.dylib+0x58693])
00:19:04  omrsig_protect+0x3b0 (0x00000000067D1330 [libj9prt29.dylib+0x20330])
00:19:04  _Z21compilationThreadProcPv+0x231 (0x0000000008708981 [libj9jit29.dylib+0x56981])
00:19:04  thread_wrapper+0x1d5 (0x00000000067355E5 [libj9thr29.dylib+0xa5e5])
00:19:04  _pthread_start+0x63 (0x00007FF80EE1518B [libsystem_pthread.dylib+0x618b])
00:19:04  ---------------------------------------

pshipton avatar May 07 '25 13:05 pshipton

@hzongaro fyi

pshipton avatar May 07 '25 13:05 pshipton

https://openj9-jenkins.osuosl.org/job/Test_openjdk24_j9_extended.functional_x86-64_mac_Nightly_testList_0/77 - mac15-x86-2 threadMXBeanTimersTest_0

Diagnostics not captured

23:24:34  Assertion failed at /Users/jenkins/workspace/Build_JDK24_x86-64_mac_Nightly/omr/compiler/codegen/OMRTreeEvaluator.cpp:590: false
23:24:34  VMState: 0x0005ff04
23:24:34  	badILOp BadILOp cannot be evaluated
23:24:34  
23:24:34  compiling org/openj9/test/java/lang/management/ThreadMXBean/TimersTest$ATimerThread.threadTimerLoop()Z at level: warm
23:24:34  
23:24:34  Unhandled exception
23:24:34  Type=Unhandled trap vmState=0x0005ff04
23:24:34  J9Generic_Signal_Number=00000108 Signal_Number=00000005 Error_Value=00000000 Signal_Code=00000001
23:24:34  Handler1=00000000061F5870 Handler2=0000000005F2A7E0
23:24:34  RDI=0000000000007F03 RSI=0000000000000005 RAX=0000000000000000 RBX=0000000000000005
23:24:34  RCX=000070000A0FC928 RDX=0000000000000000 R8=FFFFFFFFFFFFFFE9 R9=00007FF7BA1EB2B0
23:24:34  R10=000070000A103000 R11=0000000000000246 R12=0000000127B45E10 R13=0000000000000001
23:24:34  R14=0000000000007F03 R15=0000000000000016
23:24:34  RIP=00007FF807EEDC52 GS=0000 FS=0000 RSP=000070000A0FC928
23:24:34  RFlags=0000000000000246 CS=0007 RBP=000070000A0FC950 ERR=0000000002000148
23:24:34  TRAPNO=0200014800000085 CPU=0000020001480000 FAULTVADDR=0000000000000000
23:24:34  XMM0=0000003000000020 (f: 32.000000, d: 1.018558e-312)
23:24:34  XMM1=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM2=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM3=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM4=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM5=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM6=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM7=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM8=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM9=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM10=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM11=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM12=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM13=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM14=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  XMM15=0000000000000000 (f: 0.000000, d: 0.000000e+00)
23:24:34  Module=/usr/lib/system/libsystem_kernel.dylib
23:24:34  Module_base_address=00007FF807EE6000 Symbol=__pthread_kill
23:24:34  Symbol_address=00007FF807EEDC48
23:24:34  
23:24:34  Method_being_compiled=org/openj9/test/java/lang/management/ThreadMXBean/TimersTest$ATimerThread.threadTimerLoop()Z
23:24:34  Target=2_90_20250516_83 (Mac OS X 15.3)
23:24:34  CPU=amd64 (12 logical CPUs) (0x400000000 RAM)
23:24:34  ----------- Stack Backtrace -----------
23:24:34  __pthread_kill+0xb (0x00007FF807EEDC53 [libsystem_kernel.dylib+0x7c53])
23:24:34  pthread_kill+0x106 (0x00007FF807F27F85 [libsystem_pthread.dylib+0x5f85])
23:24:34  raise+0x18 (0x00007FF807E0D89C [libsystem_c.dylib+0x4589c])
23:24:34  _ZN2TR4trapEv+0x23 (0x00000000081CC043 [libj9jit29.dylib+0x3c1043])
23:24:34  _ZN2TRL18va_fatal_assertionEPKciS1_S1_P13__va_list_tag+0xe (0x00000000081CC22E [libj9jit29.dylib+0x3c122e])
23:24:34  _ZN2TR15fatal_assertionEPKciS1_S1_z+0x6d (0x00000000081CC29D [libj9jit29.dylib+0x3c129d])
23:24:34  _ZN3OMR13TreeEvaluator16badILOpEvaluatorEPN2TR4NodeEPNS1_13CodeGeneratorE+0x2d (0x000000000815A0FD [libj9jit29.dylib+0x34f0fd])
23:24:34  _ZN3OMR13CodeGenerator8evaluateEPN2TR4NodeE+0x49 (0x000000000815B829 [libj9jit29.dylib+0x350829])
23:24:34  _ZN2J913CodeGenerator22doInstructionSelectionEv+0x2993 (0x0000000007E37A13 [libj9jit29.dylib+0x2ca13])
23:24:34  _ZN3OMR12CodeGenPhase32performInstructionSelectionPhaseEPN2TR13CodeGeneratorEPNS1_12CodeGenPhaseE+0x164 (0x00000000081660B4 [libj9jit29.dylib+0x35b0b4])
23:24:34  _ZN3OMR12CodeGenPhase10performAllEv+0xbd (0x0000000008167CDD [libj9jit29.dylib+0x35ccdd])
23:24:34  _ZN3OMR13CodeGenerator12generateCodeEv+0x135 (0x000000000815FCA5 [libj9jit29.dylib+0x354ca5])
23:24:34  _ZN3OMR11Compilation7compileEv+0x7a7 (0x0000000008185BF7 [libj9jit29.dylib+0x37abf7])
23:24:34  _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadPNS_11CompilationEP17TR_ResolvedMethodR11TR_J9VMBaseP19TR_OptimizationPlanRKNS_16SegmentAllocatorE+0x7e5 (0x0000000007E6BFF5 [libj9jit29.dylib+0x60ff5])
23:24:34  _ZN2TR28CompilationInfoPerThreadBase14wrappedCompileEP13J9PortLibraryPv+0x4c4 (0x0000000007E69BB4 [libj9jit29.dylib+0x5ebb4])
23:24:34  omrsig_protect+0x3b0 (0x0000000005F29330 [libj9prt29.dylib+0x20330])
23:24:34  _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadP21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x403 (0x0000000007E65183 [libj9jit29.dylib+0x5a183])
23:24:34  _ZN2TR24CompilationInfoPerThread12processEntryER21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x211 (0x0000000007E647D1 [libj9jit29.dylib+0x597d1])
23:24:34  _ZN2TR24CompilationInfoPerThread14processEntriesEv+0x1af (0x0000000007E63B3F [libj9jit29.dylib+0x58b3f])
23:24:34  _ZN2TR24CompilationInfoPerThread3runEv+0xe9 (0x0000000007E638F9 [libj9jit29.dylib+0x588f9])
23:24:34  _Z30protectedCompilationThreadProcP13J9PortLibraryPN2TR24CompilationInfoPerThreadE+0x93 (0x0000000007E636B3 [libj9jit29.dylib+0x586b3])
23:24:34  omrsig_protect+0x3b0 (0x0000000005F29330 [libj9prt29.dylib+0x20330])
23:24:34  _Z21compilationThreadProcPv+0x231 (0x0000000007E619A1 [libj9jit29.dylib+0x569a1])
23:24:34  thread_wrapper+0x1d5 (0x0000000005E8D5E5 [libj9thr29.dylib+0xa5e5])
23:24:34  _pthread_start+0x63 (0x00007FF807F28253 [libsystem_pthread.dylib+0x6253])
23:24:34  ---------------------------------------

pshipton avatar May 17 '25 13:05 pshipton

2x x 5 grinder https://openj9-jenkins.osuosl.org/job/Grinder/4348/ - passed 10x x 5 grinder https://openj9-jenkins.osuosl.org/job/Grinder/4349/ - passed

pshipton avatar May 17 '25 13:05 pshipton

openjdk24_j9_special.system_ppc64le_linux

[2025-06-11T11:16:34.941Z] variation: Mode614
[2025-06-11T11:16:34.941Z] JVM_OPTIONS:  -Xcompressedrefs -Xgcpolicy:gencon -Xjit:counts=- - - - - - 1 1 1 1000 250 250 - - - 10000 100000 10000,gcOnResolve,rtResolve,sampleInterval=2,scorchingSampleThreshold=10000,quickProfile -Xmn512k -Xcheck:gc:vmthreads:all:quiet 

[2025-06-11T11:17:06.692Z] DLT 04:16:42.093 - Completed 6.7%. Number of tests started=50
[2025-06-11T11:17:13.177Z] DLT stderr Assertion failed at /home/jenkins/workspace/build-scripts/jobs/jdk24/jdk24-linux-ppc64le-openj9/workspace/build/src/omr/compiler/codegen/OMRTreeEvaluator.cpp:590: false
[2025-06-11T11:17:13.177Z] DLT stderr VMState: 0x0005ff04
[2025-06-11T11:17:13.177Z] DLT stderr 	badILOp BadILOp cannot be evaluated
[2025-06-11T11:17:13.177Z] DLT stderr 
[2025-06-11T11:17:13.177Z] DLT stderr compiling net/openj9/test/decimals/TestDecimalData2.testConvertLongNormals()V at level: warm
[2025-06-11T11:17:13.177Z] DLT stderr #0: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0xba1100) [0x7fff96ba1100]
[2025-06-11T11:17:13.177Z] DLT stderr #1: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0xbb2bac) [0x7fff96bb2bac]
[2025-06-11T11:17:13.177Z] DLT stderr #2: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x788ce4) [0x7fff96788ce4]
[2025-06-11T11:17:13.177Z] DLT stderr #3: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x78aa8c) [0x7fff9678aa8c]
[2025-06-11T11:17:13.177Z] DLT stderr #4: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6daa44) [0x7fff966daa44]
[2025-06-11T11:17:13.177Z] DLT stderr #5: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0xc5f7e8) [0x7fff96c5f7e8]
[2025-06-11T11:17:13.177Z] DLT stderr #6: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6dec34) [0x7fff966dec34]
[2025-06-11T11:17:13.177Z] DLT stderr #7: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x126d1c) [0x7fff96126d1c]
[2025-06-11T11:17:13.177Z] DLT stderr #8: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6f2348) [0x7fff966f2348]
[2025-06-11T11:17:13.177Z] DLT stderr #9: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6f33b8) [0x7fff966f33b8]
[2025-06-11T11:17:13.177Z] DLT stderr #10: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6ed940) [0x7fff966ed940]
[2025-06-11T11:17:13.177Z] DLT stderr #11: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x726304) [0x7fff96726304]
[2025-06-11T11:17:13.177Z] DLT stderr #12: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x17af44) [0x7fff9617af44]
[2025-06-11T11:17:13.177Z] DLT stderr #13: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x17c1e4) [0x7fff9617c1e4]
[2025-06-11T11:17:13.177Z] DLT stderr #14: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x396d4) [0x7fff9cdf96d4]
[2025-06-11T11:17:13.177Z] DLT stderr #15: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1793d4) [0x7fff961793d4]
[2025-06-11T11:17:13.177Z] DLT stderr #16: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1799d0) [0x7fff961799d0]
[2025-06-11T11:17:13.177Z] DLT stderr #17: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1781c0) [0x7fff961781c0]
[2025-06-11T11:17:13.177Z] DLT stderr #18: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1787d8) [0x7fff961787d8]
[2025-06-11T11:17:13.177Z] DLT stderr #19: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x178890) [0x7fff96178890]
[2025-06-11T11:17:13.177Z] DLT stderr #20: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x396d4) [0x7fff9cdf96d4]
[2025-06-11T11:17:13.177Z] DLT stderr #21: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x178df8) [0x7fff96178df8]
[2025-06-11T11:17:13.177Z] DLT stderr #22: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9thr29.so(+0xcc00) [0x7fff9cd8cc00]
[2025-06-11T11:17:13.177Z] DLT stderr #23: /lib64/libc.so.6(+0xd43cc) [0x7fff9d8743cc]
[2025-06-11T11:17:13.177Z] DLT stderr 
[2025-06-11T11:17:13.177Z] DLT stderr #0: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0xba1100) [0x7fff96ba1100]
[2025-06-11T11:17:13.177Z] DLT stderr #1: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0xbb2bac) [0x7fff96bb2bac]
[2025-06-11T11:17:13.177Z] DLT stderr #2: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x15c25c) [0x7fff9615c25c]
[2025-06-11T11:17:13.177Z] DLT stderr #3: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x384b8) [0x7fff9cdf84b8]
[2025-06-11T11:17:13.177Z] DLT stderr #4: function __kernel_sigtramp_rt64+0 [0]
[2025-06-11T11:17:13.177Z] DLT stderr #5: /lib64/libc.so.6(+0xd742c) [0x7fff9d87742c]
[2025-06-11T11:17:13.177Z] DLT stderr #6: /lib64/libc.so.6(gsignal+0x30) [0x7fff9d8098f4]
[2025-06-11T11:17:13.177Z] DLT stderr #7: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x78aa40) [0x7fff9678aa40]
[2025-06-11T11:17:13.177Z] DLT stderr #8: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x78aa90) [0x7fff9678aa90]
[2025-06-11T11:17:13.177Z] DLT stderr #9: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6daa44) [0x7fff966daa44]
[2025-06-11T11:17:13.177Z] DLT stderr #10: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0xc5f7e8) [0x7fff96c5f7e8]
[2025-06-11T11:17:13.177Z] DLT stderr #11: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6dec34) [0x7fff966dec34]
[2025-06-11T11:17:13.177Z] DLT stderr #12: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x126d1c) [0x7fff96126d1c]
[2025-06-11T11:17:13.177Z] DLT stderr #13: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6f2348) [0x7fff966f2348]
[2025-06-11T11:17:13.177Z] DLT stderr #14: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6f33b8) [0x7fff966f33b8]
[2025-06-11T11:17:13.177Z] DLT stderr #15: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x6ed940) [0x7fff966ed940]
[2025-06-11T11:17:13.177Z] DLT stderr #16: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x726304) [0x7fff96726304]
[2025-06-11T11:17:13.177Z] DLT stderr #17: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x17af44) [0x7fff9617af44]
[2025-06-11T11:17:13.177Z] DLT stderr #18: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x17c1e4) [0x7fff9617c1e4]
[2025-06-11T11:17:13.177Z] DLT stderr #19: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x396d4) [0x7fff9cdf96d4]
[2025-06-11T11:17:13.177Z] DLT stderr #20: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1793d4) [0x7fff961793d4]
[2025-06-11T11:17:13.177Z] DLT stderr #21: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1799d0) [0x7fff961799d0]
[2025-06-11T11:17:13.177Z] DLT stderr #22: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1781c0) [0x7fff961781c0]
[2025-06-11T11:17:13.177Z] DLT stderr #23: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1787d8) [0x7fff961787d8]
[2025-06-11T11:17:13.177Z] DLT stderr #24: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x178890) [0x7fff96178890]
[2025-06-11T11:17:13.177Z] DLT stderr #25: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x396d4) [0x7fff9cdf96d4]
[2025-06-11T11:17:13.177Z] DLT stderr #26: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x178df8) [0x7fff96178df8]
[2025-06-11T11:17:13.177Z] DLT stderr #27: /home/jenkins/workspace/Test_openjdk24_j9_special.system_ppc64le_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9thr29.so(+0xcc00) [0x7fff9cd8cc00]
[2025-06-11T11:17:13.177Z] DLT stderr #28: /lib64/libc.so.6(+0xd43cc) [0x7fff9d8743cc]
[2025-06-11T11:17:13.177Z] DLT stderr #29: /lib64/libc.so.6(+0x199970) [0x7fff9d939970]
[2025-06-11T11:17:13.177Z] DLT stderr Unhandled exception
[2025-06-11T11:17:13.177Z] DLT stderr Type=Unhandled trap vmState=0x0005ff04
[2025-06-11T11:17:13.177Z] DLT stderr J9Generic_Signal_Number=00000108 Signal_Number=00000005 Error_Value=00000000 Signal_Code=fffffffa

[2025-06-11T11:17:13.177Z] DLT stderr Module=/lib64/libc.so.6
[2025-06-11T11:17:13.177Z] DLT stderr Module_base_address=00007FFF9D7A0000
[2025-06-11T11:17:13.177Z] DLT stderr 
[2025-06-11T11:17:13.177Z] DLT stderr Method_being_compiled=net/openj9/test/decimals/TestDecimalData2.testConvertLongNormals()V
[2025-06-11T11:17:13.177Z] DLT stderr Target=2_90_20250611_79 (Linux 6.4.0-150600.23.47-default)
[2025-06-11T11:17:13.177Z] DLT stderr CPU=ppc64le (4 logical CPUs) (0x1d5fc0000 RAM)
[2025-06-11T11:17:13.177Z] DLT stderr ----------- Stack Backtrace -----------
[2025-06-11T11:17:13.177Z] DLT stderr __pthread_kill_implementation+0x258 (0x00007FFF9D87742C [libc.so.6+0xd742c])
[2025-06-11T11:17:13.177Z] DLT stderr gsignal+0x30 (0x00007FFF9D8098F4 [libc.so.6+0x698f4])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN2TR4trapEv+0x70 (0x00007FFF9678AA40 [libj9jit29.so+0x78aa40])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN2TR15fatal_assertionEPKciS1_S1_z+0x30 (0x00007FFF9678AA90 [libj9jit29.so+0x78aa90])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR13TreeEvaluator16badILOpEvaluatorEPN2TR4NodeEPNS1_13CodeGeneratorE+0x54 (0x00007FFF966DAA44 [libj9jit29.so+0x6daa44])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR5Power13TreeEvaluator16BadILOpEvaluatorEPN2TR4NodeEPNS2_13CodeGeneratorE+0x18 (0x00007FFF96C5F7E8 [libj9jit29.so+0xc5f7e8])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR13CodeGenerator8evaluateEPN2TR4NodeE+0x74 (0x00007FFF966DEC34 [libj9jit29.so+0x6dec34])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN2J913CodeGenerator22doInstructionSelectionEv+0xc4c (0x00007FFF96126D1C [libj9jit29.so+0x126d1c])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR12CodeGenPhase32performInstructionSelectionPhaseEPN2TR13CodeGeneratorEPNS1_12CodeGenPhaseE+0x98 (0x00007FFF966F2348 [libj9jit29.so+0x6f2348])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR12CodeGenPhase10performAllEv+0x148 (0x00007FFF966F33B8 [libj9jit29.so+0x6f33b8])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR13CodeGenerator12generateCodeEv+0x80 (0x00007FFF966ED940 [libj9jit29.so+0x6ed940])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN3OMR11Compilation7compileEv+0x8d4 (0x00007FFF96726304 [libj9jit29.so+0x726304])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadPNS_11CompilationEP17TR_ResolvedMethodR11TR_J9VMBaseP19TR_OptimizationPlanRKNS_16SegmentAllocatorE+0x504 (0x00007FFF9617AF44 [libj9jit29.so+0x17af44])
[2025-06-11T11:17:13.177Z] DLT stderr _ZN2TR28CompilationInfoPerThreadBase14wrappedCompileEP13J9PortLibraryPv+0x394 (0x00007FFF9617C1E4 [libj9jit29.so+0x17c1e4])
[2025-06-11T11:17:13.177Z] DLT stderr omrsig_protect+0x3e4 (0x00007FFF9CDF96D4 [libj9prt29.so+0x396d4])
[2025-06-11T11:17:13.178Z] DLT stderr _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadP21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x374 (0x00007FFF961793D4 [libj9jit29.so+0x1793d4])
[2025-06-11T11:17:13.178Z] DLT stderr _ZN2TR24CompilationInfoPerThread12processEntryER21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x170 (0x00007FFF961799D0 [libj9jit29.so+0x1799d0])
[2025-06-11T11:17:13.178Z] DLT stderr _ZN2TR24CompilationInfoPerThread14processEntriesEv+0x410 (0x00007FFF961781C0 [libj9jit29.so+0x1781c0])
[2025-06-11T11:17:13.178Z] DLT stderr _ZN2TR24CompilationInfoPerThread3runEv+0xa8 (0x00007FFF961787D8 [libj9jit29.so+0x1787d8])
[2025-06-11T11:17:13.178Z] DLT stderr _Z30protectedCompilationThreadProcP13J9PortLibraryPN2TR24CompilationInfoPerThreadE+0xa0 (0x00007FFF96178890 [libj9jit29.so+0x178890])
[2025-06-11T11:17:13.178Z] DLT stderr omrsig_protect+0x3e4 (0x00007FFF9CDF96D4 [libj9prt29.so+0x396d4])
[2025-06-11T11:17:13.178Z] DLT stderr _Z21compilationThreadProcPv+0x1a8 (0x00007FFF96178DF8 [libj9jit29.so+0x178df8])
[2025-06-11T11:17:13.178Z] DLT stderr thread_wrapper+0x190 (0x00007FFF9CD8CC00 [libj9thr29.so+0xcc00])
[2025-06-11T11:17:13.178Z] DLT stderr start_thread+0x188 (0x00007FFF9D8743CC [libc.so.6+0xd43cc])
[2025-06-11T11:17:13.178Z] DLT stderr ---------------------------------------

[2025-06-11T12:23:41.632Z] DaaLoadTest_all_special_5m_20_FAILED

JasonFengJ9 avatar Jun 11 '25 19:06 JasonFengJ9

I've tried adding assertions checking for the presence of BadILOp after optimizations and during TR::Node::create and TR::Node::recreate operations. See [1].

In some Grinder runs, I've seen assertion failures hit on both ppc64le Linux and x86-64 macOS following optimizations - usually around BasicBlockExtension, but sometimes later. Other times I don't see any assertion failure until the compilation gets to OMR::TreeEvaluator::badILOpEvaluator. The failures never repeat in the recompilations logged in the jitdumps.

This makes me suspect that either there is some memory corruption that's expressing itself intermittently this way, or perhaps, there is some other code that is setting the opcode of the affected node to TR::BadILOp in some other way than the various recreate methods.

[1] https://github.com/hzongaro/omr/tree/check-for-BadILOp

hzongaro avatar Jun 23 '25 22:06 hzongaro

I've noticed that when the assertion that I added following optimizations fails, it's after Basic Block Reordering. One thing I noticed there is that there seems to be a problem in the CFG associated with the block that contains the BadILOp.

For instance, in the following fragment, block 2227 is shown as having two successor blocks, but in reality it has only one. It's likely that Basic Block ~~Reordering~~ Extension had decided to change the successor of block 2227, and called TR::Node::reverseBranch for the last node in the block, but that changed the store node that had appeared in that spot to a BadILOp, as it wasn't actually a branch.

n16397n   treetop                                                                             [    0x7ffeffb9f500] bci=[32,2,-] rc=0 vc=5049 vn=- li=- udi=- nc=1
n1290n      ==>aloadi
n16400n   BadILOp (X!=0 )                                                                     [    0x7ffeffb9f5f0] bci=[32,0,-] rc=0 vc=5049 vn=- li=- udi=354 nc=1 flg=0x4
n1290n      ==>aloadi
n16399n   BBEnd </block_2227> =====                                                           [    0x7ffeffb9f5a0] bci=[32,2,-] rc=0 vc=5049 vn=- li=- udi=- nc=0

n16403n   BBStart <block_240> (freq 6048)                                                     [    0x7ffeffb9f6e0] bci=[33,1,-] rc=0 vc=5049 vn=- li=- udi=- nc=0
n16491n   treetop                                                                             [    0x7ffeffc51270] bci=[32,9,-] rc=0 vc=5049 vn=- li=- udi=- nc=1
n16402n     aload (node obj44)  <temp slot 6>[#3828  Auto] [flags 0x7 0x0 ] (X!=0 )           [    0x7ffeffb9f690] bci=[32,0,-] rc=2 vc=5049 vn=- li=- udi=3333 nc=0 flg=0x4
...
      2227 [    0x7ffeee1c0100] BBStart at     0x7ffeee0e2d00, frequency = 6048
                 in        = [2229(6048) 2228(6048) ]
                 out       = [241(0) 240(0) ]
                 exception in  = []
                 exception out = []

Now the question is how does the CFG come to be incorrect.

It's still unclear whether the failures that aren't encountered until Code Generation represent a distinct problem.

hzongaro avatar Jun 26 '25 13:06 hzongaro

I've had difficulty gathering logs from before the point where the BadILOp is generated, but I did manage to get one. In this example, after Virtual Guard Head Merger, we have this:

n111n     lstore  ii<auto slot 10>[#423  Auto] [flags 0x4 0x0 ]                               [  0x2f5ca270] bci=[-1,84,291] rc=0 vc=395 vn=- li=- udi=86 nc=1
n100n       ==>lconst 0
n327n     BBEnd </block_30> =====                                                             [  0x2f5ce5f0] bci=[-1,86,291] rc=0 vc=395 vn=- li=- udi=- nc=0

n328n     BBStart <block_25> (freq 12)                                                        [  0x2f5ce640] bci=[-1,84,291] rc=0 vc=395 vn=- li=- udi=- nc=0
n275n     goto --> block_9 BBStart at n114n                                                   [  0x2f5cd5b0] bci=[-1,84,291] rc=0 vc=395 vn=- li=- udi=- nc=0
n329n     BBEnd </block_25> =====                                                             [  0x2f5ce690] bci=[-1,84,291] rc=0 vc=395 vn=- li=- udi=- nc=0

After that Recognized Call Transformer and Basic Block Extension run, and we end up with the following in the jitdump:

n111n     BadILOp                                                                             [  0x2f5ca270] bci=[-1,84,291] rc=0 vc=395 vn=- li=- udi=86 nc=1
n100n       ==>lconst 0
n327n     BBEnd </block_30> (cold) =====                                                      [  0x2f5ce5f0] bci=[-1,86,291] rc=0 vc=395 vn=- li=- udi=- nc=0

n7n       BBStart <block_10> (freq 13)                                                        [  0x2f52caa0] bci=[-1,125,297] rc=0 vc=395 vn=- li=- udi=- nc=0
...
        30 [  0x2f811520] BBStart at   0x2f792ce0, frequency = 4
                 in        = [152(1) 104(7) ]
                 out       = [10(7) 25(7) ]
                 exception in  = []
                 exception out = []

Unfortunately, I don't have the CFG from before that point.

hzongaro avatar Jun 26 '25 14:06 hzongaro

Running with paranoidOptCheck, the failures occur with vmstate 0x000514cc — that is, during the "Performing checks" analysis phase after Global Value Propagation.

n97n      lstore  ii<auto slot 10>[#423  Auto] [flags 0x4 0x0 ]                               [  0x1519be10] bci=[-1,84,291] rc=0 vc=61 vn=- li=25 udi=21 nc=1
n96n        lconst 0 (highWordZero X==0 X>=0 X<=0 )                                           [  0x1519bdc0] bci=[-1,83,291] rc=1 vc=61 vn=- li=- udi=- nc=0 flg=0x4302
n387n     BBEnd </block_30> =====                                                             [  0x151a18b0] bci=[-1,86,291] rc=0 vc=61 vn=- li=- udi=- nc=0

n388n     BBStart <block_25> (freq 4)                                                         [  0x151a1900] bci=[-1,84,291] rc=0 vc=61 vn=- li=- udi=- nc=0
   ...
        30 [  0x153f36d0] BBStart at   0x15375960, frequency = 10000
                 in        = [32(1) 130(10000) ]
                 out       = [10(6) 25(4) ]
                 exception in  = []
                 exception out = []

hzongaro avatar Jun 28 '25 00:06 hzongaro

I believe what's happening is that we end up with a situation before Global Value Propagation where a block contains a call to MethodHandle.linkToStatic and ends with an ifcmp operation whose operand values are known:

IL before GVP
n19n      BBStart <block_6> (freq 4)                                                          [   0x8cb8e60] bci=[-1,86,291] rc=0 vc=55 vn=139 li=- udi=- nc=0
...
n84n      treetop                                                                             [   0x8d65a00] bci=[-1,61,288] rc=0 vc=55 vn=143 li=- udi=- nc=1
n83n        acall  java/lang/invoke/MethodHandle.linkToStatic(JLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;[#435  native static Method] (Abstract class) [flags 0x500 0x10000 ] ()  [   0x8d659b0] bci=[-1,61,288] rc=2 vc=55 vn=142 li=- udi=- nc=3 flg=0x20
n63n          ==>lcall
n73n          aloadi  <array-shadow>[#229  Shadow] [flags 0x80000607 0x0 ]                    [   0x8d65690] bci=[-1,61,288] rc=1 vc=55 vn=46 li=- udi=- nc=1
n72n            aladd (X>=0 internalPtr )                                                     [   0x8d65640] bci=[-1,61,288] rc=1 vc=55 vn=45 li=- udi=- nc=2 flg=0x8100
n65n              aload  <callSite entry @2 0x7fe31a82c490>[#436  Static] (obj1) [flags 0x307 0x48 ]  [   0x8d65410] bci=[-1,61,288] rc=1 vc=55 vn=44 li=- udi=- nc=0
n71n              lconst 24 (highWordZero X!=0 X>=0 )                                         [   0x8d655f0] bci=[-1,61,288] rc=1 vc=55 vn=43 li=- udi=- nc=0 flg=0x4104
n82n          aloadi  <array-shadow>[#229  Shadow] [flags 0x80000607 0x0 ]                    [   0x8d65960] bci=[-1,61,288] rc=1 vc=55 vn=42 li=- udi=- nc=1
n81n            aladd (X>=0 internalPtr )                                                     [   0x8d65910] bci=[-1,61,288] rc=1 vc=55 vn=41 li=- udi=- nc=2 flg=0x8100
n74n              aload  <callSite entry @2 0x7fe31a82c490>[#436  Static] (obj1) [flags 0x307 0x48 ]  [   0x8d656e0] bci=[-1,61,288] rc=1 vc=55 vn=40 li=- udi=- nc=0
n80n              lconst 16 (highWordZero X!=0 X>=0 )                                         [   0x8d658c0] bci=[-1,61,288] rc=1 vc=55 vn=39 li=- udi=- nc=0 flg=0x4104
...
n306n     iflcmpge --> block_10 BBStart at n7n ()                                             [   0x8d69f60] bci=[-1,92,291] rc=0 vc=55 vn=147 li=- udi=- nc=2 flg=0x20
n307n       lload  ii<auto slot 10>[#423  Auto] [flags 0x4 0x0 ]                              [   0x8d69fb0] bci=[-1,86,291] rc=1 vc=55 vn=4 li=45 udi=47 nc=0
n308n       lconst 0x186a0 (highWordZero X!=0 X>=0 )                                          [   0x8d6a000] bci=[-1,88,291] rc=1 vc=55 vn=5 li=- udi=- nc=0 flg=0x4104
n303n     BBEnd </block_6> =====                                                              [   0x8d69e70] bci=[-1,86,291] rc=0 vc=55 vn=148 li=- udi=- nc=0

constrainIfcmplessthan determines that a branch will never be taken, so it calls removeConditionalBranch, which removes the branch and queues up the removal of the edge from the CFG by adding the edge to _edgesToBeRemoved. But when OMR::ValuePropagation::doDelayedTransformations happens, the edge isn’t found.

I believe the reason it wasn’t found was that the call to MethodHandle.linkToStatic was inlined into the same block during J9::ValuePropagation::doDelayedTransformations, and in the process TR_InlinerBase::inlineCallTarget2 removes the edges from that block and replaces them with new edges.

Looking at OMR::ValuePropagation::doDelayedTransformations, it looks like all of the inlining operations that it performs happen after removing the edges listed in _edgesToBeRemoved. However, the inlining of MethodHandle.linkToStatic happens in J9::ValuePropagation::doDelayedTransformations before OMR::ValuePropagation::doDelayedTransformations has been called.

I'm looking at fixing this by creating doDelayedInliningTransformations methods in OMR and OpenJ9 that will be called by OMR's OMR::ValuePropagation::doDelayedTransformations after it removes the edges listed in _edgesToBeRemoved.

hzongaro avatar Jul 03 '25 20:07 hzongaro

I'm looking at fixing this by creating doDelayedInliningTransformations methods in OMR and OpenJ9 that will be called by OMR's OMR::ValuePropagation::doDelayedTransformations after it removes the edges listed in _edgesToBeRemoved.

I'm experimenting with a different approach that's inspired by how the Tree Lowering optimization manages transformations that it identifies but delays applying.

The idea is that there would be a priority queue of DelayedVPTransformation objects that are created as transformations that must be delayed are identified. The classes of those objects would have an apply method that performs the required transformation. Then doDelayedTransformations method would be reduced to a loop that would iterate over those transformation objects, invoking their apply methods rather than having all that logic built into doDelayedTransformations itself.

The classes would have a partial ordering so that transformations that must be performed in a particular order would have that ordering respected.

hzongaro avatar Aug 13 '25 14:08 hzongaro

The refactoring that will be required is not insignificant, and could affect other downstream projects of OMR. I won't rush the fix into the 0.56 release.

hzongaro avatar Sep 12 '25 14:09 hzongaro

openjdk21_j9_special.system_x86-64_linux

[2025-09-10T01:06:04.849Z] Running test DaaLoadTest_daa1_special_5m_20 ...
[2025-09-10T01:06:04.849Z] ===============================================
[2025-09-10T01:06:04.849Z] DaaLoadTest_daa1_special_5m_20 Start Time: Tue Sep  9 18:06:03 2025 Epoch Time (ms): 1757466363508
[2025-09-10T01:06:04.849Z] variation: Mode614
[2025-09-10T01:06:04.849Z] JVM_OPTIONS:  -Xcompressedrefs -Xgcpolicy:gencon -Xjit:counts=- - - - - - 1 1 1 1000 250 250 - - - 10000 100000 10000,gcOnResolve,rtResolve,sampleInterval=2,scorchingSampleThreshold=10000,quickProfile -Xmn512k -Xcheck:gc:vmthreads:all:quiet 

[2025-09-10T01:06:35.510Z] DLT stderr Assertion failed at /home/jenkins/workspace/build-scripts/jobs/jdk21u/jdk21u-linux-x64-openj9-IBM/workspace/build/src/omr/compiler/codegen/OMRTreeEvaluator.cpp:520: false
[2025-09-10T01:06:35.510Z] DLT stderr VMState: 0x0005ff04
[2025-09-10T01:06:35.510Z] DLT stderr 	badILOp BadILOp cannot be evaluated
[2025-09-10T01:06:35.510Z] DLT stderr 
[2025-09-10T01:06:35.510Z] DLT stderr compiling net/openj9/test/decimals/TestDecimalData2.testConvertBigIntegerNormals()V at level: warm
[2025-09-10T01:06:35.510Z] DLT stderr #0: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x9694e5) [0x7fab0a5694e5]
[2025-09-10T01:06:35.510Z] DLT stderr #1: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x975330) [0x7fab0a575330]
[2025-09-10T01:06:35.510Z] DLT stderr #2: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x623b96) [0x7fab0a223b96]
[2025-09-10T01:06:35.510Z] DLT stderr #3: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x62520d) [0x7fab0a22520d]
[2025-09-10T01:06:35.510Z] DLT stderr #4: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5a659f) [0x7fab0a1a659f]
[2025-09-10T01:06:35.510Z] DLT stderr #5: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5a9a94) [0x7fab0a1a9a94]
[2025-09-10T01:06:35.510Z] DLT stderr #6: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1447f7) [0x7fab09d447f7]
[2025-09-10T01:06:35.510Z] DLT stderr #7: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5b7e51) [0x7fab0a1b7e51]
[2025-09-10T01:06:35.510Z] DLT stderr #8: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5b8a96) [0x7fab0a1b8a96]
[2025-09-10T01:06:35.510Z] DLT stderr #9: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5b413a) [0x7fab0a1b413a]
[2025-09-10T01:06:35.510Z] DLT stderr #10: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5dea26) [0x7fab0a1dea26]
[2025-09-10T01:06:35.510Z] DLT stderr #11: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x18244f) [0x7fab09d8244f]
[2025-09-10T01:06:35.510Z] DLT stderr #12: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1834a5) [0x7fab09d834a5]
[2025-09-10T01:06:35.510Z] DLT stderr #13: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x2b049) [0x7fab0b197049]
[2025-09-10T01:06:35.510Z] DLT stderr #14: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180fe5) [0x7fab09d80fe5]
[2025-09-10T01:06:35.510Z] DLT stderr #15: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x181308) [0x7fab09d81308]
[2025-09-10T01:06:35.510Z] DLT stderr #16: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180247) [0x7fab09d80247]
[2025-09-10T01:06:35.510Z] DLT stderr #17: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1805a2) [0x7fab09d805a2]
[2025-09-10T01:06:35.510Z] DLT stderr #18: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180652) [0x7fab09d80652]
[2025-09-10T01:06:35.510Z] DLT stderr #19: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x2b049) [0x7fab0b197049]
[2025-09-10T01:06:35.510Z] DLT stderr #20: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180a1b) [0x7fab09d80a1b]
[2025-09-10T01:06:35.510Z] DLT stderr #21: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9thr29.so(+0xb623) [0x7fab0b15d623]
[2025-09-10T01:06:35.510Z] DLT stderr #22: /lib64/libc.so.6(+0x8a19a) [0x7fab0b68a19a]
[2025-09-10T01:06:35.510Z] DLT stderr #23: /lib64/libc.so.6(+0x10f240) [0x7fab0b70f240]
[2025-09-10T01:06:35.510Z] DLT stderr 
[2025-09-10T01:06:35.510Z] DLT stderr #0: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x9694e5) [0x7fab0a5694e5]
[2025-09-10T01:06:35.510Z] DLT stderr #1: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x975330) [0x7fab0a575330]
[2025-09-10T01:06:35.510Z] DLT stderr #2: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x16bc09) [0x7fab09d6bc09]
[2025-09-10T01:06:35.510Z] DLT stderr #3: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x2a5f8) [0x7fab0b1965f8]
[2025-09-10T01:06:35.510Z] DLT stderr #4: /lib64/libc.so.6(+0x3ebf0) [0x7fab0b63ebf0]
[2025-09-10T01:06:35.510Z] DLT stderr #5: /lib64/libc.so.6(+0x8bedc) [0x7fab0b68bedc]
[2025-09-10T01:06:35.510Z] DLT stderr #6: /lib64/libc.so.6(raise+0x16) [0x7fab0b63eb46]
[2025-09-10T01:06:35.510Z] DLT stderr #7: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x625187) [0x7fab0a225187]
[2025-09-10T01:06:35.510Z] DLT stderr #8: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x625212) [0x7fab0a225212]
[2025-09-10T01:06:35.510Z] DLT stderr #9: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5a659f) [0x7fab0a1a659f]
[2025-09-10T01:06:35.510Z] DLT stderr #10: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5a9a94) [0x7fab0a1a9a94]
[2025-09-10T01:06:35.510Z] DLT stderr #11: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1447f7) [0x7fab09d447f7]
[2025-09-10T01:06:35.510Z] DLT stderr #12: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5b7e51) [0x7fab0a1b7e51]
[2025-09-10T01:06:35.510Z] DLT stderr #13: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5b8a96) [0x7fab0a1b8a96]
[2025-09-10T01:06:35.510Z] DLT stderr #14: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5b413a) [0x7fab0a1b413a]
[2025-09-10T01:06:35.510Z] DLT stderr #15: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x5dea26) [0x7fab0a1dea26]
[2025-09-10T01:06:35.510Z] DLT stderr #16: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x18244f) [0x7fab09d8244f]
[2025-09-10T01:06:35.510Z] DLT stderr #17: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1834a5) [0x7fab09d834a5]
[2025-09-10T01:06:35.510Z] DLT stderr #18: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x2b049) [0x7fab0b197049]
[2025-09-10T01:06:35.510Z] DLT stderr #19: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180fe5) [0x7fab09d80fe5]
[2025-09-10T01:06:35.510Z] DLT stderr #20: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x181308) [0x7fab09d81308]
[2025-09-10T01:06:35.510Z] DLT stderr #21: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180247) [0x7fab09d80247]
[2025-09-10T01:06:35.510Z] DLT stderr #22: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x1805a2) [0x7fab09d805a2]
[2025-09-10T01:06:35.510Z] DLT stderr #23: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180652) [0x7fab09d80652]
[2025-09-10T01:06:35.510Z] DLT stderr #24: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9prt29.so(+0x2b049) [0x7fab0b197049]
[2025-09-10T01:06:35.510Z] DLT stderr #25: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9jit29.so(+0x180a1b) [0x7fab09d80a1b]
[2025-09-10T01:06:35.510Z] DLT stderr #26: /home/jenkins/workspace/Test_openjdk21_j9_special.system_x86-64_linux_testList_5/jdkbinary/j2sdk-image/lib/default/libj9thr29.so(+0xb623) [0x7fab0b15d623]
[2025-09-10T01:06:35.510Z] DLT stderr #27: /lib64/libc.so.6(+0x8a19a) [0x7fab0b68a19a]
[2025-09-10T01:06:35.510Z] DLT stderr #28: /lib64/libc.so.6(+0x10f240) [0x7fab0b70f240]
[2025-09-10T01:06:35.510Z] DLT stderr Unhandled exception
[2025-09-10T01:06:35.510Z] DLT stderr Type=Unhandled trap vmState=0x0005ff04
[2025-09-10T01:06:35.511Z] DLT stderr Method_being_compiled=net/openj9/test/decimals/TestDecimalData2.testConvertBigIntegerNormals()V
[2025-09-10T01:06:35.511Z] DLT stderr Target=2_90_20250909_541 (Linux 5.14.0-570.39.1.el9_6.x86_64)
[2025-09-10T01:06:35.511Z] DLT stderr CPU=amd64 (4 logical CPUs) (0x1e0127000 RAM)
[2025-09-10T01:06:35.511Z] DLT stderr ----------- Stack Backtrace -----------
[2025-09-10T01:06:35.511Z] DLT stderr __pthread_kill_implementation+0x11c (0x00007FAB0B68BEDC [libc.so.6+0x8bedc])
[2025-09-10T01:06:35.511Z] DLT stderr raise+0x16 (0x00007FAB0B63EB46 [libc.so.6+0x3eb46])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR4trapEv+0x47 (0x00007FAB0A225187 [libj9jit29.so+0x625187])
[2025-09-10T01:06:35.511Z] DLT stderr  (0x00007FAB0A225212 [libj9jit29.so+0x625212])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN3OMR13TreeEvaluator16badILOpEvaluatorEPN2TR4NodeEPNS1_13CodeGeneratorE+0x3f (0x00007FAB0A1A659F [libj9jit29.so+0x5a659f])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN3OMR13CodeGenerator8evaluateEPN2TR4NodeE+0x44 (0x00007FAB0A1A9A94 [libj9jit29.so+0x5a9a94])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2J913CodeGenerator22doInstructionSelectionEv+0xdb7 (0x00007FAB09D447F7 [libj9jit29.so+0x1447f7])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN3OMR12CodeGenPhase32performInstructionSelectionPhaseEPN2TR13CodeGeneratorEPNS1_12CodeGenPhaseE+0x71 (0x00007FAB0A1B7E51 [libj9jit29.so+0x5b7e51])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN3OMR12CodeGenPhase10performAllEv+0xd6 (0x00007FAB0A1B8A96 [libj9jit29.so+0x5b8a96])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN3OMR13CodeGenerator12generateCodeEv+0x5a (0x00007FAB0A1B413A [libj9jit29.so+0x5b413a])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN3OMR11Compilation7compileEv+0xb66 (0x00007FAB0A1DEA26 [libj9jit29.so+0x5dea26])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadPNS_11CompilationEP17TR_ResolvedMethodR11TR_J9VMBaseP19TR_OptimizationPlanRKNS_16SegmentAllocatorE+0x4bf (0x00007FAB09D8244F [libj9jit29.so+0x18244f])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR28CompilationInfoPerThreadBase14wrappedCompileEP13J9PortLibraryPv+0x3a5 (0x00007FAB09D834A5 [libj9jit29.so+0x1834a5])
[2025-09-10T01:06:35.511Z] DLT stderr omrsig_protect+0x239 (0x00007FAB0B197049 [libj9prt29.so+0x2b049])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR28CompilationInfoPerThreadBase7compileEP10J9VMThreadP21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x385 (0x00007FAB09D80FE5 [libj9jit29.so+0x180fe5])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR24CompilationInfoPerThread12processEntryER21TR_MethodToBeCompiledRN2J917J9SegmentProviderE+0x128 (0x00007FAB09D81308 [libj9jit29.so+0x181308])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR24CompilationInfoPerThread14processEntriesEv+0x377 (0x00007FAB09D80247 [libj9jit29.so+0x180247])
[2025-09-10T01:06:35.511Z] DLT stderr _ZN2TR24CompilationInfoPerThread3runEv+0x42 (0x00007FAB09D805A2 [libj9jit29.so+0x1805a2])
[2025-09-10T01:06:35.511Z] DLT stderr _Z30protectedCompilationThreadProcP13J9PortLibraryPN2TR24CompilationInfoPerThreadE+0x82 (0x00007FAB09D80652 [libj9jit29.so+0x180652])
[2025-09-10T01:06:35.511Z] DLT stderr omrsig_protect+0x239 (0x00007FAB0B197049 [libj9prt29.so+0x2b049])
[2025-09-10T01:06:35.511Z] DLT stderr _Z21compilationThreadProcPv+0x17b (0x00007FAB09D80A1B [libj9jit29.so+0x180a1b])
[2025-09-10T01:06:35.511Z] DLT stderr thread_wrapper+0x163 (0x00007FAB0B15D623 [libj9thr29.so+0xb623])
[2025-09-10T01:06:35.511Z] DLT stderr start_thread+0x31a (0x00007FAB0B68A19A [libc.so.6+0x8a19a])
[2025-09-10T01:06:35.511Z] DLT stderr __clone3+0x30 (0x00007FAB0B70F240 [libc.so.6+0x10f240])
[2025-09-10T01:06:35.511Z] DLT stderr ---------------------------------------

JasonFengJ9 avatar Sep 12 '25 20:09 JasonFengJ9