X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fmcs51%2Fralloc.c;h=a87aae9a6eaab78e8806457a08e068c939961164;hb=f651c71ff562f2ab9e3db7f178b64d4c52867a54;hp=bf3d162f02809cf0c9259391842376c255433a01;hpb=9b41af2a2f3ac94c6549a4ff2212f3307644bcec;p=fw%2Fsdcc diff --git a/src/mcs51/ralloc.c b/src/mcs51/ralloc.c index bf3d162f..a87aae9a 100644 --- a/src/mcs51/ralloc.c +++ b/src/mcs51/ralloc.c @@ -1107,6 +1107,16 @@ serialRegAssign (eBBlock ** ebbs, int count) /* of all instructions do */ for (ic = ebbs[i]->sch; ic; ic = ic->next) { + int i; + + // update the registers in use at the start of this icode + for (i=0; i<8; i++) { + if (regs8051[i].isFree) { + ic->riu &= ~(1<riu |= (1<