Specifications

Intel
®
64 and IA-32 Architectures Software Developer’s Manual Documentation Changes 156
Documentation Changes
PTEST- Logical Compare
Instruction Operand Encoding
...
PUNPCKHBW/PUNPCKHWD/PUNPCKHDQ/PUNPCKHQDQ— Unpack High
Data
Instruction Operand Encoding
...
Opcode Instruction Op/
En
64-Bit
Mode
Compat/
Leg Mode
Description
66 0F 38 17 /r PTEST xmm1,
xmm2/m128
A Valid Valid Set ZF if xmm2/m128 AND
xmm1 result is all 0s. Set CF
if xmm2/m128 AND NOT
xmm1 result is all 0s.
Op/En Operand 1 Operand 2 Operand 3 Operand 4
A ModRM:reg (r) ModRM:r/m (r) NA NA
Opcode Instruction Op/
En
64-Bit
Mode
Compat/
Leg Mode
Description
0F 68 /r PUNPCKHBW mm,
mm/m64
A Valid Valid Unpack and interleave high-
order bytes from mm and
mm/m64 into mm.
66 0F 68 /r PUNPCKHBW
xmm1,
xmm2/m128
A Valid Valid Unpack and interleave high-
order bytes from xmm1 and
xmm2/m128 into xmm1.
0F 69 /r PUNPCKHWD mm,
mm/m64
A Valid Valid Unpack and interleave high-
order words from mm and
mm/m64 into mm.
66 0F 69 /r PUNPCKHWD
xmm1,
xmm2/m128
A Valid Valid Unpack and interleave high-
order words from xmm1 and
xmm2/m128 into xmm1.
0F 6A /r PUNPCKHDQ mm,
mm/m64
A Valid Valid Unpack and interleave high-
order doublewords from mm
and mm/m64 into mm.
66 0F 6A /r PUNPCKHDQ
xmm1,
xmm2/m128
A Valid Valid Unpack and interleave high-
order doublewords from
xmm1 and xmm2/m128
into xmm1.
66 0F 6D /r PUNPCKHQDQ
xmm1,
xmm2/m128
A Valid Valid Unpack and interleave high-
order quadwords from
xmm1 and xmm2/m128
into xmm1.
Op/En Operand 1 Operand 2 Operand 3 Operand 4
A ModRM:reg (r, w) ModRM:r/m (r) NA NA