]> Cypherpunks repositories - gostls13.git/commitdiff
increase from 3 to 11 floating registers
authorKen Thompson <ken@golang.org>
Sun, 9 Aug 2009 23:42:21 +0000 (16:42 -0700)
committerKen Thompson <ken@golang.org>
Sun, 9 Aug 2009 23:42:21 +0000 (16:42 -0700)
R=rsc
OCL=32947
CL=32947

src/cmd/6g/reg.c
src/cmd/6l/6.out.h

index f9704f202b1ede1cba00327044aab2b7fbf891fd..4f7ce069fe4027f0a2f64fda20232c65dffa13b7 100644 (file)
@@ -1439,9 +1439,9 @@ BtoR(int32 b)
 
 /*
  *     bit     reg
- *     16      X5
- *     17      X6
- *     18      X7
+ *     16      X5 (FREGMIN)
+ *     ...
+ *     26      X15 (FREGEXT)
  */
 int32
 FtoB(int f)
@@ -1455,7 +1455,7 @@ int
 BtoF(int32 b)
 {
 
-       b &= 0x70000L;
+       b &= 0xFF0000L;
        if(b == 0)
                return 0;
        return bitno(b) - 16 + FREGMIN;
index dc1d057fd19aa100c4eb9a5632d0adb86fa6f359..292abd3a730432880306158212fe09aea9d6c982 100644 (file)
@@ -839,7 +839,7 @@ enum
        REGTMP          = D_DI,
        REGEXT          = D_R15,        /* compiler allocates external registers R15 down */
        FREGMIN         = D_X0+5,       /* first register variable */
-       FREGEXT         = D_X0+       /* first external register */
+       FREGEXT         = D_X0+15       /* first external register */
 };
 
 /*