gcc/ChangeLog:
PR debug/42629
* haifa-sched.c (dying_use_p): Debug insns don't count.
gcc/testsuite/ChangeLog:
PR debug/42629
* gcc.dg/pr42629.c: New.
From-SVN: r155763
+2010-01-09 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/42629
+ * haifa-sched.c (dying_use_p): Debug insns don't count.
+
2010-01-09 Alexandre Oliva <aoliva@redhat.com>
PR middle-end/42363
struct reg_use_data *next;
for (next = use->next_regno_use; next != use; next = next->next_regno_use)
- if (QUEUE_INDEX (next->insn) != QUEUE_SCHEDULED)
+ if (NONDEBUG_INSN_P (next->insn)
+ && QUEUE_INDEX (next->insn) != QUEUE_SCHEDULED)
return false;
return true;
}
+2010-01-09 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/42629
+ * gcc.dg/pr42629.c: New.
+
2010-01-09 Alexandre Oliva <aoliva@redhat.com>
PR middle-end/42363
--- /dev/null
+/* This failed -fcompare-debug because register pressure computation
+ took debug insns into account. */
+/* { dg-do compile } */
+/* { dg-options "-O1 -fsched-pressure -fschedule-insns -fcompare-debug" } */
+
+int lzo_adler32(int adler, char *buf)
+{
+ int s1 = adler;
+ int s2 = adler;
+ s1 += buf[0];
+ s2 += s1;
+ s1 += buf[1];
+ s2 += s1;
+ s1 += buf[2];
+ s2 += s1;
+ s1 += buf[3];
+ s2 += s1;
+ s1 += buf[4];
+ s2 += s1;
+ s1 += buf[5];
+ s2 += s1;
+ s1 += buf[6];
+ s2 += s1;
+ s1 += buf[7];
+ s2 += s1;
+ return (s2 << 16) + s1;
+}