[LLVMdev] Deleting LiveVariables

Jakob Stoklund Olesen stoklund at 2pi.dk
Sun Feb 10 08:10:04 PST 2013


On Feb 9, 2013, at 10:51 PM, Cameron Zwarich <zwarich at apple.com> wrote:

> On Feb 8, 2013, at 4:45 PM, Jakob Stoklund Olesen <stoklund at 2pi.dk> wrote:
> 
>> On Feb 8, 2013, at 4:37 PM, Cameron Zwarich <zwarich at apple.com> wrote:
>> 
>>> I'll try doing that. Did you ever add a way to update LiveIntervals quickly after splitting an edge or will that have to finally be added? I can skip the critical edge splitting for now.
>> 
>> That doesn't exist yet, we'll need that too.
>> 
>> My thinking was to keep a list of all global live ranges in LiveIntervals so we at least don't have to go through all the local virtual registers when splitting a critical edge. (That's how LiveVariables is updated now, and it's slow).
> 
> I checked in LiveIntervals support to PHIElimination in r174831. I encountered all of the usual edge cases in 'make check', so hopefully it has no latent bugs.

Very cool. Thanks, Cameron.

> I'll add a splitEdge() method to LiveIntervalAnalysis (got a better name?) that does things the slow way first, and then we can speed it up.

Sounds good.

/jakob





More information about the llvm-dev mailing list