RFR(M): 8073480: C2 should optimize explicit range checks
roland.westrelin at oracle.com
Wed Feb 25 16:11:00 UTC 2015
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?
More information about the hotspot-compiler-dev