This is the mail archive of the
mailing list for the GCC project.
Re: Fully flow and context sensitive points-to analysis in GCC 4.6.0
Richard Biener wrote, On Friday 12 October 2012 03:20 PM:
On Fri, Oct 12, 2012 at 11:46 AM, Uday P. Khedker <email@example.com> wrote:
Richard Biener wrote, On Friday 12 October 2012 02:51 PM:
we _always_ see
ssa_name_1 = a;
so you have a place to associate your flow-sensitive and context-sensitive
points-to-info with (the SSA name). My point is that for _using_ the
points-to info flow-sensitivity provided by SSA form is enough. For
it you of course need to flow-sensitively process assignments to 'a'.
This is VERY interesting! I had not thought about the difference between
and using values. Now that you point it out, I think all we need to do is to
flow-sensitively computed values to ssa names.
What about variables that do not have ssa names? Or are you saying that all
variables would be copied into an artificial variables that have ssa names?
to observe this in the dumps but I don't know if it holds in general.
Yes, that's what I say. Any pointer that is dereferenced is first copied to
an SSA name. Basically everything residing in memory first has to be
loaded to an SSA name before it can be dereferenced. That load is explicit
in the IL so you should already compute points-to sets for the SSA name
destination of the load.