What does PHI node mean? [GCC Internals Manual]

Cheng Renquan crquan@gmail.com
Wed Jul 14 14:33:00 GMT 2010


On Wed, Jul 14, 2010 at 7:08 PM, Ian Lance Taylor <iant@google.com> wrote:
> Search through that Wikipedia entry for the word "phi".
>
> Ian

On Wed, Jul 14, 2010 at 7:13 PM, Georg Lay <avr@gjlay.de> wrote:
> PHI is Phi-Function where Phi stands for uppercase greek Phi, i.e. Φ in
> HTML or \Phi in TeX. It's a concept rather that an abbrev.

Thank you all, that now I know what PHI and "PHI function" means,
yes, I knew greek letter phi before, but I didn't think about their relations;
maybe I should read more before going further,
http://www.amazon.com/Advanced-Compiler-Design-Implementation-Muchnick/dp/1558603204

Cheers,

>
> Suppose you have C code like
>
> if (a)
>   x = 1;
> else
>   x = 2;
>
> In SSA form each variable must not be set more than once (statically).
> So new names are introduced for x like x_1 and x_2
>
> if (a)
>   x_1 = 1;
> else
>   x_2 = 2;
>
> These two values have to be "merged" again to get x. The magic
> which does (or expresses) this is denoted as PHI and called
> "Phi-Function":
>
> if (a)
>   x_1 = 1;
> else
>   x_2 = 2;
>
> x = PHI (x_1, x_2)
>
>> I mean: if gccint has a terminology index or table, at least explain
>> what it abbreviated for, maybe that would look better;
>> just like any technology book has a term glossary, at the end;
>
> Yes, a glossary would be great.


>
> Georg



More information about the Gcc-help mailing list