RFR: 8184914: Use MacroAssembler::cmpoop() consistently when comparing heap objects

Roman Kennke rkennke at redhat.com
Tue Oct 17 21:05:29 UTC 2017

> This looks reasonable to me.  Maybe the compiler group should review 
> the c1 part.  I changed the mailing list to hotspot-dev.
> I can sponsor this for you.
Thanks, thanks and thanks! ;-)


> Thanks,
> Coleen
> On 10/17/17 4:22 PM, Roman Kennke wrote:
>> (Not sure if this is the correct list to ask.. if not, please let me 
>> know and/or redirect me)
>> Currently, cmpoop() is only declared for 32-bit x86, and only used in 
>> 2 places in C1 to compare oops. In other places, oops are compared 
>> using cmpptr(). It would be useful to distinguish normal pointer 
>> comparisons from heap object comparisons, and use cmpoop() 
>> consistently for heap object comparisons. This would remove clutter 
>> in several places where we have #ifdef _LP64 around comparisons, and 
>> would also allow to insert necessary barriers for GCs that need them 
>> (e.g. Shenandoah) later.
>> http://cr.openjdk.java.net/~rkennke/8184914/webrev.00/ 
>> <http://cr.openjdk.java.net/%7Erkennke/8184914/webrev.00/>
>> Tested by running hotspot_gc jtreg tests.
>> Can I get a review please?
>> Thanks, Roman

More information about the hotspot-dev mailing list