aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/sh/sh.md23
2 files changed, 16 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 81db01b..6ada84e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Wed Sep 4 11:22:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
+
2002-09-03 David Edelsohn <edelsohn@gnu.org>
* varasm.c (default_section_type_flags): Append _1 to name with
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 88b2dc8..f0408ef 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -9737,11 +9737,11 @@
(vec_select:V4HI
(match_operand:V4HI 1 "arith_reg_operand" "r")
(parallel
- [(zero_extract (match_operand:QI 2 "extend_reg_or_0_operand" "rU")
- (const_int 2) (const_int 0))
- (zero_extract (match_dup 2) (const_int 2) (const_int 2))
- (zero_extract (match_dup 2) (const_int 2) (const_int 4))
- (zero_extract (match_dup 2) (const_int 2) (const_int 6))])))]
+ [(zero_extract:QI (match_operand:QI 2 "extend_reg_or_0_operand" "rU")
+ (const_int 2) (const_int 0))
+ (zero_extract:QI (match_dup 2) (const_int 2) (const_int 2))
+ (zero_extract:QI (match_dup 2) (const_int 2) (const_int 4))
+ (zero_extract:QI (match_dup 2) (const_int 2) (const_int 6))])))]
"TARGET_SHMEDIA && TARGET_LITTLE_ENDIAN"
"mperm.w %1, %N2, %0"
[(set_attr "type" "arith_media")])
@@ -9751,12 +9751,13 @@
(vec_select:V4HI
(match_operand:V4HI 1 "arith_reg_operand" "r")
(parallel
- [(zero_extract (not:QI (match_operand:QI 2
- "extend_reg_or_0_operand" "rU"))
- (const_int 2) (const_int 0))
- (zero_extract (not:QI (match_dup 2)) (const_int 2) (const_int 2))
- (zero_extract (not:QI (match_dup 2)) (const_int 2) (const_int 4))
- (zero_extract (not:QI (match_dup 2)) (const_int 2) (const_int 6))])))]
+ [(zero_extract:QI (not:QI (match_operand:QI 2
+ "extend_reg_or_0_operand" "rU"))
+ (const_int 2) (const_int 0))
+ (zero_extract:QI (not:QI (match_dup 2)) (const_int 2) (const_int 2))
+ (zero_extract:QI (not:QI (match_dup 2)) (const_int 2) (const_int 4))
+ (zero_extract:QI (not:QI (match_dup 2))
+ (const_int 2) (const_int 6))])))]
"TARGET_SHMEDIA && ! TARGET_LITTLE_ENDIAN"
"mperm.w %1, %N2, %0"
[(set_attr "type" "arith_media")])