title: Extended MMX
text: # Extended MMX
  
  Extended MMX refers to one of two possible extensions to the MMX instruction set for x86.
  
  ## Intel Extended MMX
  
  Included in Intel's Streaming SIMD Extensions were a number of new instructions that extended the functionality of MMX. AMD incorporated this subset of extended MMX instructions into the Athlon microarchitecture. These instructions are commonly known as "Extended MMX instructions".
  
  These instructions debuted in May 1999, in the Intel Pentium III Processor, as part of the SSE instruction set. Next month, in late June 1999, AMD's Athlon processor was released which featured the extended MMX instructions, but not SSE.
  
  Today, these extended MMX instructions are notable as being the common subset of MMX extensions that work across both AMD Athlon and SSE-capable Intel processors.
  
  ## Cyrix EMMI (Extended Multi-Media Instructions)
  
  Less commonly known, "Extended MMX" could also refer to the original Cyrix EMMI (Extended Multi-Media Instructions). This instruction set was developed by Cyrix and implemented on their 6x86 MX and MII line of processors. It extended the MMX instruction set with 12 new instructions useful in multimedia applications. The extensions were not enabled by default, requiring the BIOS or software to enable them. EMMI was never given much support from software developers or acknowledged by Cyrix's competitors (certain Intel SSE instructions even share opcodes with EMMI instructions). It was never implemented in any processors after the MII. The EMMI instruction set included:
  
  * paddsiw
  * paveb
  * pdistib
  * pmachriw
  * pmagw
  * pmulhrw
  * pmulhriw
  * pmvzb
  * pmvnzb
  * pmvlzb
  * pmvgezb
  * psubsiw
  