From 037c1bf141992de7eab2aa7bd049eb7af5ab110a Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Wed, 22 Jul 2015 03:01:42 -0400 Subject: simplifications --- lisc/spill.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/lisc/spill.c b/lisc/spill.c index 3e4ad10..6c72b67 100644 --- a/lisc/spill.c +++ b/lisc/spill.c @@ -2,18 +2,16 @@ static void -loopmark(Blk **rpo, int head, int n) +loopmark(Blk **rpo, int head, Blk *b) { uint p; - Blk *b; - b = rpo[n]; - if (n <= head || b->visit == head) + if (b->id <= head || b->visit == head) return; b->visit = head; b->loop *= 10; for (p=0; pnpred; p++) - loopmark(rpo, head, b->pred[p]->id); + loopmark(rpo, head, b->pred[p]); } static void @@ -40,7 +38,7 @@ symuse(Ref r, int use, int loop, Fn *fn) void fillcost(Fn *fn) { - int n, m; + int n; uint a; Blk *b; Ins *i; @@ -53,11 +51,9 @@ fillcost(Fn *fn) } for (n=0; nnblk; n++) { b = fn->rpo[n]; - for (a=0; anpred; a++) { - m = b->pred[a]->id; - if (m >= n) - loopmark(fn->rpo, n, m); - } + for (a=0; anpred; a++) + if (b->pred[a]->id >= n) + loopmark(fn->rpo, n, b->pred[a]); } for (s=fn->sym; s-fn->sym < fn->ntmp; s++) { s->cost = 0; -- cgit 1.4.1