From: johanknol Date: Thu, 17 Apr 2003 17:08:36 +0000 (+0000) Subject: fixed bug #716790 and removes lot's of redundant register usage around function calls X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=0d1c4b141ea40950ea0bd39e1cdcd8795cd3023b;p=fw%2Fsdcc fixed bug #716790 and removes lot's of redundant register usage around function calls git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2534 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- diff --git a/ChangeLog b/ChangeLog index bc9a959a..74c48749 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,6 @@ 2003-04-17 + * 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 diff --git a/src/mcs51/ralloc.c b/src/mcs51/ralloc.c index 795237d2..a97776be 100644 --- a/src/mcs51/ralloc.c +++ b/src/mcs51/ralloc.c @@ -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;