diff options
author | sayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-04-23 17:39:54 +0000 |
---|---|---|
committer | sayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-04-23 17:39:54 +0000 |
commit | e9daf218aeee52d52ea60bb76211c59744808d04 (patch) | |
tree | 06c0ee947082869b8a934b580fa64ce2f7bb4374 /gcc/config/fr30/fr30.md | |
parent | 3688a7ee6228221b1149d45d32baad1f9e462599 (diff) | |
download | gcc-e9daf218aeee52d52ea60bb76211c59744808d04.tar.gz |
* config/fr30/fr30.md (addsi_small_int): Use REGNO_PTR_FRAME_P to
identify potentially eliminable registers to additionally catch
VIRTUAL_INCOMING_ARGS_REGNUM.
(addsi3): Update the conditions on when to use addsi_small_int.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113197 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/fr30/fr30.md')
-rw-r--r-- | gcc/config/fr30/fr30.md | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/config/fr30/fr30.md b/gcc/config/fr30/fr30.md index 734b3749ada..0398eccc005 100644 --- a/gcc/config/fr30/fr30.md +++ b/gcc/config/fr30/fr30.md @@ -654,10 +654,10 @@ emit_insn (gen_addsi_regs (operands[0], operands[1], operands[2])); else if (GET_CODE (operands[2]) != CONST_INT) emit_insn (gen_addsi_big_int (operands[0], operands[1], operands[2])); - else if ( (REGNO (operands[1]) != FRAME_POINTER_REGNUM) - && (REGNO (operands[1]) != ARG_POINTER_REGNUM) - && (INTVAL (operands[2]) >= -16) - && (INTVAL (operands[2]) <= 15)) + else if (INTVAL (operands[2]) >= -16 + && INTVAL (operands[2]) <= 15 + && (!REGNO_PTR_FRAME_P (REGNO (operands[1])) + || REGNO (operands[1]) == STACK_POINTER_REGNUM)) emit_insn (gen_addsi_small_int (operands[0], operands[1], operands[2])); else emit_insn (gen_addsi_big_int (operands[0], operands[1], operands[2])); @@ -680,8 +680,8 @@ [(set (match_operand:SI 0 "register_operand" "=r,r") (plus:SI (match_operand:SI 1 "register_operand" "0,0") (match_operand:SI 2 "add_immediate_operand" "I,J")))] - " (REGNO (operands[1]) != FRAME_POINTER_REGNUM) - && (REGNO (operands[1]) != ARG_POINTER_REGNUM)" + "! REGNO_PTR_FRAME_P (REGNO (operands[1])) + || REGNO (operands[1]) == STACK_POINTER_REGNUM" "@ addn %2, %0 addn2 %2, %0" |