_mm_testc_ps e _mm_testc_pd vs _mm_testc_si128
Como você sabe, os dois primeiros são intrínsecos específicos ao AVX e o segundo é um intrínseco SSE4.1. Ambos os conjuntos de intrínsecos podem ser usados para verificar a igualdade de 2 vetores de ponto flutuante. Meu caso de uso específico é:
_mm_cmpeq_ps
ou_mm_cmpeq_pd
, Seguido po_mm_testc_ps
ou_mm_testc_pd
no resultado, com uma máscara apropriadaMas o AVX fornece equivalentes para intrínsecos "herdados", para que eu possa usar_mm_testc_si128
, depois da transmissão do resultado para__m128i
. Minhas perguntas são: qual dos dois casos de uso resulta em melhor desempenho e onde posso descobrir quais instruções SSE herdadas são fornecidas pelo AVX.