+2004-04-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11841
+ * loop.h (REGNO_LAST_NOTE_LUID): New macro.
+ * unroll.c (unroll_loop): Take into account notes when deciding
+ whether a pseudo is local to the loop.
+
2004-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net>
Backport from mainline
#define REGNO_FIRST_LUID(REGNO) uid_luid[REGNO_FIRST_UID (REGNO)]
#define REGNO_LAST_LUID(REGNO) uid_luid[REGNO_LAST_UID (REGNO)]
+#define REGNO_LAST_NOTE_LUID(REGNO) uid_luid[REGNO_LAST_NOTE_UID (REGNO)]
/* A "basic induction variable" or biv is a pseudo reg that is set
+2004-05-17 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * gcc.dg/loop-4.c: New test.
+
2004-04-29 Matthias Klose <doko@debian.org>
Backport:
for (r = FIRST_PSEUDO_REGISTER; r < max_reg_before_loop; ++r)
if (REGNO_FIRST_UID (r) > 0 && REGNO_FIRST_UID (r) < max_uid_for_loop
&& REGNO_FIRST_LUID (r) >= copy_start_luid
- && REGNO_LAST_UID (r) > 0 && REGNO_LAST_UID (r) < max_uid_for_loop
- && REGNO_LAST_LUID (r) <= copy_end_luid)
+ && REGNO_LAST_NOTE_UID (r) > 0 && REGNO_LAST_NOTE_UID (r) < max_uid_for_loop
+ && REGNO_LAST_NOTE_LUID (r) <= copy_end_luid)
{
/* However, we must also check for loop-carried dependencies.
If the value the pseudo has at the end of iteration X is