Re: SSA names

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

 



On 8/5/07 9:58 AM, ranjith kumar wrote:

>    The  SSA names are represented as i.xyz_abc... 
> For example D.2204_50
> What is the singnificanse of 2204 and 50?

The symbol D.2204 is a temporary created by the compiler.  The number
2204 is just the unique ID given to the symbol.

> What information can we get from that variable name?

Nothing other than it's a compiler temporary.

> Also let b[50] be an int array declared in a .c
> program.
> In PHI nodes it is referred as b_6.

Yes, because 'b' is a memory variable and so, it's not put into the
regular SSA form.  For memory symbols (array, pointers, global
variables) GCC uses a form known as Virtual SSA form.  Essentially,
references to any member of array 'b' is considered a reference to all
of 'b'.  You will see those if you dump the IL using the '-vops' suffix
to -fdump-tree-....  (e.g., -fdump-tree-all-vops).

> Where can I found more information about gcc's SSA
> repesentaion??

There are various presentations, papers and tutorials describing the
internal workings of GCC.  Check the Getting Started section of the GCC
wiki: http://gcc.gnu.org/wiki/GettingStarted

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux