aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOleg Endo <olegendo@gcc.gnu.org>2013-10-26 23:26:14 +0000
committerOleg Endo <olegendo@gcc.gnu.org>2013-10-26 23:26:14 +0000
commita38b5918eca9bc76bf15de527a0f95971065eb49 (patch)
tree59838399be1042d70f166cdc6600394ec6a74676
parent35d1b0838cd0a693a3904b9f947e9013ab424c40 (diff)
downloadgcc-a38b5918eca9bc76bf15de527a0f95971065eb49.zip
gcc-a38b5918eca9bc76bf15de527a0f95971065eb49.tar.gz
gcc-a38b5918eca9bc76bf15de527a0f95971065eb49.tar.bz2
sh.md (movmemsi): Remove empty constraints and predicates.
* config/sh/sh.md (movmemsi): Remove empty constraints and predicates. Fix formatting. (cmpstr_t, cmpstrsi): Fix formatting. From-SVN: r204098
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/sh/sh.md44
2 files changed, 30 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cb4e7bc..f533d9a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2013-10-26 Oleg Endo <olegendo@gcc.gnu.org>
+ * config/sh/sh.md (movmemsi): Remove empty constraints and predicates.
+ Fix formatting.
+ (cmpstr_t, cmpstrsi): Fix formatting.
+
+2013-10-26 Oleg Endo <olegendo@gcc.gnu.org>
+
PR target/52483
* config/sh/predicates.md (general_movdst_operand): Allow reg+reg
addressing, do not use general_operand for memory operands.
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 5642856..f356351 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -11836,19 +11836,20 @@ label:
;; String/block move insn.
(define_expand "movmemsi"
- [(parallel [(set (mem:BLK (match_operand:BLK 0 "" ""))
- (mem:BLK (match_operand:BLK 1 "" "")))
- (use (match_operand:SI 2 "nonmemory_operand" ""))
- (use (match_operand:SI 3 "immediate_operand" ""))
+ [(parallel [(set (mem:BLK (match_operand:BLK 0))
+ (mem:BLK (match_operand:BLK 1)))
+ (use (match_operand:SI 2 "nonmemory_operand"))
+ (use (match_operand:SI 3 "immediate_operand"))
(clobber (reg:SI PR_REG))
(clobber (reg:SI R4_REG))
(clobber (reg:SI R5_REG))
(clobber (reg:SI R0_REG))])]
"TARGET_SH1 && ! TARGET_SH5"
{
- if(expand_block_move (operands))
- DONE;
- else FAIL;
+ if (expand_block_move (operands))
+ DONE;
+ else
+ FAIL;
})
(define_insn "block_move_real"
@@ -11916,17 +11917,19 @@ label:
(define_insn "cmpstr_t"
[(set (reg:SI T_REG)
(eq:SI (and:SI
- (and:SI
(and:SI
- (zero_extract:SI (xor:SI (match_operand:SI 0 "arith_reg_operand" "r")
- (match_operand:SI 1 "arith_reg_operand" "r"))
- (const_int 8) (const_int 0))
- (zero_extract:SI (xor:SI (match_dup 0) (match_dup 1))
- (const_int 8) (const_int 8)))
- (zero_extract:SI (xor:SI (match_dup 0) (match_dup 1))
- (const_int 8) (const_int 16)))
- (zero_extract:SI (xor:SI (match_dup 0) (match_dup 1))
- (const_int 8) (const_int 24))) (const_int 0)))]
+ (and:SI
+ (zero_extract:SI
+ (xor:SI (match_operand:SI 0 "arith_reg_operand" "r")
+ (match_operand:SI 1 "arith_reg_operand" "r"))
+ (const_int 8) (const_int 0))
+ (zero_extract:SI (xor:SI (match_dup 0) (match_dup 1))
+ (const_int 8) (const_int 8)))
+ (zero_extract:SI (xor:SI (match_dup 0) (match_dup 1))
+ (const_int 8) (const_int 16)))
+ (zero_extract:SI (xor:SI (match_dup 0) (match_dup 1))
+ (const_int 8) (const_int 24)))
+ (const_int 0)))]
"TARGET_SH1"
"cmp/str %0,%1"
[(set_attr "type" "mt_group")])
@@ -11938,9 +11941,10 @@ label:
(use (match_operand 3 "immediate_operand"))]
"TARGET_SH1"
{
- if (! optimize_insn_for_size_p () && sh_expand_cmpstr (operands))
- DONE;
- else FAIL;
+ if (! optimize_insn_for_size_p () && sh_expand_cmpstr (operands))
+ DONE;
+ else
+ FAIL;
})