Re: Question about Sparse Linear form and pseudos

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

 



Hi Linus,

On 20 August 2017 at 17:20, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Sun, Aug 20, 2017 at 9:12 AM, Dibyendu Majumdar
> <mobile@xxxxxxxxxxxxxxx> wrote:
>>
>> Okay the linear output above seems SSA if we consider how it is shown
>> in the output. But in the code, access to 0[a] occurs via a pseudo -
>> of type PSEUDO_SYM. We see multiple stores happening to this pseudo.
>
> No. There are no stores _to_ the pseudo.
>

Okay I see.

> The PSEUDO_SYM is an *address*. It's not changed. A "store" does not
> assign a value to a pseudo, it writes to *memory*, and the pseudo
> gives the address. It's purely a read of the pseudo.
>
>> So then is it more accurate to say that PSEUDO_SYM and possibly
>> PSEUDO_ARG too - represent memory access, and are just a proxy for
>> stack allocated memory?
>
> No. All pseudos are strictly write-once (after the SSA conversion).
> Memory operations don't write to pseudos. They only use pseudos for
> addresses.
>

Thanks. So does that mean that pseudos are SSA from the initial
linearization phase, and therefore the baseline linear output is
already SSA? By SSA conversion are you referring to the subsequent
phase when memory accesses are converted to pseudos where possible?

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