looks fine. Pls go ahead
Sun

On Thu, Jun 2, 2011 at 2:26 PM, Hui Shi <kalin....@gmail.com> wrote:
> Would gatekeepr help reveiew this patch?
>
> Currently, nystrom alias analyzer analyze again for OpenMP lower created
> parallel PU.
> And when OpenMP lower create this parallel PU, it doesn't copy aliasTagMap.
>
> This problem is when creating constraint graph for OpenMP parallel PU.
> Compilation has sig fault in red code when checking if a WN node can be a
> pointer.
> The root cause is WN node has constraint graph node id, however id's
> corresponding node not in current contraint graph.
> Because when OpenMP lower clone the parallel PU, it copy the
> WN_MAP_ALIAS_CGNODE map.
>
> ConstraintGraph::exprMayPoint(WN *const wn)
> {
>   TYPE_ID desc = WN_desc(wn);
>   if (MTYPE_is_float(desc) || MTYPE_is_complex(desc) ||
> MTYPE_is_vector(desc)) {
>      return false;
>   }
>
>   CGNodeId id = WN_MAP_CGNodeId_Get(wn);
>   if (id != 0 && cgNode(id)->checkFlags(CG_NODE_FLAGS_NOT_POINTER))
>       return false;
>
> Fix is in OpenMP lower, not copy the WN_MAP_ALIAS_CGNODE map.
>
> Index: osprey/be/com/wn_mp.cxx
> ===================================================================
> --- osprey/be/com/wn_mp.cxx     (revision 3636)
> +++ osprey/be/com/wn_mp.cxx     (working copy)
> @@ -2768,8 +2768,14 @@
>          ("parallel_pu's PU's maptab isn't parallel_pu\n"));
>      Current_Map_Tab = pmaptab;
>      WN_MAP_Set_dont_copy(aa->aliasTagMap(), TRUE);
> +    WN_MAP_Set_dont_copy(WN_MAP_ALIAS_CGNODE, TRUE);
>      Current_Map_Tab = PU_Info_maptab(parallel_pu);
>    }
> +  else {
> +    Current_Map_Tab = pmaptab;
> +    WN_MAP_Set_dont_copy(WN_MAP_ALIAS_CGNODE, TRUE);
> +    Current_Map_Tab = PU_Info_maptab(parallel_pu);
> +  }
>
>      // use hack to save csymtab using parallel_pu, so we can restore it
>      // later when we lower parallel_pu; this is necessary because the
>
> Regard
> Shi Hui
>
> ------------------------------------------------------------------------------
> Simplify data backup and recovery for your virtual environment with vRanger.
> Installation's a snap, and flexible recovery options mean your data is safe,
> secure and there when you need it. Data protection magic?
> Nope - It's vRanger. Get your free trial download today.
> http://p.sf.net/sfu/quest-sfdev2dev
> _______________________________________________
> Open64-devel mailing list
> Open64-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/open64-devel
>
>

------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Discover what all the cheering's about.
Get your free trial download today. 
http://p.sf.net/sfu/quest-dev2dev2 
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to