aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1993-10-02 14:09:01 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1993-10-02 14:09:01 -0400
commit1ddb342ad7b20c56b38ad4319f937d2d62c95841 (patch)
tree82db4ce0136c9cbf01d2203161dc41e37ca11e97 /gcc
parent4d1a011f56b0bf0e6d7fa70cbf09dd8ca4a0bf24 (diff)
downloadgcc-1ddb342ad7b20c56b38ad4319f937d2d62c95841.zip
gcc-1ddb342ad7b20c56b38ad4319f937d2d62c95841.tar.gz
gcc-1ddb342ad7b20c56b38ad4319f937d2d62c95841.tar.bz2
(record_reg_classes): Skip to next alternative when we skip normal
cost computation. From-SVN: r5561
Diffstat (limited to 'gcc')
-rw-r--r--gcc/regclass.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/regclass.c b/gcc/regclass.c
index 47da72f..be78332 100644
--- a/gcc/regclass.c
+++ b/gcc/regclass.c
@@ -1,5 +1,5 @@
/* Compute register class preferences for pseudo-registers.
- Copyright (C) 1987, 1988, 1991, 1992 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1988, 1991, 1992, 1993 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -1002,7 +1002,12 @@ record_reg_classes (n_alts, n_ops, ops, modes, constraints, insn)
alt_cost += 2;
/* This is in place of ordinary cost computation
- for this operand. */
+ for this operand, so skip to the end of the
+ alternative (should be just one character). */
+ while (*p && *p++ != ',')
+ ;
+
+ constraints[i] = p;
continue;
}
}