qbe

Internal scc patchset buffer for QBE
Log | Files | Refs | README | LICENSE

commit 5e388fffbc87d05d53e10517d5ba1c6350e2c01a
parent 240cfcd5cdda9301457867f9d26edcd0cf272b24
Author: Quentin Carbonneaux <quentin.carbonneaux@yale.edu>
Date:   Thu, 17 Mar 2016 14:43:50 -0400

on the way to clean use counts

Diffstat:
Mlisc/isel.c | 2++
1 file changed, 2 insertions(+), 0 deletions(-)

diff --git a/lisc/isel.c b/lisc/isel.c @@ -447,6 +447,7 @@ selret(Blk *b, Fn *fn) if (a.inmem) { assert(rtype(fn->retr) == RTmp); emit(OCopy, Kl, TMP(RAX), fn->retr, R); + chuse(fn->retr, +1, fn); blit(fn->retr, 0, r0, a.size, fn); } else { nr[0] = nr[1] = 0; @@ -458,6 +459,7 @@ selret(Blk *b, Fn *fn) r = newtmp("abi", Kl, fn); emit(OLoad, Kl, reg[1], r, R); emit(OAdd, Kl, r, r0, getcon(8, fn)); + chuse(r0, +1, fn); } emit(OLoad, Kl, reg[0], r0, R); }