* src/SDCCicode.h,
[fw/sdcc] / src / ds390 / ralloc.c
index e75a587f0ac15910ed4913a3b5703817ff9e1092..def06af2e1a9e36dcb04af4227b3db8a0a17ec9f 100644 (file)
@@ -685,7 +685,9 @@ selectSpil (iCode * ic, eBBlock * ebp, symbol * forSym)
 
       /* check if there are any live ranges that not
          used in the remainder of the block */
-      if (!_G.blockSpil && (selectS = liveRangesWith (lrcs, notUsedInRemaining, ebp, ic)))
+      if (!_G.blockSpil &&
+          !isiCodeInFunctionCall (ic) &&       
+          (selectS = liveRangesWith (lrcs, notUsedInRemaining, ebp, ic)))
         {
           sym = leastUsedLR (selectS);
           if (sym != forSym)