diff options
| author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-23 09:07:19 +0000 |
|---|---|---|
| committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-11-23 09:07:19 +0000 |
| commit | bcd23ea69e1f29353ead0305b1909d4cd4f97458 (patch) | |
| tree | 990dfb0c16562225088da59af654a73d83dedeba | |
| parent | b858a9f047ea17419780553b752d6579529dcb2a (diff) | |
| download | ppe42-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/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/config/sh/sh.md | 18 |
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])" |

