This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch] h8300.md: Simplify the conditions of some peephole2's.
- From: Kazu Hirata <kazu at cs dot umass dot edu>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 18 Feb 2004 16:55:12 -0500 (EST)
- Subject: [patch] h8300.md: Simplify the conditions of some peephole2's.
Hi,
Attached is a patch to simplify the conditions of some peephole2's
using h8300_regs_ok_for_stm().
Built on h8300-elf. Committed.
Kazu Hirata
2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
* config/h8300/h8300.md (four define_peephole2's): Use
h8300_regs_ok_for_stm().
Index: h8300.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/h8300/h8300.md,v
retrieving revision 1.272
diff -u -r1.272 h8300.md
--- h8300.md 18 Feb 2004 19:42:22 -0000 1.272
+++ h8300.md 18 Feb 2004 19:49:16 -0000
@@ -3770,10 +3770,7 @@
(set (mem:SI (pre_dec:SI (reg:SI SP_REG)))
(match_operand:SI 3 "register_operand" ""))]
"TARGET_H8300S && !TARGET_NORMAL_MODE
- && REGNO (operands[0]) == 0
- && REGNO (operands[1]) == 1
- && REGNO (operands[2]) == 2
- && REGNO (operands[3]) == 3"
+ && h8300_regs_ok_for_stm (4, operands)"
[(parallel [(set (reg:SI SP_REG)
(plus:SI (reg:SI SP_REG)
(const_int -16)))
@@ -3797,10 +3794,7 @@
(set (mem:SI (pre_dec:HI (reg:HI SP_REG)))
(match_operand:SI 3 "register_operand" ""))]
"TARGET_H8300S && TARGET_NORMAL_MODE
- && REGNO (operands[0]) == 0
- && REGNO (operands[1]) == 1
- && REGNO (operands[2]) == 2
- && REGNO (operands[3]) == 3"
+ && h8300_regs_ok_for_stm (4, operands)"
[(parallel [(set (reg:HI SP_REG)
(plus:HI (reg:HI SP_REG)
(const_int -16)))
@@ -3824,12 +3818,7 @@
(set (mem:SI (pre_dec:SI (reg:SI SP_REG)))
(match_operand:SI 2 "register_operand" ""))]
"TARGET_H8300S && !TARGET_NORMAL_MODE
- && ((REGNO (operands[0]) == 0
- && REGNO (operands[1]) == 1
- && REGNO (operands[2]) == 2)
- || (REGNO (operands[0]) == 4
- && REGNO (operands[1]) == 5
- && REGNO (operands[2]) == 6))"
+ && h8300_regs_ok_for_stm (3, operands)"
[(parallel [(set (reg:SI SP_REG)
(plus:SI (reg:SI SP_REG)
(const_int -12)))
@@ -3849,12 +3838,7 @@
(set (mem:SI (pre_dec:HI (reg:HI SP_REG)))
(match_operand:SI 2 "register_operand" ""))]
"TARGET_H8300S && TARGET_NORMAL_MODE
- && ((REGNO (operands[0]) == 0
- && REGNO (operands[1]) == 1
- && REGNO (operands[2]) == 2)
- || (REGNO (operands[0]) == 4
- && REGNO (operands[1]) == 5
- && REGNO (operands[2]) == 6))"
+ && h8300_regs_ok_for_stm (3, operands)"
[(parallel [(set (reg:HI SP_REG)
(plus:HI (reg:HI SP_REG)
(const_int -12)))
@@ -3874,9 +3858,7 @@
(set (mem:SI (pre_dec:SI (reg:SI SP_REG)))
(match_operand:SI 1 "register_operand" ""))]
"TARGET_H8300S && !TARGET_NORMAL_MODE
- && ((REGNO (operands[0]) == 0 && REGNO (operands[1]) == 1)
- || (REGNO (operands[0]) == 2 && REGNO (operands[1]) == 3)
- || (REGNO (operands[0]) == 4 && REGNO (operands[1]) == 5))"
+ && h8300_regs_ok_for_stm (2, operands)"
[(parallel [(set (reg:SI SP_REG)
(plus:SI (reg:SI SP_REG)
(const_int -8)))
@@ -3892,9 +3874,7 @@
(set (mem:SI (pre_dec:HI (reg:HI SP_REG)))
(match_operand:SI 1 "register_operand" ""))]
"TARGET_H8300S && TARGET_NORMAL_MODE
- && ((REGNO (operands[0]) == 0 && REGNO (operands[1]) == 1)
- || (REGNO (operands[0]) == 2 && REGNO (operands[1]) == 3)
- || (REGNO (operands[0]) == 4 && REGNO (operands[1]) == 5))"
+ && h8300_regs_ok_for_stm (2, operands)"
[(parallel [(set (reg:HI SP_REG)
(plus:HI (reg:HI SP_REG)
(const_int -8)))