Can a gate keeper help review this patch

The compiler build with --with-build-optimize=DEBUG
See the bug description at  https://bugs.open64.net/show_bug.cgi?id=823

The problem is that we were calling:
    GRA_LIVE_Recalc_Liveness(region ? REGION_get_rid( rwn) : NULL);
    GRA_LIVE_Rename_TNs();
at +O1, when we should not.  As a result, LRA encountered an
unexpected GTN and asserted.
The fix is to guard this code with:
  if (!CG_localize_tns) {
CG_localize_tns is set when the optimization level is <= 1.

here is the patch

Index: osprey/be/cg/cg.cxx
===================================================================
--- osprey/be/cg/cg.cxx (revision 3663)
+++ osprey/be/cg/cg.cxx (working copy)
@@ -1487,8 +1487,10 @@
   Check_for_Dump_ALL ( TP_CGEXP, NULL, "Pre LIS" );

 #else
-  GRA_LIVE_Recalc_Liveness(region ? REGION_get_rid( rwn) : NULL);
-  GRA_LIVE_Rename_TNs();
+  if (!CG_localize_tns) {
+    GRA_LIVE_Recalc_Liveness(region ? REGION_get_rid( rwn) : NULL);
+    GRA_LIVE_Rename_TNs();
+  }
 #if !defined(TARG_PPC32)    //  PPC IGLS_Schedule_Region bugs
   IGLS_Schedule_Region (TRUE /* before register allocation */);
 #ifdef TARG_X8664

yongchong

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to