Make *addsi3_compact insn_and_split and add an alternative which
commit08f144282f3e8446600f779940fd921ff8ff9814
authorkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Oct 2014 23:43:00 +0000 (21 23:43 +0000)
committerkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 21 Oct 2014 23:43:00 +0000 (21 23:43 +0000)
tree3aa9976fbdb052c2fad522331b3a75c4fa4f49c2
parent6361e8368d9a2610a5a27502a793a4ab30980fb1
Make *addsi3_compact insn_and_split and add an alternative which
will split to (set a c) and (set (plus a b)) after reload.
* config/sh/predicates.md (arith_or_int_operand): New.
* config/sh/sh.md (addsi3): Use arith_or_int_operand for 2nd operand.
  Check register overlap for non I08 constant 2nd operand.
  (*addsi3_compact): Make it insn_and_split and add an alternative.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/sh-lra@216535 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/config/sh/predicates.md
gcc/config/sh/sh.md