summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-23 09:07:19 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-23 09:07:19 +0000
commitbcd23ea69e1f29353ead0305b1909d4cd4f97458 (patch)
tree990dfb0c16562225088da59af654a73d83dedeba
parentb858a9f047ea17419780553b752d6579529dcb2a (diff)
downloadppe42-gcc-bcd23ea69e1f29353ead0305b1909d4cd4f97458.tar.gz
ppe42-gcc-bcd23ea69e1f29353ead0305b1909d4cd4f97458.zip
gcc/
* config/sh/sh.md: Use nonimmediate_operand rather than general_operand for the destination of a define_peephole2. Likewise register_operand rather than arith_reg_operand. Remove constraints from define_peephole2s. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205303 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/sh/sh.md18
2 files changed, 16 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dfc293517cb..df5b4b8ab8e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2013-11-23 Richard Sandiford <rdsandiford@googlemail.com>
+ * config/sh/sh.md: Use nonimmediate_operand rather than general_operand
+ for the destination of a define_peephole2. Likewise register_operand
+ rather than arith_reg_operand. Remove constraints from
+ define_peephole2s.
+
+2013-11-23 Richard Sandiford <rdsandiford@googlemail.com>
+
* config/mn10300/mn10300-protos.h (mn10300_store_multiple_operation):
Delete.
(mn10300_store_multiple_operation_p): Declare.
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 8cc9195c988..ecd7e00a46c 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -6065,7 +6065,7 @@ label:
(define_peephole2
[(set (match_operand:SI 0 "arith_reg_dest" "")
(zero_extend:SI (match_operand 1 "displacement_mem_operand" "")))
- (set (match_operand 2 "general_operand" "")
+ (set (match_operand 2 "nonimmediate_operand" "")
(match_operand 3 "arith_reg_operand" ""))]
"TARGET_SH2A
&& REGNO (operands[0]) == REGNO (operands[3])
@@ -13700,13 +13700,13 @@ label:
;; -------------------------------------------------------------------------
;; This matches cases where the bit in a memory location is set.
(define_peephole2
- [(set (match_operand:SI 0 "arith_reg_operand" "r,r")
- (sign_extend:SI (match_operand:QI 1 "bitwise_memory_operand" "Sbw,Sbv")))
+ [(set (match_operand:SI 0 "register_operand")
+ (sign_extend:SI (match_operand:QI 1 "bitwise_memory_operand")))
(set (match_dup 0)
(ior:SI (match_dup 0)
- (match_operand:SI 2 "const_int_operand" "Pso,Pso")))
+ (match_operand:SI 2 "const_int_operand")))
(set (match_dup 1)
- (match_operand 3 "arith_reg_operand" "r,r"))]
+ (match_operand 3 "arith_reg_operand"))]
"TARGET_SH2A && TARGET_BITOPS
&& satisfies_constraint_Pso (operands[2])
&& REGNO (operands[0]) == REGNO (operands[3])"
@@ -13716,13 +13716,13 @@ label:
;; This matches cases where the bit in a memory location is cleared.
(define_peephole2
- [(set (match_operand:SI 0 "arith_reg_operand" "r,r")
- (sign_extend:SI (match_operand:QI 1 "bitwise_memory_operand" "Sbw,Sbv")))
+ [(set (match_operand:SI 0 "register_operand")
+ (sign_extend:SI (match_operand:QI 1 "bitwise_memory_operand")))
(set (match_dup 0)
(and:SI (match_dup 0)
- (match_operand:SI 2 "const_int_operand" "Psz,Psz")))
+ (match_operand:SI 2 "const_int_operand")))
(set (match_dup 1)
- (match_operand 3 "arith_reg_operand" "r,r"))]
+ (match_operand 3 "arith_reg_operand"))]
"TARGET_SH2A && TARGET_BITOPS
&& satisfies_constraint_Psz (operands[2])
&& REGNO (operands[0]) == REGNO (operands[3])"
OpenPOWER on IntegriCloud