llvm/llvm/test/MC/X86/BMI2-64.s

// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s

// CHECK: bzhil %r13d, 485498096, %r13d 
// CHECK: encoding: [0xc4,0x62,0x10,0xf5,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
bzhil %r13d, 485498096, %r13d 

// CHECK: bzhil %r13d, 64(%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x10,0xf5,0x6a,0x40]      
bzhil %r13d, 64(%rdx), %r13d 

// CHECK: bzhil %r13d, 64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x10,0xf5,0x6c,0x82,0x40]      
bzhil %r13d, 64(%rdx,%rax,4), %r13d 

// CHECK: bzhil %r13d, -64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x10,0xf5,0x6c,0x82,0xc0]      
bzhil %r13d, -64(%rdx,%rax,4), %r13d 

// CHECK: bzhil %r13d, 64(%rdx,%rax), %r13d 
// CHECK: encoding: [0xc4,0x62,0x10,0xf5,0x6c,0x02,0x40]      
bzhil %r13d, 64(%rdx,%rax), %r13d 

// CHECK: bzhil %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x10,0xf5,0xed]      
bzhil %r13d, %r13d, %r13d 

// CHECK: bzhil %r13d, (%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x10,0xf5,0x2a]      
bzhil %r13d, (%rdx), %r13d 

// CHECK: bzhiq %r15, 485498096, %r15 
// CHECK: encoding: [0xc4,0x62,0x80,0xf5,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
bzhiq %r15, 485498096, %r15 

// CHECK: bzhiq %r15, 64(%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x80,0xf5,0x7a,0x40]      
bzhiq %r15, 64(%rdx), %r15 

// CHECK: bzhiq %r15, 64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x80,0xf5,0x7c,0x82,0x40]      
bzhiq %r15, 64(%rdx,%rax,4), %r15 

// CHECK: bzhiq %r15, -64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x80,0xf5,0x7c,0x82,0xc0]      
bzhiq %r15, -64(%rdx,%rax,4), %r15 

// CHECK: bzhiq %r15, 64(%rdx,%rax), %r15 
// CHECK: encoding: [0xc4,0x62,0x80,0xf5,0x7c,0x02,0x40]      
bzhiq %r15, 64(%rdx,%rax), %r15 

// CHECK: bzhiq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x80,0xf5,0xff]      
bzhiq %r15, %r15, %r15 

// CHECK: bzhiq %r15, (%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x80,0xf5,0x3a]      
bzhiq %r15, (%rdx), %r15 

// CHECK: mulxl 485498096, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf6,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
mulxl 485498096, %r13d, %r13d 

// CHECK: mulxl 64(%rdx), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf6,0x6a,0x40]      
mulxl 64(%rdx), %r13d, %r13d 

// CHECK: mulxl 64(%rdx,%rax,4), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf6,0x6c,0x82,0x40]      
mulxl 64(%rdx,%rax,4), %r13d, %r13d 

// CHECK: mulxl -64(%rdx,%rax,4), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf6,0x6c,0x82,0xc0]      
mulxl -64(%rdx,%rax,4), %r13d, %r13d 

// CHECK: mulxl 64(%rdx,%rax), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf6,0x6c,0x02,0x40]      
mulxl 64(%rdx,%rax), %r13d, %r13d 

// CHECK: mulxl %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x13,0xf6,0xed]      
mulxl %r13d, %r13d, %r13d 

// CHECK: mulxl (%rdx), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf6,0x2a]      
mulxl (%rdx), %r13d, %r13d 

// CHECK: mulxq 485498096, %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf6,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
mulxq 485498096, %r15, %r15 

// CHECK: mulxq 64(%rdx), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf6,0x7a,0x40]      
mulxq 64(%rdx), %r15, %r15 

// CHECK: mulxq 64(%rdx,%rax,4), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf6,0x7c,0x82,0x40]      
mulxq 64(%rdx,%rax,4), %r15, %r15 

// CHECK: mulxq -64(%rdx,%rax,4), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf6,0x7c,0x82,0xc0]      
mulxq -64(%rdx,%rax,4), %r15, %r15 

// CHECK: mulxq 64(%rdx,%rax), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf6,0x7c,0x02,0x40]      
mulxq 64(%rdx,%rax), %r15, %r15 

// CHECK: mulxq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x83,0xf6,0xff]      
mulxq %r15, %r15, %r15 

// CHECK: mulxq (%rdx), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf6,0x3a]      
mulxq (%rdx), %r15, %r15 

// CHECK: pdepl 485498096, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf5,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
pdepl 485498096, %r13d, %r13d 

// CHECK: pdepl 64(%rdx), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf5,0x6a,0x40]      
pdepl 64(%rdx), %r13d, %r13d 

// CHECK: pdepl 64(%rdx,%rax,4), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf5,0x6c,0x82,0x40]      
pdepl 64(%rdx,%rax,4), %r13d, %r13d 

// CHECK: pdepl -64(%rdx,%rax,4), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf5,0x6c,0x82,0xc0]      
pdepl -64(%rdx,%rax,4), %r13d, %r13d 

// CHECK: pdepl 64(%rdx,%rax), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf5,0x6c,0x02,0x40]      
pdepl 64(%rdx,%rax), %r13d, %r13d 

// CHECK: pdepl %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x13,0xf5,0xed]      
pdepl %r13d, %r13d, %r13d 

// CHECK: pdepl (%rdx), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf5,0x2a]      
pdepl (%rdx), %r13d, %r13d 

// CHECK: pdepq 485498096, %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf5,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
pdepq 485498096, %r15, %r15 

// CHECK: pdepq 64(%rdx), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf5,0x7a,0x40]      
pdepq 64(%rdx), %r15, %r15 

// CHECK: pdepq 64(%rdx,%rax,4), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf5,0x7c,0x82,0x40]      
pdepq 64(%rdx,%rax,4), %r15, %r15 

// CHECK: pdepq -64(%rdx,%rax,4), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf5,0x7c,0x82,0xc0]      
pdepq -64(%rdx,%rax,4), %r15, %r15 

// CHECK: pdepq 64(%rdx,%rax), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf5,0x7c,0x02,0x40]      
pdepq 64(%rdx,%rax), %r15, %r15 

// CHECK: pdepq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x83,0xf5,0xff]      
pdepq %r15, %r15, %r15 

// CHECK: pdepq (%rdx), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf5,0x3a]      
pdepq (%rdx), %r15, %r15 

// CHECK: pextl 485498096, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf5,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
pextl 485498096, %r13d, %r13d 

// CHECK: pextl 64(%rdx), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf5,0x6a,0x40]      
pextl 64(%rdx), %r13d, %r13d 

// CHECK: pextl 64(%rdx,%rax,4), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf5,0x6c,0x82,0x40]      
pextl 64(%rdx,%rax,4), %r13d, %r13d 

// CHECK: pextl -64(%rdx,%rax,4), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf5,0x6c,0x82,0xc0]      
pextl -64(%rdx,%rax,4), %r13d, %r13d 

// CHECK: pextl 64(%rdx,%rax), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf5,0x6c,0x02,0x40]      
pextl 64(%rdx,%rax), %r13d, %r13d 

// CHECK: pextl %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x12,0xf5,0xed]      
pextl %r13d, %r13d, %r13d 

// CHECK: pextl (%rdx), %r13d, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf5,0x2a]      
pextl (%rdx), %r13d, %r13d 

// CHECK: pextq 485498096, %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf5,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
pextq 485498096, %r15, %r15 

// CHECK: pextq 64(%rdx), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf5,0x7a,0x40]      
pextq 64(%rdx), %r15, %r15 

// CHECK: pextq 64(%rdx,%rax,4), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf5,0x7c,0x82,0x40]      
pextq 64(%rdx,%rax,4), %r15, %r15 

// CHECK: pextq -64(%rdx,%rax,4), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf5,0x7c,0x82,0xc0]      
pextq -64(%rdx,%rax,4), %r15, %r15 

// CHECK: pextq 64(%rdx,%rax), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf5,0x7c,0x02,0x40]      
pextq 64(%rdx,%rax), %r15, %r15 

// CHECK: pextq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x82,0xf5,0xff]      
pextq %r15, %r15, %r15 

// CHECK: pextq (%rdx), %r15, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf5,0x3a]      
pextq (%rdx), %r15, %r15 

// CHECK: rorxl $0, 485498096, %r13d 
// CHECK: encoding: [0xc4,0x63,0x7b,0xf0,0x2c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]      
rorxl $0, 485498096, %r13d 

// CHECK: rorxl $0, 64(%rdx), %r13d 
// CHECK: encoding: [0xc4,0x63,0x7b,0xf0,0x6a,0x40,0x00]      
rorxl $0, 64(%rdx), %r13d 

// CHECK: rorxl $0, 64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x63,0x7b,0xf0,0x6c,0x82,0x40,0x00]      
rorxl $0, 64(%rdx,%rax,4), %r13d 

// CHECK: rorxl $0, -64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x63,0x7b,0xf0,0x6c,0x82,0xc0,0x00]      
rorxl $0, -64(%rdx,%rax,4), %r13d 

// CHECK: rorxl $0, 64(%rdx,%rax), %r13d 
// CHECK: encoding: [0xc4,0x63,0x7b,0xf0,0x6c,0x02,0x40,0x00]      
rorxl $0, 64(%rdx,%rax), %r13d 

// CHECK: rorxl $0, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x43,0x7b,0xf0,0xed,0x00]      
rorxl $0, %r13d, %r13d 

// CHECK: rorxl $0, (%rdx), %r13d 
// CHECK: encoding: [0xc4,0x63,0x7b,0xf0,0x2a,0x00]      
rorxl $0, (%rdx), %r13d 

// CHECK: rorxq $0, 485498096, %r15 
// CHECK: encoding: [0xc4,0x63,0xfb,0xf0,0x3c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]      
rorxq $0, 485498096, %r15 

// CHECK: rorxq $0, 64(%rdx), %r15 
// CHECK: encoding: [0xc4,0x63,0xfb,0xf0,0x7a,0x40,0x00]      
rorxq $0, 64(%rdx), %r15 

// CHECK: rorxq $0, 64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x63,0xfb,0xf0,0x7c,0x82,0x40,0x00]      
rorxq $0, 64(%rdx,%rax,4), %r15 

// CHECK: rorxq $0, -64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x63,0xfb,0xf0,0x7c,0x82,0xc0,0x00]      
rorxq $0, -64(%rdx,%rax,4), %r15 

// CHECK: rorxq $0, 64(%rdx,%rax), %r15 
// CHECK: encoding: [0xc4,0x63,0xfb,0xf0,0x7c,0x02,0x40,0x00]      
rorxq $0, 64(%rdx,%rax), %r15 

// CHECK: rorxq $0, %r15, %r15 
// CHECK: encoding: [0xc4,0x43,0xfb,0xf0,0xff,0x00]      
rorxq $0, %r15, %r15 

// CHECK: rorxq $0, (%rdx), %r15 
// CHECK: encoding: [0xc4,0x63,0xfb,0xf0,0x3a,0x00]      
rorxq $0, (%rdx), %r15 

// CHECK: sarxl %r13d, 485498096, %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf7,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
sarxl %r13d, 485498096, %r13d 

// CHECK: sarxl %r13d, 64(%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf7,0x6a,0x40]      
sarxl %r13d, 64(%rdx), %r13d 

// CHECK: sarxl %r13d, 64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf7,0x6c,0x82,0x40]      
sarxl %r13d, 64(%rdx,%rax,4), %r13d 

// CHECK: sarxl %r13d, -64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf7,0x6c,0x82,0xc0]      
sarxl %r13d, -64(%rdx,%rax,4), %r13d 

// CHECK: sarxl %r13d, 64(%rdx,%rax), %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf7,0x6c,0x02,0x40]      
sarxl %r13d, 64(%rdx,%rax), %r13d 

// CHECK: sarxl %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x12,0xf7,0xed]      
sarxl %r13d, %r13d, %r13d 

// CHECK: sarxl %r13d, (%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x12,0xf7,0x2a]      
sarxl %r13d, (%rdx), %r13d 

// CHECK: sarxq %r15, 485498096, %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf7,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
sarxq %r15, 485498096, %r15 

// CHECK: sarxq %r15, 64(%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf7,0x7a,0x40]      
sarxq %r15, 64(%rdx), %r15 

// CHECK: sarxq %r15, 64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf7,0x7c,0x82,0x40]      
sarxq %r15, 64(%rdx,%rax,4), %r15 

// CHECK: sarxq %r15, -64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf7,0x7c,0x82,0xc0]      
sarxq %r15, -64(%rdx,%rax,4), %r15 

// CHECK: sarxq %r15, 64(%rdx,%rax), %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf7,0x7c,0x02,0x40]      
sarxq %r15, 64(%rdx,%rax), %r15 

// CHECK: sarxq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x82,0xf7,0xff]      
sarxq %r15, %r15, %r15 

// CHECK: sarxq %r15, (%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x82,0xf7,0x3a]      
sarxq %r15, (%rdx), %r15 

// CHECK: shlxl %r13d, 485498096, %r13d 
// CHECK: encoding: [0xc4,0x62,0x11,0xf7,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
shlxl %r13d, 485498096, %r13d 

// CHECK: shlxl %r13d, 64(%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x11,0xf7,0x6a,0x40]      
shlxl %r13d, 64(%rdx), %r13d 

// CHECK: shlxl %r13d, 64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x11,0xf7,0x6c,0x82,0x40]      
shlxl %r13d, 64(%rdx,%rax,4), %r13d 

// CHECK: shlxl %r13d, -64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x11,0xf7,0x6c,0x82,0xc0]      
shlxl %r13d, -64(%rdx,%rax,4), %r13d 

// CHECK: shlxl %r13d, 64(%rdx,%rax), %r13d 
// CHECK: encoding: [0xc4,0x62,0x11,0xf7,0x6c,0x02,0x40]      
shlxl %r13d, 64(%rdx,%rax), %r13d 

// CHECK: shlxl %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x11,0xf7,0xed]      
shlxl %r13d, %r13d, %r13d 

// CHECK: shlxl %r13d, (%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x11,0xf7,0x2a]      
shlxl %r13d, (%rdx), %r13d 

// CHECK: shlxq %r15, 485498096, %r15 
// CHECK: encoding: [0xc4,0x62,0x81,0xf7,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
shlxq %r15, 485498096, %r15 

// CHECK: shlxq %r15, 64(%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x81,0xf7,0x7a,0x40]      
shlxq %r15, 64(%rdx), %r15 

// CHECK: shlxq %r15, 64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x81,0xf7,0x7c,0x82,0x40]      
shlxq %r15, 64(%rdx,%rax,4), %r15 

// CHECK: shlxq %r15, -64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x81,0xf7,0x7c,0x82,0xc0]      
shlxq %r15, -64(%rdx,%rax,4), %r15 

// CHECK: shlxq %r15, 64(%rdx,%rax), %r15 
// CHECK: encoding: [0xc4,0x62,0x81,0xf7,0x7c,0x02,0x40]      
shlxq %r15, 64(%rdx,%rax), %r15 

// CHECK: shlxq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x81,0xf7,0xff]      
shlxq %r15, %r15, %r15 

// CHECK: shlxq %r15, (%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x81,0xf7,0x3a]      
shlxq %r15, (%rdx), %r15 

// CHECK: shrxl %r13d, 485498096, %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf7,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]      
shrxl %r13d, 485498096, %r13d 

// CHECK: shrxl %r13d, 64(%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf7,0x6a,0x40]      
shrxl %r13d, 64(%rdx), %r13d 

// CHECK: shrxl %r13d, 64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf7,0x6c,0x82,0x40]      
shrxl %r13d, 64(%rdx,%rax,4), %r13d 

// CHECK: shrxl %r13d, -64(%rdx,%rax,4), %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf7,0x6c,0x82,0xc0]      
shrxl %r13d, -64(%rdx,%rax,4), %r13d 

// CHECK: shrxl %r13d, 64(%rdx,%rax), %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf7,0x6c,0x02,0x40]      
shrxl %r13d, 64(%rdx,%rax), %r13d 

// CHECK: shrxl %r13d, %r13d, %r13d 
// CHECK: encoding: [0xc4,0x42,0x13,0xf7,0xed]      
shrxl %r13d, %r13d, %r13d 

// CHECK: shrxl %r13d, (%rdx), %r13d 
// CHECK: encoding: [0xc4,0x62,0x13,0xf7,0x2a]      
shrxl %r13d, (%rdx), %r13d 

// CHECK: shrxq %r15, 485498096, %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf7,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]      
shrxq %r15, 485498096, %r15 

// CHECK: shrxq %r15, 64(%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf7,0x7a,0x40]      
shrxq %r15, 64(%rdx), %r15 

// CHECK: shrxq %r15, 64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf7,0x7c,0x82,0x40]      
shrxq %r15, 64(%rdx,%rax,4), %r15 

// CHECK: shrxq %r15, -64(%rdx,%rax,4), %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf7,0x7c,0x82,0xc0]      
shrxq %r15, -64(%rdx,%rax,4), %r15 

// CHECK: shrxq %r15, 64(%rdx,%rax), %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf7,0x7c,0x02,0x40]      
shrxq %r15, 64(%rdx,%rax), %r15 

// CHECK: shrxq %r15, %r15, %r15 
// CHECK: encoding: [0xc4,0x42,0x83,0xf7,0xff]      
shrxq %r15, %r15, %r15 

// CHECK: shrxq %r15, (%rdx), %r15 
// CHECK: encoding: [0xc4,0x62,0x83,0xf7,0x3a]      
shrxq %r15, (%rdx), %r15