From bac4aeb790130088de7ba9147ca13ef5e4930aa4 Mon Sep 17 00:00:00 2001 From: Hans-Peter Nilsson Date: Mon, 14 Apr 2003 21:16:12 +0000 Subject: cris.md ("*mov_sideqi", [...]): When next to constraint R, replace constraint i with n. * config/cris/cris.md ("*mov_sideqi", "*mov_sidehi") ("*mov_sidesi", "*mov_sideqi_mem", "*mov_sidehi_mem") ("*mov_sidesi_mem", "*clear_sidesi", "*clear_sidehi") ("*clear_sideqi", "*ext_sideqihi", "*ext_sideqisi") ("*ext_sidehisi", "*op_sideqi", "*op_sidehi", "*op_sidesi") ("*op_swap_sideqi", "*op_swap_sidehi", "*op_swap_sidesi") ("*extopqihi_side", "*extopqisi_side", "*extophisi_side") ("*extopqihi_swap_side", "*extopqisi_swap_side") ("*extophisi_swap_side", 8th, 9th, 10th, 11th, 14th peepholes): When next to constraint R, replace constraint i with n. From-SVN: r65592 --- gcc/ChangeLog | 13 +++++++++ gcc/config/cris/cris.md | 78 ++++++++++++++++++++++++------------------------- 2 files changed, 52 insertions(+), 39 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8707eb0..3ef702f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2003-04-14 Hans-Peter Nilsson + + * config/cris/cris.md ("*mov_sideqi", "*mov_sidehi") + ("*mov_sidesi", "*mov_sideqi_mem", "*mov_sidehi_mem") + ("*mov_sidesi_mem", "*clear_sidesi", "*clear_sidehi") + ("*clear_sideqi", "*ext_sideqihi", "*ext_sideqisi") + ("*ext_sidehisi", "*op_sideqi", "*op_sidehi", "*op_sidesi") + ("*op_swap_sideqi", "*op_swap_sidehi", "*op_swap_sidesi") + ("*extopqihi_side", "*extopqisi_side", "*extophisi_side") + ("*extopqihi_swap_side", "*extopqisi_swap_side") + ("*extophisi_swap_side", 8th, 9th, 10th, 11th, 14th peepholes): + When next to constraint R, replace constraint i with n. + 2003-04-10 Bob Wilson * config/xtensa/xtensa.h (MAX_INT_TYPE_SIZE, IMPLICIT_FIX_EXPR, diff --git a/gcc/config/cris/cris.md b/gcc/config/cris/cris.md index 0bed750..32a652f 100644 --- a/gcc/config/cris/cris.md +++ b/gcc/config/cris/cris.md @@ -1,5 +1,5 @@ ;; GCC machine description for CRIS cpu cores. -;; Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. +;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. ;; Contributed by Axis Communications. ;; This file is part of GCC. @@ -496,7 +496,7 @@ [(set (match_operand:QI 0 "register_operand" "=r,r,r") (mem:QI (plus:SI (match_operand:SI 1 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 2 "cris_bdap_operand" "r>Ri,r,>Ri")))) + (match_operand:SI 2 "cris_bdap_operand" "r>Rn,r,>Rn")))) (set (match_operand:SI 3 "register_operand" "=*1,r,r") (plus:SI (match_dup 1) (match_dup 2)))] @@ -519,7 +519,7 @@ [(set (match_operand:HI 0 "register_operand" "=r,r,r") (mem:HI (plus:SI (match_operand:SI 1 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 2 "cris_bdap_operand" "r>Ri,r,>Ri")))) + (match_operand:SI 2 "cris_bdap_operand" "r>Rn,r,>Rn")))) (set (match_operand:SI 3 "register_operand" "=*1,r,r") (plus:SI (match_dup 1) (match_dup 2)))] @@ -542,7 +542,7 @@ [(set (match_operand:SI 0 "register_operand" "=r,r,r") (mem:SI (plus:SI (match_operand:SI 1 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 2 "cris_bdap_operand" "r>Ri,r,>Ri")))) + (match_operand:SI 2 "cris_bdap_operand" "r>Rn,r,>Rn")))) (set (match_operand:SI 3 "register_operand" "=*1,r,r") (plus:SI (match_dup 1) (match_dup 2)))] @@ -671,7 +671,7 @@ (define_insn "*mov_sideqi_mem" [(set (mem:QI (plus:SI (match_operand:SI 0 "cris_bdap_operand" "%r,r,r,r") - (match_operand:SI 1 "cris_bdap_operand" "r>Ri,r>Ri,r,>Ri"))) + (match_operand:SI 1 "cris_bdap_operand" "r>Rn,r>Rn,r,>Rn"))) (match_operand:QI 2 "register_operand" "r,r,r,r")) (set (match_operand:SI 3 "register_operand" "=*0,!*2,r,r") (plus:SI (match_dup 0) @@ -696,7 +696,7 @@ (define_insn "*mov_sidehi_mem" [(set (mem:HI (plus:SI (match_operand:SI 0 "cris_bdap_operand" "%r,r,r,r") - (match_operand:SI 1 "cris_bdap_operand" "r>Ri,r>Ri,r,>Ri"))) + (match_operand:SI 1 "cris_bdap_operand" "r>Rn,r>Rn,r,>Rn"))) (match_operand:HI 2 "register_operand" "r,r,r,r")) (set (match_operand:SI 3 "register_operand" "=*0,!*2,r,r") (plus:SI (match_dup 0) @@ -721,7 +721,7 @@ (define_insn "*mov_sidesi_mem" [(set (mem:SI (plus:SI (match_operand:SI 0 "cris_bdap_operand" "%r,r,r,r") - (match_operand:SI 1 "cris_bdap_operand" "r>Ri,r>Ri,r,>Ri"))) + (match_operand:SI 1 "cris_bdap_operand" "r>Rn,r>Rn,r,>Rn"))) (match_operand:SI 2 "register_operand" "r,r,r,r")) (set (match_operand:SI 3 "register_operand" "=*0,!*2,r,r") (plus:SI (match_dup 0) @@ -786,7 +786,7 @@ (define_insn "*clear_sidesi" [(set (mem:SI (plus:SI (match_operand:SI 0 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 1 "cris_bdap_operand" "r>Ri,r,>Ri"))) + (match_operand:SI 1 "cris_bdap_operand" "r>Rn,r,>Rn"))) (const_int 0)) (set (match_operand:SI 2 "register_operand" "=*0,r,r") (plus:SI (match_dup 0) @@ -826,7 +826,7 @@ (define_insn "*clear_sidehi" [(set (mem:HI (plus:SI (match_operand:SI 0 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 1 "cris_bdap_operand" "r>Ri,r,>Ri"))) + (match_operand:SI 1 "cris_bdap_operand" "r>Rn,r,>Rn"))) (const_int 0)) (set (match_operand:SI 2 "register_operand" "=*0,r,r") (plus:SI (match_dup 0) @@ -866,7 +866,7 @@ (define_insn "*clear_sideqi" [(set (mem:QI (plus:SI (match_operand:SI 0 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 1 "cris_bdap_operand" "r>Ri,r,>Ri"))) + (match_operand:SI 1 "cris_bdap_operand" "r>Rn,r,>Rn"))) (const_int 0)) (set (match_operand:SI 2 "register_operand" "=*0,r,r") (plus:SI (match_dup 0) @@ -1127,7 +1127,7 @@ 4 "cris_extend_operator" [(mem:QI (plus:SI (match_operand:SI 1 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 2 "cris_bdap_operand" "r>Ri,r,>Ri")))])) + (match_operand:SI 2 "cris_bdap_operand" "r>Rn,r,>Rn")))])) (set (match_operand:SI 3 "register_operand" "=*1,r,r") (plus:SI (match_dup 1) (match_dup 2)))] @@ -1152,7 +1152,7 @@ 4 "cris_extend_operator" [(mem:QI (plus:SI (match_operand:SI 1 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 2 "cris_bdap_operand" "r>Ri,r,>Ri")))])) + (match_operand:SI 2 "cris_bdap_operand" "r>Rn,r,>Rn")))])) (set (match_operand:SI 3 "register_operand" "=*1,r,r") (plus:SI (match_dup 1) (match_dup 2)))] @@ -1177,7 +1177,7 @@ 4 "cris_extend_operator" [(mem:HI (plus:SI (match_operand:SI 1 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 2 "cris_bdap_operand" "r>Ri,r,>Ri")))])) + (match_operand:SI 2 "cris_bdap_operand" "r>Rn,r,>Rn")))])) (set (match_operand:SI 3 "register_operand" "=*1,r,r") (plus:SI (match_dup 1) (match_dup 2)))] @@ -1473,7 +1473,7 @@ [(match_operand:QI 1 "register_operand" "0,0,0") (mem:QI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri")))])) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn")))])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) (match_dup 3)))] @@ -1499,7 +1499,7 @@ [(match_operand:HI 1 "register_operand" "0,0,0") (mem:HI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri")))])) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn")))])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) (match_dup 3)))] @@ -1525,7 +1525,7 @@ [(match_operand:SI 1 "register_operand" "0,0,0") (mem:SI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri")))])) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn")))])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) (match_dup 3)))] @@ -1624,7 +1624,7 @@ 5 "cris_commutative_orth_op" [(mem:QI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri"))) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn"))) (match_operand:QI 1 "register_operand" "0,0,0")])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -1650,7 +1650,7 @@ 5 "cris_commutative_orth_op" [(mem:HI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri"))) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn"))) (match_operand:HI 1 "register_operand" "0,0,0")])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -1676,7 +1676,7 @@ 5 "cris_commutative_orth_op" [(mem:SI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri"))) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn"))) (match_operand:SI 1 "register_operand" "0,0,0")])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -1965,7 +1965,7 @@ 6 "cris_extend_operator" [(mem:QI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri") + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn") ))])])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -1995,7 +1995,7 @@ 6 "cris_extend_operator" [(mem:QI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri") + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn") ))])])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -2026,7 +2026,7 @@ 6 "cris_extend_operator" [(mem:HI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri") + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn") ))])])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -2135,7 +2135,7 @@ 5 "cris_extend_operator" [(mem:QI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri")))]) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn")))]) (match_operand:HI 1 "register_operand" "0,0,0")])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -2164,7 +2164,7 @@ 5 "cris_extend_operator" [(mem:QI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri")))]) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn")))]) (match_operand:SI 1 "register_operand" "0,0,0")])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -2193,7 +2193,7 @@ 5 "cris_extend_operator" [(mem:HI (plus:SI (match_operand:SI 2 "cris_bdap_operand" "%r,r,r") - (match_operand:SI 3 "cris_bdap_operand" "r>Ri,r,>Ri")))]) + (match_operand:SI 3 "cris_bdap_operand" "r>Rn,r,>Rn")))]) (match_operand:SI 1 "register_operand" "0,0,0")])) (set (match_operand:SI 4 "register_operand" "=*2,r,r") (plus:SI (match_dup 2) @@ -4854,10 +4854,10 @@ (define_peephole [(set (match_operand:SI 0 "register_operand" "=r,r,r,r") - (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Ri,r,>Ri")) + (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Rn,r,>Rn")) (set (match_dup 0) - (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Ri,r") - (match_operand:SI 3 "cris_bdap_biap_operand" "r>Ri,r,0,0"))) + (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Rn,r") + (match_operand:SI 3 "cris_bdap_biap_operand" "r>Rn,r,0,0"))) (set (match_operand 4 "register_operand" "=r,r,r,r") (mem (match_dup 0)))] "(rtx_equal_p (operands[2], operands[0]) @@ -4882,10 +4882,10 @@ (define_peephole [(set (match_operand:SI 0 "register_operand" "=r,r,r,r") - (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Ri,r,>Ri")) + (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Rn,r,>Rn")) (set (match_dup 0) - (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Ri,r") - (match_operand:SI 3 "cris_bdap_biap_operand" "r>Ri,r,0,0"))) + (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Rn,r") + (match_operand:SI 3 "cris_bdap_biap_operand" "r>Rn,r,0,0"))) (set (mem (match_dup 0)) (match_operand 4 "register_operand" "=r,r,r,r"))] "(rtx_equal_p (operands[2], operands[0]) @@ -4912,10 +4912,10 @@ (define_peephole [(set (match_operand:SI 0 "register_operand" "=r,r,r,r") - (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Ri,r,>Ri")) + (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Rn,r,>Rn")) (set (match_dup 0) - (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Ri,r") - (match_operand:SI 3 "cris_bdap_biap_operand" "r>Ri,r,0,0"))) + (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Rn,r") + (match_operand:SI 3 "cris_bdap_biap_operand" "r>Rn,r,0,0"))) (set (match_operand 4 "register_operand" "=r,r,r,r") (match_operator 5 "cris_orthogonal_operator" [(match_dup 3) @@ -4942,10 +4942,10 @@ (define_peephole [(set (match_operand:SI 0 "register_operand" "=r,r,r,r") - (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Ri,r,>Ri")) + (match_operand:SI 1 "cris_bdap_biap_operand" "r,>Rn,r,>Rn")) (set (match_dup 0) - (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Ri,r") - (match_operand:SI 3 "cris_bdap_biap_operand" "r>Ri,r,0,0"))) + (plus:SI (match_operand:SI 2 "cris_bdap_biap_operand" "0,0,r>Rn,r") + (match_operand:SI 3 "cris_bdap_biap_operand" "r>Rn,r,0,0"))) (set (match_operand 4 "register_operand" "=r,r,r,r") (match_operator 5 "cris_commutative_orth_op" [(mem (match_dup 0)) @@ -5014,8 +5014,8 @@ (define_peephole [(set (match_operand 0 "register_operand" "=r,r,r,r") (mem (plus:SI - (match_operand:SI 1 "cris_bdap_biap_operand" "r,r>Ri,r,r>Ri") - (match_operand:SI 2 "cris_bdap_biap_operand" "r>Ri,r,r>Ri,r")))) + (match_operand:SI 1 "cris_bdap_biap_operand" "r,r>Rn,r,r>Rn") + (match_operand:SI 2 "cris_bdap_biap_operand" "r>Rn,r,r>Rn,r")))) (set (match_dup 0) (match_operator 5 "cris_commutative_orth_op" [(match_operand 3 "register_operand" "0,0,r,r") -- cgit v1.1