# RUN: llvm-mc -triple x86_64 -show-encoding %s | FileCheck %s # RUN: not llvm-mc -triple i386 -show-encoding %s 2>&1 | FileCheck %s --check-prefix=ERROR # ERROR-COUNT-96: error: # ERROR-NOT: error: # CHECK: cmovbw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x42,0xc2] cmovbw %dx, %ax, %r9w # CHECK: cmovbl %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x42,0xd1] cmovbl %ecx, %edx, %r10d # CHECK: cmovbq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x42,0xf9] cmovbq %r9, %r15, %r11 # CHECK: cmovbw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x42,0x54,0x80,0x7b] cmovbw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovbl 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x42,0x4c,0x80,0x7b] cmovbl 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovbq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x42,0x4c,0x80,0x7b] cmovbq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovbew %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x46,0xc2] cmovbew %dx, %ax, %r9w # CHECK: cmovbel %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x46,0xd1] cmovbel %ecx, %edx, %r10d # CHECK: cmovbeq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x46,0xf9] cmovbeq %r9, %r15, %r11 # CHECK: cmovbew 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x46,0x54,0x80,0x7b] cmovbew 123(%r8,%rax,4), %dx, %ax # CHECK: cmovbel 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x46,0x4c,0x80,0x7b] cmovbel 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovbeq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x46,0x4c,0x80,0x7b] cmovbeq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovlw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4c,0xc2] cmovlw %dx, %ax, %r9w # CHECK: cmovll %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4c,0xd1] cmovll %ecx, %edx, %r10d # CHECK: cmovlq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4c,0xf9] cmovlq %r9, %r15, %r11 # CHECK: cmovlw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4c,0x54,0x80,0x7b] cmovlw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovll 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4c,0x4c,0x80,0x7b] cmovll 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovlq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x4c,0x4c,0x80,0x7b] cmovlq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovlew %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4e,0xc2] cmovlew %dx, %ax, %r9w # CHECK: cmovlel %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4e,0xd1] cmovlel %ecx, %edx, %r10d # CHECK: cmovleq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4e,0xf9] cmovleq %r9, %r15, %r11 # CHECK: cmovlew 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4e,0x54,0x80,0x7b] cmovlew 123(%r8,%rax,4), %dx, %ax # CHECK: cmovlel 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4e,0x4c,0x80,0x7b] cmovlel 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovleq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x4e,0x4c,0x80,0x7b] cmovleq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovaew %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x43,0xc2] cmovaew %dx, %ax, %r9w # CHECK: cmovael %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x43,0xd1] cmovael %ecx, %edx, %r10d # CHECK: cmovaeq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x43,0xf9] cmovaeq %r9, %r15, %r11 # CHECK: cmovaew 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x43,0x54,0x80,0x7b] cmovaew 123(%r8,%rax,4), %dx, %ax # CHECK: cmovael 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x43,0x4c,0x80,0x7b] cmovael 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovaeq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x43,0x4c,0x80,0x7b] cmovaeq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovaw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x47,0xc2] cmovaw %dx, %ax, %r9w # CHECK: cmoval %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x47,0xd1] cmoval %ecx, %edx, %r10d # CHECK: cmovaq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x47,0xf9] cmovaq %r9, %r15, %r11 # CHECK: cmovaw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x47,0x54,0x80,0x7b] cmovaw 123(%r8,%rax,4), %dx, %ax # CHECK: cmoval 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x47,0x4c,0x80,0x7b] cmoval 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovaq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x47,0x4c,0x80,0x7b] cmovaq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovgew %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4d,0xc2] cmovgew %dx, %ax, %r9w # CHECK: cmovgel %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4d,0xd1] cmovgel %ecx, %edx, %r10d # CHECK: cmovgeq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4d,0xf9] cmovgeq %r9, %r15, %r11 # CHECK: cmovgew 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4d,0x54,0x80,0x7b] cmovgew 123(%r8,%rax,4), %dx, %ax # CHECK: cmovgel 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4d,0x4c,0x80,0x7b] cmovgel 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovgeq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x4d,0x4c,0x80,0x7b] cmovgeq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovgw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4f,0xc2] cmovgw %dx, %ax, %r9w # CHECK: cmovgl %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4f,0xd1] cmovgl %ecx, %edx, %r10d # CHECK: cmovgq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4f,0xf9] cmovgq %r9, %r15, %r11 # CHECK: cmovgw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4f,0x54,0x80,0x7b] cmovgw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovgl 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4f,0x4c,0x80,0x7b] cmovgl 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovgq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x4f,0x4c,0x80,0x7b] cmovgq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovnow %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x41,0xc2] cmovnow %dx, %ax, %r9w # CHECK: cmovnol %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x41,0xd1] cmovnol %ecx, %edx, %r10d # CHECK: cmovnoq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x41,0xf9] cmovnoq %r9, %r15, %r11 # CHECK: cmovnow 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x41,0x54,0x80,0x7b] cmovnow 123(%r8,%rax,4), %dx, %ax # CHECK: cmovnol 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x41,0x4c,0x80,0x7b] cmovnol 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovnoq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x41,0x4c,0x80,0x7b] cmovnoq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovnpw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4b,0xc2] cmovnpw %dx, %ax, %r9w # CHECK: cmovnpl %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4b,0xd1] cmovnpl %ecx, %edx, %r10d # CHECK: cmovnpq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4b,0xf9] cmovnpq %r9, %r15, %r11 # CHECK: cmovnpw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4b,0x54,0x80,0x7b] cmovnpw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovnpl 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4b,0x4c,0x80,0x7b] cmovnpl 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovnpq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x4b,0x4c,0x80,0x7b] cmovnpq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovnsw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x49,0xc2] cmovnsw %dx, %ax, %r9w # CHECK: cmovnsl %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x49,0xd1] cmovnsl %ecx, %edx, %r10d # CHECK: cmovnsq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x49,0xf9] cmovnsq %r9, %r15, %r11 # CHECK: cmovnsw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x49,0x54,0x80,0x7b] cmovnsw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovnsl 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x49,0x4c,0x80,0x7b] cmovnsl 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovnsq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x49,0x4c,0x80,0x7b] cmovnsq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovnew %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x45,0xc2] cmovnew %dx, %ax, %r9w # CHECK: cmovnel %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x45,0xd1] cmovnel %ecx, %edx, %r10d # CHECK: cmovneq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x45,0xf9] cmovneq %r9, %r15, %r11 # CHECK: cmovnew 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x45,0x54,0x80,0x7b] cmovnew 123(%r8,%rax,4), %dx, %ax # CHECK: cmovnel 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x45,0x4c,0x80,0x7b] cmovnel 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovneq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x45,0x4c,0x80,0x7b] cmovneq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovow %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x40,0xc2] cmovow %dx, %ax, %r9w # CHECK: cmovol %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x40,0xd1] cmovol %ecx, %edx, %r10d # CHECK: cmovoq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x40,0xf9] cmovoq %r9, %r15, %r11 # CHECK: cmovow 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x40,0x54,0x80,0x7b] cmovow 123(%r8,%rax,4), %dx, %ax # CHECK: cmovol 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x40,0x4c,0x80,0x7b] cmovol 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovoq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x40,0x4c,0x80,0x7b] cmovoq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovpw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4a,0xc2] cmovpw %dx, %ax, %r9w # CHECK: cmovpl %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4a,0xd1] cmovpl %ecx, %edx, %r10d # CHECK: cmovpq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4a,0xf9] cmovpq %r9, %r15, %r11 # CHECK: cmovpw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4a,0x54,0x80,0x7b] cmovpw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovpl 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4a,0x4c,0x80,0x7b] cmovpl 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovpq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x4a,0x4c,0x80,0x7b] cmovpq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovsw %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x48,0xc2] cmovsw %dx, %ax, %r9w # CHECK: cmovsl %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x48,0xd1] cmovsl %ecx, %edx, %r10d # CHECK: cmovsq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x48,0xf9] cmovsq %r9, %r15, %r11 # CHECK: cmovsw 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x48,0x54,0x80,0x7b] cmovsw 123(%r8,%rax,4), %dx, %ax # CHECK: cmovsl 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x48,0x4c,0x80,0x7b] cmovsl 123(%r8,%rax,4), %ecx, %edx # CHECK: cmovsq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x48,0x4c,0x80,0x7b] cmovsq 123(%r8,%rax,4), %r9, %r15 # CHECK: cmovew %dx, %ax, %r9w # CHECK: encoding: [0x62,0xf4,0x35,0x18,0x44,0xc2] cmovew %dx, %ax, %r9w # CHECK: cmovel %ecx, %edx, %r10d # CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x44,0xd1] cmovel %ecx, %edx, %r10d # CHECK: cmoveq %r9, %r15, %r11 # CHECK: encoding: [0x62,0x54,0xa4,0x18,0x44,0xf9] cmoveq %r9, %r15, %r11 # CHECK: cmovew 123(%r8,%rax,4), %dx, %ax # CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x44,0x54,0x80,0x7b] cmovew 123(%r8,%rax,4), %dx, %ax # CHECK: cmovel 123(%r8,%rax,4), %ecx, %edx # CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x44,0x4c,0x80,0x7b] cmovel 123(%r8,%rax,4), %ecx, %edx # CHECK: cmoveq 123(%r8,%rax,4), %r9, %r15 # CHECK: encoding: [0x62,0x54,0x84,0x18,0x44,0x4c,0x80,0x7b] cmoveq 123(%r8,%rax,4), %r9, %r15