8287091: aarch64 : guarantee(val < (1ULL << nbits)) failed: Field too big for insn

Reviewed-by: ngasson, shade
This commit is contained in:
Andrew Haley 2022-05-25 07:26:21 +00:00
parent 65850431ed
commit 593d2b7dab

View File

@ -15505,10 +15505,10 @@ instruct overflowAddL_reg_imm(rFlagsReg cr, iRegL op1, immLAddSub op2)
%{
match(Set cr (OverflowAddL op1 op2));
format %{ "cmn $op1, $op2\t# overflow check long" %}
format %{ "adds zr, $op1, $op2\t# overflow check long" %}
ins_cost(INSN_COST);
ins_encode %{
__ cmn($op1$$Register, $op2$$constant);
__ adds(zr, $op1$$Register, $op2$$constant);
%}
ins_pipe(icmp_reg_imm);