* src/mcs51/ralloc.c (deassignLR),
[fw/sdcc] / src / avr / ralloc.c
index fce0f8024b6719639408598889601acee6eaf825..706ae3cefffb6905e65da6b653189803a4996782 100644 (file)
@@ -1163,6 +1163,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 */