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.
This commit is contained in:
parent
5b54910adc
commit
7abf421ea2
6 changed files with 23 additions and 59 deletions
|
@ -347,8 +347,6 @@ void printfn(Fn *, FILE *);
|
|||
/* ssa.c */
|
||||
void fillpreds(Fn *);
|
||||
void fillrpo(Fn *);
|
||||
int phirepr(Tmp *, int);
|
||||
void fillphi(Fn *);
|
||||
void ssafix(Fn *, int);
|
||||
|
||||
/* live.c */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue