Hi all,

This is a call graph scc detection bug in IPA_NystromAliasAnalyzer,

According to Nuutila's algorithm and CGO 2009 paper (Pereira and Berlin,
"Wave Propagation and Deep Propagation for  Pointer Analysis"). After the
pop operation, "w" should be set in SCC.

Although this code fraction is not used in current context-insensitive
alias analysis, it would be a subtle bug for future context sensitive
analysis development.

The bug is fixed as follows:

Index: osprey/ipa/main/analyze/ipa_nystrom_alias_analyzer.cxx

===================================================================
--- osprey/ipa/main/analyze/ipa_nystrom_alias_analyzer.cxx  (revision 3797)
+++ osprey/ipa/main/analyze/ipa_nystrom_alias_analyzer.cxx  (working copy)
@@ -126,7 +126,7 @@
         break;
       else {
         _S.pop();
-        _nyst->inSCC(w);
+       _nyst->setInSCC(w,true);
         _nyst->rep(w,v);
       }
     }


Could a gate keeper please check this?
------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to