[8u] RFR 8231430: C2: Memory stomp in max_array_length() for T_ILLEGAL type

Andrew Hughes gnu.andrew at redhat.com
Thu Feb 20 03:47:16 UTC 2020



On 19/02/2020 11:37, Aleksey Shipilev wrote:
> Original bug:
>   https://bugs.openjdk.java.net/browse/JDK-8231430
>   https://hg.openjdk.java.net/jdk/jdk/rev/54af3178cdbd
> 
> This is one nasty bug, and it affects 8u as well. Unfortunately, it does not apply cleanly due to
> context changes. Also, it misses the introduction of is_reference_type helper (part of much larger
> JDK-8230505), and the fatal needs to be wrapped in err_msg to match the old signature.
> 
> 8u webrev:
>   https://cr.openjdk.java.net/~shade/8231430/webrev.8u.01/
> 
> Testing: tier1
> 

is_reference_type actually seems to be introduced by JDK-8186209 [0] [1]
(I wondered about this as 11 doesn't have JDK-8230505)

Given I don't see us backporting ConstantDynamic, could we not include
that small change to globalDefinitions.hpp in this fix, rather than
transposing its body into the if block in src/share/vm/opto/type.cpp?
That would also avoid anyone else having to make the same replacement in
future backports.

Rest looks fine.

[0] https://bugs.openjdk.java.net/browse/JDK-8186209
[1] http://hg.openjdk.java.net/jdk/jdk/rev/c4d9d1b08e2e

Thanks,
-- 
Andrew :)

Senior Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: ed25519/0xCFDA0F9B35964222 (hkp://keys.gnupg.net)
Fingerprint = 5132 579D D154 0ED2 3E04  C5A0 CFDA 0F9B 3596 4222



More information about the jdk8u-dev mailing list