[RFC][patch] trans-mem: mark transaction begins as returns-twice
Torvald Riegel
triegel@redhat.com
Fri Jan 6 00:04:00 GMT 2012
On Wed, 2012-01-04 at 09:59 +1100, Richard Henderson wrote:
> On 01/03/2012 09:42 PM, Torvald Riegel wrote:
> >> Why does the explicit CFG approach not work exactly? cfun->calls_setjmp is
> >> thought to be quite a big hammer.
> >
> > I don't know, actually. When I looked at the miscompilation case, all
> > abnormal edges seemed to be in place.
> >
> > @rth: Do you have an idea what could be going wrong? I haven't tried
> > the other thing you sent me, what was it supposed to fix?
>
> There are several places where those edges (currently) get lost going
> from gimple to rtl. In addition, return value copy from the hard reg
> to the pseudo is in the wrong basic block wrt the abnormal edges.
>
> My inclination at this point is to use returns_twice for the 4.7 release
> and fix the abcall edges and associated fiddlery in 4.8 stage1. I'm not
> especially confident that we'd clear out all the bugs in time otherwise.
I committed Richard's returns-twice patch as a work-around for now
(r182937), and created PR 51771 for this.
More information about the Gcc-patches
mailing list