[llvm-commits] [llvm] r134413 - in /llvm/trunk: lib/CodeGen/InlineSpiller.cpp lib/CodeGen/LiveRangeEdit.cpp test/CodeGen/X86/crash.ll

Rafael Ávila de Espíndola rafael.espindola at gmail.com
Tue Jul 5 09:45:37 PDT 2011


On 07/05/2011 11:38 AM, Jakob Stoklund Olesen wrote:
> Author: stoklund
> Date: Tue Jul  5 10:38:41 2011
> New Revision: 134413
>
> URL: http://llvm.org/viewvc/llvm-project?rev=134413&view=rev
> Log:
> Fix PR10277.
>
> Remat during spilling triggers dead code elimination. If a phi-def
> becomes unused, that may also cause live ranges to split into separate
> connected components.
>
> This type of splitting is different from normal live range splitting. In
> particular, there may not be a common original interval.
>
> When the split range is its own original, make sure that the new
> siblings are also their own originals. The range being split cannot be
> used as an original since it doesn't cover the new siblings.
>

Thanks!

I had just managed to produce a testcase without tail duplication :-)

Do you have a reference on what was going on? Why do we track the 
original live interval when splitting?

Cheers,
Rafael



More information about the llvm-commits mailing list