[patch] Stay in cfglayout mode until after cse2
Mon Mar 26 14:01:00 GMT 2007
On 3/26/07, Paolo Bonzini <email@example.com> 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.
More information about the Gcc-patches