8183551: Aarch64 platform specific code for 8173770
Reviewed-by: aph, kvn
This commit is contained in:
parent
7150e2f4df
commit
51a564a1bc
@ -14392,7 +14392,7 @@ instruct compL_reg_reg(rFlagsReg cr, iRegL op1, iRegL op2)
|
||||
ins_pipe(icmp_reg_reg);
|
||||
%}
|
||||
|
||||
instruct compL_reg_immI0(rFlagsReg cr, iRegL op1, immI0 zero)
|
||||
instruct compL_reg_immL0(rFlagsReg cr, iRegL op1, immL0 zero)
|
||||
%{
|
||||
match(Set cr (CmpL op1 zero));
|
||||
|
||||
@ -14434,6 +14434,62 @@ instruct compL_reg_immL(rFlagsReg cr, iRegL op1, immL op2)
|
||||
ins_pipe(icmp_reg_imm);
|
||||
%}
|
||||
|
||||
instruct compUL_reg_reg(rFlagsRegU cr, iRegL op1, iRegL op2)
|
||||
%{
|
||||
match(Set cr (CmpUL op1 op2));
|
||||
|
||||
effect(DEF cr, USE op1, USE op2);
|
||||
|
||||
ins_cost(INSN_COST);
|
||||
format %{ "cmp $op1, $op2" %}
|
||||
|
||||
ins_encode(aarch64_enc_cmp(op1, op2));
|
||||
|
||||
ins_pipe(icmp_reg_reg);
|
||||
%}
|
||||
|
||||
instruct compUL_reg_immL0(rFlagsRegU cr, iRegL op1, immL0 zero)
|
||||
%{
|
||||
match(Set cr (CmpUL op1 zero));
|
||||
|
||||
effect(DEF cr, USE op1);
|
||||
|
||||
ins_cost(INSN_COST);
|
||||
format %{ "tst $op1" %}
|
||||
|
||||
ins_encode(aarch64_enc_cmp_imm_addsub(op1, zero));
|
||||
|
||||
ins_pipe(icmp_reg_imm);
|
||||
%}
|
||||
|
||||
instruct compUL_reg_immLAddSub(rFlagsRegU cr, iRegL op1, immLAddSub op2)
|
||||
%{
|
||||
match(Set cr (CmpUL op1 op2));
|
||||
|
||||
effect(DEF cr, USE op1);
|
||||
|
||||
ins_cost(INSN_COST);
|
||||
format %{ "cmp $op1, $op2" %}
|
||||
|
||||
ins_encode(aarch64_enc_cmp_imm_addsub(op1, op2));
|
||||
|
||||
ins_pipe(icmp_reg_imm);
|
||||
%}
|
||||
|
||||
instruct compUL_reg_immL(rFlagsRegU cr, iRegL op1, immL op2)
|
||||
%{
|
||||
match(Set cr (CmpUL op1 op2));
|
||||
|
||||
effect(DEF cr, USE op1);
|
||||
|
||||
ins_cost(INSN_COST * 2);
|
||||
format %{ "cmp $op1, $op2" %}
|
||||
|
||||
ins_encode(aarch64_enc_cmp_imm(op1, op2));
|
||||
|
||||
ins_pipe(icmp_reg_imm);
|
||||
%}
|
||||
|
||||
instruct compP_reg_reg(rFlagsRegU cr, iRegP op1, iRegP op2)
|
||||
%{
|
||||
match(Set cr (CmpP op1 op2));
|
||||
@ -14918,7 +14974,7 @@ instruct cmpUI_imm0_branch(cmpOpUEqNeLtGe cmp, iRegIorL2I op1, immI0 op2, label
|
||||
%}
|
||||
|
||||
instruct cmpUL_imm0_branch(cmpOpUEqNeLtGe cmp, iRegL op1, immL0 op2, label labl, rFlagsRegU cr) %{
|
||||
match(If cmp (CmpU op1 op2));
|
||||
match(If cmp (CmpUL op1 op2));
|
||||
effect(USE labl);
|
||||
|
||||
ins_cost(BRANCH_COST);
|
||||
|
Loading…
x
Reference in New Issue
Block a user