Nystrom IPA point to alias is performed before IPO_Inline in IPA phase.

For IPO_INLINE, nystrom analysis only interact with IPO_INLINE in
IPO_INLINE::Process_Callee
IPO_INLINE::Process_Callee has following steps
1. clone tree
    clone WHIRL and local symbol table, fix local st.
2. IPO_INLINE::Walk_and_Update_Callee
    1. process_formals, copy actual/ get actual address and assign to newly
created local symbol.
    2. Fix cloned callee WHIRL tree
        change reference to original formal_st to replace st.

originally, nystrom alias record st map when clone_tree and clone constraint
graph node at the end of process_callee
1. In IPO_CLONE::Clone_Tree
    setup origToCloneStIdxMap, map original local st with new local st.
    setup promoteStIdxMap, map original st with new st, new st is promoted
local static.
2. In the end of IPO_INLINE::Process_Callee, update caller's constraint
graph with callee's constraint graph.
    1. ConstraintGraph::promoteLocals, promote callee's local constraint
graph node to global constraint graph node.
     2. ConstraintGraph::cloneConstraintGraphMaps, clone original local ST's
local constraint graph nodes into caller's local constraint graph node.


With this patch, nystrom add extra two steps
1. When process_formals, analysis and update formal st's cg node.
2. After ConstraintGraph::cloneConstraintGraphMaps, solve cloned callee's
constraint graph nodes.


On Sat, Apr 2, 2011 at 2:33 PM, Sun Chan <sun.c...@gmail.com> wrote:

> can you give some description of the phase ordering of this points to
> vs inline etc?
> Sun
>
> On Sat, Apr 2, 2011 at 11:16 AM, Hui Shi <kalin....@gmail.com> wrote:
> >
> > forget to send all.
> > ---------- Forwarded message ----------
> > From: Hui Shi <kalin....@gmail.com>
> > Date: Fri, Apr 1, 2011 at 8:15 PM
> > Subject: Re: [Open64-devel] Review request for nystrom inline support,
> > improves points to analysis after inline.
> > To: Sun Chan <sun.c...@gmail.com>
> >
> >
> > sorry. I convert it to a pdf document.
> >
> > On Fri, Apr 1, 2011 at 8:08 PM, Sun Chan <sun.c...@gmail.com> wrote:
> >>
> >> sorry, can you format better your doc? Some line is infinitely long
> >> and makes it very hard to keep thinking about your algo and deal with
> >> formating, window size.
> >> Sun
> >>
> >> On Sat, Apr 2, 2011 at 11:01 AM, Hui Shi <kalin....@gmail.com> wrote:
> >> > Can gatekeeper help review this nystrom enhancement?
> >> >
> >> > Previously I name this feature as nystrom "context sensisive inline"
> >> > support, its inaccurate and misleading.
> >> >
> >> >
> >> >
> >> > Attached is nystrom inline support design and patch.
> >> >
> >> > The aim of this function is to improve points to accuracy of
> constraint
> >> > graph nodes cloned from callee to caller.
> >> >
> >> > By computing callsite specific points to info for these constraint
> graph
> >> > nodes.
> >> >
> >> > Briefly nystrom inline support is compute callsite specific points to
> >> > info
> >> > for constraint graph nodes that cloned from callee into caller. It
> >> > contains
> >> > two steps
> >> >
> >> > 1. Update Formal ST's points to set with actual's points to set, if
> >> > formal
> >> > ST's points to set is a strict subset of actual's points to set.
> >> >
> >> > 2. Begin with updated formal st's constraint graph nodes as working
> set,
> >> > solve the constraint graph node copied from callee. If node's point to
> >> > set
> >> > is updated with more accurate points to set, create a new node in
> >> > caller's
> >> > constraint graph record new points to set.
> >> >
> >> > Regards
> >> >
> >> > Shi Hui
> >> >
> >> >
> >> >
> ------------------------------------------------------------------------------
> >> > Create and publish websites with WebMatrix
> >> > Use the most popular FREE web apps or write code yourself;
> >> > WebMatrix provides all the features you need to develop and
> >> > publish your website. http://p.sf.net/sfu/ms-webmatrix-sf
> >> >
> >> > _______________________________________________
> >> > Open64-devel mailing list
> >> > Open64-devel@lists.sourceforge.net
> >> > https://lists.sourceforge.net/lists/listinfo/open64-devel
> >> >
> >> >
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > Create and publish websites with WebMatrix
> > Use the most popular FREE web apps or write code yourself;
> > WebMatrix provides all the features you need to develop and
> > publish your website. http://p.sf.net/sfu/ms-webmatrix-sf
> >
> > _______________________________________________
> > Open64-devel mailing list
> > Open64-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/open64-devel
> >
> >
>
------------------------------------------------------------------------------
Create and publish websites with WebMatrix
Use the most popular FREE web apps or write code yourself; 
WebMatrix provides all the features you need to develop and 
publish your website. http://p.sf.net/sfu/ms-webmatrix-sf
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to