[LLVMdev] InlineSpiller Questions

dag at cray.com dag at cray.com
Wed Sep 19 16:02:16 PDT 2012


Jakob Stoklund Olesen <stoklund at 2pi.dk> writes:

> On Sep 19, 2012, at 10:49 AM, <dag at cray.com> wrote:
>
>> Jakob Stoklund Olesen <stoklund at 2pi.dk> writes:
>> 
>> So if there are multiple values between r2 and r3 (r2.1, r2.2, etc.) I
>> would just follow the chains implied by the SibValueInfo Deps array?
>> Basically, I want to find all of the live ranges related to r1.
>
> It really depends on what you're trying to do.
>
> The whole sibling value machinery is only concerned with tracking
> different virtual register value numbers that are known to have the
> same value. It doesn't really apply to anything else.

Are all of those sibling values guaranteed to ultimately derive from the
same def, in the sense that they can be traced through copies, phis,
etc. back to a single instruction?  I'm looking at scheduling the load
in my example and I need to be able to check for conflicting stores
within relevant live ranges.

Is there a design document for the new InlineSpiller and SplitKit
somewhere?

                             -Dave



More information about the llvm-dev mailing list