summaryrefslogtreecommitdiff
path: root/gcc/config/vax
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-06-24 18:29:54 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1994-06-24 18:29:54 -0400
commit8fac469f6396c8c9dc4ad216dfbb7a8ca61c674c (patch)
tree672ceebab2cb659d1ab8d01b88abe80eca23e5d6 /gcc/config/vax
parent8c3a64777060b6617168ef32c0b05c2ca8aafe16 (diff)
downloadgcc-8fac469f6396c8c9dc4ad216dfbb7a8ca61c674c.tar.gz
(zero_extract patterns): Don't allow constants in the first operand of...
(zero_extract patterns): Don't allow constants in the first operand of ZERO_EXTRACT since the recognizer function forces them to match the mode of the match_operand. From-SVN: r7566
Diffstat (limited to 'gcc/config/vax')
-rw-r--r--gcc/config/vax/vax.md18
1 files changed, 9 insertions, 9 deletions
diff --git a/gcc/config/vax/vax.md b/gcc/config/vax/vax.md
index ce0f067f129..96d7f91e74b 100644
--- a/gcc/config/vax/vax.md
+++ b/gcc/config/vax/vax.md
@@ -1,5 +1,5 @@
;;- Machine description for GNU compiler, Vax Version
-;; Copyright (C) 1987, 1988, 1991 Free Software Foundation, Inc.
+;; Copyright (C) 1987, 1988, 1991, 1994 Free Software Foundation, Inc.
;; This file is part of GNU CC.
@@ -1263,7 +1263,7 @@
(minus:QI (const_int 32)
(match_dup 4)))
(set (match_operand:SI 0 "general_operand" "=g")
- (zero_extract:SI (match_operand:SI 1 "nonmemory_operand" "r")
+ (zero_extract:SI (match_operand:SI 1 "register_operand" "r")
(match_dup 3)
(match_operand:SI 2 "register_operand" "g")))]
""
@@ -1321,7 +1321,7 @@
;; which can usually be done with move instructions.
(define_insn ""
- [(set (zero_extract:SI (match_operand:SI 0 "general_operand" "+ro")
+ [(set (zero_extract:SI (match_operand:SI 0 "nonimmediate_operand" "+ro")
(match_operand:QI 1 "const_int_operand" "n")
(match_operand:SI 2 "const_int_operand" "n"))
(match_operand:SI 3 "general_operand" "g"))]
@@ -1347,7 +1347,7 @@
(define_insn ""
[(set (match_operand:SI 0 "general_operand" "=&g")
- (zero_extract:SI (match_operand:SI 1 "general_operand" "ro")
+ (zero_extract:SI (match_operand:SI 1 "nonimmediate_operand" "ro")
(match_operand:QI 2 "const_int_operand" "n")
(match_operand:SI 3 "const_int_operand" "n")))]
"(INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16)
@@ -1372,7 +1372,7 @@
(define_insn ""
[(set (match_operand:SI 0 "general_operand" "=g")
- (sign_extract:SI (match_operand:SI 1 "general_operand" "ro")
+ (sign_extract:SI (match_operand:SI 1 "nonimmediate_operand" "ro")
(match_operand:QI 2 "const_int_operand" "n")
(match_operand:SI 3 "const_int_operand" "n")))]
"(INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16)
@@ -1410,7 +1410,7 @@
(define_insn ""
[(set (cc0)
(compare
- (zero_extract:SI (match_operand:SI 0 "nonmemory_operand" "r")
+ (zero_extract:SI (match_operand:SI 0 "register_operand" "r")
(match_operand:QI 1 "general_operand" "g")
(match_operand:SI 2 "general_operand" "g"))
(match_operand:SI 3 "general_operand" "g")))]
@@ -1440,7 +1440,7 @@
(define_insn ""
[(set (match_operand:SI 0 "general_operand" "=g")
- (zero_extract:SI (match_operand:SI 1 "nonmemory_operand" "r")
+ (zero_extract:SI (match_operand:SI 1 "register_operand" "ri")
(match_operand:QI 2 "general_operand" "g")
(match_operand:SI 3 "general_operand" "g")))]
""
@@ -1526,7 +1526,7 @@
}")
(define_insn "insv"
- [(set (zero_extract:SI (match_operand:QI 0 "general_operand" "+g")
+ [(set (zero_extract:SI (match_operand:QI 0 "nonimmediate_operand" "+g")
(match_operand:QI 1 "general_operand" "g")
(match_operand:SI 2 "general_operand" "g"))
(match_operand:SI 3 "general_operand" "g"))]
@@ -1534,7 +1534,7 @@
"insv %3,%2,%1,%0")
(define_insn ""
- [(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+r")
+ [(set (zero_extract:SI (match_operand:SI 0 "nonimmediate_operand" "+r")
(match_operand:QI 1 "general_operand" "g")
(match_operand:SI 2 "general_operand" "g"))
(match_operand:SI 3 "general_operand" "g"))]