From a670758b8735e3e857e013e05da23bf005f3bade Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Fri, 13 Nov 2015 15:28:40 -0500 Subject: this is a buggy shortcut! --- lisc/spill.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lisc/spill.c') diff --git a/lisc/spill.c b/lisc/spill.c index 0b88574..431f509 100644 --- a/lisc/spill.c +++ b/lisc/spill.c @@ -386,9 +386,10 @@ spill(Fn *fn) j = opdesc[i->op].nmem; j -= rtype(i->arg[0]) == RAMem; j -= rtype(i->arg[1]) == RAMem; - for (m=0; t=i->arg[m].val, m<2; m++) + for (m=0; m<2; m++) switch (rtype(i->arg[m])) { case RAMem: + t = i->arg[m].val; ma = &fn->mem[t & AMask]; if (rtype(ma->base) == RTmp) { BSET(v, ma->base.val); @@ -400,6 +401,7 @@ spill(Fn *fn) } break; case RTmp: + t = i->arg[m].val; lvarg[m] = BGET(v, t); BSET(v, t); if (j-- <= 0) -- cgit 1.4.1