RFR(M): 8073480: C2 should optimize explicit range checks

Roland Westrelin roland.westrelin at oracle.com
Wed Feb 25 16:11:00 UTC 2015


Hi Vladimir,

Thanks for taking the time to discuss this.

>>> side_effect_free() does not check that middle test is actual NULL check. You only check that there is CastPP. It could be not enough.
>> 
>> I don’t think it has to be a null check. A check that is simple enough doesn’t have to block the transformation. Do you have an example where another type of checks would be a problem?
> 
> You check that LoadRange depends on that test. It is already limiting kinds of it. I am afraid that CastPP could be gone after CCP phase so it would be safer to check the test itself.
> 
> We could see CastII and not LoadRange. But for now to allow only LoadRange with middle check is fine.

Ok but you got me confused. Are you asking me to make a change or not?

Roland.

webrev: http://cr.openjdk.java.net/~roland/8073480/webrev.00/



More information about the hotspot-compiler-dev mailing list