This should fix some, if not all, of the live range problems
[fw/sdcc] / src / mcs51 / ralloc.c
index bf3d162f02809cf0c9259391842376c255433a01..6be33c026df4f02c1dad728f02452fe7420cb9c2 100644 (file)
@@ -2007,7 +2007,7 @@ reassignAliasedSym (eBBlock *ebp, iCode *assignment, iCode *use, operand *op)
 
   /* update the sym's liverange */
   if ( OP_LIVETO(op) < ic->seq )
-    setToRange(op, ic->seq, FALSE);
+    setToRange(op, ic->seq, FALSE, OP_SYMBOL(op)->level);
 
   /* remove the assignment iCode now that its result is unused */
   remiCodeFromeBBlock (ebp, assignment);