RFR: 8263125: During deoptimization vectors should reassign scalarized payload after all objects are reallocated. [v2]

Vladimir Kozlov kvn at openjdk.java.net
Fri Mar 12 09:26:09 UTC 2021


On Fri, 12 Mar 2021 08:48:50 GMT, Richard Reingruber <rrich at openjdk.org> wrote:

> Hello Vladimir,
> 
> your change looks good to me. You might want to add the refactoring Vladimir
> suggested.
> 
> May I ask why there is a special case to reallocate a vectors payload at all. In
> other words: why is the method VectorSupport::allocate_vector_payload_helper()
> needed? Is it for support of VectorMask?
> 
> Thanks, Richard.

@iwanowww may know correct answer.

As I understand it is because vectors need to re-allocate additional `payload` array to store vectors element:
https://github.com/openjdk/jdk/blob/master/src/hotspot/share/prims/vectorSupport.cpp#L129
`create_stack_value()` does not handle new allocations and arrays. It would require a lot changes.

I think it could be done if during debug info generation we describe element's storage as Scalarized array. But it would not help VectorMask as you said.

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

PR: https://git.openjdk.java.net/jdk/pull/2924


More information about the hotspot-dev mailing list