aboutsummaryrefslogtreecommitdiff
path: root/gcc/recog.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-03-06 15:17:55 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1994-03-06 15:17:55 -0500
commit4d3067db2c09f1754c0faf2f155bde6212cf4608 (patch)
tree2687d966d0ea50f072508f4d7064ff2074e8e203 /gcc/recog.c
parent8079805dec16b27cf349b0d4256225c97c43e4ee (diff)
downloadgcc-4d3067db2c09f1754c0faf2f155bde6212cf4608.zip
gcc-4d3067db2c09f1754c0faf2f155bde6212cf4608.tar.gz
gcc-4d3067db2c09f1754c0faf2f155bde6212cf4608.tar.bz2
(constrain_operands): Properly handle '#' in constraint.
From-SVN: r6704
Diffstat (limited to 'gcc/recog.c')
-rw-r--r--gcc/recog.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/recog.c b/gcc/recog.c
index b3ae350..1072fe9 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -1,5 +1,5 @@
/* Subroutines used by or related to instruction recognition.
- Copyright (C) 1987, 1988, 1991, 1992, 1993 Free Software Foundation, Inc.
+ Copyright (C) 1987, 88, 91, 92, 93, 1994 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -1658,12 +1658,18 @@ constrain_operands (insn_code_num, strict)
switch (c)
{
case '?':
- case '#':
case '!':
case '*':
case '%':
break;
+ case '#':
+ /* Ignore rest of this alternative as far as
+ constraint checking is concerned. */
+ while (*p && *p != ',')
+ p++;
+ break;
+
case '=':
op_types[opno] = OP_OUT;
break;