Author: shihui
Date: 2011-04-06 01:40:05 -0400 (Wed, 06 Apr 2011)
New Revision: 3535

Modified:
   trunk/osprey/be/com/alias_analyzer.cxx
Log:
Fix bug749:

APO transformation will insert OpenMP pragma in PU. 
These pragma is lower after LNO before WOPT, generate a separate PU for the 
parallel do body. 
These PU has no constraint graph info in IPA output IR file, cause assertion 
when trying to read constraint graph summary.

Fix is for OpenMP lower generated pu, directly construct constraint graph for 
this PU, don?\194?\146t construct from summary.

Code Review: Sun Chan


Modified: trunk/osprey/be/com/alias_analyzer.cxx
===================================================================
--- trunk/osprey/be/com/alias_analyzer.cxx      2011-04-04 23:02:37 UTC (rev 
3534)
+++ trunk/osprey/be/com/alias_analyzer.cxx      2011-04-06 05:40:05 UTC (rev 
3535)
@@ -47,7 +47,7 @@
 
   // What alias analyzer are we going to use?
   if ( Alias_Nystrom_Analyzer ) {
-    if (FILE_INFO_ipa(File_info))
+    if (FILE_INFO_ipa(File_info) && !PU_mp(Get_Current_PU ()) )
       _alias_analyzer = new NystromAliasAnalyzer(ac, tree, true);
     else
       _alias_analyzer = new NystromAliasAnalyzer(ac, tree);
@@ -97,6 +97,17 @@
   
   MEM_POOL_Delete(&_memPool);
   IPA_WN_MAP_Delete(Current_Map_Tab, _aliasTagMap);
+  // delete the mp generate pu's map
+  PU_Info *child = PU_Info_child(Current_PU_Info);
+  while (child) {
+    if (PU_mp(PU_Info_pu(child))) {
+      FmtAssert(PU_Info_maptab(child)->_pool[_aliasTagMap] ==
+                PU_Info_maptab(Current_PU_Info)->_pool[_aliasTagMap] ,
+               ("the child mp pu pool is not equal to _memPool"));
+      IPA_WN_MAP_Delete(PU_Info_maptab(child), _aliasTagMap);
+    }
+    child = PU_Info_next(child);
+  }
 }
 
 ALIAS_RESULT


------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to