diff options
-rw-r--r-- | lib/system/sets.nim | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/system/sets.nim b/lib/system/sets.nim index a5f6c5de9..91dde0b81 100644 --- a/lib/system/sets.nim +++ b/lib/system/sets.nim @@ -22,7 +22,7 @@ proc countBits64(n: int64): int {.compilerproc.} = result = countBits32(toU32(n and 0xffffffff'i64)) + countBits32(toU32(n shr 32'i64)) -proc cardSet(s: NimSet, len: int): int {.compilerproc.} = - result = 0 - for i in countup(0, len-1): +proc cardSet(s: NimSet, len: int): int {.compilerproc, inline.} = + for i in 0..<len: + if likely(s[i] == 0): continue inc(result, countBits32(int32(s[i]))) |