RFR(L): 8024070: C2 needs some form of type speculation
roland.westrelin at oracle.com
Mon Sep 16 04:32:04 PDT 2013
Thanks for your comments.
> You need to add jtreg tests to verify these changes for different cases (especially merge points with different profile types).
Do you mean tests that show an improvement (artificially pollute profiling at a call site and verify that some profiling that dominates the call site helps for instance)? I have such tests but they need manual inspection of the resulting code or inlining. Given the effect of the change has no visible effects at the java level how would I automate testing? Run with -XX:+PrintInlining and parse the output? Have we done that before on other tests?
> Please, explain why we need CastPP. In merge points it will leak to Phi nodes and further anyway.
I don't see how this can be made to work in general without the extra CastPP nodes. Can you elaborate on how you would do it?
More information about the hotspot-compiler-dev