Skip to content

Commit

Permalink
make sure non-register temporaries get a slot
Browse files Browse the repository at this point in the history
Inside the main instruction-processing loop, it is
taken care of by limit.  However at block boundaries
we are doing fancy bitset operations without calling
limit.
  • Loading branch information
Quentin Carbonneaux committed Apr 18, 2016
1 parent 98c9cf2 commit 5873a7d
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions spill.c
Original file line number Diff line number Diff line change
Expand Up @@ -391,6 +391,9 @@ spill(Fn *fn)
r = retregs(b->jmp.arg, 0);
v->t[0] |= r;
}
for (t=Tmp0; bsiter(b->out, &t); t++)
if (!bshas(v, t))
slot(t);
bscopy(b->out, v);

/* 2. process the block instructions */
Expand Down

0 comments on commit 5873a7d

Please sign in to comment.