remove >bignum in crc32 -- 2x faster on both 32 and 64bit
parent
17607941b9
commit
249601618b
|
@ -12,12 +12,12 @@ CONSTANT: crc32-table V{ }
|
|||
256 iota [
|
||||
8 [
|
||||
[ 2/ ] [ even? ] bi [ crc32-polynomial bitxor ] unless
|
||||
] times >bignum
|
||||
] times
|
||||
] map 0 crc32-table copy
|
||||
|
||||
: (crc32) ( crc ch -- crc )
|
||||
>bignum dupd bitxor
|
||||
mask-byte crc32-table nth-unsafe >bignum
|
||||
dupd bitxor
|
||||
mask-byte crc32-table nth-unsafe
|
||||
swap -8 shift bitxor ; inline
|
||||
|
||||
SINGLETON: crc32
|
||||
|
|
Loading…
Reference in New Issue