[PATCH] check_cfg assert fix
Maxim Kuvyrkov
maxim@codesourcery.com
Tue Sep 6 21:59:00 GMT 2011
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
More information about the Gcc-patches
mailing list