aboutsummaryrefslogtreecommitdiffhomepage
path: root/x86_64/isel.c
diff options
context:
space:
mode:
Diffstat (limited to 'x86_64/isel.c')
-rw-r--r--x86_64/isel.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/x86_64/isel.c b/x86_64/isel.c
index 2b087cd..bc49d03 100644
--- a/x86_64/isel.c
+++ b/x86_64/isel.c
@@ -627,7 +627,7 @@ x86_64_isel(struct function *fn)
struct block *blk = fn->entry;
fn->stksiz = 0;
- stkslots = xcalloc((nstkslots = ninstr) * sizeof *stkslots);
+ stkslots = allocz(fn->passarena, (nstkslots = ninstr) * sizeof *stkslots, 0);
do {
int i;
for (i = 0; i < blk->phi.n; ++i) {
@@ -649,7 +649,6 @@ x86_64_isel(struct function *fn)
}
seljmp(fn, blk);
} while ((blk = blk->lnext) != fn->entry);
- free(stkslots);
if (ccopt.dbg.i) {
bfmt(ccopt.dbgout, "<< After isel >>\n");