Request for reviews (M): 6954029: Improve implicit null check generation with compressed oops

Vladimir Kozlov vladimir.kozlov at oracle.com
Fri May 21 10:48:22 PDT 2010


I found bug in the code. x64 DecodeN may change flags
I have to hoist flag-killing projections:

http://cr.openjdk.java.net/~kvn/6954029/webrev.01

Only opto/lcm.cpp was changed vs previous webrev.

Thanks,
Vladimir

Vladimir Kozlov wrote:
> Thank you, Christian
> 
> I fixed typo.
> 
> Vladimir
> 
> Christian Thalinger wrote:
>> On Thu, 2010-05-20 at 18:02 -0700, Vladimir Kozlov wrote:
>>> http://cr.openjdk.java.net/~kvn/6954029/webrev
>>>
>>> Fixed 6954029: Improve implicit null check generation with compressed 
>>> oops
>>>
>>> Problem:
>>> When DecodeN instruction does not fold into address expression
>>> it may prevent implicit null check generation if it is scheduled
>>> below the null check since the corresponding memory instruction
>>> could not be moved.
>>>
>>> Solution:
>>> If needed move DecodeN instruction before null check to generate
>>> implicit null check.
>>>
>>> I also removed code which switch off default COOP usage on N1:
>>> currently generated COOP code perform better on N1 (tested jbb2005).
>>
>> src/cpu/sparc/vm/sparc.ad:
>> src/cpu/x86/vm/x86_64.ad:
>>
>> +   assert(UseCompressedOops, "only for comressed oops code");
>>                                            ^ typo
>>
>> Otherwise (I think) it's OK.
>>
>> -- Christian
>>


More information about the hotspot-compiler-dev mailing list