13.07.2015 Views

Volume 3: General-Purpose and System Instructions - Stanford ...

Volume 3: General-Purpose and System Instructions - Stanford ...

Volume 3: General-Purpose and System Instructions - Stanford ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

24594 Rev. 3.10 February 2005 AMD64 TechnologySeveral instructions originally implemented as MMXinstructions are extended in the SSE2 instruction set toinclude opcodes that use XMM registers.• SSE3 <strong>Instructions</strong>—Horizontal addition <strong>and</strong> subtraction ofpacked single-precision <strong>and</strong> double-precision floating pointvalues, simultaneous addition <strong>and</strong> subtraction of packedsingle-precision <strong>and</strong> double-precision values, move withdupication, <strong>and</strong> floating-point-to-integer conversion. Theseinstructions are supported if the following bit is set:- SSE3, indicated by ECX bit 0 of CPUID st<strong>and</strong>ardfunction 1.• Long-Mode <strong>Instructions</strong>—<strong>Instructions</strong> introduced by AMDwith the AMD64 architecture. These instructions aresupported if the following bit is set:- Long mode, indicated by EDX bit 29 of CPUID extendedfunction 8000_0001h.For complete details on the CPUID feature sets listed inTable D-1, see “Processor Feature Identification” in <strong>Volume</strong> 2.D.3 Instruction ListTable D-1.Instruction Subsets <strong>and</strong> CPUID Feature SetsInstructionInstruction Subset<strong>and</strong> CPUID Feature Set(s) 1Mnemonic Description CPL<strong>General</strong>-<strong>Purpose</strong>128-BitMedia64-BitMediax87<strong>System</strong>AAAASCII Adjust AfterAddition3BasicAADASCII Adjust BeforeDivision3BasicAAMASCII Adjust AfterMultiply3BasicAASASCII Adjust AfterSubtraction3BasicADC Add with Carry 3 Basic1. Columns indicate the instruction subsets. Entries indicate the CPUID feature set(s) to which the instruction belongs.2. Mnemonic is used for two different instructions. Assemblers can distinguish them by the number <strong>and</strong> type of oper<strong>and</strong>s.Appendix D: Instruction Subsets <strong>and</strong> CPUID Feature Sets 457

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!