< prev index next >

src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp

Print this page
rev 50099 : 8203157: Object equals abstraction for BarrierSetAssembler

*** 1877,1887 **** Register reg1 = as_reg(opr1); if (opr2->is_single_cpu()) { // cpu register - cpu register Register reg2 = opr2->as_register(); if (opr1->type() == T_OBJECT || opr1->type() == T_ARRAY) { ! __ cmp(reg1, reg2); } else { assert(opr2->type() != T_OBJECT && opr2->type() != T_ARRAY, "cmp int, oop?"); __ cmpw(reg1, reg2); } return; --- 1877,1887 ---- Register reg1 = as_reg(opr1); if (opr2->is_single_cpu()) { // cpu register - cpu register Register reg2 = opr2->as_register(); if (opr1->type() == T_OBJECT || opr1->type() == T_ARRAY) { ! __ cmpoop(reg1, reg2); } else { assert(opr2->type() != T_OBJECT && opr2->type() != T_ARRAY, "cmp int, oop?"); __ cmpw(reg1, reg2); } return;
*** 1908,1919 **** case T_ADDRESS: imm = opr2->as_constant_ptr()->as_jint(); break; case T_OBJECT: case T_ARRAY: ! imm = jlong(opr2->as_constant_ptr()->as_jobject()); ! break; default: ShouldNotReachHere(); imm = 0; // unreachable break; } --- 1908,1920 ---- case T_ADDRESS: imm = opr2->as_constant_ptr()->as_jint(); break; case T_OBJECT: case T_ARRAY: ! jobject2reg(opr2->as_constant_ptr()->as_jobject(), rscratch1); ! __ cmpoop(reg1, rscratch1); ! return; default: ShouldNotReachHere(); imm = 0; // unreachable break; }
< prev index next >