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

[lworld] C2: Joining "Object:flat_in_array" with "Object:exact" does not properly work

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P3 P3
    • repo-valhalla
    • repo-valhalla
    • hotspot

      Test fails on AArch64 with "-XX:+UnlockExperimentalVMOptions -XX:PerMethodSpecTrapLimit=0 -XX:PerMethodTrapLimit=0"

      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/workspace/open/src/hotspot/share/opto/type.cpp:4173), pid=3251950, tid=3251966
      # assert(!flat_in_array || can_be_inline_type()) failed: Only inline types can be flat in array
      #
      # JRE version: Java(TM) SE Runtime Environment (24.0+1) (fastdebug build 24-valhalla+1-63)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 24-valhalla+1-63, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-aarch64)
      # Problematic frame:
      # V [libjvm.so+0x16f374c] TypeInstPtr::TypeInstPtr(TypePtr::PTR, ciKlass*, TypeInterfaces const*, bool, ciObject*, Type::Offset, bool, int, TypePtr const*, int)+0x148

      Current CompileTask:
      C2:409 65 b compiler.gcbarriers.G1CrashTest::main (102 bytes)

      Stack: [0x0000ffff53009000,0x0000ffff53207000], sp=0x0000ffff53201820, free space=2018k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x16f374c] TypeInstPtr::TypeInstPtr(TypePtr::PTR, ciKlass*, TypeInterfaces const*, bool, ciObject*, Type::Offset, bool, int, TypePtr const*, int)+0x148 (type.cpp:4173)
      V [libjvm.so+0x16f3c14] TypeInstPtr::make(TypePtr::PTR, ciKlass*, TypeInterfaces const*, bool, ciObject*, Type::Offset, bool, int, TypePtr const*, int)+0x104 (type.cpp:4210)
      V [libjvm.so+0x1704dc8] TypeInstPtr::xmeet_helper(Type const*) const+0x474 (type.cpp:4506)
      V [libjvm.so+0x16ebb9c] TypePtr::xmeet(Type const*) const+0x18 (type.cpp:2799)
      V [libjvm.so+0x170d140] VerifyMeetResult::meet(Type const*, Type const*)+0x130 (type.cpp:944)
      V [libjvm.so+0x170135c] Type::meet_helper(Type const*, bool) const+0x42c (type.cpp:990)
      V [libjvm.so+0x797ddc] ConstraintCastNode::higher_equal_types(PhaseGVN*, Node const*) const+0x10c (type.hpp:263)
      V [libjvm.so+0x7983b4] ConstraintCastNode::Identity(PhaseGVN*)+0x64 (castnode.cpp:50)
      V [libjvm.so+0x1472164] PhaseIterGVN::transform_old(Node*)+0x3f4 (phaseX.cpp:1265)
      V [libjvm.so+0x1467fa0] PhaseIterGVN::optimize()+0xbc (phaseX.cpp:1047)
      V [libjvm.so+0x9273dc] PhaseIdealLoop::optimize(PhaseIterGVN&, LoopOptsMode)+0x3bc (loopnode.hpp:1218)
      V [libjvm.so+0x921bd0] Compile::Optimize()+0xea0 (compile.cpp:2864)
      V [libjvm.so+0x9249a0] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x14fc (compile.cpp:865)
      V [libjvm.so+0x760038] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x174 (c2compiler.cpp:143)
      V [libjvm.so+0x930fc4] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x864 (compileBroker.cpp:2319)
      V [libjvm.so+0x931bdc] CompileBroker::compiler_thread_loop()+0x57c (compileBroker.cpp:1977)
      V [libjvm.so+0xdf69e8] JavaThread::thread_main_inner()+0xe4 (javaThread.cpp:773)
      V [libjvm.so+0x16cbfb0] Thread::call_run()+0xac (thread.cpp:232)
      V [libjvm.so+0x13e3d54] thread_native_entry(Thread*)+0x130 (os_linux.cpp:858)
      C [libpthread.so.0+0x7950] start_thread+0x190
      Registers:

            chagedorn Christian Hagedorn
            thartmann Tobias Hartmann
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: