aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-06-05 07:52:37 +0000
committerRichard Stallman <rms@gnu.org>1993-06-05 07:52:37 +0000
commit163674a7f1a3bbc38a699dee6b2438afbd9313bc (patch)
tree971789913ea661ec8f3163fb4f5b93bbbb90fcc9
parent1cd88c716e9e71672859051a4a1aeac24863d525 (diff)
downloadgcc-163674a7f1a3bbc38a699dee6b2438afbd9313bc.zip
gcc-163674a7f1a3bbc38a699dee6b2438afbd9313bc.tar.gz
gcc-163674a7f1a3bbc38a699dee6b2438afbd9313bc.tar.bz2
(record_initial): Reject insns that store into subregs.
From-SVN: r4632
-rw-r--r--gcc/loop.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index 357eee6..84a6fdf 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -6200,7 +6200,9 @@ record_initial (dest, set)
if (GET_CODE (dest) != REG
|| REGNO (dest) >= max_reg_before_loop
- || reg_iv_type[REGNO (dest)] != BASIC_INDUCT)
+ || reg_iv_type[REGNO (dest)] != BASIC_INDUCT
+ /* Reject this insn if the source isn't valid for the mode of DEST. */
+ || GET_MODE (dest) != GET_MODE (SET_DEST (set)))
return;
bl = reg_biv_class[REGNO (dest)];