Current, 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 #ifdef _LP64 around comparisons, and would also allow to insert necessary barriers for GCs that need them (e.g. Shenandoah) later.