On Thu, 26 Mar 2026 16:15:45 GMT, Roland Westrelin <[email protected]> wrote:

>> This implements c2 and runtime support to pass a reference to an existing 
>> buffer, if there's one, as part of the scalarized calling convention. The 
>> buffer reference and the null marker are both always passed at this point.
>
> Roland Westrelin has updated the pull request with a new target base due to a 
> merge or a rebase. The pull request now contains 24 commits:
> 
>  - Merge branch 'lworld' into JDK-8372268
>  - review
>  - Update src/hotspot/share/runtime/signature.hpp
>    
>    Co-authored-by: Tobias Hartmann <[email protected]>
>  - whitespaces
>  - test tweaks
>  - more
>  - aarch64
>  - more
>  - more
>  - more
>  - ... and 14 more: 
> https://git.openjdk.org/valhalla/compare/357956b5...8b6088e6

I did run some quick testing and it looks all clean except for one failure with 
an internal test:


# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/open/src/hotspot/share/opto/escape.cpp:2164), pid=515371, 
tid=515426
#  assert(_sig_cc->at(_i_sig_cc)._null_marker) failed: null marker expected 
right after T_METADATA

Current CompileTask:
C2:6304 6178       4       org.springframework.core.ResolvableType::as (86 
bytes)

Stack: [0x0000ffff80425000,0x0000ffff80623000],  sp=0x0000ffff8061d290,  free 
space=2016k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xc59540]  DomainIterator::next_helper()+0x3c0  (escape.cpp:2164)
V  [libjvm.so+0xc50508]  
ConnectionGraph::process_call_arguments(CallNode*)+0x16d8  (escape.cpp:2205)
V  [libjvm.so+0xc568a8]  ConnectionGraph::compute_escape()+0x9dc  
(escape.cpp:271)
V  [libjvm.so+0xc58850]  ConnectionGraph::do_analysis(Compile*, 
PhaseIterGVN*)+0x12c  (escape.cpp:121)
V  [libjvm.so+0xa61e3c]  Compile::Optimize()+0x4dc  (compile.cpp:3119)
V  [libjvm.so+0xa64b68]  Compile::Compile(ciEnv*, ciMethod*, int, Options, 
DirectiveSet*)+0x1788  (compile.cpp:886)
V  [libjvm.so+0x8656f4]  C2Compiler::compile_method(ciEnv*, ciMethod*, int, 
bool, DirectiveSet*)+0x2f0  (c2compiler.cpp:150)
V  [libjvm.so+0xa73a1c]  
CompileBroker::invoke_compiler_on_method(CompileTask*)+0xa38  
(compileBroker.cpp:2345)
V  [libjvm.so+0xa749b8]  CompileBroker::compiler_thread_loop()+0x630  
(compileBroker.cpp:1989)
V  [libjvm.so+0xfec248]  JavaThread::thread_main_inner()+0x108  
(javaThread.cpp:773)
V  [libjvm.so+0x19c812c]  Thread::call_run()+0xac  (thread.cpp:243)
V  [libjvm.so+0x1660c4c]  thread_native_entry(Thread*)+0x11c  (os_linux.cpp:931)
C  [libc.so.6+0x80e10]  start_thread+0x300


I've seen this one already when testing 
[JDK-8377882](https://bugs.openjdk.org/browse/JDK-8377882) (your original 
version, not the REDO).

-------------

PR Comment: https://git.openjdk.org/valhalla/pull/2062#issuecomment-4153332469

Reply via email to