aboutsummaryrefslogtreecommitdiff
path: root/gcc/recog.c
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>2003-11-23 16:10:52 +0000
committerRichard Earnshaw <rearnsha@gcc.gnu.org>2003-11-23 16:10:52 +0000
commit8c2a5582fb57306c48c39462476dcca6a5d92335 (patch)
tree85531f5eef295907a5c4fde4b9b109c76e05a167 /gcc/recog.c
parentbf058d221efaf883b850d459809373cfaf5e05f2 (diff)
downloadgcc-8c2a5582fb57306c48c39462476dcca6a5d92335.zip
gcc-8c2a5582fb57306c48c39462476dcca6a5d92335.tar.gz
gcc-8c2a5582fb57306c48c39462476dcca6a5d92335.tar.bz2
recog.c (preprocess_constraints): Only zero those elements of recog_op_alt that are needed for this insn.
* recog.c (preprocess_constraints): Only zero those elements of recog_op_alt that are needed for this insn. * arm.c (note_invalid_constants): A function can't contain invalid constants if it has no constraints. From-SVN: r73855
Diffstat (limited to 'gcc/recog.c')
-rw-r--r--gcc/recog.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/recog.c b/gcc/recog.c
index 3c67bd8..f0e75c2 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -2093,7 +2093,10 @@ preprocess_constraints (void)
{
int i;
- memset (recog_op_alt, 0, sizeof recog_op_alt);
+ for (i = 0; i < recog_data.n_operands; i++)
+ memset (recog_op_alt[i], 0, (recog_data.n_alternatives
+ * sizeof (struct operand_alternative)));
+
for (i = 0; i < recog_data.n_operands; i++)
{
int j;