Skip to content

Commit fe1f8e0

Browse files
kmsquireStefanKarpinski
authored andcommitted
Update findnext to use helper macros.
1 parent 907493a commit fe1f8e0

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

base/bitarray.jl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1450,9 +1450,9 @@ end
14501450
function findnext(B::BitArray, start::Integer)
14511451
Bc = B.chunks
14521452

1453-
chunk_start = div(start-1, 64)+1
1454-
within_chunk_start = start-1-chunk_start*64
1455-
mask = _msk64-((1<<within_chunk_start)-1)
1453+
chunk_start = @_div64(start-1)+1
1454+
within_chunk_start = @_mod64(start-1)
1455+
mask = _msk64 << within_chunk_start
14561456

14571457
if Bc[chunk_start] & mask != 0
14581458
return (chunk_start-1) << 6 + trailing_zeros(Bc[chunk_start] & mask) + 1
@@ -1475,9 +1475,9 @@ function findnextnot(B::BitArray, start::Integer)
14751475
return 0
14761476
end
14771477

1478-
chunk_start = div(start-1, 64)+1
1479-
within_chunk_start = start-1-chunk_start*64
1480-
mask = (1<<within_chunk_start)-1
1478+
chunk_start = @_div64(start-1)+1
1479+
within_chunk_start = @_mod64(start-1)
1480+
mask = ~(_msk64 << within_chunk_start)
14811481

14821482
if Bc[chunk_start] | mask != _msk64
14831483
return (chunk_start-1) << 6 + trailing_ones(Bc[chunk_start] | mask) + 1

0 commit comments

Comments
 (0)