Re: Trying to understand linearized output

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12 March 2017 at 17:20, Luc Van Oostenryck
<luc.vanoostenryck@xxxxxxxxx> wrote:
> On Sun, Mar 12, 2017 at 05:15:54PM +0000, Dibyendu Majumdar wrote:
>> On 12 March 2017 at 17:10, Luc Van Oostenryck
>> <luc.vanoostenryck@xxxxxxxxx> wrote:
>> > On Sun, Mar 12, 2017 at 02:11:37PM +0000, Dibyendu Majumdar wrote:
>> >> ...
>> >>
>> >> My question is:
>> >>
>> >> phisrc.64   %phi98(current) <- %r333
>> >>
>> >> The phi98 above is presumably referencing a pseudo which has number
>> >> 98. But this is not part of this function, so I am confused. Does this
>> >> look right?
>> >
>> > I didn't checked all the details by it looks right.
>> >
>> > The %phi98 is not referencing a pseudo which has the number 98.
>> > It is a pseudo numbered 98 and which is of type PSEUDO_PHI.
>> > Those kind of pseudos are exclusively created by 'phisrc' instructions
>> > and used by 'phi' instructions.
>> > Here this %phi98 is used by the phi instructions at block .L127
>> >
>> > These 'phi' instructions are the core of the SSA representation of
>> > intermediate code. If needed Wikipedia gives a good introduction:
>> >          https://en.wikipedia.org/wiki/Static_single_assignment_form
>>
>>
>> Thanks. I am familiar with phi instructions in LLVM, but the phisrc
>> instructions in Sparse are new to me.
>
> Good. I wasn't sure.
>
> Those phisrc are unimportant, you can consider them as a kind of 'move'
> which is only but systematically used for each pseudo feeded to a phi
> instruction. They ahev no special semantic, they just make some things
> little bit easier for sparse.
>

I got confused by the numbering initially as I was expecting all
pseudos within a single function to be numbered sequentially.

So I should just read following :

phisrc.64   %phi98(current) <- %r333

As:

%phi98(current) = %r333

And 98 just happens to be the identifier for the pseudo, and 'phi' is
just to help the reader know that the value will go into a phi
instruction later. Is that correct?

Regards
Dibyendu
--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux