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: Help w/ CFG/loop optimization problem?


On Tuesday, September 10, 2002, at 03:39 PM, Roger Sayle wrote:

Hi Dale,

Advice?
Spooky!  I posted to patch to gcc-patches to fix a similar problem
(CFG vs LOOP) less than an hour after your question.
I saw.  Unfortunately your fix didn't fix my case, but I was looking
forward to hearing from you:)

I think I know a possible fix.  I believe that the "conditional branch
over an unconditional branch" idiom that GCC's initial RTL generation
uses is a historical artifact.  I suspect that GCC now handles long
conditional branches perfectly well,  so creating jumps over jumps
does nothing but confuse CFG, which in turn confuses LOOP.
Thanks, I'll look at that. I think it would be more general to have this
done in the optimization phases if possible, though; users can write
recognizable doloop-able loops in other ways than the usual C idioms.
Of course, some would argue they should be penalized for this.:)


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