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] Stay in cfglayout mode until after cse2


On 3/26/07, Paolo Bonzini <paolo.bonzini@lu.unisi.ch> wrote:

>> > This is wrong. You would emit the barrier as a non-insn after the end >> > of the basic block, which you can't do in cfglayout mode. If the >> > barrier would go anywhere, it would be in bb->il.rtl->footer. But in >> > this case, emiting a barrier is just wrong. Why did you need this? >> >> I don't really recall this exactly, it will take some more >> investigation. It doesn't seem to be so wrong to force the >> presence of a barrier when going *out* of cfglayout mode if >> there's no fallthrough edge. > > But cfg_layout_finalize already forces a barrier after non-fallthrough > edges, so you still shouldn't need this.

It only does this when it creates a non-fallthrough edge itself
in force_nonfallthru, AFAICT.  It seems like a barrier is not
necessary before combine, but is necessary afterwards because
of some simplification.  If it really bothers you, I'll look for
a reduced testcase.

It really does bother me. Sorry :-) I really think that this papers over a problem elsewhere.

Gr.
Steven


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