8288992: AArch64: CMN should be handled the same way as CMP
Reviewed-by: adinn, ngasson
This commit is contained in:
parent
75c0a5b828
commit
cc2b792704
src/hotspot/cpu/aarch64
@ -3370,7 +3370,7 @@ void MacroAssembler::kernel_crc32_using_crc32(Register crc, Register buf,
|
||||
crc32x(crc, crc, tmp2);
|
||||
crc32x(crc, crc, tmp3);
|
||||
br(Assembler::GE, CRC_by32_loop);
|
||||
cmn(len, 32);
|
||||
cmn(len, (u1)32);
|
||||
br(Assembler::NE, CRC_less32);
|
||||
b(L_exit);
|
||||
|
||||
@ -3433,7 +3433,7 @@ void MacroAssembler::kernel_crc32_using_crc32(Register crc, Register buf,
|
||||
|
||||
sub(len, len, 64);
|
||||
add(buf, buf, 8);
|
||||
cmn(len, 128);
|
||||
cmn(len, (u1)128);
|
||||
br(Assembler::NE, CRC_less64);
|
||||
BIND(L_exit);
|
||||
mvnw(crc, crc);
|
||||
@ -3667,7 +3667,7 @@ void MacroAssembler::kernel_crc32c_using_crc32c(Register crc, Register buf,
|
||||
crc32cx(crc, crc, tmp2);
|
||||
crc32cx(crc, crc, tmp3);
|
||||
br(Assembler::GE, CRC_by32_loop);
|
||||
cmn(len, 32);
|
||||
cmn(len, (u1)32);
|
||||
br(Assembler::NE, CRC_less32);
|
||||
b(L_exit);
|
||||
|
||||
@ -3730,7 +3730,7 @@ void MacroAssembler::kernel_crc32c_using_crc32c(Register crc, Register buf,
|
||||
|
||||
sub(len, len, 64);
|
||||
add(buf, buf, 8);
|
||||
cmn(len, 128);
|
||||
cmn(len, (u1)128);
|
||||
br(Assembler::NE, CRC_less64);
|
||||
BIND(L_exit);
|
||||
}
|
||||
|
@ -197,8 +197,11 @@ class MacroAssembler: public Assembler {
|
||||
inline void cmp(Register Rd, unsigned char imm8) { subs(zr, Rd, imm8); }
|
||||
inline void cmp(Register Rd, unsigned imm) = delete;
|
||||
|
||||
inline void cmnw(Register Rd, unsigned imm) { addsw(zr, Rd, imm); }
|
||||
inline void cmn(Register Rd, unsigned imm) { adds(zr, Rd, imm); }
|
||||
template<class T>
|
||||
inline void cmnw(Register Rd, T imm) { addsw(zr, Rd, imm); }
|
||||
|
||||
inline void cmn(Register Rd, unsigned char imm8) { adds(zr, Rd, imm8); }
|
||||
inline void cmn(Register Rd, unsigned imm) = delete;
|
||||
|
||||
void cset(Register Rd, Assembler::Condition cond) {
|
||||
csinc(Rd, zr, zr, ~cond);
|
||||
|
Loading…
x
Reference in New Issue
Block a user