Skip to content

Instantly share code, notes, and snippets.

@elvinio
Created August 24, 2016 02:42
Show Gist options
  • Save elvinio/33f4c1663a20a489b721826b65cf4079 to your computer and use it in GitHub Desktop.
Save elvinio/33f4c1663a20a489b721826b65cf4079 to your computer and use it in GitHub Desktop.
x86 instruction set
{
" AAA":"ASCII Adjust After Addition",
" AAD":"ASCII Adjust AX Before Division",
" AAM":"ASCII Adjust AX After Multiply",
" AAS":"ASCII Adjust AL After Subtraction",
" ADC":"Add with Carry",
" ADCX":"Unsigned Integer Addition of Two Operands with Carry Flag",
" ADD":"Add",
" ADDPD":"Add Packed Double-Precision Floating-Point Values",
" ADDPS":"Add Packed Single-Precision Floating-Point Values",
" ADDSD":"Add Scalar Double-Precision Floating-Point Values",
" ADDSS":"Add Scalar Single-Precision Floating-Point Values",
" ADDSUBPD":"Packed Double-FP Add/Subtract",
" ADDSUBPS":"Packed Single-FP Add/Subtract",
" ADOX":"Unsigned Integer Addition of Two Operands with Overflow Flag",
" AESDEC":"Perform One Round of an AES Decryption Flow",
" AESDECLAST":"Perform Last Round of an AES Decryption Flow",
" AESENC":"Perform One Round of an AES Encryption Flow",
" AESENCLAST":"Perform Last Round of an AES Encryption Flow",
" AESIMC":"Perform the AES InvMixColumn Transformation",
" AESKEYGENASSIST":"AES Round Key Generation Assist",
" AND":"Logical AND",
" ANDN":"Logical AND NOT",
" ANDNPD":"Bitwise Logical AND NOT of Packed Double-Precision Floating-Point Values",
" ANDNPS":"Bitwise Logical AND NOT of Packed Single-Precision Floating-Point Values",
" ANDPD":"Bitwise Logical AND of Packed Double-Precision Floating-Point Values",
" ANDPS":"Bitwise Logical AND of Packed Single-Precision Floating-Point Values",
" ARPL":"Adjust RPL Field of Segment Selector",
" BEXTR":"Bit Field Extract",
" BLENDPD":"Blend Packed Double Precision Floating-Point Values",
" BLENDPS":"Blend Packed Single Precision Floating-Point Values",
" BLENDVPD":"Variable Blend Packed Double Precision Floating-Point Values",
" BLENDVPS":"Variable Blend Packed Single Precision Floating-Point Values",
" BLSI":"Extract Lowest Set Isolated Bit",
" BLSMSK":"Get Mask Up to Lowest Set Bit",
" BLSR":"Reset Lowest Set Bit",
" BOUND":"Check Array Index Against Bounds",
" BSF":"Bit Scan Forward",
" BSR":"Bit Scan Reverse",
" BSWAP":"Byte Swap",
" BT":"Bit Test",
" BTC":"Bit Test and Complement",
" BTR":"Bit Test and Reset",
" BTS":"Bit Test and Set",
" BZHI":"Zero High Bits Starting with Specified Bit Position",
" CALL":"Call Procedure",
" CBW":"Convert Byte to Word/Convert Word to Doubleword/Convert Doubleword to Quadword",
" CDQ":"Convert Word to Doubleword/Convert Doubleword to Quadword",
" CDQE":"Convert Byte to Word/Convert Word to Doubleword/Convert Doubleword to Quadword",
" CLAC":"Clear AC Flag in EFLAGS Register",
" CLC":"Clear Carry Flag",
" CLD":"Clear Direction Flag",
" CLFLUSH":"Flush Cache Line",
" CLI":"Clear Interrupt Flag",
" CLTS":"Clear Task-Switched Flag in CR0",
" CMC":"Complement Carry Flag",
" CMOVcc":"Conditional Move",
" CMP":"Compare Two Operands",
" CMPPD":"Compare Packed Double-Precision Floating-Point Values",
" CMPPS":"Compare Packed Single-Precision Floating-Point Values",
" CMPS":"Compare String Operands",
" CMPSB":"Compare String Operands",
" CMPSD":"Compare String Operands",
" CMPSD":"Compare Scalar Double-Precision Floating-Point Values",
" CMPSQ":"Compare String Operands",
" CMPSS":"Compare Scalar Single-Precision Floating-Point Values",
" CMPSW":"Compare String Operands",
" CMPXCHG":"Compare and Exchange",
" CMPXCHG16B":"Compare and Exchange Bytes",
" CMPXCHG8B":"Compare and Exchange Bytes",
" COMISD":"Compare Scalar Ordered Double-Precision Floating-Point Values and Set EFLAGS",
" COMISS":"Compare Scalar Ordered Single-Precision Floating-Point Values and Set EFLAGS",
" CPUID":"CPU Identification",
" CQO":"Convert Word to Doubleword/Convert Doubleword to Quadword",
" CRC32":"Accumulate CRC32 Value",
" CVTDQ2PD":"Convert Packed Dword Integers to Packed Double-Precision FP Values",
" CVTDQ2PS":"Convert Packed Dword Integers to Packed Single-Precision FP Values",
" CVTPD2DQ":"Convert Packed Double-Precision FP Values to Packed Dword Integers",
" CVTPD2PI":"Convert Packed Double-Precision FP Values to Packed Dword Integers",
" CVTPD2PS":"Convert Packed Double-Precision FP Values to Packed Single-Precision FP Values",
" CVTPI2PD":"Convert Packed Dword Integers to Packed Double-Precision FP Values",
" CVTPI2PS":"Convert Packed Dword Integers to Packed Single-Precision FP Values",
" CVTPS2DQ":"Convert Packed Single-Precision FP Values to Packed Dword Integers",
" CVTPS2PD":"Convert Packed Single-Precision FP Values to Packed Double-Precision FP Values",
" CVTPS2PI":"Convert Packed Single-Precision FP Values to Packed Dword Integers",
" CVTSD2SI":"Convert Scalar Double-Precision FP Value to Integer",
" CVTSD2SS":"Convert Scalar Double-Precision FP Value to Scalar Single-Precision FP Value",
" CVTSI2SD":"Convert Dword Integer to Scalar Double-Precision FP Value",
" CVTSI2SS":"Convert Dword Integer to Scalar Single-Precision FP Value",
" CVTSS2SD":"Convert Scalar Single-Precision FP Value to Scalar Double-Precision FP Value",
" CVTSS2SI":"Convert Scalar Single-Precision FP Value to Dword Integer",
" CVTTPD2DQ":"Convert with Truncation Packed Double-Precision FP Values to Packed Dword Integers",
" CVTTPD2PI":"Convert with Truncation Packed Double-Precision FP Values to Packed Dword Integers",
" CVTTPS2DQ":"Convert with Truncation Packed Single-Precision FP Values to Packed Dword Integers",
" CVTTPS2PI":"Convert with Truncation Packed Single-Precision FP Values to Packed Dword Integers",
" CVTTSD2SI":"Convert with Truncation Scalar Double-Precision FP Value to Signed Integer",
" CVTTSS2SI":"Convert with Truncation Scalar Single-Precision FP Value to Dword Integer",
" CWD":"Convert Word to Doubleword/Convert Doubleword to Quadword",
" CWDE":"Convert Byte to Word/Convert Word to Doubleword/Convert Doubleword to Quadword",
" DAA":"Decimal Adjust AL after Addition",
" DAS":"Decimal Adjust AL after Subtraction",
" DEC":"Decrement by 1",
" DIV":"Unsigned Divide",
" DIVPD":"Divide Packed Double-Precision Floating-Point Values",
" DIVPS":"Divide Packed Single-Precision Floating-Point Values",
" DIVSD":"Divide Scalar Double-Precision Floating-Point Values",
" DIVSS":"Divide Scalar Single-Precision Floating-Point Values",
" DPPD":"Dot Product of Packed Double Precision Floating-Point Values",
" DPPS":"Dot Product of Packed Single Precision Floating-Point Values",
" EMMS":"Empty MMX Technology State",
" ENTER":"Make Stack Frame for Procedure Parameters",
" EXTRACTPS":"Extract Packed Single Precision Floating-Point Value",
" F2XM1":"Compute 2x–1",
" FABS":"Absolute Value",
" FADD":"Add",
" FADDP":"Add",
" FBLD":"Load Binary Coded Decimal",
" FBSTP":"Store BCD Integer and Pop",
" FCHS":"Change Sign",
" FCLEX":"Clear Exceptions",
" FCMOVcc":"Floating-Point Conditional Move",
" FCOM":"Compare Floating Point Values",
" FCOMI":"Compare Floating Point Values and Set EFLAGS",
" FCOMIP":"Compare Floating Point Values and Set EFLAGS",
" FCOMP":"Compare Floating Point Values",
" FCOMPP":"Compare Floating Point Values",
" FCOS":"Cosine",
" FDECSTP":"Decrement Stack-Top Pointer",
" FDIV":"Divide",
" FDIVP":"Divide",
" FDIVR":"Reverse Divide",
" FDIVRP":"Reverse Divide",
" FFREE":"Free Floating-Point Register",
" FIADD":"Add",
" FICOM":"Compare Integer",
" FICOMP":"Compare Integer",
" FIDIV":"Divide",
" FIDIVR":"Reverse Divide",
" FILD":"Load Integer",
" FIMUL":"Multiply",
" FINCSTP":"Increment Stack-Top Pointer",
" FINIT":"Initialize Floating-Point Unit",
" FIST":"Store Integer",
" FISTP":"Store Integer",
" FISTTP":"Store Integer with Truncation",
" FISUB":"Subtract",
" FISUBR":"Reverse Subtract",
" FLD":"Load Floating Point Value",
" FLD1":"Load Constant",
" FLDCW":"Load x87 FPU Control Word",
" FLDENV":"Load x87 FPU Environment",
" FLDL2E":"Load Constant",
" FLDL2T":"Load Constant",
" FLDLG2":"Load Constant",
" FLDLN2":"Load Constant",
" FLDPI":"Load Constant",
" FLDZ":"Load Constant",
" FMUL":"Multiply",
" FMULP":"Multiply",
" FNCLEX":"Clear Exceptions",
" FNINIT":"Initialize Floating-Point Unit",
" FNOP":"No Operation",
" FNSAVE":"Store x87 FPU State",
" FNSTCW":"Store x87 FPU Control Word",
" FNSTENV":"Store x87 FPU Environment",
" FNSTSW":"Store x87 FPU Status Word",
" FPATAN":"Partial Arctangent",
" FPREM":"Partial Remainder",
" FPREM1":"Partial Remainder",
" FPTAN":"Partial Tangent",
" FRNDINT":"Round to Integer",
" FRSTOR":"Restore x87 FPU State",
" FSAVE":"Store x87 FPU State",
" FSCALE":"Scale",
" FSIN":"Sine",
" FSINCOS":"Sine and Cosine",
" FSQRT":"Square Root",
" FST":"Store Floating Point Value",
" FSTCW":"Store x87 FPU Control Word",
" FSTENV":"Store x87 FPU Environment",
" FSTP":"Store Floating Point Value",
" FSTSW":"Store x87 FPU Status Word",
" FSUB":"Subtract",
" FSUBP":"Subtract",
" FSUBR":"Reverse Subtract",
" FSUBRP":"Reverse Subtract",
" FTST":"TEST",
" FUCOM":"Unordered Compare Floating Point Values",
" FUCOMI":"Compare Floating Point Values and Set EFLAGS",
" FUCOMIP":"Compare Floating Point Values and Set EFLAGS",
" FUCOMP":"Unordered Compare Floating Point Values",
" FUCOMPP":"Unordered Compare Floating Point Values",
" FWAIT":"Wait",
" FXAM":"Examine ModR/M",
" FXCH":"Exchange Register Contents",
" FXRSTOR":"Restore x87 FPU,
MMX,
XMM,
and MXCSR State",
" FXSAVE":"Save x87 FPU,
MMX Technology,
and SSE State",
" FXTRACT":"Extract Exponent and Significand",
" FYL2X":"Compute y ∗ log2x",
" FYL2XP1":"Compute y ∗ log2(x +1)",
" HADDPD":"Packed Double-FP Horizontal Add",
" HADDPS":"Packed Single-FP Horizontal Add",
" HLT":"Halt",
" HSUBPD":"Packed Double-FP Horizontal Subtract",
" HSUBPS":"Packed Single-FP Horizontal Subtract",
" IDIV":"Signed Divide",
" IMUL":"Signed Multiply",
" IN":"Input from Port",
" INC":"Increment by 1",
" INS":"Input from Port to String",
" INSB":"Input from Port to String",
" INSD":"Input from Port to String",
" INSERTPS":"Insert Packed Single Precision Floating-Point Value",
" INSW":"Input from Port to String",
" INT 3":"Call to Interrupt Procedure",
" INT n":"Call to Interrupt Procedure",
" INTO":"Call to Interrupt Procedure",
" INVD":"Invalidate Internal Caches",
" INVLPG":"Invalidate TLB Entries",
" INVPCID":"Invalidate Process-Context Identifier",
" IRET":"Interrupt Return",
" IRETD":"Interrupt Return",
" JMP":"Jump",
" Jcc":"Jump if Condition Is Met",
" LAHF":"Load Status Flags into AH Register",
" LAR":"Load Access Rights Byte",
" LDDQU":"Load Unaligned Integer 128 Bits",
" LDMXCSR":"Load MXCSR Register",
" LDS":"Load Far Pointer",
" LEA":"Load Effective Address",
" LEAVE":"High Level Procedure Exit",
" LES":"Load Far Pointer",
" LFENCE":"Load Fence",
" LFS":"Load Far Pointer",
" LGDT":"Load Global/Interrupt Descriptor Table Register",
" LGS":"Load Far Pointer",
" LIDT":"Load Global/Interrupt Descriptor Table Register",
" LLDT":"Load Local Descriptor Table Register",
" LMSW":"Load Machine Status Word",
" LOCK":"Assert LOCK# Signal Prefix",
" LODS":"Load String",
" LODSB":"Load String",
" LODSD":"Load String",
" LODSQ":"Load String",
" LODSW":"Load String",
" LOOP":"Loop According to ECX Counter",
" LOOPcc":"Loop According to ECX Counter",
" LSL":"Load Segment Limit",
" LSS":"Load Far Pointer",
" LTR":"Load Task Register",
" LZCNT":"Count the Number of Leading Zero Bits",
" MASKMOVDQU":"Store Selected Bytes of Double Quadword",
" MASKMOVQ":"Store Selected Bytes of Quadword",
" MAXPD":"Return Maximum Packed Double-Precision Floating-Point Values",
" MAXPS":"Return Maximum Packed Single-Precision Floating-Point Values",
" MAXSD":"Return Maximum Scalar Double-Precision Floating-Point Value",
" MAXSS":"Return Maximum Scalar Single-Precision Floating-Point Value",
" MFENCE":"Memory Fence",
" MINPD":"Return Minimum Packed Double-Precision Floating-Point Values",
" MINPS":"Return Minimum Packed Single-Precision Floating-Point Values",
" MINSD":"Return Minimum Scalar Double-Precision Floating-Point Value",
" MINSS":"Return Minimum Scalar Single-Precision Floating-Point Value",
" MONITOR":"Set Up Monitor Address",
" MOV":"Move",
" MOV":"Move to/from Control Registers",
" MOV":"Move to/from Debug Registers",
" MOVAPD":"Move Aligned Packed Double-Precision Floating-Point Values",
" MOVAPS":"Move Aligned Packed Single-Precision Floating-Point Values",
" MOVBE":"Move Data After Swapping Bytes",
" MOVD":"Move Doubleword/Move Quadword",
" MOVDDUP":"Move One Double-FP and Duplicate",
" MOVDQ2Q":"Move Quadword from XMM to MMX Technology Register",
" MOVDQA":"Move Aligned Double Quadword",
" MOVDQU":"Move Unaligned Double Quadword",
" MOVHLPS":"Move Packed Single-Precision Floating-Point Values High to Low",
" MOVHPD":"Move High Packed Double-Precision Floating-Point Value",
" MOVHPS":"Move High Packed Single-Precision Floating-Point Values",
" MOVLHPS":"Move Packed Single-Precision Floating-Point Values Low to High",
" MOVLPD":"Move Low Packed Double-Precision Floating-Point Value",
" MOVLPS":"Move Low Packed Single-Precision Floating-Point Values",
" MOVMSKPD":"Extract Packed Double-Precision Floating-Point Sign Mask",
" MOVMSKPS":"Extract Packed Single-Precision Floating-Point Sign Mask",
" MOVNTDQ":"Store Double Quadword Using Non-Temporal Hint",
" MOVNTDQA":"Load Double Quadword Non-Temporal Aligned Hint",
" MOVNTI":"Store Doubleword Using Non-Temporal Hint",
" MOVNTPD":"Store Packed Double-Precision Floating-Point Values Using Non-Temporal Hint",
" MOVNTPS":"Store Packed Single-Precision Floating-Point Values Using Non-Temporal Hint",
" MOVNTQ":"Store of Quadword Using Non-Temporal Hint",
" MOVQ":"Move Doubleword/Move Quadword",
" MOVQ":"Move Quadword",
" MOVQ2DQ":"Move Quadword from MMX Technology to XMM Register",
" MOVS":"Move Data from String to String",
" MOVSB":"Move Data from String to String",
" MOVSD":"Move Data from String to String",
" MOVSD":"Move Scalar Double-Precision Floating-Point Value",
" MOVSHDUP":"Move Packed Single-FP High and Duplicate",
" MOVSLDUP":"Move Packed Single-FP Low and Duplicate",
" MOVSQ":"Move Data from String to String",
" MOVSS":"Move Scalar Single-Precision Floating-Point Values",
" MOVSW":"Move Data from String to String",
" MOVSX":"Move with Sign-Extension",
" MOVSXD":"Move with Sign-Extension",
" MOVUPD":"Move Unaligned Packed Double-Precision Floating-Point Values",
" MOVUPS":"Move Unaligned Packed Single-Precision Floating-Point Values",
" MOVZX":"Move with Zero-Extend",
" MPSADBW":"Compute Multiple Packed Sums of Absolute Difference",
" MUL":"Unsigned Multiply",
" MULPD":"Multiply Packed Double-Precision Floating-Point Values",
" MULPS":"Multiply Packed Single-Precision Floating-Point Values",
" MULSD":"Multiply Scalar Double-Precision Floating-Point Values",
" MULSS":"Multiply Scalar Single-Precision Floating-Point Values",
" MWAIT":"Monitor Wait",
" MULX":"Unsigned Multiply Without Affecting Flags",
" MWAIT":"Monitor Wait",
" NEG":"Two's Complement Negation",
" NOP":"No Operation",
" NOT":"One's Complement Negation",
" OR":"Logical Inclusive OR",
" ORPD":"Bitwise Logical OR of Double-Precision Floating-Point Values",
" ORPS":"Bitwise Logical OR of Single-Precision Floating-Point Values",
" OUT":"Output to Port",
" OUTS":"Output String to Port",
" OUTSB":"Output String to Port",
" OUTSD":"Output String to Port",
" OUTSW":"Output String to Port",
" PABSB":"Packed Absolute Value",
" PABSD":"Packed Absolute Value",
" PABSW":"Packed Absolute Value",
" PACKSSDW":"Pack with Signed Saturation",
" PACKSSWB":"Pack with Signed Saturation",
" PACKUSDW":"Pack with Unsigned Saturation",
" PACKUSWB":"Pack with Unsigned Saturation",
" PADDB":"Add Packed Integers",
" PADDD":"Add Packed Integers",
" PADDQ":"Add Packed Quadword Integers",
" PADDSB":"Add Packed Signed Integers with Signed Saturation",
" PADDSW":"Add Packed Signed Integers with Signed Saturation",
" PADDUSB":"Add Packed Unsigned Integers with Unsigned Saturation",
" PADDUSW":"Add Packed Unsigned Integers with Unsigned Saturation",
" PADDW":"Add Packed Integers",
" PALIGNR":"Packed Align Right",
" PAND":"Logical AND",
" PANDN":"Logical AND NOT",
" PAUSE":"Spin Loop Hint",
" PAVGB":"Average Packed Integers",
" PAVGW":"Average Packed Integers",
" PBLENDVB":"Variable Blend Packed Bytes",
" PBLENDW":"Blend Packed Words",
" PCLMULQDQ":"Carry-Less Multiplication Quadword",
" PCMPEQB":"Compare Packed Data for Equal",
" PCMPEQD":"Compare Packed Data for Equal",
" PCMPEQQ":"Compare Packed Qword Data for Equal",
" PCMPEQW":"Compare Packed Data for Equal",
" PCMPESTRI":"Packed Compare Explicit Length Strings,
Return Index",
" PCMPESTRM":"Packed Compare Explicit Length Strings,
Return Mask",
" PCMPGTB":"Compare Packed Signed Integers for Greater Than",
" PCMPGTD":"Compare Packed Signed Integers for Greater Than",
" PCMPGTQ":"Compare Packed Data for Greater Than",
" PCMPGTW":"Compare Packed Signed Integers for Greater Than",
" PCMPISTRI":"Packed Compare Implicit Length Strings,
Return Index",
" PCMPISTRM":"Packed Compare Implicit Length Strings,
Return Mask",
" PDEP":"Parallel Bits Deposit",
" PEXT":"Parallel Bits Extract",
" PEXTRB":"Extract Byte/Dword/Qword",
" PEXTRD":"Extract Byte/Dword/Qword",
" PEXTRQ":"Extract Byte/Dword/Qword",
" PEXTRW":"Extract Word",
" PHADDD":"Packed Horizontal Add",
" PHADDSW":"Packed Horizontal Add and Saturate",
" PHADDW":"Packed Horizontal Add",
" PHMINPOSUW":"Packed Horizontal Word Minimum",
" PHSUBD":"Packed Horizontal Subtract",
" PHSUBSW":"Packed Horizontal Subtract and Saturate",
" PHSUBW":"Packed Horizontal Subtract",
" PINSRB":"Insert Byte/Dword/Qword",
" PINSRD":"Insert Byte/Dword/Qword",
" PINSRQ":"Insert Byte/Dword/Qword",
" PINSRW":"Insert Word",
" PMADDUBSW":"Multiply and Add Packed Signed and Unsigned Bytes",
" PMADDWD":"Multiply and Add Packed Integers",
" PMAXSB":"Maximum of Packed Signed Byte Integers",
" PMAXSD":"Maximum of Packed Signed Dword Integers",
" PMAXSW":"Maximum of Packed Signed Word Integers",
" PMAXUB":"Maximum of Packed Unsigned Byte Integers",
" PMAXUD":"Maximum of Packed Unsigned Dword Integers",
" PMAXUW":"Maximum of Packed Word Integers",
" PMINSB":"Minimum of Packed Signed Byte Integers",
" PMINSD":"Minimum of Packed Dword Integers",
" PMINSW":"Minimum of Packed Signed Word Integers",
" PMINUB":"Minimum of Packed Unsigned Byte Integers",
" PMINUD":"Minimum of Packed Dword Integers",
" PMINUW":"Minimum of Packed Word Integers",
" PMOVMSKB":"Move Byte Mask",
" PMOVSX":"Packed Move with Sign Extend",
" PMOVZX":"Packed Move with Zero Extend",
" PMULDQ":"Multiply Packed Signed Dword Integers",
" PMULHRSW":"Packed Multiply High with Round and Scale",
" PMULHUW":"Multiply Packed Unsigned Integers and Store High Result",
" PMULHW":"Multiply Packed Signed Integers and Store High Result",
" PMULLD":"Multiply Packed Signed Dword Integers and Store Low Result",
" PMULLW":"Multiply Packed Signed Integers and Store Low Result",
" PMULUDQ":"Multiply Packed Unsigned Doubleword Integers",
" POP":"Pop a Value from the Stack",
" POPA":"Pop All General-Purpose Registers",
" POPAD":"Pop All General-Purpose Registers",
" POPCNT":"Return the Count of Number of Bits Set to 1",
" POPF":"Pop Stack into EFLAGS Register",
" POPFD":"Pop Stack into EFLAGS Register",
" POPFQ":"Pop Stack into EFLAGS Register",
" POR":"Bitwise Logical OR",
" PREFETCHW":"Prefetch Data into Caches in Anticipation of a Write",
" PREFETCHWT1":"Prefetch Vector Data Into Caches with Intent to Write and T1 Hint",
" PREFETCHh":"Prefetch Data Into Caches",
" PSADBW":"Compute Sum of Absolute Differences",
" PSHUFB":"Packed Shuffle Bytes",
" PSHUFD":"Shuffle Packed Doublewords",
" PSHUFHW":"Shuffle Packed High Words",
" PSHUFLW":"Shuffle Packed Low Words",
" PSHUFW":"Shuffle Packed Words",
" PSIGNB":"Packed SIGN",
" PSIGND":"Packed SIGN",
" PSIGNW":"Packed SIGN",
" PSLLD":"Shift Packed Data Left Logical",
" PSLLDQ":"Shift Double Quadword Left Logical",
" PSLLQ":"Shift Packed Data Left Logical",
" PSLLW":"Shift Packed Data Left Logical",
" PSRAD":"Shift Packed Data Right Arithmetic",
" PSRAW":"Shift Packed Data Right Arithmetic",
" PSRLD":"Shift Packed Data Right Logical",
" PSRLDQ":"Shift Double Quadword Right Logical",
" PSRLQ":"Shift Packed Data Right Logical",
" PSRLW":"Shift Packed Data Right Logical",
" PSUBB":"Subtract Packed Integers",
" PSUBD":"Subtract Packed Integers",
" PSUBQ":"Subtract Packed Quadword Integers",
" PSUBSB":"Subtract Packed Signed Integers with Signed Saturation",
" PSUBSW":"Subtract Packed Signed Integers with Signed Saturation",
" PSUBUSB":"Subtract Packed Unsigned Integers with Unsigned Saturation",
" PSUBUSW":"Subtract Packed Unsigned Integers with Unsigned Saturation",
" PSUBW":"Subtract Packed Integers",
" PTEST":"Logical Compare",
" PUNPCKHBW":"Unpack High Data",
" PUNPCKHDQ":"Unpack High Data",
" PUNPCKHQDQ":"Unpack High Data",
" PUNPCKHWD":"Unpack High Data",
" PUNPCKLBW":"Unpack Low Data",
" PUNPCKLDQ":"Unpack Low Data",
" PUNPCKLQDQ":"Unpack Low Data",
" PUNPCKLWD":"Unpack Low Data",
" PUSH":"Push Word,
Doubleword or Quadword Onto the Stack",
" PUSHA":"Push All General-Purpose Registers",
" PUSHAD":"Push All General-Purpose Registers",
" PUSHF":"Push EFLAGS Register onto the Stack",
" PUSHFD":"Push EFLAGS Register onto the Stack",
" PXOR":"Logical Exclusive OR",
" RCL":"—Rotate",
" RCPPS":"Compute Reciprocals of Packed Single-Precision Floating-Point Values",
" RCPSS":"Compute Reciprocal of Scalar Single-Precision Floating-Point Values",
" RCR":"—Rotate",
" RDFSBASE":"Read FS/GS Segment Base",
" RDGSBASE":"Read FS/GS Segment Base",
" RDMSR":"Read from Model Specific Register",
" RDPMC":"Read Performance-Monitoring Counters",
" RDRAND":"Read Random Number",
" RDSEED":"Read Random SEED",
" RDTSC":"Read Time-Stamp Counter",
" RDTSCP":"Read Time-Stamp Counter and Processor ID",
" REP":"Repeat String Operation Prefix",
" REPE":"Repeat String Operation Prefix",
" REPNE":"Repeat String Operation Prefix",
" REPNZ":"Repeat String Operation Prefix",
" REPZ":"Repeat String Operation Prefix",
" RET":"Return from Procedure",
" ROL":"—Rotate",
" ROR":"—Rotate",
" RORX":"Rotate Right Logical Without Affecting Flags",
" ROUNDPD":"Round Packed Double Precision Floating-Point Values",
" ROUNDPS":"Round Packed Single Precision Floating-Point Values",
" ROUNDSD":"Round Scalar Double Precision Floating-Point Values",
" ROUNDSS":"Round Scalar Single Precision Floating-Point Values",
" RSM":"Resume from System Management Mode",
" RSQRTPS":"Compute Reciprocals of Square Roots of Packed Single-Precision Floating-Point Values",
" RSQRTSS":"Compute Reciprocal of Square Root of Scalar Single-Precision Floating-Point Value",
" SAHF":"Store AH into Flags",
" SAL":"Shift",
" SAR":"Shift",
" SARX":"Shift Without Affecting Flags",
" SBB":"Integer Subtraction with Borrow",
" SCAS":"Scan String",
" SCASB":"Scan String",
" SCASD":"Scan String",
" SCASW":"Scan String",
" SETcc":"Set Byte on Condition",
" SFENCE":"Store Fence",
" SGDT":"Store Global Descriptor Table Register",
" SHL":"Shift",
" SHLD":"Double Precision Shift Left",
" SHLX":"Shift Without Affecting Flags",
" SHR":"Shift",
" SHRD":"Double Precision Shift Right",
" SHRX":"Shift Without Affecting Flags",
" SHUFPD":"Shuffle Packed Double-Precision Floating-Point Values",
" SHUFPS":"Shuffle Packed Single-Precision Floating-Point Values",
" SIDT":"Store Interrupt Descriptor Table Register",
" SLDT":"Store Local Descriptor Table Register",
" SMSW":"Store Machine Status Word",
" SQRTPD":"Compute Square Roots of Packed Double-Precision Floating-Point Values",
" SQRTPS":"Compute Square Roots of Packed Single-Precision Floating-Point Values",
" SQRTSD":"Compute Square Root of Scalar Double-Precision Floating-Point Value",
" SQRTSS":"Compute Square Root of Scalar Single-Precision Floating-Point Value",
" STAC":"Set AC Flag in EFLAGS Register",
" STC":"Set Carry Flag",
" STD":"Set Direction Flag",
" STI":"Set Interrupt Flag",
" STMXCSR":"Store MXCSR Register State",
" STOS":"Store String",
" STOSB":"Store String",
" STOSD":"Store String",
" STOSQ":"Store String",
" STOSW":"Store String",
" STR":"Store Task Register",
" SUB":"Subtract",
" SUBPD":"Subtract Packed Double-Precision Floating-Point Values",
" SUBPS":"Subtract Packed Single-Precision Floating-Point Values",
" SUBSD":"Subtract Scalar Double-Precision Floating-Point Values",
" SUBSS":"Subtract Scalar Single-Precision Floating-Point Values",
" SWAPGS":"Swap GS Base Register",
" SYSCALL":"Fast System Call",
" SYSENTER":"Fast System Call",
" SYSEXIT":"Fast Return from Fast System Call",
" SYSRET":"Return From Fast System Call",
" TEST":"Logical Compare",
" TZCNT":"Count the Number of Trailing Zero Bits",
" UCOMISD":"Unordered Compare Scalar Double-Precision Floating-Point Values and Set EFLAGS",
" UCOMISS":"Unordered Compare Scalar Single-Precision Floating-Point Values and Set EFLAGS",
" UD2":"Undefined Instruction",
" UNPCKHPD":"Unpack and Interleave High Packed Double-Precision Floating-Point Values",
" UNPCKHPS":"Unpack and Interleave High Packed Single-Precision Floating-Point Values",
" UNPCKLPD":"Unpack and Interleave Low Packed Double-Precision Floating-Point Values",
" UNPCKLPS":"Unpack and Interleave Low Packed Single-Precision Floating-Point Values",
" VBROADCAST":"Broadcast Floating-Point Data",
" VCVTPH2PS":"Convert 16-bit FP Values to Single-Precision FP Values",
" VCVTPS2PH":"Convert Single-Precision FP value to 16-bit FP value",
" VERR":"Verify a Segment for Reading or Writing",
" VERW":"Verify a Segment for Reading or Writing",
" VEXTRACTF128":"Extract Packed Floating-Point Values",
" VEXTRACTI128":"Extract packed Integer Values",
" VFMADD132PD":"Fused Multiply-Add of Packed Double-Precision Floating-Point Values",
" VFMADD132PS":"Fused Multiply-Add of Packed Single-Precision Floating-Point Values",
" VFMADD132SD":"Fused Multiply-Add of Scalar Double-Precision Floating-Point Values",
" VFMADD132SS":"Fused Multiply-Add of Scalar Single-Precision Floating-Point Values",
" VFMADD213PD":"Fused Multiply-Add of Packed Double-Precision Floating-Point Values",
" VFMADD213PS":"Fused Multiply-Add of Packed Single-Precision Floating-Point Values",
" VFMADD213SD":"Fused Multiply-Add of Scalar Double-Precision Floating-Point Values",
" VFMADD213SS":"Fused Multiply-Add of Scalar Single-Precision Floating-Point Values",
" VFMADD231PD":"Fused Multiply-Add of Packed Double-Precision Floating-Point Values",
" VFMADD231PS":"Fused Multiply-Add of Packed Single-Precision Floating-Point Values",
" VFMADD231SD":"Fused Multiply-Add of Scalar Double-Precision Floating-Point Values",
" VFMADD231SS":"Fused Multiply-Add of Scalar Single-Precision Floating-Point Values",
" VFMADDSUB132PD":"Fused Multiply-Alternating Add/Subtract of Packed Double-Precision Floating-Point Values",
" VFMADDSUB132PS":"Fused Multiply-Alternating Add/Subtract of Packed Single-Precision Floating-Point Values",
" VFMADDSUB213PD":"Fused Multiply-Alternating Add/Subtract of Packed Double-Precision Floating-Point Values",
" VFMADDSUB213PS":"Fused Multiply-Alternating Add/Subtract of Packed Single-Precision Floating-Point Values",
" VFMADDSUB231PD":"Fused Multiply-Alternating Add/Subtract of Packed Double-Precision Floating-Point Values",
" VFMADDSUB231PS":"Fused Multiply-Alternating Add/Subtract of Packed Single-Precision Floating-Point Values",
" VFMSUB132PD":"Fused Multiply-Subtract of Packed Double-Precision Floating-Point Values",
" VFMSUB132PS":"Fused Multiply-Subtract of Packed Single-Precision Floating-Point Values",
" VFMSUB132SD":"Fused Multiply-Subtract of Scalar Double-Precision Floating-Point Values",
" VFMSUB132SS":"Fused Multiply-Subtract of Scalar Single-Precision Floating-Point Values",
" VFMSUB213PD":"Fused Multiply-Subtract of Packed Double-Precision Floating-Point Values",
" VFMSUB213PS":"Fused Multiply-Subtract of Packed Single-Precision Floating-Point Values",
" VFMSUB213SD":"Fused Multiply-Subtract of Scalar Double-Precision Floating-Point Values",
" VFMSUB213SS":"Fused Multiply-Subtract of Scalar Single-Precision Floating-Point Values",
" VFMSUB231PD":"Fused Multiply-Subtract of Packed Double-Precision Floating-Point Values",
" VFMSUB231PS":"Fused Multiply-Subtract of Packed Single-Precision Floating-Point Values",
" VFMSUB231SD":"Fused Multiply-Subtract of Scalar Double-Precision Floating-Point Values",
" VFMSUB231SS":"Fused Multiply-Subtract of Scalar Single-Precision Floating-Point Values",
" VFMSUBADD132PD":"Fused Multiply-Alternating Subtract/Add of Packed Double-Precision Floating-Point Values",
" VFMSUBADD132PS":"Fused Multiply-Alternating Subtract/Add of Packed Single-Precision Floating-Point Values",
" VFMSUBADD213PD":"Fused Multiply-Alternating Subtract/Add of Packed Double-Precision Floating-Point Values",
" VFMSUBADD213PS":"Fused Multiply-Alternating Subtract/Add of Packed Single-Precision Floating-Point Values",
" VFMSUBADD231PD":"Fused Multiply-Alternating Subtract/Add of Packed Double-Precision Floating-Point Values",
" VFMSUBADD231PS":"Fused Multiply-Alternating Subtract/Add of Packed Single-Precision Floating-Point Values",
" VFNMADD132PD":"Fused Negative Multiply-Add of Packed Double-Precision Floating-Point Values",
" VFNMADD132PS":"Fused Negative Multiply-Add of Packed Single-Precision Floating-Point Values",
" VFNMADD132SD":"Fused Negative Multiply-Add of Scalar Double-Precision Floating-Point Values",
" VFNMADD132SS":"Fused Negative Multiply-Add of Scalar Single-Precision Floating-Point Values",
" VFNMADD213PD":"Fused Negative Multiply-Add of Packed Double-Precision Floating-Point Values",
" VFNMADD213PS":"Fused Negative Multiply-Add of Packed Single-Precision Floating-Point Values",
" VFNMADD213SD":"Fused Negative Multiply-Add of Scalar Double-Precision Floating-Point Values",
" VFNMADD213SS":"Fused Negative Multiply-Add of Scalar Single-Precision Floating-Point Values",
" VFNMADD231PD":"Fused Negative Multiply-Add of Packed Double-Precision Floating-Point Values",
" VFNMADD231PS":"Fused Negative Multiply-Add of Packed Single-Precision Floating-Point Values",
" VFNMADD231SD":"Fused Negative Multiply-Add of Scalar Double-Precision Floating-Point Values",
" VFNMADD231SS":"Fused Negative Multiply-Add of Scalar Single-Precision Floating-Point Values",
" VFNMSUB132PD":"Fused Negative Multiply-Subtract of Packed Double-Precision Floating-Point Values",
" VFNMSUB132PS":"Fused Negative Multiply-Subtract of Packed Single-Precision Floating-Point Values",
" VFNMSUB132SD":"Fused Negative Multiply-Subtract of Scalar Double-Precision Floating-Point Values",
" VFNMSUB132SS":"Fused Negative Multiply-Subtract of Scalar Single-Precision Floating-Point Values",
" VFNMSUB213PD":"Fused Negative Multiply-Subtract of Packed Double-Precision Floating-Point Values",
" VFNMSUB213PS":"Fused Negative Multiply-Subtract of Packed Single-Precision Floating-Point Values",
" VFNMSUB213SD":"Fused Negative Multiply-Subtract of Scalar Double-Precision Floating-Point Values",
" VFNMSUB213SS":"Fused Negative Multiply-Subtract of Scalar Single-Precision Floating-Point Values",
" VFNMSUB231PD":"Fused Negative Multiply-Subtract of Packed Double-Precision Floating-Point Values",
" VFNMSUB231PS":"Fused Negative Multiply-Subtract of Packed Single-Precision Floating-Point Values",
" VFNMSUB231SD":"Fused Negative Multiply-Subtract of Scalar Double-Precision Floating-Point Values",
" VFNMSUB231SS":"Fused Negative Multiply-Subtract of Scalar Single-Precision Floating-Point Values",
" VGATHERDPD":"Gather Packed DP FP Values Using Signed Dword/Qword Indices",
" VGATHERDPS":"Gather Packed SP FP values Using Signed Dword/Qword Indices",
" VGATHERQPD":"Gather Packed DP FP Values Using Signed Dword/Qword Indices",
" VGATHERQPS":"Gather Packed SP FP values Using Signed Dword/Qword Indices",
" VINSERTF128":"Insert Packed Floating-Point Values",
" VINSERTI128":"Insert Packed Integer Values",
" VMASKMOV":"Conditional SIMD Packed Loads and Stores",
" VPBLENDD":"Blend Packed Dwords",
" VPBROADCAST":"Broadcast Integer Data",
" VPERM2F128":"Permute Floating-Point Values",
" VPERM2I128":"Permute Integer Values",
" VPERMD":"Full Doublewords Element Permutation",
" VPERMILPD":"Permute Double-Precision Floating-Point Values",
" VPERMILPS":"Permute Single-Precision Floating-Point Values",
" VPERMPD":"Permute Double-Precision Floating-Point Elements",
" VPERMPS":"Permute Single-Precision Floating-Point Elements",
" VPERMQ":"Qwords Element Permutation",
" VPGATHERDD":"Gather Packed Dword Values Using Signed Dword/Qword Indices",
" VPGATHERDQ":"Gather Packed Qword Values Using Signed Dword/Qword Indices",
" VPGATHERQD":"Gather Packed Dword Values Using Signed Dword/Qword Indices",
" VPGATHERQQ":"Gather Packed Qword Values Using Signed Dword/Qword Indices",
" VPMASKMOV":"Conditional SIMD Integer Packed Loads and Stores",
" VPSLLVD":"Variable Bit Shift Left Logical",
" VPSLLVQ":"Variable Bit Shift Left Logical",
" VPSRAVD":"Variable Bit Shift Right Arithmetic",
" VPSRLVD":"Variable Bit Shift Right Logical",
" VPSRLVQ":"Variable Bit Shift Right Logical",
" VTESTPD":"Packed Bit Test",
" VTESTPS":"Packed Bit Test",
" VZEROALL":"Zero All YMM Registers",
" VZEROUPPER":"Zero Upper Bits of YMM Registers",
" WAIT":"Wait",
" WBINVD":"Write Back and Invalidate Cache",
" WRFSBASE":"Write FS/GS Segment Base",
" WRGSBASE":"Write FS/GS Segment Base",
" WRMSR":"Write to Model Specific Register",
" XABORT":"Transactional Abort",
" XACQUIRE":"Hardware Lock Elision Prefix Hints",
" XADD":"Exchange and Add",
" XBEGIN":"Transactional Begin",
" XCHG":"Exchange Register/Memory with Register",
" XEND":"Transactional End",
" XGETBV":"Get Value of Extended Control Register",
" XLAT":"Table Look-up Translation",
" XLATB":"Table Look-up Translation",
" XOR":"Logical Exclusive OR",
" XORPD":"Bitwise Logical XOR for Double-Precision Floating-Point Values",
" XORPS":"Bitwise Logical XOR for Single-Precision Floating-Point Values",
" XRELEASE":"Hardware Lock Elision Prefix Hints",
" XRSTOR":"Restore Processor Extended States",
" XRSTORS":"Restore Processor Extended States Supervisor",
" XSAVE":"Save Processor Extended States",
" XSAVEC":"Save Processor Extended States with Compaction",
" XSAVEOPT":"Save Processor Extended States Optimized",
" XSAVES":"Save Processor Extended States Supervisor",
" XSETBV":"Set Extended Control Register",
" XTEST":"Test If In Transactional Execution"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment