This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] check_cfg assert fix


On 7/09/2011, at 9:32 AM, Steven Bosscher wrote:

> On Tue, Sep 6, 2011 at 11:31 PM, Steven Bosscher <stevenb.gcc@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



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]