diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-06-24 18:29:54 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-06-24 18:29:54 -0400 |
commit | 8fac469f6396c8c9dc4ad216dfbb7a8ca61c674c (patch) | |
tree | 672ceebab2cb659d1ab8d01b88abe80eca23e5d6 /gcc/config/vax | |
parent | 8c3a64777060b6617168ef32c0b05c2ca8aafe16 (diff) | |
download | gcc-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.md | 18 |
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"))] |