NASM - The Netwide Assembler

version 3.01

Appendix F: Instruction List

F.1. Introduction

The following sections show the instructions which NASM currently supports. For each instruction, there is a separate entry for each supported addressing mode. The third column shows the processor type in which the instruction was introduced and, when appropriate, one or more usage flags.

F.1.1. Special instructions (pseudo-ops)

DB                                        PSEUDO 
DW                                        PSEUDO 
DD                                        PSEUDO 
DQ                                        PSEUDO 
DT                                        PSEUDO 
DO                                        PSEUDO 
DY                                        PSEUDO 
DZ                                        PSEUDO 
RESB             imm                      PSEUDO 
RESW             imm                      PSEUDO 
RESD             imm                      PSEUDO 
RESQ             imm                      PSEUDO 
REST             imm                      PSEUDO 
RESO             imm                      PSEUDO 
RESY             imm                      PSEUDO 
RESZ             imm                      PSEUDO 
INCBIN                                    PSEUDO 
EQU              imm                      PSEUDO 
EQU              imm:imm                  PSEUDO 
EQU              spec4                    PSEUDO,DFV

F.1.2. No operation

NOP                                       BESTDIS,8086 
NOP2                                      ND,386 
NOP              rm16                     BESTDIS,P6 
NOP              rm32                     BESTDIS,P6 
NOP              rm64                     LONG,BESTDIS,PROT,X86_64

F.1.3. Integer data move instructions

MOV              reg_al,mem_offs          SM0-1,NOAPX,8086 
MOV              reg_ax,mem_offs          SM0-1,NOAPX,8086 
MOV              reg_eax,mem_offs         SM0-1,NOAPX,ZU,386 
MOV              reg_rax,mem_offs         SM0-1,NOAPX,ZU,LONG,PROT,X86_64 
MOV              mem_offs,reg_al          SM0-1,NOAPX,NOHLE,8086 
MOV              mem_offs,reg_ax          SM0-1,NOAPX,NOHLE,8086 
MOV              mem_offs,reg_eax         SM0-1,NOAPX,NOHLE,386 
MOV              mem_offs,reg_rax         SM0-1,NOAPX,LONG,NOHLE,PROT,X86_64 
MOVABS           reg_al,mem_offs          ND,SM0-1,NOAPX,8086 
MOVABS           reg_ax,mem_offs          ND,SM0-1,NOAPX,8086 
MOVABS           reg_eax,mem_offs         ND,SM0-1,NOAPX,ZU,386 
MOVABS           reg_rax,mem_offs         ND,SM0-1,NOAPX,ZU,LONG,PROT,X86_64 
MOVABS           mem_offs,reg_al          ND,SM0-1,NOAPX,NOHLE,8086 
MOVABS           mem_offs,reg_ax          ND,SM0-1,NOAPX,NOHLE,8086 
MOVABS           mem_offs,reg_eax         ND,SM0-1,NOAPX,NOHLE,386 
MOVABS           mem_offs,reg_rax         ND,SM0-1,NOAPX,LONG,NOHLE,PROT,X86_64 
MOV              rm8,reg8                 SM0-1,8086 
MOV              rm16,reg16               SM0-1,8086 
MOV              rm32,reg32               SM0-1,386 
MOV              rm64,reg64               SM0-1,LONG,PROT,X86_64 
MOV              reg8,rm8                 SM0-1,8086 
MOV              reg16,rm16               SM0-1,8086 
MOV              reg32,rm32               SM0-1,386 
MOV              reg64,rm64               SM0-1,LONG,PROT,X86_64 
MOV              reg64,udword64           ND,SM0-1,OPT,LONG,PROT,X86_64 
MOV              reg64,sdword64           ND,SM0-1,SDWORD,OPT,LONG,PROT,X86_64 
MOV              reg8,imm8                SM0-1,8086 
MOV              reg16,imm16              SM0-1,8086 
MOV              reg32,imm32              SM0-1,386 
MOV              reg64,imm64              SM0-1,LONG,PROT,X86_64 
MOV              reg8,imm8|abs            ND,SM0-1,8086 
MOV              reg16,imm16|abs          ND,SM0-1,8086 
MOV              reg32,imm32|abs          ND,SM0-1,386 
MOV              reg64,imm64|abs          ND,SM0-1,LONG,PROT,X86_64 
MOVABS           reg8,imm8                ND,SM0-1,8086 
MOVABS           reg16,imm16              ND,SM0-1,8086 
MOVABS           reg32,imm32              ND,SM0-1,386 
MOVABS           reg64,imm64              ND,SM0-1,LONG,PROT,X86_64 
MOV              rm8,imm8                 SM0-1,8086 
MOV              rm16,imm16               SM0-1,8086 
MOV              rm32,imm32               SM0-1,386 
MOV              rm64,sdword64            SM0-1,LONG,PROT,X86_64 
MOVRS            reg8,mem8                SM0-1 
MOVRS            reg16,mem16              SM0-1 
MOVRS            reg32,mem32              SM0-1 
MOVRS            reg64,mem64              SM0-1,LONG,PROT,X86_64 
MOVRS            reg8,mem8                SM0-1 
MOVRS            reg16,mem16              SM0-1 
MOVRS            reg32,mem32              SM0-1 
MOVRS            reg64,mem64              SM0-1,LONG,PROT,X86_64

F.1.4. Load effective address

LEA              reg16,mem                8086 
LEA              reg32,mem                386 
LEA              reg64,mem                LONG,PROT,X86_64 
LEA              reg16,imm16              ND,8086 
LEA              reg32,imm32              ND,386 
LEA              reg64,sdword64           ND,LONG,PROT,X86_64

F.1.5. The basic 8 arithmetic operations

ADD              rm8,reg8                 SM0-1,LOCK,FL,8086 
ADD              rm16,reg16               SM0-1,LOCK,FL,8086 
ADD              rm32,reg32               SM0-1,LOCK,FL,386 
ADD              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
ADD              reg8,rm8                 SM0-1,FL,8086 
ADD              reg16,rm16               SM0-1,FL,8086 
ADD              reg32,rm32               SM0-1,FL,386 
ADD              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
ADD              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
ADD              rm32,sbytedword32        SM0-1,LOCK,FL,386 
ADD              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
ADD              reg_al,imm8              SM0-1,FL,8086 
ADD              reg_ax,imm16             SM0-1,FL,8086 
ADD              reg_eax,imm32            SM0-1,ZU,FL,386 
ADD              reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
ADD              rm8,imm8                 SM0-1,LOCK,FL,8086 
ADD              rm16,imm16               SM0-1,LOCK,FL,8086 
ADD              rm32,imm32               SM0-1,LOCK,FL,386 
ADD              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
ADD              reg8?,reg8,rm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg16?,reg16,rm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg32?,reg32,rm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg64?,reg64,rm64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg8?,rm8,reg8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg16?,rm16,reg16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg32?,rm32,reg32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg64?,rm64,reg64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg16?,rm16,sbyteword16  SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg32?,rm32,sbytedword32 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg64?,rm64,sbytedword64 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg8?,rm8,imm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg16?,rm16,imm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg32?,rm32,imm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADD              reg64?,rm64,sdword64     SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               rm8,reg8                 SM0-1,LOCK,FL,8086 
OR               rm16,reg16               SM0-1,LOCK,FL,8086 
OR               rm32,reg32               SM0-1,LOCK,FL,386 
OR               rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
OR               reg8,rm8                 SM0-1,FL,8086 
OR               reg16,rm16               SM0-1,FL,8086 
OR               reg32,rm32               SM0-1,FL,386 
OR               reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
OR               rm16,sbyteword16         SM0-1,LOCK,FL,8086 
OR               rm32,sbytedword32        SM0-1,LOCK,FL,386 
OR               rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
OR               reg_al,imm8              SM0-1,FL,8086 
OR               reg_ax,imm16             SM0-1,FL,8086 
OR               reg_eax,imm32            SM0-1,ZU,FL,386 
OR               reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
OR               rm8,imm8                 SM0-1,LOCK,FL,8086 
OR               rm16,imm16               SM0-1,LOCK,FL,8086 
OR               rm32,imm32               SM0-1,LOCK,FL,386 
OR               rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
OR               reg8?,reg8,rm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg16?,reg16,rm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg32?,reg32,rm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg64?,reg64,rm64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg8?,rm8,reg8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg16?,rm16,reg16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg32?,rm32,reg32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg64?,rm64,reg64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg16?,rm16,sbyteword16  SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg32?,rm32,sbytedword32 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg64?,rm64,sbytedword64 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg8?,rm8,imm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg16?,rm16,imm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg32?,rm32,imm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
OR               reg64?,rm64,sdword64     SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              rm8,reg8                 SM0-1,LOCK,FL,8086 
ADC              rm16,reg16               SM0-1,LOCK,FL,8086 
ADC              rm32,reg32               SM0-1,LOCK,FL,386 
ADC              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
ADC              reg8,rm8                 SM0-1,FL,8086 
ADC              reg16,rm16               SM0-1,FL,8086 
ADC              reg32,rm32               SM0-1,FL,386 
ADC              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
ADC              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
ADC              rm32,sbytedword32        SM0-1,LOCK,FL,386 
ADC              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
ADC              reg_al,imm8              SM0-1,FL,8086 
ADC              reg_ax,imm16             SM0-1,FL,8086 
ADC              reg_eax,imm32            SM0-1,ZU,FL,386 
ADC              reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
ADC              rm8,imm8                 SM0-1,LOCK,FL,8086 
ADC              rm16,imm16               SM0-1,LOCK,FL,8086 
ADC              rm32,imm32               SM0-1,LOCK,FL,386 
ADC              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
ADC              reg8?,reg8,rm8           SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg16?,reg16,rm16        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg32?,reg32,rm32        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg64?,reg64,rm64        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg8?,rm8,reg8           SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg16?,rm16,reg16        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg32?,rm32,reg32        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg64?,rm64,reg64        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg16?,rm16,sbyteword16  SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg32?,rm32,sbytedword32 SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg64?,rm64,sbytedword64 SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg8?,rm8,imm8           SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg16?,rm16,imm16        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg32?,rm32,imm32        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
ADC              reg64?,rm64,sdword64     SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              rm8,reg8                 SM0-1,LOCK,FL,8086 
SBB              rm16,reg16               SM0-1,LOCK,FL,8086 
SBB              rm32,reg32               SM0-1,LOCK,FL,386 
SBB              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
SBB              reg8,rm8                 SM0-1,FL,8086 
SBB              reg16,rm16               SM0-1,FL,8086 
SBB              reg32,rm32               SM0-1,FL,386 
SBB              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
SBB              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
SBB              rm32,sbytedword32        SM0-1,LOCK,FL,386 
SBB              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
SBB              reg_al,imm8              SM0-1,FL,8086 
SBB              reg_ax,imm16             SM0-1,FL,8086 
SBB              reg_eax,imm32            SM0-1,ZU,FL,386 
SBB              reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
SBB              rm8,imm8                 SM0-1,LOCK,FL,8086 
SBB              rm16,imm16               SM0-1,LOCK,FL,8086 
SBB              rm32,imm32               SM0-1,LOCK,FL,386 
SBB              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
SBB              reg8?,reg8,rm8           SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg16?,reg16,rm16        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg32?,reg32,rm32        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg64?,reg64,rm64        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg8?,rm8,reg8           SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg16?,rm16,reg16        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg32?,rm32,reg32        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg64?,rm64,reg64        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg16?,rm16,sbyteword16  SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg32?,rm32,sbytedword32 SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg64?,rm64,sbytedword64 SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg8?,rm8,imm8           SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg16?,rm16,imm16        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg32?,rm32,imm32        SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
SBB              reg64?,rm64,sdword64     SM0-2,LONG,FL,EVEX,PROT,APX,X86_64 
AND              rm8,reg8                 SM0-1,LOCK,FL,8086 
AND              rm16,reg16               SM0-1,LOCK,FL,8086 
AND              rm32,reg32               SM0-1,LOCK,FL,386 
AND              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
AND              reg8,rm8                 SM0-1,FL,8086 
AND              reg16,rm16               SM0-1,FL,8086 
AND              reg32,rm32               SM0-1,FL,386 
AND              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
AND              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
AND              rm32,sbytedword32        SM0-1,LOCK,FL,386 
AND              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
AND              reg_al,imm8              SM0-1,FL,8086 
AND              reg_ax,imm16             SM0-1,FL,8086 
AND              reg_eax,imm32            SM0-1,ZU,FL,386 
AND              reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
AND              rm8,imm8                 SM0-1,LOCK,FL,8086 
AND              rm16,imm16               SM0-1,LOCK,FL,8086 
AND              rm32,imm32               SM0-1,LOCK,FL,386 
AND              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
AND              reg8?,reg8,rm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg16?,reg16,rm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg32?,reg32,rm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg64?,reg64,rm64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg8?,rm8,reg8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg16?,rm16,reg16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg32?,rm32,reg32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg64?,rm64,reg64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg16?,rm16,sbyteword16  SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg32?,rm32,sbytedword32 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg64?,rm64,sbytedword64 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg8?,rm8,imm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg16?,rm16,imm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg32?,rm32,imm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
AND              reg64?,rm64,sdword64     SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              rm8,reg8                 SM0-1,LOCK,FL,8086 
SUB              rm16,reg16               SM0-1,LOCK,FL,8086 
SUB              rm32,reg32               SM0-1,LOCK,FL,386 
SUB              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
SUB              reg8,rm8                 SM0-1,FL,8086 
SUB              reg16,rm16               SM0-1,FL,8086 
SUB              reg32,rm32               SM0-1,FL,386 
SUB              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
SUB              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
SUB              rm32,sbytedword32        SM0-1,LOCK,FL,386 
SUB              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
SUB              reg_al,imm8              SM0-1,FL,8086 
SUB              reg_ax,imm16             SM0-1,FL,8086 
SUB              reg_eax,imm32            SM0-1,ZU,FL,386 
SUB              reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
SUB              rm8,imm8                 SM0-1,LOCK,FL,8086 
SUB              rm16,imm16               SM0-1,LOCK,FL,8086 
SUB              rm32,imm32               SM0-1,LOCK,FL,386 
SUB              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
SUB              reg8?,reg8,rm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg16?,reg16,rm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg32?,reg32,rm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg64?,reg64,rm64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg8?,rm8,reg8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg16?,rm16,reg16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg32?,rm32,reg32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg64?,rm64,reg64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg16?,rm16,sbyteword16  SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg32?,rm32,sbytedword32 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg64?,rm64,sbytedword64 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg8?,rm8,imm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg16?,rm16,imm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg32?,rm32,imm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
SUB              reg64?,rm64,sdword64     SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              rm8,reg8                 SM0-1,LOCK,FL,8086 
XOR              rm16,reg16               SM0-1,LOCK,FL,8086 
XOR              rm32,reg32               SM0-1,LOCK,FL,386 
XOR              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
XOR              reg8,rm8                 SM0-1,FL,8086 
XOR              reg16,rm16               SM0-1,FL,8086 
XOR              reg32,rm32               SM0-1,FL,386 
XOR              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
XOR              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
XOR              rm32,sbytedword32        SM0-1,LOCK,FL,386 
XOR              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
XOR              reg_al,imm8              SM0-1,FL,8086 
XOR              reg_ax,imm16             SM0-1,FL,8086 
XOR              reg_eax,imm32            SM0-1,ZU,FL,386 
XOR              reg_rax,sdword64         SM0-1,ZU,LONG,FL,PROT,X86_64 
XOR              rm8,imm8                 SM0-1,LOCK,FL,8086 
XOR              rm16,imm16               SM0-1,LOCK,FL,8086 
XOR              rm32,imm32               SM0-1,LOCK,FL,386 
XOR              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64 
XOR              reg8?,reg8,rm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg16?,reg16,rm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg32?,reg32,rm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg64?,reg64,rm64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg8?,rm8,reg8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg16?,rm16,reg16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg32?,rm32,reg32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg64?,rm64,reg64        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg16?,rm16,sbyteword16  SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg32?,rm32,sbytedword32 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg64?,rm64,sbytedword64 SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg8?,rm8,imm8           SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg16?,rm16,imm16        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg32?,rm32,imm32        SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
XOR              reg64?,rm64,sdword64     SM0-2,NF,LONG,FL,EVEX,PROT,APX,X86_64 
CMP              rm8,reg8                 SM0-1,LOCK,FL,8086 
CMP              rm16,reg16               SM0-1,LOCK,FL,8086 
CMP              rm32,reg32               SM0-1,LOCK,FL,386 
CMP              rm64,reg64               SM0-1,LOCK,LONG,FL,PROT,X86_64 
CMP              reg8,rm8                 SM0-1,FL,8086 
CMP              reg16,rm16               SM0-1,FL,8086 
CMP              reg32,rm32               SM0-1,FL,386 
CMP              reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
CMP              rm16,sbyteword16         SM0-1,LOCK,FL,8086 
CMP              rm32,sbytedword32        SM0-1,LOCK,FL,386 
CMP              rm64,sbytedword64        SM0-1,LOCK,LONG,FL,PROT,X86_64 
CMP              reg_al,imm8              SM0-1,FL,8086 
CMP              reg_ax,imm16             SM0-1,FL,8086 
CMP              reg_eax,imm32            SM0-1,FL,386 
CMP              reg_rax,sdword64         SM0-1,LONG,FL,PROT,X86_64 
CMP              rm8,imm8                 SM0-1,LOCK,FL,8086 
CMP              rm16,imm16               SM0-1,LOCK,FL,8086 
CMP              rm32,imm32               SM0-1,LOCK,FL,386 
CMP              rm64,sdword64            SM0-1,LOCK,LONG,FL,PROT,X86_64

F.1.6. Bitwise testing

TEST             rm8,reg8                 SM0-1,FL,8086 
TEST             rm16,reg16               SM0-1,FL,8086 
TEST             rm32,reg32               SM0-1,FL,386 
TEST             rm64,reg64               SM0-1,LONG,FL,PROT,X86_64 
TEST             reg8,mem8                ND,SM0-1,FL,8086 
TEST             reg16,mem16              ND,SM0-1,FL,8086 
TEST             reg32,mem32              ND,SM0-1,FL,386 
TEST             reg64,mem64              ND,SM0-1,LONG,FL,PROT,X86_64 
TEST             reg_al,imm8              SM0-1,NOAPX,FL,8086 
TEST             reg_ax,imm16             SM0-1,NOAPX,FL,8086 
TEST             reg_eax,imm32            SM0-1,NOAPX,FL,386 
TEST             reg_rax,sdword64         SM0-1,NOAPX,LONG,FL,PROT,X86_64 
TEST             rm8,imm8                 SM0-1,FL,8086 
TEST             rm16,imm16               SM0-1,FL,8086 
TEST             rm32,imm32               SM0-1,FL,386 
TEST             rm64,sdword64            SM0-1,LONG,FL,PROT,X86_64

F.1.7. The basic shift and rotate operations

ROL              rm8,unity                FL,8086 
ROL              rm16,unity               FL,8086 
ROL              rm32,unity               FL,386 
ROL              rm64,unity               LONG,FL,PROT,X86_64 
ROL              rm8,reg_cl               FL,8086 
ROL              rm16,reg_cl              FL,8086 
ROL              rm32,reg_cl              FL,386 
ROL              rm64,reg_cl              LONG,FL,PROT,X86_64 
ROL              rm8,reg_cx               ND,FL,8086 
ROL              rm16,reg_cx              ND,FL,8086 
ROL              rm32,reg_cx              ND,FL,386 
ROL              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
ROL              rm8,reg_ecx              ND,FL,8086 
ROL              rm16,reg_ecx             ND,FL,8086 
ROL              rm32,reg_ecx             ND,FL,386 
ROL              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
ROL              rm8,reg_rcx              ND,FL,8086 
ROL              rm16,reg_rcx             ND,FL,8086 
ROL              rm32,reg_rcx             ND,FL,386 
ROL              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
ROL              rm8,imm8                 FL,186 
ROL              rm16,imm8                FL,186 
ROL              rm32,imm8                FL,386 
ROL              rm64,imm8                LONG,FL,PROT,X86_64 
ROR              rm8,unity                FL,8086 
ROR              rm16,unity               FL,8086 
ROR              rm32,unity               FL,386 
ROR              rm64,unity               LONG,FL,PROT,X86_64 
ROR              rm8,reg_cl               FL,8086 
ROR              rm16,reg_cl              FL,8086 
ROR              rm32,reg_cl              FL,386 
ROR              rm64,reg_cl              LONG,FL,PROT,X86_64 
ROR              rm8,reg_cx               ND,FL,8086 
ROR              rm16,reg_cx              ND,FL,8086 
ROR              rm32,reg_cx              ND,FL,386 
ROR              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
ROR              rm8,reg_ecx              ND,FL,8086 
ROR              rm16,reg_ecx             ND,FL,8086 
ROR              rm32,reg_ecx             ND,FL,386 
ROR              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
ROR              rm8,reg_rcx              ND,FL,8086 
ROR              rm16,reg_rcx             ND,FL,8086 
ROR              rm32,reg_rcx             ND,FL,386 
ROR              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
ROR              rm8,imm8                 FL,186 
ROR              rm16,imm8                FL,186 
ROR              rm32,imm8                FL,386 
ROR              rm64,imm8                LONG,FL,PROT,X86_64 
RCL              rm8,unity                FL,8086 
RCL              rm16,unity               FL,8086 
RCL              rm32,unity               FL,386 
RCL              rm64,unity               LONG,FL,PROT,X86_64 
RCL              rm8,reg_cl               FL,8086 
RCL              rm16,reg_cl              FL,8086 
RCL              rm32,reg_cl              FL,386 
RCL              rm64,reg_cl              LONG,FL,PROT,X86_64 
RCL              rm8,reg_cx               ND,FL,8086 
RCL              rm16,reg_cx              ND,FL,8086 
RCL              rm32,reg_cx              ND,FL,386 
RCL              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
RCL              rm8,reg_ecx              ND,FL,8086 
RCL              rm16,reg_ecx             ND,FL,8086 
RCL              rm32,reg_ecx             ND,FL,386 
RCL              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
RCL              rm8,reg_rcx              ND,FL,8086 
RCL              rm16,reg_rcx             ND,FL,8086 
RCL              rm32,reg_rcx             ND,FL,386 
RCL              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
RCL              rm8,imm8                 FL,186 
RCL              rm16,imm8                FL,186 
RCL              rm32,imm8                FL,386 
RCL              rm64,imm8                LONG,FL,PROT,X86_64 
RCR              rm8,unity                FL,8086 
RCR              rm16,unity               FL,8086 
RCR              rm32,unity               FL,386 
RCR              rm64,unity               LONG,FL,PROT,X86_64 
RCR              rm8,reg_cl               FL,8086 
RCR              rm16,reg_cl              FL,8086 
RCR              rm32,reg_cl              FL,386 
RCR              rm64,reg_cl              LONG,FL,PROT,X86_64 
RCR              rm8,reg_cx               ND,FL,8086 
RCR              rm16,reg_cx              ND,FL,8086 
RCR              rm32,reg_cx              ND,FL,386 
RCR              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
RCR              rm8,reg_ecx              ND,FL,8086 
RCR              rm16,reg_ecx             ND,FL,8086 
RCR              rm32,reg_ecx             ND,FL,386 
RCR              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
RCR              rm8,reg_rcx              ND,FL,8086 
RCR              rm16,reg_rcx             ND,FL,8086 
RCR              rm32,reg_rcx             ND,FL,386 
RCR              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
RCR              rm8,imm8                 FL,186 
RCR              rm16,imm8                FL,186 
RCR              rm32,imm8                FL,386 
RCR              rm64,imm8                LONG,FL,PROT,X86_64 
SHL              rm8,unity                FL,8086 
SHL              rm16,unity               FL,8086 
SHL              rm32,unity               FL,386 
SHL              rm64,unity               LONG,FL,PROT,X86_64 
SHL              rm8,reg_cl               FL,8086 
SHL              rm16,reg_cl              FL,8086 
SHL              rm32,reg_cl              FL,386 
SHL              rm64,reg_cl              LONG,FL,PROT,X86_64 
SHL              rm8,reg_cx               ND,FL,8086 
SHL              rm16,reg_cx              ND,FL,8086 
SHL              rm32,reg_cx              ND,FL,386 
SHL              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
SHL              rm8,reg_ecx              ND,FL,8086 
SHL              rm16,reg_ecx             ND,FL,8086 
SHL              rm32,reg_ecx             ND,FL,386 
SHL              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
SHL              rm8,reg_rcx              ND,FL,8086 
SHL              rm16,reg_rcx             ND,FL,8086 
SHL              rm32,reg_rcx             ND,FL,386 
SHL              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
SHL              rm8,imm8                 FL,186 
SHL              rm16,imm8                FL,186 
SHL              rm32,imm8                FL,386 
SHL              rm64,imm8                LONG,FL,PROT,X86_64 
SAL              rm8,unity                FL,8086 
SAL              rm16,unity               FL,8086 
SAL              rm32,unity               FL,386 
SAL              rm64,unity               LONG,FL,PROT,X86_64 
SAL              rm8,reg_cl               FL,8086 
SAL              rm16,reg_cl              FL,8086 
SAL              rm32,reg_cl              FL,386 
SAL              rm64,reg_cl              LONG,FL,PROT,X86_64 
SAL              rm8,reg_cx               ND,FL,8086 
SAL              rm16,reg_cx              ND,FL,8086 
SAL              rm32,reg_cx              ND,FL,386 
SAL              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
SAL              rm8,reg_ecx              ND,FL,8086 
SAL              rm16,reg_ecx             ND,FL,8086 
SAL              rm32,reg_ecx             ND,FL,386 
SAL              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
SAL              rm8,reg_rcx              ND,FL,8086 
SAL              rm16,reg_rcx             ND,FL,8086 
SAL              rm32,reg_rcx             ND,FL,386 
SAL              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
SAL              rm8,imm8                 FL,186 
SAL              rm16,imm8                FL,186 
SAL              rm32,imm8                FL,386 
SAL              rm64,imm8                LONG,FL,PROT,X86_64 
SHR              rm8,unity                FL,8086 
SHR              rm16,unity               FL,8086 
SHR              rm32,unity               FL,386 
SHR              rm64,unity               LONG,FL,PROT,X86_64 
SHR              rm8,reg_cl               FL,8086 
SHR              rm16,reg_cl              FL,8086 
SHR              rm32,reg_cl              FL,386 
SHR              rm64,reg_cl              LONG,FL,PROT,X86_64 
SHR              rm8,reg_cx               ND,FL,8086 
SHR              rm16,reg_cx              ND,FL,8086 
SHR              rm32,reg_cx              ND,FL,386 
SHR              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
SHR              rm8,reg_ecx              ND,FL,8086 
SHR              rm16,reg_ecx             ND,FL,8086 
SHR              rm32,reg_ecx             ND,FL,386 
SHR              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
SHR              rm8,reg_rcx              ND,FL,8086 
SHR              rm16,reg_rcx             ND,FL,8086 
SHR              rm32,reg_rcx             ND,FL,386 
SHR              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
SHR              rm8,imm8                 FL,186 
SHR              rm16,imm8                FL,186 
SHR              rm32,imm8                FL,386 
SHR              rm64,imm8                LONG,FL,PROT,X86_64 
SAR              rm8,unity                FL,8086 
SAR              rm16,unity               FL,8086 
SAR              rm32,unity               FL,386 
SAR              rm64,unity               LONG,FL,PROT,X86_64 
SAR              rm8,reg_cl               FL,8086 
SAR              rm16,reg_cl              FL,8086 
SAR              rm32,reg_cl              FL,386 
SAR              rm64,reg_cl              LONG,FL,PROT,X86_64 
SAR              rm8,reg_cx               ND,FL,8086 
SAR              rm16,reg_cx              ND,FL,8086 
SAR              rm32,reg_cx              ND,FL,386 
SAR              rm64,reg_cx              ND,LONG,FL,PROT,X86_64 
SAR              rm8,reg_ecx              ND,FL,8086 
SAR              rm16,reg_ecx             ND,FL,8086 
SAR              rm32,reg_ecx             ND,FL,386 
SAR              rm64,reg_ecx             ND,LONG,FL,PROT,X86_64 
SAR              rm8,reg_rcx              ND,FL,8086 
SAR              rm16,reg_rcx             ND,FL,8086 
SAR              rm32,reg_rcx             ND,FL,386 
SAR              rm64,reg_rcx             ND,LONG,FL,PROT,X86_64 
SAR              rm8,imm8                 FL,186 
SAR              rm16,imm8                FL,186 
SAR              rm32,imm8                FL,386 
SAR              rm64,imm8                LONG,FL,PROT,X86_64 
RORX             reg32,rm32,imm8          SM0-1,BMI2 
ROLX             reg32,rm32,imm_known8    SM0-1,BMI2 
SHLX             reg32,rm32*,reg8         ND,SM0-1,BMI2 
SALX             reg32,rm32*,reg8         ND,SM0-1,BMI2 
SARX             reg32,rm32*,reg8         ND,SM0-1,BMI2 
SHRX             reg32,rm32*,reg8         ND,SM0-1,BMI2 
SHLX             reg32,rm32*,reg16        ND,SM0-1,BMI2 
SALX             reg32,rm32*,reg16        ND,SM0-1,BMI2 
SARX             reg32,rm32*,reg16        ND,SM0-1,BMI2 
SHRX             reg32,rm32*,reg16        ND,SM0-1,BMI2 
SHLX             reg32,rm32*,reg32        SM0-1,BMI2 
SALX             reg32,rm32*,reg32        ND,SM0-1,BMI2 
SARX             reg32,rm32*,reg32        SM0-1,BMI2 
SHRX             reg32,rm32*,reg32        SM0-1,BMI2 
SHLX             reg32,rm32*,reg64        ND,SM0-1,BMI2 
SALX             reg32,rm32*,reg64        ND,SM0-1,BMI2 
SARX             reg32,rm32*,reg64        ND,SM0-1,BMI2 
SHRX             reg32,rm32*,reg64        ND,SM0-1,BMI2 
RORX             reg64,rm64,imm8          SM0-1,BMI2 
ROLX             reg64,rm64,imm_known8    SM0-1,BMI2 
SHLX             reg64,rm64*,reg8         ND,SM0-1,BMI2 
SALX             reg64,rm64*,reg8         ND,SM0-1,BMI2 
SARX             reg64,rm64*,reg8         ND,SM0-1,BMI2 
SHRX             reg64,rm64*,reg8         ND,SM0-1,BMI2 
SHLX             reg64,rm64*,reg16        ND,SM0-1,BMI2 
SALX             reg64,rm64*,reg16        ND,SM0-1,BMI2 
SARX             reg64,rm64*,reg16        ND,SM0-1,BMI2 
SHRX             reg64,rm64*,reg16        ND,SM0-1,BMI2 
SHLX             reg64,rm64*,reg32        ND,SM0-1,BMI2 
SALX             reg64,rm64*,reg32        ND,SM0-1,BMI2 
SARX             reg64,rm64*,reg32        ND,SM0-1,BMI2 
SHRX             reg64,rm64*,reg32        ND,SM0-1,BMI2 
SHLX             reg64,rm64*,reg64        SM0-1,BMI2 
SALX             reg64,rm64*,reg64        ND,SM0-1,BMI2 
SARX             reg64,rm64*,reg64        SM0-1,BMI2 
SHRX             reg64,rm64*,reg64        SM0-1,BMI2 
ROR              reg32,rm32,imm8          ND,SM0-1,OPT,NF,NF_R,BMI2 
ROL              reg32,rm32,imm_known8    ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
ROR              reg64,rm64,imm8          ND,SM0-1,OPT,NF,NF_R,BMI2 
ROL              reg64,rm64,imm_known8    ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHL              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAL              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
SAR              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2 
SHR              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,BMI2

F.1.8. APX EVEX versions

ROL              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROL              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
ROR              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCL              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RCR              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHL              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAL              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SHR              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg8?,rm8,unity          SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg16?,rm16,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg32?,rm32,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg64?,rm64,unity        SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg8?,rm8,reg_cl         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg16?,rm16,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg32?,rm32,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg64?,rm64,reg_cl       SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg8?,rm8,reg_cx         ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg16?,rm16,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg32?,rm32,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg64?,rm64,reg_cx       ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg8?,rm8,reg_ecx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg16?,rm16,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg32?,rm32,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg64?,rm64,reg_ecx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg8?,rm8,reg_rcx        ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg16?,rm16,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg32?,rm32,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg64?,rm64,reg_rcx      ND,SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg8?,rm8,imm8           SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg16?,rm16,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg32?,rm32,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
SAR              reg64?,rm64,imm8         SM0-1,NF,LONG,FL,PROT,APX,X86_64 
RORX             reg32,rm32,imm8          SM0-1,LONG,PROT,BMI2,APX,X86_64 
ROLX             reg32,rm32,imm_known8    SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg32,rm32*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg32,rm32*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg32,rm32*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg32,rm32*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg32,rm32*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg32,rm32*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg32,rm32*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg32,rm32*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg32,rm32*,reg32        SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg32,rm32*,reg32        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg32,rm32*,reg32        SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg32,rm32*,reg32        SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg32,rm32*,reg64        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg32,rm32*,reg64        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg32,rm32*,reg64        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg32,rm32*,reg64        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
RORX             reg64,rm64,imm8          SM0-1,LONG,PROT,BMI2,APX,X86_64 
ROLX             reg64,rm64,imm_known8    SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg64,rm64*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg64,rm64*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg64,rm64*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg64,rm64*,reg8         ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg64,rm64*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg64,rm64*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg64,rm64*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg64,rm64*,reg16        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg64,rm64*,reg32        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg64,rm64*,reg32        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg64,rm64*,reg32        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg64,rm64*,reg32        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHLX             reg64,rm64*,reg64        SM0-1,LONG,PROT,BMI2,APX,X86_64 
SALX             reg64,rm64*,reg64        ND,SM0-1,LONG,PROT,BMI2,APX,X86_64 
SARX             reg64,rm64*,reg64        SM0-1,LONG,PROT,BMI2,APX,X86_64 
SHRX             reg64,rm64*,reg64        SM0-1,LONG,PROT,BMI2,APX,X86_64 
ROR              reg32,rm32,imm8          ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
ROL              reg32,rm32,imm_known8    ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg32,rm32*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg32,rm32*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg32,rm32*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg32,rm32*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
ROR              reg64,rm64,imm8          ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
ROL              reg64,rm64,imm_known8    ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg64,rm64*,reg8         ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg64,rm64*,reg16        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg64,rm64*,reg32        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHL              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAL              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SAR              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64 
SHR              reg64,rm64*,reg64        ND,SM0-1,OPT,NF,NF_R,LONG,PROT,BMI2,APX,X86_64

F.1.9. Other basic integer arithmetic

INC              reg16                    NOREX,NOAPX,NOLONG,FL,8086 
INC              reg32                    NOREX,NOAPX,NOLONG,FL,386 
INC              rm8                      LOCK,FL,8086 
INC              rm16                     LOCK,FL,8086 
INC              rm32                     LOCK,FL,386 
INC              rm64                     LOCK,LONG,FL,PROT,X86_64 
INC              reg8?,rm8                NF,LOCK,LONG,PROT,APX,X86_64 
INC              reg16?,rm16              NF,LOCK,LONG,PROT,APX,X86_64 
INC              reg32?,rm32              NF,LOCK,LONG,PROT,APX,X86_64 
INC              reg64?,rm64              NF,LOCK,LONG,PROT,APX,X86_64 
DEC              reg16                    NOREX,NOAPX,NOLONG,FL,8086 
DEC              reg32                    NOREX,NOAPX,NOLONG,FL,386 
DEC              rm8                      LOCK,FL,8086 
DEC              rm16                     LOCK,FL,8086 
DEC              rm32                     LOCK,FL,386 
DEC              rm64                     LOCK,LONG,FL,PROT,X86_64 
DEC              reg8?,rm8                NF,LOCK,LONG,PROT,APX,X86_64 
DEC              reg16?,rm16              NF,LOCK,LONG,PROT,APX,X86_64 
DEC              reg32?,rm32              NF,LOCK,LONG,PROT,APX,X86_64 
DEC              reg64?,rm64              NF,LOCK,LONG,PROT,APX,X86_64 
IMUL             rm8                      FL,8086 
IMUL             rm16                     FL,8086 
IMUL             rm32                     FL,386 
IMUL             rm64                     LONG,FL,PROT,X86_64 
IMUL             rm8                      SM0,NF,LONG,PROT,APX,X86_64 
IMUL             rm16                     SM0,NF,LONG,PROT,APX,X86_64 
IMUL             rm32                     SM0,NF,LONG,PROT,APX,X86_64 
IMUL             rm64                     SM0,NF,LONG,PROT,APX,X86_64 
IMUL             reg16,rm16               SM0-1,FL,386 
IMUL             reg32,rm32               SM0-1,FL,386 
IMUL             reg64,rm64               SM0-1,LONG,FL,PROT,X86_64 
IMUL             reg16,rm16*,sbyteword16  SM0-2,FL,186 
IMUL             reg32,rm32*,sbytedword32 SM0-2,FL,386 
IMUL             reg64,rm64*,sbytedword64 SM0-2,LONG,FL,PROT,X86_64 
IMUL             reg16,rm16*,imm16        SM0-2,FL,186 
IMUL             reg32,rm32*,imm32        SM0-2,FL,386 
IMUL             reg64,rm64*,sdword64     SM0-2,LONG,FL,PROT,X86_64 
IMUL             reg16?,reg16,rm16        SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg32?,reg32,rm32        SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg64?,reg64,rm64        SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg16,rm16,sbyteword16   SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg32,rm32,sbytedword32  SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg64,rm64,sbytedword64  SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg16,rm16,imm16         SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg32,rm32,imm32         SM0-2,NF,LONG,PROT,APX,X86_64 
IMUL             reg64,rm64,sdword64      SM0-2,NF,LONG,PROT,APX,X86_64 
MUL              rm8                      FL,8086 
MUL              rm16                     FL,8086 
MUL              rm32                     FL,386 
MUL              rm64                     LONG,FL,PROT,X86_64 
MULX             reg32,reg32*,rm32        BMI2 
MULX             reg64,reg64*,rm64        LONG,PROT,BMI2,X86_64 
MUL              reg32,reg32*,rm32        ND,OPT,NF,NF_R,BMI2 
MUL              reg64,reg64*,rm64        ND,OPT,NF,NF_R,LONG,PROT,BMI2,X86_64 
MUL              rm8                      SM0,NF,LONG,PROT,APX,X86_64 
MUL              rm16                     SM0,NF,LONG,PROT,APX,X86_64 
MUL              rm32                     SM0,NF,LONG,PROT,APX,X86_64