On 7/09/2011, at 9:32 AM, Steven Bosscher wrote: > On Tue, Sep 6, 2011 at 11:31 PM, Steven Bosscher <stevenb....@gmail.com> > wrote: >> Index: haifa-sched.c >> =================================================================== >> --- haifa-sched.c (revision 178601) >> +++ haifa-sched.c (working copy) >> @@ -6071,7 +6071,10 @@ check_cfg (rtx head, rtx tail) >> /* Or jump to the next instruction. */ >> || (EDGE_COUNT (bb->succs) == 1 >> && (BB_HEAD (EDGE_I (bb->succs, 0)->dest) >> - == JUMP_LABEL (head)))); >> + == JUMP_LABEL (head))) >> + /* Or the jump is not just a jump. */ >> + || (!onlyjump_p (head) >> + || returnjump_p (head))); >> } >> if (BB_END (bb) == head) >> { >> > > BTW that's one ugly gcc_assert. Candidate for gcc_checking_assert?
I agree. I would rather remove the entirety of haifa-sched.c: check_cfg(); scheduler is not the right place for checking consistency of CFG. Check_cfg() was useful for debugging scheduler patches, but now it is more of maintainance overhead. Do I have a second vote for removal of check_cfg()? -- Maxim Kuvyrkov CodeSourcery / Mentor Graphics