RFR: 8336042: Caller/callee param size mismatch in deoptimization causes crash [v3]

Richard Reingruber rrich at openjdk.org
Fri Feb 28 12:14:09 UTC 2025


On Thu, 27 Feb 2025 17:44:05 GMT, Patricio Chilano Mateo <pchilanomate at openjdk.org> wrote:

>> Dean Long has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Stricter assertion on ppc64
>
> src/hotspot/share/runtime/deoptimization.cpp line 645:
> 
>> 643:     methodHandle method(current, deopt_sender.interpreter_frame_method());
>> 644:     Bytecode_invoke cur(method, deopt_sender.interpreter_frame_bci());
>> 645:     if (!cur.is_invokedynamic() && MethodHandles::has_member_arg(cur.klass(), cur.name())) {
> 
> I was confused with this new condition but I see is the same we have in `vframeArray::unpack_to_stack()`.

+1
I see there's also an assertion in `ConstantPool::klass_ref_index_at()`. It might be worth a little comment.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23557#discussion_r1975310438


More information about the hotspot-dev mailing list