--- a/src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp Fri Aug 10 17:07:44 2018 +0800
+++ b/src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp Fri Aug 10 14:22:49 2018 +0300
@@ -1922,7 +1922,7 @@
if (is_32bit)
__ cmpw(reg1, imm);
else
- __ cmp(reg1, imm);
+ __ subs(zr, reg1, imm);
return;
} else {
__ mov(rscratch1, imm);
@@ -2705,7 +2705,7 @@
if (TypeEntries::is_type_none(current_klass)) {
__ cbz(rscratch2, none);
- __ cmp(rscratch2, TypeEntries::null_seen);
+ __ cmp(rscratch2, (u1)TypeEntries::null_seen);
__ br(Assembler::EQ, none);
// There is a chance that the checks above (re-reading profiling
// data from memory) fail if another thread has just set the
@@ -2750,7 +2750,7 @@
Label ok;
__ ldr(rscratch1, mdo_addr);
__ cbz(rscratch1, ok);
- __ cmp(rscratch1, TypeEntries::null_seen);
+ __ cmp(rscratch1, (u1)TypeEntries::null_seen);
__ br(Assembler::EQ, ok);
// may have been set by another thread
__ dmb(Assembler::ISHLD);