Return to prim CVS log | Up to [gforth] / gforth |
version 1.105, 2002/12/15 17:38:51 | version 1.107, 2002/12/19 23:23:49 |
---|---|
Line 1288 while(u1--) | Line 1288 while(u1--) |
ASCII strings (larger if ubits is large), and should share no | ASCII strings (larger if ubits is large), and should share no |
divisors with ubits. | divisors with ubits. |
*/ | */ |
unsigned rot = ((char []){5,0,1,2,3,4,5,5,5,5,3,5,5,5,5,7,5,5,5,5,7,5,5,5,5,6,5,5,5,5,7,5,5})[ubits]; | static char rot_values[] = {5,0,1,2,3,4,5,5,5,5,3,5,5,5,5,7,5,5,5,5,7,5,5,5,5,6,5,5,5,5,7,5,5}; |
unsigned rot = rot_values[ubits]; | |
Char *cp = c_addr; | Char *cp = c_addr; |
for (ukey=0; cp<c_addr+u; cp++) | for (ukey=0; cp<c_addr+u; cp++) |
ukey = ((((ukey<<rot) | (ukey>>(ubits-rot))) | ukey = ((((ukey<<rot) | (ukey>>(ubits-rot))) |
Line 2428 SET_IP((Xt *)a_callee); | Line 2429 SET_IP((Xt *)a_callee); |
useraddr ( #u -- a_addr ) new | useraddr ( #u -- a_addr ) new |
a_addr = (Cell *)(up+u); | a_addr = (Cell *)(up+u); |
compile-prim ( xt1 -- xt2 ) new compile_prim | compile-prim ( xt1 -- xt2 ) obsolete compile_prim |
xt2 = (Xt)compile_prim((Label)xt1); | xt2 = (Xt)compile_prim((Label)xt1); |
\ lit@ / lit_fetch = lit @ | \ lit@ / lit_fetch = lit @ |