diff options
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); |
