sorry, can you state your problem clearer? What is before? What is
after? In a running example?
This problem is quite fundamental. Code in DSE and iload folding has
not been touched for a very long time. I'd like to understand your
problem better first.
Sun

On Fri, Feb 4, 2011 at 6:11 AM, Feng Zhou <fengzho...@gmail.com> wrote:
> Hello,
>
> Can gatekeeper review the attached fix for bug
> #707(https://bugs.open64.net/show_bug.cgi?id=707) please? Thank you.
>
> =========================================================================================
> In WOPT, after SSA pointer alias analysis, DSE is performed. So, you
> will have code like the following (BB3 dom BB12):
>
> BB3:  ISTORE ..                         *s1
>         v_2 <- chi (v_1) NOT LIVE   *s2
>
> BB12: ILOAD ...                          *s3
>          v_3 <- chi(v_1)                   *s4 // was v_3 <- chi(v_2)
> before DSE
>
> Then, in SSA::Create_CODEMAP, while processing the ILOAD WHIRL (*s3)
> node, we try to fold it by calling Iload_folded function
> which in some cases may resurrect a dead CHI node (*s2). In this case,
> (*s2) is resurrected without changing back the
> reference of v_1 in (*s4). This causes the live range of v_2 and v_1
> to intersect after SSA::Create_CODEMAP and caused
> assertion failure in opt_verify. The fix is to undo what DSE did by
> changing all the subsequent references of (*s2)'s operand
> into its result.
> ==========================================================================================
>
>
> --Feng Zhou
>
> ------------------------------------------------------------------------------
> The modern datacenter depends on network connectivity to access resources
> and provide services. The best practices for maximizing a physical server's
> connectivity to a physical network are well understood - see how these
> rules translate into the virtual world?
> http://p.sf.net/sfu/oracle-sfdevnlfb
> _______________________________________________
> Open64-devel mailing list
> Open64-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/open64-devel
>
>

------------------------------------------------------------------------------
The modern datacenter depends on network connectivity to access resources
and provide services. The best practices for maximizing a physical server's
connectivity to a physical network are well understood - see how these
rules translate into the virtual world? 
http://p.sf.net/sfu/oracle-sfdevnlfb
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to