aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2001-11-13 16:15:30 -0800
committerRichard Henderson <rth@gcc.gnu.org>2001-11-13 16:15:30 -0800
commit7c3808430899ea245f2d86cfa432a8f31cfe0bc2 (patch)
treefc632a3d72fd07ecc6e6876b345dc04e082fe810 /gcc
parentf9d44b00b686b9973139863c7d6472c2b7a11eb3 (diff)
downloadgcc-7c3808430899ea245f2d86cfa432a8f31cfe0bc2.zip
gcc-7c3808430899ea245f2d86cfa432a8f31cfe0bc2.tar.gz
gcc-7c3808430899ea245f2d86cfa432a8f31cfe0bc2.tar.bz2
loop.c (combine_movables): Turn off combination until move_movables validation bugs are fixed.
* loop.c (combine_movables): Turn off combination until move_movables validation bugs are fixed. From-SVN: r46995
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/loop.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5a04aa8..56429ef 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2001-11-13 Richard Henderson <rth@redhat.com>
+
+ * loop.c (combine_movables): Turn off combination until
+ move_movables validation bugs are fixed.
+
2001-11-13 DJ Delorie <dj@redhat.com>
* config.gcc (powerpc|rs6000): Set default cpp options based
diff --git a/gcc/loop.c b/gcc/loop.c
index bc22852..adc4a0b 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -1346,7 +1346,10 @@ combine_movables (movables, regs)
/* We want later insns to match the first one. Don't make the first
one match any later ones. So start this loop at m->next. */
for (m1 = m->next; m1; m1 = m1->next)
- if (m != m1 && m1->match == 0
+ /* ??? HACK! move_movables does not verify that the replacement
+ is valid, which can have disasterous effects with hard regs
+ and match_dup. Turn combination off for now. */
+ if (0 && m != m1 && m1->match == 0
&& regs->array[m1->regno].n_times_set == 1
/* A reg used outside the loop mustn't be eliminated. */
&& !m1->global