[PATCH] SimplifyCFG: Avoid miscompilations due to removed lifetime intrinsics

Björn Steinbrink bsteinbr at gmail.com
Wed Jul 30 01:09:05 PDT 2014


On 2014.07.30 01:02:45 -0700, Reid Kleckner wrote:
> On Wed, Jul 30, 2014 at 12:46 AM, Nick Lewycky <nicholas at mxc.ca> wrote:
> 
> > Rafael Ávila de Espíndola wrote:
> >
> >> This is fine by me.
> >>
> >> I agree with Reid that we need to figure out what to do with  the
> >> lifetime intrinsics, but lets not miscompile code while we do that.
> >>
> >
> > My proposal is that we should combine lifetime.start and lifetime.end into
> > a single intrinsic that means "store undef to through this pointer" but
> > doesn't get optimized away like store to undef does. The additional optz'n
> > possible from having distinct start and end isn't worth it.
> >
> 
> Is this enough information for stack coloring to work?

That would be my concern as well. We started using lifetime markers in
rust to get stack coloring and the results are quite nice.

Björn



More information about the llvm-commits mailing list