* src/mcs51/ralloc.c (deassignLR),
[fw/sdcc] / src / z80 / ralloc.c
index 53f212194944199e8cfef500ff33ee76d2ab380d..b480b990eac2abb6d6975224ce93800ea826ebc0 100644 (file)
@@ -886,6 +886,7 @@ deassignLRs (iCode * ic, eBBlock * ebp)
              (result = OP_SYMBOL (IC_RESULT (ic))) &&  /* has a result */
              result->liveTo > ic->seq &&       /* and will live beyond this */
              result->liveTo <= ebp->lSeq &&    /* does not go beyond this block */
+             result->liveFrom == ic->seq &&    /* does not start before here */
              result->regType == sym->regType &&        /* same register types */
              result->nRegs &&  /* which needs registers */
              !result->isspilt &&       /* and does not already have them */