From 8fac469f6396c8c9dc4ad216dfbb7a8ca61c674c Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Fri, 24 Jun 1994 18:29:54 -0400 Subject: [PATCH] (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 --- gcc/config/vax/vax.md | 18 +++++++++--------- 1 file 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"))]