simpler
This commit is contained in:
parent
b2e145130a
commit
f93da30d08
1 changed files with 2 additions and 2 deletions
|
@ -1313,7 +1313,7 @@ proc computeCoverage(
|
||||||
if fillLen > 0:
|
if fillLen > 0:
|
||||||
var i = fillStart
|
var i = fillStart
|
||||||
when defined(amd64) and allowSimd:
|
when defined(amd64) and allowSimd:
|
||||||
let sampleCoverageVec = mm_set1_epi8(cast[int8](sampleCoverage))
|
let sampleCoverageVec = mm_set1_epi8(sampleCoverage)
|
||||||
for _ in 0 ..< fillLen div 16:
|
for _ in 0 ..< fillLen div 16:
|
||||||
var coverageVec = mm_loadu_si128(coverages[i - startX].addr)
|
var coverageVec = mm_loadu_si128(coverages[i - startX].addr)
|
||||||
coverageVec = mm_add_epi8(coverageVec, sampleCoverageVec)
|
coverageVec = mm_add_epi8(coverageVec, sampleCoverageVec)
|
||||||
|
@ -1354,7 +1354,7 @@ proc fillCoverage(
|
||||||
let
|
let
|
||||||
coverageVec = mm_loadu_si128(coverages[x - startX].unsafeAddr)
|
coverageVec = mm_loadu_si128(coverages[x - startX].unsafeAddr)
|
||||||
eqZero = mm_cmpeq_epi8(coverageVec, mm_setzero_si128())
|
eqZero = mm_cmpeq_epi8(coverageVec, mm_setzero_si128())
|
||||||
eq255 = mm_cmpeq_epi8(coverageVec, mm_set1_epi8(cast[int8](255)))
|
eq255 = mm_cmpeq_epi8(coverageVec, mm_set1_epi8(255))
|
||||||
allZeroes = mm_movemask_epi8(eqZero) == 0xffff
|
allZeroes = mm_movemask_epi8(eqZero) == 0xffff
|
||||||
all255 = mm_movemask_epi8(eq255) == 0xffff
|
all255 = mm_movemask_epi8(eq255) == 0xffff
|
||||||
yield (coverageVec, allZeroes, all255)
|
yield (coverageVec, allZeroes, all255)
|
||||||
|
|
Loading…
Reference in a new issue