RFR: 8261731: shallow copy the internal buffer of a scalar-replaced java.lang.String object

Tobias Hartmann thartmann at openjdk.java.net
Tue Mar 16 10:39:16 UTC 2021


On Tue, 16 Mar 2021 09:11:58 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

>> hi, @TobiHartmann , 
>> Could you try out the latest version 94626e8? I haven't  reproduced the error from the two replay files.  My best guess is that both of them crashed because of some special nodes which are subclasses of StrIntrinsicNode. I only handled the case StrEqualsNode before. This patch handles them.  It also dumps the unknown node to tty in case it still meets unknown code shape.
>
> Sure, I'll re-run testing.
> 
> After looking through the changes, I'm concerned about all the complexity that is added to handle this special case. Do you have any performance numbers other than microbenchmark results that would justify this?

The changes to macro.cpp do not build anymore after [JDK-8263577](https://bugs.openjdk.java.net/browse/JDK-8263577) because the signature of `Node::replace_edges_in_range` changed.

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

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


More information about the hotspot-compiler-dev mailing list