pfadd

Packed Floating-Point Add

PFADD mm, mm/m64

Adds two packed floats (3DNow!).

Pseudocode Operation

dest[31:0] ← float_add(dest[31:0], src[31:0]); dest[63:32] ← float_add(dest[63:32], src[63:32]);

Encoding

Binary Layout
0F
+0
0F
+1
ModRM
+2
9E
+3
 
Format 3DNow!
Opcode 0F 0F /r 9E
Extension 3DNow!

Operands

  • dest
    64-bit MMX register
  • src
    64-bit MMX register or Memory operand

Related

More in 3DNow!

Instruction Forms

Opcode Instruction Op/En 64/32-bit Mode CPUID Description
0F 0F /r 9E PFADD mmx1, mmx2/m64 Adds each packed single-precision floating-point value in the first source operand to the corresponding value in the second source operand.

Description

Adds two packed single-precision floating-point values in an MMX register or 64-bit memory location to another MMX register and writes the result in both doublewords of the destination MMX register (3DNow!).