[jdk17] RFR: 8268884: C2: Change to meet_speculative in phase CCP assert

Nils Eliasson neliasso at openjdk.java.net
Tue Jun 29 11:47:01 UTC 2021


On Tue, 29 Jun 2021 11:12:52 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> > > Hi Nils,
> > > Compile::remove_speculative_types() removes speculative types before CCP. How come this node still has a speculative type?
> > 
> > 
> > Compile::remove_speculative_types() traverses the graph bottom up. The checkcast is part of an infinite loop with no exit edge. It can't be reached from below.
> 
> Wouldn't it make sense then to improve Compile::remove_speculative_types() so we're guaranteed it removes all of them?

Absolutely. My first fix didn't take into account that the speculative types should have been removed.

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

PR: https://git.openjdk.java.net/jdk17/pull/170


More information about the hotspot-compiler-dev mailing list