This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa-branch]: Steensgaard alias analysis
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: Diego Novillo <dnovillo at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 16 Jul 2002 12:12:03 -0400 (EDT)
- Subject: Re: [tree-ssa-branch]: Steensgaard alias analysis
On Tue, 16 Jul 2002, Diego Novillo wrote:
> On Mon, 15 Jul 2002, Daniel Berlin wrote:
>
> > Diego, I added a flag to turn it on and off, commented most of it, and
> > have worked more on it (It now handles pointers to members properly, etc).
> >
> Thanks. I've got a few superficial comments, but I think we can
> commit it so that you can keep working on it.
>
> - Changelogs are missing.
Whoops, i have them, just forgot to include them.
>
> - None of the new files have copyright notices.
I'll remedy.
>
>
> > Index: tree-alias-steen.c
> > ===================================================================
> > RCS file: tree-alias-steen.c
> > diff -N tree-alias-steen.c
> > [ ... ]
> > + /* Steensgaard's almost-linear interprocedural points-to analysis.
> > + This is a flow-insensitive, context insensitive algorithm. It
> > + also does not distinguish structure fields, or direction of
> > + assignments.
> > + It works through non-standard type inferencing.
> > + By non-standard types, we do not mean "integer, float", etc. The
> > + types here represent sets of abstract locations, including
> > + relations between abstract locations (thus modeling the store).
> > +
> > + We then perform type inferencing, which attempts to infer the
> > + non-standard types involved in each expression, and get the
> > + points-to sets as a result (Since the types represent the store
> > + locations).
> > +
> > + See "Points-to analysis in almost linear time." by Bjarne
> > + Steensgaard. */
> >
> Better include the full citation:
>
> B. Steensgaard. Points-to analysis in almost linear time. In
> Conference Record of the 23th Annual ACM Symposium on Principles
> of Programming Languages (POPL'96), pages 32--41. ACM Press,
> January 1996.
>
> http://citeseer.nj.nec.com/steensgaard96pointsto.html
>
>
> > Index: tree-inline.c
> > ===================================================================
> > RCS file: /cvs/gcc/gcc/gcc/tree-inline.c,v
> > retrieving revision 1.26.2.1
> > diff -c -3 -p -w -B -b -r1.26.2.1 tree-inline.c
> > *** tree-inline.c 22 Jun 2002 04:39:43 -0000 1.26.2.1
> > --- tree-inline.c 15 Jul 2002 17:46:39 -0000
> > *************** Boston, MA 02111-1307, USA. */
> > *** 46,52 ****
> > candidates. */
> >
> > int flag_inline_trees = 0;
> > !
> > /* To Do:
> >
> > o In order to make inlining-on-trees work, we pessimized
> > --- 46,52 ----
> > candidates. */
> >
> > int flag_inline_trees = 0;
> > ! static int inline_label_num = 0;
> > /* To Do:
> >
> This one again? Why don't you submit it for mainline? It will
> make your life easier :)
Only because I usually end up diffing tree*.[ch]
:)
>
> I don't have a problem adding it to the branch, but I'd like an
> opinion from a tree inliner maintainer.
I'll just submit it to the mainline, it's incredibly trivial.
>
>
> Thanks. Diego.
>
>