This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: alias and pointers analysis


On 10/25/07, Fran Baena <franbaena@gmail.com> wrote:

> * Why alias analysis? I mean, the pointers could be versioned like the
> others vars. (I'm not saying it's not usefull, i mean i don't
> understand the alias analisys goals)

SSA names of pointers are also pointers, when points-to sets are
computed for SSA names, what you get is all the symbols that the
particular SSA name has been found to point to.  Eg,

if (...)
  p_1 = &a;
else
  p_2 = &b;
endif
p_3 = phi (p_1, p_2)

points-to (p_1) = { a }
points-to (p_2) = { b }
points-to (p_3) = { a b }



> * What is the significance of Use-Def chains? How are they construct?
> Are related to VDEF/DEF and VUSE/USE?

On GIMPLE they are built with the VDEF/VUSE operators.  The argument
of a VUSE/VDEF operator links to the VDEF operator that created the
argument.  In RTL, the chains are maintained using the DF data
structures.


> Note: i'm beginning i'd need something basic, conceptual docs.

I suggest the tutorials and presentations in the Getting Started
section of the wiki (http://gcc.gnu.org/wiki/GettingStarted).  Also,
some compiler books that may help are listed in that section as well
(IIRC).


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]