Author: meiye
Date: 2011-08-09 18:07:25 -0400 (Tue, 09 Aug 2011)
New Revision: 3714
Modified:
trunk/osprey/be/com/cxx_template.h
trunk/osprey/be/opt/opt_proactive.cxx
Log:
Bug fixes. Avoid illegal code motion coupled with if-merging. Correct a wrong
usage of loop index. CR: Sun Chan.
Modified: trunk/osprey/be/com/cxx_template.h
===================================================================
--- trunk/osprey/be/com/cxx_template.h 2011-08-09 08:35:42 UTC (rev 3713)
+++ trunk/osprey/be/com/cxx_template.h 2011-08-09 22:07:25 UTC (rev 3714)
@@ -227,7 +227,7 @@
{
if (idx < _lastidx) {
for (int iter = idx; iter < _lastidx; iter++) {
- _array[idx] = _array[idx+1];
+ _array[iter] = _array[iter+1];
}
Decidx();
}
Modified: trunk/osprey/be/opt/opt_proactive.cxx
===================================================================
--- trunk/osprey/be/opt/opt_proactive.cxx 2011-08-09 08:35:42 UTC (rev
3713)
+++ trunk/osprey/be/opt/opt_proactive.cxx 2011-08-09 22:07:25 UTC (rev
3714)
@@ -3357,6 +3357,9 @@
return FALSE;
else if (_action == DO_IFFLIP)
return FALSE;
+ // Make sure sc1 and sc2 are control equivalent if they are not adjacent
to each other.
+ else if ((count > 0) && !sc1->Is_ctrl_equiv(sc2))
+ return FALSE;
else
return TRUE;
}
------------------------------------------------------------------------------
uberSVN's rich system and user administration capabilities and model
configuration take the hassle out of deploying and managing Subversion and
the tools developers use with it. Learn more about uberSVN and get a free
download at: http://p.sf.net/sfu/wandisco-dev2dev
_______________________________________________
Open64-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel