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

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Aug 30 08:45:26 PDT 2011


Looks good.

Thanks,
Vladimir

Christian Thalinger wrote:
> 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