From: ceriel Date: Fri, 11 Jan 1991 10:54:03 +0000 (+0000) Subject: Some more optim (?) X-Git-Tag: release-5-5~1301 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=224ac1b8ffea1173a86ee079208ef0b0ecd8a38f;p=ack.git Some more optim (?) --- diff --git a/mach/proto/ncg/equiv.c b/mach/proto/ncg/equiv.c index 41966e974..7ddf70a4e 100644 --- a/mach/proto/ncg/equiv.c +++ b/mach/proto/ncg/equiv.c @@ -31,17 +31,18 @@ struct perm * tuples(regls,nregneeded) rl_p *regls; { int class=0; register i,j; + register struct reginfo *rp; /* * First compute equivalence classes of registers. */ - for (i=NREGS;--i>=0;) { + for (i=NREGS, rp = &machregs[NREGS-1];--i>=0;rp--) { regclass[i] = class++; if (getrefcount(i, FALSE) == 0) { for (j=NREGS;--j>i;) { if (eqregclass(i,j) && - eqtoken(&machregs[i].r_contents, + eqtoken(&rp->r_contents, &machregs[j].r_contents)) { regclass[i] = regclass[j]; break; @@ -71,11 +72,13 @@ permute(index) { for (i=0; ip_rar[i]]) goto diff; - for (i=0; ip_rar[i]; for (j=0; jp_rar[i],pp->p_rar[j])) + if (clash(rari,rar[j]) != + clash(p_rari,pp->p_rar[j])) goto diff; + } return; diff: ; }