ref: 66de4498b2b94e9fde735c7c3c1c19e2f5a362ce
parent: d532e561e36b997684354cd7bce46dad074a00ca
author: Ori Bernstein <[email protected]>
date: Wed Jun 13 08:06:38 EDT 2012
Quick fix for fibonacci function. We spilled while generating arguments. THIS IS BAD.
--- a/8/isel.c
+++ b/8/isel.c
@@ -354,11 +354,13 @@
locmem(&dst, argoff, Resp, Rnone, arg.mode);
stor(s, &arg, &dst);
argsz += size(n->expr.args[i]);
+ freeloc(s, arg);
+ freeloc(s, dst);
}
selexpr(s, n->expr.args[0]);
fn = getloc(s, n->expr.args[0]);
- claimreg(s, Reax);
g(s, Icall, &fn, NULL);
+ claimreg(s, Reax);
if (argsz)
g(s, Iadd, &stkbump, &esp, NULL);
return eax;