fixed bug #716790 and removes lot's of redundant register usage around function calls
authorjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Thu, 17 Apr 2003 17:08:36 +0000 (17:08 +0000)
committerjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Thu, 17 Apr 2003 17:08:36 +0000 (17:08 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2534 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
src/mcs51/ralloc.c

index bc9a959ac4afa8ca81ca98de6d5ccef68b69e226..74c487496c70da7b8894c02fca5a4db8785cb0f1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,6 @@
 2003-04-17    <johan@balder>
 
+       * src/mcs51/ralloc.c (packRegsForAssign): fixed bug #716790 and removes lot's of redundant register usage around function calls
        * src/mcs51/ralloc.c (packRegisters): fixed bug #720667
 
 2003-04-13  Borut Razem <borut.razem@siol.net>
index 795237d22ffb660e548047ec8158ae793ba2282c..a97776bea7b6b80c9b5534bd6feb75f8a27d5215 100644 (file)
@@ -1763,12 +1763,19 @@ packRegsForAssign (iCode * ic, eBBlock * ebp)
      we cannot */
   for (dic = ic->prev; dic; dic = dic->prev)
     {
+
+#if 0 /* jwk: This collides with 1.43 but I really see no need for
+        this anymore. It fixes bug #716790 and substantially improves 
+        redundant register usage around function calls.
+      */
+
       /* if there is a function call then don't pack it */
       if ((dic->op == CALL || dic->op == PCALL))
        {
          dic = NULL;
          break;
        }
+#endif
 
       if (SKIP_IC2 (dic))
        continue;