math.bitwise: speed up >signed.

db4
John Benediktsson 2013-11-24 12:01:08 -08:00
parent c751d5f76c
commit 17941b8ad7
1 changed files with 1 additions and 2 deletions

View File

@ -21,8 +21,7 @@ IN: math.bitwise
: mask-bit ( m n -- m' ) 2^ mask ; inline
: toggle-bit ( m n -- m' ) 2^ bitxor ; inline
: >signed ( x n -- y )
[ bits ] keep 2dup neg 1 + shift
1 number= [ 2^ - ] [ drop ] if ;
[ bits ] keep 2dup 1 - bit? [ 2^ - ] [ drop ] if ; inline
: >odd ( m -- n ) 0 set-bit ; foldable
: >even ( m -- n ) 0 clear-bit ; foldable
: next-even ( m -- n ) >even 2 + ; foldable