Asembler x86/Instrukcje/SSE4/PTEST

PTEST działa na liczbach 128-bitowych, wykonuje dwie operacje AND i stosownie do wyników ustawia dwie flagi procesora: CF (przeniesienia) i ZF (zera), natomiast zeruje pozostałe (tj. AF, OF, PF oraz SF). Żaden z argumentów rozkazu nie jest modyfikowany.

Działanie PTEST xmm1, xmm2:

{ zerowanie }
CF := 0; ZF := 0
AF := 0; SF := 0; PF := 0; OF := 0;

{ działania AND }
if (xmm1 AND xmm2) = 0  then
   ZF := 1
if (NOT xmm1 AND xmm2) = 0 then
   CF := 1