Request for reviews (S): 7078382: JSR 292: don't count method handle adapters against inlining budgets

Christian Thalinger christian.thalinger at oracle.com
Tue Aug 30 08:35:11 PDT 2011


On Aug 30, 2011, at 4:59 PM, Vladimir Kozlov wrote:

> + // (a) Don't fully count method handle adapters against inlining
>      ^ you have only one paragraph so (a) is not needed.

Yeah.  I thought maybe we get more in the future :-)  I removed it.

> 
> "sites of the adapter" --> "sites in the adapter"

Thanks.

> 
> Can you not assign inside loop's condition? You can do next:
> 
> +     while (iter.next() != ciBytecodeStream::EOBC()) {
> +       if (Bytecodes::is_invoke(iter.cur_bc())) {

Yes, I like that better.  I also changed the example in ciStreams.hpp as I got that code from there.

> 
> Other looks good.

Thank you.  I updated the webrev.

-- Christian

> 
> Thanks,
> Vladimir
> 
> 
> On 8/30/11 1:07 AM, Christian Thalinger wrote:
>> So, the change is so small that nobody cares? :-)
>> 
>> -- Christian
>> 
>> On Aug 23, 2011, at 9:20 PM, Christian Thalinger wrote:
>> 
>>> http://cr.openjdk.java.net/~twisti/7078382/
>>> 
>>> 7078382: JSR 292: don't count method handle adapters against inlining budgets
>>> Reviewed-by:
>>> 
>>> Currently the code size of method handle adapters are counted against
>>> inlining budgets like DesiredMethodLimit.  This results to earlier
>>> compiler bailouts with method handle call sites than without leading
>>> to worse performance.
>>> 
>>> The fix is to return an adjusted bytecode size for method handle
>>> adapters for inlining decisions (the metric we use for now is the
>>> number of invokes).
>>> 
>>> Tested with JRuby benchmarks.
>>> 
>> 



More information about the hotspot-compiler-dev mailing list