diff options
author | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2015-10-31 23:39:52 -0400 |
---|---|---|
committer | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2015-10-31 23:39:52 -0400 |
commit | 7abf421ea2b88ba8c2e08365cd2385ebe34f9d30 (patch) | |
tree | 474278df5c7cc54606525aa866c2357977bb6339 /lisc/main.c | |
parent | 5b54910adcd012c98da49bcbffb89cdd5acaef47 (diff) | |
download | roux-7abf421ea2b88ba8c2e08365cd2385ebe34f9d30.tar.gz |
make phi-class handling more local
The phi classes are no longer in a union-find structure, instead each temporary argument of a phi node gets a pointer to it. The hinting of the phi node is then shared with its the one of its arguments. When liveness proceeds and finds out that two elements with same hinting (a phi node and one of its arguments or two arguments of the same phi node) interfere, one of them has its phi pointer reset, that way, the hinting won't be shared.
Diffstat (limited to 'lisc/main.c')
-rw-r--r-- | lisc/main.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/lisc/main.c b/lisc/main.c index 3c6a009..b3389c4 100644 --- a/lisc/main.c +++ b/lisc/main.c @@ -50,7 +50,6 @@ func(Fn *fn) isel(fn); fillrpo(fn); fillpreds(fn); - fillphi(fn); filllive(fn); fillcost(fn); spill(fn); |