Printf.printf "%s (match_operand:SI %d \"s_register_operand\" \"\")]))\n" indent (nregs * 2 + 3);
Printf.printf "%s (clobber (reg:CC CC_REGNUM))])]\n" indent
end;
- Printf.printf " \"(((operands[%d] == operands[0] && operands[%d] == operands[1])\n" (nregs * 2 + 2) (nregs * 2 + 3);
- Printf.printf " || (operands[%d] == operands[0] && operands[%d] == operands[1]))\n" (nregs * 2 + 3) (nregs * 2 + 2);
- Printf.printf " && peep2_reg_dead_p (%d, operands[0]) && peep2_reg_dead_p (%d, operands[1]))\"\n" (nregs + 1) (nregs + 1);
+ Printf.printf " \"((((REGNO (operands[%d]) == REGNO (operands[0]))\n" (nregs * 2 + 2);
+ Printf.printf " && (REGNO (operands[%d]) == REGNO (operands[1])))\n" (nregs * 2 + 3);
+ Printf.printf " || ((REGNO (operands[%d]) == REGNO (operands[0]))\n" (nregs * 2 + 3);
+ Printf.printf " && (REGNO (operands[%d]) == REGNO (operands[1]))))\n" (nregs * 2 + 2);
+ Printf.printf " && (peep2_regno_dead_p (%d, REGNO (operands[0]))\n" (nregs + 1);
+ Printf.printf " || (REGNO (operands[0]) == REGNO (operands[%d])))\n" (nregs * 2);
+ Printf.printf " && (peep2_regno_dead_p (%d, REGNO (operands[1]))\n" (nregs + 1);
+ Printf.printf " || (REGNO (operands[1]) == REGNO (operands[%d]))))\"\n" (nregs * 2);
begin
if thumb then
Printf.printf " [(set (match_dup %d) (match_op_dup %d [(match_dup %d) (match_dup %d)]))]\n"
[(match_operand:SI 6 "s_register_operand" "")
(match_operand:SI 7 "s_register_operand" "")]))
(clobber (reg:CC CC_REGNUM))])]
- "(((operands[6] == operands[0] && operands[7] == operands[1])
- || (operands[7] == operands[0] && operands[6] == operands[1]))
- && peep2_reg_dead_p (3, operands[0]) && peep2_reg_dead_p (3, operands[1]))"
+ "((((REGNO (operands[6]) == REGNO (operands[0]))
+ && (REGNO (operands[7]) == REGNO (operands[1])))
+ || ((REGNO (operands[7]) == REGNO (operands[0]))
+ && (REGNO (operands[6]) == REGNO (operands[1]))))
+ && (peep2_regno_dead_p (3, REGNO (operands[0]))
+ || (REGNO (operands[0]) == REGNO (operands[4])))
+ && (peep2_regno_dead_p (3, REGNO (operands[1]))
+ || (REGNO (operands[1]) == REGNO (operands[4]))))"
[(parallel
[(set (match_dup 4) (match_op_dup 5 [(match_dup 6) (match_dup 7)]))
(clobber (reg:CC CC_REGNUM))])]
(match_operator:SI 5 "commutative_binary_operator"
[(match_operand:SI 6 "s_register_operand" "")
(match_operand:SI 7 "s_register_operand" "")]))]
- "(((operands[6] == operands[0] && operands[7] == operands[1])
- || (operands[7] == operands[0] && operands[6] == operands[1]))
- && peep2_reg_dead_p (3, operands[0]) && peep2_reg_dead_p (3, operands[1]))"
+ "((((REGNO (operands[6]) == REGNO (operands[0]))
+ && (REGNO (operands[7]) == REGNO (operands[1])))
+ || ((REGNO (operands[7]) == REGNO (operands[0]))
+ && (REGNO (operands[6]) == REGNO (operands[1]))))
+ && (peep2_regno_dead_p (3, REGNO (operands[0]))
+ || (REGNO (operands[0]) == REGNO (operands[4])))
+ && (peep2_regno_dead_p (3, REGNO (operands[1]))
+ || (REGNO (operands[1]) == REGNO (operands[4]))))"
[(set (match_dup 4) (match_op_dup 5 [(match_dup 6) (match_dup 7)]))]
{
if (!gen_ldm_seq (operands, 2, true))