re PR target/67391 ([SH] Convert clrt addc to normal add insn)
authorOleg Endo <olegendo@gcc.gnu.org>
Sun, 27 Sep 2015 11:55:55 +0000 (11:55 +0000)
committerOleg Endo <olegendo@gcc.gnu.org>
Sun, 27 Sep 2015 11:55:55 +0000 (11:55 +0000)
commita981b74355fa292aafc277543f678b56b9871247
tree4fa085f3255ae67192e23e273788e277cb1897f4
parentf11a7b6d57f6fcba1bf2e5a0403dc49120195320
re PR target/67391 ([SH] Convert clrt addc to normal add insn)

gcc/
PR target/67391
* config/sh/sh-protos.h (sh_lra_p): Declare.
* config/sh/sh.c (sh_lra_p): Make non-static.
* config/sh/sh.md (addsi3): Use arith_reg_dest for operands[0] and
arith_reg_operand for operands[1].  Remove TARGET_SHMEDIA case.
Expand into addsi3_scr if operands[2] if needed.
(*addsi3_compact): Rename to *addsi3_compact_lra.  Use
arith_reg_operand for operands[1].  Allow it only when LRA is enabled.
(addsi3_scr, *addsi3): New insn_and_split patterns.

Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r228176
gcc/ChangeLog
gcc/config/sh/sh-protos.h
gcc/config/sh/sh.c
gcc/config/sh/sh.md