RFR(S): Test crashed with assert(phi->operand_count() != 1 || phi->subst() != phi) failed: missed trivial simplification
Tobias Hartmann
tobias.hartmann at oracle.com
Tue Nov 12 08:30:28 UTC 2019
Hi Martin,
looks reasonable to me.
Best regards,
Tobias
On 11.11.19 11:39, Doerr, Martin wrote:
> Hi,
>
> some C1 assertions currently don't deal correctly with illegal phi functions (phi function with illegal type due to type conflict).
> Since JDK-8214352 we bail out in fewer situations, so C1 needs to deal with a few more illegal phi cases.
>
> The assertion (see headline) in PhiSimplifier doesn't support illegal phi, but the simplify call before it does (by just skipping).
>
> Another assertion which needs to skip illegal phi is in c1_Optimizer where we merge a block with its unique successor.
> If a local value of the succeeding block is coming from an illegal phi function, we drop it and take the value from the first block.
> This is correct, only the assertion doesn't expect that at the moment.
>
> So I'd like to fix these 2 assertions I found:
> http://cr.openjdk.java.net/~mdoerr/8233820_C1_illegal_phi/webrev.00/
>
> Best regards,
> Martin
>
More information about the hotspot-compiler-dev
mailing list