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] Fix delayed branch scheduling (PR rtl-optimization/23454)


> invert_jump requires a conditional jump (aka any_condjump_p) as argument
> and aborts if it is not conditional jump.  But big part of reorg still uses
> the old deprecated condjump_p (insn) and condjump_in_parallel_p (insn)
> functions, sometimes when it means conditional or unconditional jump,
> sometimes when it only means conditional jump and not unconditional. I
> think the latter is the case when invert_jump is called in
> relax_delay_slots - the optimization simplifies conditional jump around
> unconditional jump (unconditional jump around unconditional jump makes no
> sense).

I came to the same conclusion back in March:
http://gcc.gnu.org/ml/gcc-cvs/2005-03/msg00295.html

> I have tested on a cross this fixes the PR testcase, but will not be able
> to bootstrap this in the short term on any target using dbr (sparc*,
> mips*). Eric (or anybody else), could you please give this a shot?

Sure, will do over the week-end.

-- 
Eric Botcazou


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