| Opcode | Instruction | Op/En | 64-Bit Mode | Compat/Leg Mode | Description | | ---------------- | --------------- | ----- | ----------- | --------------- | -------------------------------- | | D0 /4 | SHL r/m8, 1 | M1 | Valid | Valid | Multiply r/m8 by 2, once. | | REX + D0 /4 | SHL r/m82, 1 | M1 | Valid | N.E. | Multiply r/m8 by 2, once. | | D2 /4 | SHL r/m8, CL | MC | Valid | Valid | Multiply r/m8 by 2, CL times. | | REX + D2 /4 | SHL r/m82, CL | MC | Valid | N.E. | Multiply r/m8 by 2, CL times. | | C0 /4 ib | SHL r/m8, imm8 | MI | Valid | Valid | Multiply r/m8 by 2, imm8 times. | | REX + C0 /4 ib | SHL r/m82, imm8 | MI | Valid | N.E. | Multiply r/m8 by 2, imm8 times. | | D1 /4 | SHL r/m16,1 | M1 | Valid | Valid | Multiply r/m16 by 2, once. | | D3 /4 | SHL r/m16, CL | MC | Valid | Valid | Multiply r/m16 by 2, CL times. | | C1 /4 ib | SHL r/m16, imm8 | MI | Valid | Valid | Multiply r/m16 by 2, imm8 times. | | D1 /4 | SHL r/m32,1 | M1 | Valid | Valid | Multiply r/m32 by 2, once. | | REX.W + D1 /4 | SHL r/m64,1 | M1 | Valid | N.E. | Multiply r/m64 by 2, once. | | D3 /4 | SHL r/m32, CL | MC | Valid | Valid | Multiply r/m32 by 2, CL times. | | REX.W + D3 /4 | SHL r/m64, CL | MC | Valid | N.E. | Multiply r/m64 by 2, CL times. | | C1 /4 ib | SHL r/m32, imm8 | MI | Valid | Valid | Multiply r/m32 by 2, imm8 times. | | REX.W + C1 /4 ib | SHL r/m64, imm8 | MI | Valid | N.E. | Multiply r/m64 by 2, imm8 times. |