14/05/17 20:52:33.04 HlllZZ0dQ
>>340
うpしてます。要するに、SIMD化してない時は
「Trip[]の各要素(4個)について論理演算して、一致してないと分かった時点でbreakする」
だったのが、SSE2版では
「SIMD4つ分を論理演算して、_mm_movemask_epi8で纏める。纏めた際に
SIMD4つのどの場合もハズレだった場合は早めに飛ばして、4個分を通過
できたら真面目に判定する」
といった感じです。まあ「真面目に」と言っても、4個分をandで重ねてOKかどうかを
_mm_store_si128でバラしてチェックするといった感じですが。