aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/c4x/c4x.md583
2 files changed, 4 insertions, 583 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cbeef75..e77662a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Wed Sep 22 20:25:00 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md: Delete parallel instruction peepholes.
+
Wed Sep 22 19:59:19 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/c4x.c (c4x_add_gc_roots): Add tree roots.
diff --git a/gcc/config/c4x/c4x.md b/gcc/config/c4x/c4x.md
index e4227e7..39d7153 100644
--- a/gcc/config/c4x/c4x.md
+++ b/gcc/config/c4x/c4x.md
@@ -6675,45 +6675,6 @@
return \"br%#\\t%C1\";"
[(set_attr "type" "jump")])
-;
-; Peepholes for parallel instructions
-;
-(define_peephole
- [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (match_operand:QI 1 "par_ind_operand" ""))
- (set (match_operand:QI 2 "ext_low_reg_operand" "")
- (match_operand:QI 3 "par_ind_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[2]))
- && ! c4x_address_conflict (operands[1], operands[3], 0, 0)"
- "ldi1\\t%1,%0\\n||\\tldi2\\t%3,%2")
-
-; load occurs before store if 1 and 2 point to same address
-(define_peephole
- [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (match_operand:QI 1 "par_ind_operand" ""))
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))
- && ! c4x_address_conflict (operands[1], operands[2], 0, 1)"
- "ldi\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-; load occurs before store if 0 and 3 point to same address
-(define_peephole
- [(set (match_operand:QI 0 "par_ind_operand" "")
- (match_operand:QI 1 "ext_low_reg_operand" ""))
- (set (match_operand:QI 2 "ext_low_reg_operand" "")
- (match_operand:QI 3 "par_ind_operand" ""))]
- "(REGNO (operands[1]) != REGNO (operands[2]))
- && ! c4x_address_conflict (operands[0], operands[3], 1, 0)"
- "ldi\\t%3,%2\\n||\\tsti\\t%1,%0")
-
-(define_peephole
- [(set (match_operand:QI 0 "par_ind_operand" "")
- (match_operand:QI 1 "ext_low_reg_operand" ""))
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "! c4x_address_conflict (operands[0], operands[2], 1, 1)"
- "sti\\t%1,%0\\n||\\tsti\\t%3,%2")
; This peephole should be unnecessary with my patches to flow.c
; for better autoincrement detection
@@ -6727,15 +6688,6 @@
""
"ldf\\t*%1++,%0\\n\\tldf\\t*%1++,%2")
-(define_peephole
- [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (match_operand:QF 1 "par_ind_operand" ""))
- (set (match_operand:QF 2 "ext_low_reg_operand" "")
- (match_operand:QF 3 "par_ind_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[2]))
- && ! c4x_address_conflict (operands[1], operands[3], 0, 1)"
- "ldf1\\t%1,%0\\n||\\tldf2\\t%3,%2")
-
; This peephole should be unnecessary with my patches to flow.c
; for better autoincrement detection
(define_peephole
@@ -6748,541 +6700,6 @@
""
"stf\\t%1,*%0++\\n\\tstf\\t%2,*%0++")
-(define_peephole
- [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (match_operand:QF 1 "par_ind_operand" ""))
- (set (match_operand:QF 2 "par_ind_operand" "")
- (match_operand:QF 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "ldf\\t%1,%0\\n||\\tstf\\t%3,%2")
-
-(define_peephole
- [(set (match_operand:QF 0 "par_ind_operand" "")
- (match_operand:QF 1 "ext_low_reg_operand" ""))
- (set (match_operand:QF 2 "ext_low_reg_operand" "")
- (match_operand:QF 3 "par_ind_operand" ""))]
- "! c4x_address_conflict (operands[0], operands[3], 1, 1)"
- "ldf\\t%3,%2\\n||\\tstf\\t%1,%0")
-
-(define_peephole
- [(set (match_operand:QF 0 "par_ind_operand" "")
- (match_operand:QF 1 "ext_low_reg_operand" ""))
- (set (match_operand:QF 2 "par_ind_operand" "")
- (match_operand:QF 3 "ext_low_reg_operand" ""))]
- "! c4x_address_conflict (operands[0], operands[2], 1, 1)"
- "stf1\\t%1,%0\\n||\\tstf2\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (abs:QF (match_operand:QF 1 "par_ind_operand" ""))
- (match_operand:QF 2 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (abs:QF (match_dup 1)))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "absf\\t%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (abs:QF (match_operand:QF 1 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QF 2 "par_ind_operand" "")
- (match_operand:QF 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "absf\\t%1,%0\\n||\\tstf\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (abs:QI (match_operand:QI 1 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (abs:QI (match_dup 1)))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "absi\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (abs:QI (match_operand:QI 1 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "absi\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (plus:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (plus:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "addi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (plus:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (plus:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "addi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (plus:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "addi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (plus:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "addi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (plus:QF (match_operand:QF 1 "ext_low_reg_operand" "")
- (match_operand:QF 2 "par_ind_operand" ""))
- (match_operand:QF 3 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (plus:QF (match_dup 1) (match_dup 2)))])
- (set (match_operand:QF 4 "par_ind_operand" "")
- (match_operand:QF 5 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[5]))"
- "addf3\\t%2,%1,%0\\n||\\tstf\\t%5,%4")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (plus:QF (match_operand:QF 1 "par_ind_operand" "")
- (match_operand:QF 2 "ext_low_reg_operand" ""))
- (match_operand:QF 3 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (plus:QF (match_dup 1) (match_dup 2)))])
- (set (match_operand:QF 4 "par_ind_operand" "")
- (match_operand:QF 5 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[5]))"
- "addf3\\t%2,%1,%0\\n||\\tstf\\t%5,%4")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (plus:QF (match_operand:QF 1 "ext_low_reg_operand" "")
- (match_operand:QF 2 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "addf3\\t%2,%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (plus:QF (match_operand:QF 1 "par_ind_operand" "")
- (match_operand:QF 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "addf3\\t%2,%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (and:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (and:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "and3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (and:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (and:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "and3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (and:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "and3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (and:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "and3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (ashift:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "ash3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (ashiftrt:QI (match_operand:QI 1 "par_ind_operand" "")
- (neg:QI (match_operand:QI 2 "ext_low_reg_operand" ""))))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "ash3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (fix:QI (match_operand:QF 1 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (fix:QI (match_dup 1)))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "fix\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (fix:QI (match_operand:QF 1 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "fix\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (float:QF (match_operand:QI 1 "par_ind_operand" ""))
- (match_operand:QF 2 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (float:QF (match_dup 1)))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "float\\t%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (float:QF (match_operand:QI 1 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QF 2 "par_ind_operand" "")
- (match_operand:QF 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "float\\t%1,%0\\n||\\tstf\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (mult:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (mult:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "mpyi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (mult:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (mult:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "mpyi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (mult:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "mpyi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (mult:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "mpyi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (mult:QF (match_operand:QF 1 "ext_low_reg_operand" "")
- (match_operand:QF 2 "par_ind_operand" ""))
- (match_operand:QF 3 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (mult:QF (match_dup 1) (match_dup 2)))])
- (set (match_operand:QF 4 "par_ind_operand" "")
- (match_operand:QF 5 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[5]))"
- "mpyf3\\t%2,%1,%0\\n||\\tstf\\t%5,%4")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (mult:QF (match_operand:QF 1 "par_ind_operand" "")
- (match_operand:QF 2 "ext_low_reg_operand" ""))
- (match_operand:QF 3 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (mult:QF (match_dup 1) (match_dup 2)))])
- (set (match_operand:QF 4 "par_ind_operand" "")
- (match_operand:QF 5 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[5]))"
- "mpyf3\\t%2,%1,%0\\n||\\tstf\\t%5,%4")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (mult:QF (match_operand:QF 1 "ext_low_reg_operand" "")
- (match_operand:QF 2 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "mpyf3\\t%2,%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (mult:QF (match_operand:QF 1 "par_ind_operand" "")
- (match_operand:QF 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "mpyf3\\t%2,%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (neg:QF (match_operand:QF 1 "par_ind_operand" ""))
- (match_operand:QF 2 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (neg:QF (match_dup 1)))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "negf\\t%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (neg:QF (match_operand:QF 1 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QF 2 "par_ind_operand" "")
- (match_operand:QF 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "negf\\t%1,%0\\n||\\tstf\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (neg:QI (match_operand:QI 1 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (neg:QI (match_dup 1)))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "negi\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (neg:QI (match_operand:QI 1 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "negi\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (not:QI (match_operand:QI 1 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (not:QI (match_dup 1)))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "not\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (not:QI (match_operand:QI 1 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 2 "par_ind_operand" "")
- (match_operand:QI 3 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[3]))"
- "not\\t%1,%0\\n||\\tsti\\t%3,%2")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (ior:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (ior:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "or3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (ior:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (ior:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "or3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (ior:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "or3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (ior:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "or3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (minus:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (minus:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "subi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (minus:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "subi3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC_NOOV 21)
- (compare:CC_NOOV (minus:QF (match_operand:QF 1 "ext_low_reg_operand" "")
- (match_operand:QF 2 "par_ind_operand" ""))
- (match_operand:QF 3 "fp_zero_operand" "")))
- (set (match_operand:QF 0 "ext_low_reg_operand" "")
- (minus:QF (match_dup 1) (match_dup 2)))])
- (set (match_operand:QF 4 "par_ind_operand" "")
- (match_operand:QF 5 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[5]))"
- "subf3\\t%2,%1,%0\\n||\\tstf\\t%5,%4")
-
-(define_peephole
- [(parallel [(set (match_operand:QF 0 "ext_low_reg_operand" "")
- (minus:QF (match_operand:QF 1 "ext_low_reg_operand" "")
- (match_operand:QF 2 "par_ind_operand" "")))
- (clobber (reg:CC_NOOV 21))])
- (set (match_operand:QF 3 "par_ind_operand" "")
- (match_operand:QF 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "subf3\\t%2,%1,%0\\n||\\tstf\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (xor:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (xor:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "xor3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (reg:CC 21)
- (compare:CC (xor:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" ""))
- (const_int 0)))
- (set (match_operand:QI 0 "ext_low_reg_operand" "")
- (xor:QI (match_dup 1) (match_dup 2)))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "xor3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (xor:QI (match_operand:QI 1 "ext_low_reg_operand" "")
- (match_operand:QI 2 "par_ind_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "xor3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
-
-(define_peephole
- [(parallel [(set (match_operand:QI 0 "ext_low_reg_operand" "")
- (xor:QI (match_operand:QI 1 "par_ind_operand" "")
- (match_operand:QI 2 "ext_low_reg_operand" "")))
- (clobber (reg:CC 21))])
- (set (match_operand:QI 3 "par_ind_operand" "")
- (match_operand:QI 4 "ext_low_reg_operand" ""))]
- "(REGNO (operands[0]) != REGNO (operands[4]))"
- "xor3\\t%2,%1,%0\\n||\\tsti\\t%4,%3")
; The following two peepholes remove an unecessary load
; often found at the end of a function. These peepholes