math.integers: the fixnum-log2 intrinsic didn't work due to inlining.

db4
John Benediktsson 2013-02-27 17:08:36 -08:00
parent 7ba77673a8
commit 6d679cf3a2
1 changed files with 3 additions and 2 deletions

View File

@ -57,11 +57,12 @@ M: fixnum bitnot fixnum-bitnot ; inline
M: fixnum bit? fixnum-bit? ; inline
: fixnum-log2 ( x -- n )
{ fixnum } declare
0 swap [ dup 1 eq? ] [
[ 1 fixnum+fast ] [ 2/ ] bi*
] until drop ; inline
] until drop ;
M: fixnum (log2) fixnum-log2 ; inline
M: fixnum (log2) fixnum-log2 { fixnum } declare ; inline
M: bignum >fixnum bignum>fixnum ; inline
M: bignum >bignum ; inline