+2015-05-17 Oleg Endo <olegendo@gcc.gnu.org>
+
+ PR target/54236
+ * config/sh/sh.md (*addc_2r_t): Use ashift instead of mult.
+
2015-05-17 Uros Bizjak <ubizjak@gmail.com>
PR target/66174
(define_insn_and_split "*addc_2r_t"
[(set (match_operand:SI 0 "arith_reg_dest")
(plus:SI (match_operand 1 "treg_set_expr")
- (mult:SI (match_operand:SI 2 "arith_reg_operand")
- (const_int 2))))
+ (ashift:SI (match_operand:SI 2 "arith_reg_operand")
+ (const_int 1))))
(clobber (reg:SI T_REG))]
"TARGET_SH1 && can_create_pseudo_p ()"
"#"
(define_insn_and_split "*addc_2r_t"
[(set (match_operand:SI 0 "arith_reg_dest")
- (plus:SI (mult:SI (match_operand:SI 1 "arith_reg_operand")
- (const_int 2))
+ (plus:SI (ashift:SI (match_operand:SI 1 "arith_reg_operand")
+ (const_int 1))
(match_operand 2 "treg_set_expr")))
(clobber (reg:SI T_REG))]
"TARGET_SH1 && can_create_pseudo_p ()"