[lworld] C2: TestTearing hits profile inconsistency asserts with flat and null-free arrays

XMLWordPrintable

      We observed the following two asserts to fail intermittently with

          compiler/valhalla/inlinetypes/TestTearing

      without any additional flags:

      Flat assert failure:

      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (c:\sb\prod\1762173640\workspace\open\src\hotspot\share\ci\ciMethod.cpp:708), pid=4564, tid=13356
      # assert(!flat || flat_array) failed: inconsistency
      #
      # JRE version: Java(TM) SE Runtime Environment (26.0) (fastdebug build 26-jep401ea2-2025-11-03-1238461.tobias.hartmann.valhalla)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-jep401ea2-2025-11-03-1238461.tobias.hartmann.valhalla, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
      # Problematic frame:
      # V [jvm.dll+0x5514ee] ciMethod::array_access_profiled_type+0x44e
      ...........
      Current CompileTask:
      C2:23364 870 % !b compiler.valhalla.inlinetypes.TestTearing$Runner::run @ 2 (959 bytes)

      Stack: [0x0000005274200000,0x0000005274300000], sp=0x00000052742fc760, free space=1009k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [jvm.dll+0x5514ee] ciMethod::array_access_profiled_type+0x44e (ciMethod.cpp:708)
      V [jvm.dll+0xec3d05] Parse::array_addressing+0x2b5 (parse2.cpp:368)
      V [jvm.dll+0xec46df] Parse::array_store+0x4f (parse2.cpp:190)
      V [jvm.dll+0xec959f] Parse::do_one_bytecode+0x94f (parse2.cpp:2963)
      V [jvm.dll+0xebb18f] Parse::do_one_block+0x47f (parse1.cpp:1704)
      V [jvm.dll+0xeb992e] Parse::do_all_blocks+0x3ce (parse1.cpp:763)
      V [jvm.dll+0xeb627e] Parse::Parse+0xcbe (parse1.cpp:667)
      V [jvm.dll+0x4e5b55] ParseGenerator::generate+0xa5 (callGenerator.cpp:100)
      V [jvm.dll+0x5ee9f4] Compile::Compile+0xfc4 (compile.cpp:824)
      V [jvm.dll+0x4e057f] C2Compiler::compile_method+0x15f (c2compiler.cpp:152)
      V [jvm.dll+0x610760] CompileBroker::invoke_compiler_on_method+0x7f0 (compileBroker.cpp:2345)
      V [jvm.dll+0x60db9c] CompileBroker::compiler_thread_loop+0x27c (compileBroker.cpp:1990)
      V [jvm.dll+0x9a15e1] JavaThread::thread_main_inner+0x251 (javaThread.cpp:773)
      V [jvm.dll+0x111d42e] Thread::call_run+0x1be (thread.cpp:248)
      V [jvm.dll+0xe94654] thread_native_entry+0xc4 (os_windows.cpp:555)
      C [ucrtbase.dll+0x14ea0] (no source info available)
      C [KERNEL32.DLL+0x2dbe7] (no source info available)
      C [ntdll.dll+0x85a6c] (no source info available)




      Null-free assert failure:

      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (c:\sb\prod\1762964857\workspace\open\src\hotspot\share\ci\ciMethod.cpp:682), pid=24536, tid=23244
      # assert(!null_free || null_free_array) failed: inconsistency
      #
      # JRE version: Java(TM) SE Runtime Environment (26.0) (fastdebug build 26-jep401ea2-2025-11-12-1625335.christian.hagedorn.valhalla2)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-jep401ea2-2025-11-12-1625335.christian.hagedorn.valhalla2, mixed mode, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
      # Problematic frame:
      # V [jvm.dll+0x553002] ciMethod::array_access_profiled_type+0x352
      ...........
      Current CompileTask:
      C2:37136 915 % !b compiler.valhalla.inlinetypes.TestTearing$Runner::run @ 2 (959 bytes)

      Stack: [0x0000001d35d00000,0x0000001d35e00000], sp=0x0000001d35dfcb90, free space=1010k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [jvm.dll+0x553002] ciMethod::array_access_profiled_type+0x352 (ciMethod.cpp:682)
      V [jvm.dll+0xec7815] Parse::array_addressing+0x2b5 (parse2.cpp:368)
      V [jvm.dll+0xec7a00] Parse::array_load+0x40 (parse2.cpp:77)
      V [jvm.dll+0xecd187] Parse::do_one_bytecode+0x8d7 (parse2.cpp:2963)
      V [jvm.dll+0xebec9f] Parse::do_one_block+0x47f (parse1.cpp:1704)
      V [jvm.dll+0xebd43e] Parse::do_all_blocks+0x3ce (parse1.cpp:763)
      V [jvm.dll+0xeb9d8e] Parse::Parse+0xcbe (parse1.cpp:667)
      V [jvm.dll+0x4e6e25] ParseGenerator::generate+0xa5 (callGenerator.cpp:100)
      V [jvm.dll+0x5f0964] Compile::Compile+0xfc4 (compile.cpp:824)
      V [jvm.dll+0x4e17ef] C2Compiler::compile_method+0x15f (c2compiler.cpp:152)
      V [jvm.dll+0x6126d0] CompileBroker::invoke_compiler_on_method+0x7f0 (compileBroker.cpp:2345)
      V [jvm.dll+0x60fb0c] CompileBroker::compiler_thread_loop+0x27c (compileBroker.cpp:1990)
      V [jvm.dll+0x9a2d91] JavaThread::thread_main_inner+0x251 (javaThread.cpp:773)
      V [jvm.dll+0x112143e] Thread::call_run+0x1be (thread.cpp:248)
      V [jvm.dll+0xe98484] thread_native_entry+0xc4 (os_windows.cpp:555)
      C [ucrtbase.dll+0x2268a] (no source info available)
      C [KERNEL32.DLL+0x17ac4] (no source info available)
      C [ntdll.dll+0x5a8c1] (no source info available)

            Assignee:
            Christian Hagedorn
            Reporter:
            Christian Hagedorn
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: