diff options
| author | forsyth <forsyth@vitanuova.com> | 2010-04-27 22:08:33 +0100 |
|---|---|---|
| committer | forsyth <forsyth@vitanuova.com> | 2010-04-27 22:08:33 +0100 |
| commit | f8af978a60a0a00813e7a57f93d9a5ba4df44069 (patch) | |
| tree | d51effe94b54eb087d5436dad8469f548b3f42b6 /utils/5c/reg.c | |
| parent | 4206ee1aeaccb7703f3f3613a98a5447f51d6367 (diff) | |
20100427-2208
Diffstat (limited to 'utils/5c/reg.c')
| -rw-r--r-- | utils/5c/reg.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/utils/5c/reg.c b/utils/5c/reg.c index 19c8a7b6..43c78712 100644 --- a/utils/5c/reg.c +++ b/utils/5c/reg.c @@ -789,6 +789,7 @@ loopit(Reg *r, long nr) idom = alloc(nr * sizeof(long)); maxnr = nr; } + d = postorder(r, rpo2r, 0); if(d > nr) fatal(Z, "too many reg nodes"); @@ -1116,15 +1117,15 @@ long RtoB(int r) { - if(r < 2 || r >= REGTMP) - return 0; - return 1L << r; + if(r >= REGMIN && r <= REGMAX) + return 1L << r; + return 0; } int BtoR(long b) { - b &= 0x07fcL; + b &= 0x01fcL; if(b == 0) return 0; return bitno(b); |
