294 lines · plain
1# RUN: llvm-mc -triple x86_64 -show-encoding %s | FileCheck %s2# RUN: not llvm-mc -triple i386 -show-encoding %s 2>&1 | FileCheck %s --check-prefix=ERROR3 4# ERROR-COUNT-96: error:5# ERROR-NOT: error:6# CHECK: cmovbw %dx, %ax, %r9w7# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x42,0xc2]8 cmovbw %dx, %ax, %r9w9# CHECK: cmovbl %ecx, %edx, %r10d10# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x42,0xd1]11 cmovbl %ecx, %edx, %r10d12# CHECK: cmovbq %r9, %r15, %r1113# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x42,0xf9]14 cmovbq %r9, %r15, %r1115# CHECK: cmovbw 123(%r8,%rax,4), %dx, %ax16# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x42,0x54,0x80,0x7b]17 cmovbw 123(%r8,%rax,4), %dx, %ax18# CHECK: cmovbl 123(%r8,%rax,4), %ecx, %edx19# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x42,0x4c,0x80,0x7b]20 cmovbl 123(%r8,%rax,4), %ecx, %edx21# CHECK: cmovbq 123(%r8,%rax,4), %r9, %r1522# CHECK: encoding: [0x62,0x54,0x84,0x18,0x42,0x4c,0x80,0x7b]23 cmovbq 123(%r8,%rax,4), %r9, %r1524# CHECK: cmovbew %dx, %ax, %r9w25# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x46,0xc2]26 cmovbew %dx, %ax, %r9w27# CHECK: cmovbel %ecx, %edx, %r10d28# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x46,0xd1]29 cmovbel %ecx, %edx, %r10d30# CHECK: cmovbeq %r9, %r15, %r1131# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x46,0xf9]32 cmovbeq %r9, %r15, %r1133# CHECK: cmovbew 123(%r8,%rax,4), %dx, %ax34# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x46,0x54,0x80,0x7b]35 cmovbew 123(%r8,%rax,4), %dx, %ax36# CHECK: cmovbel 123(%r8,%rax,4), %ecx, %edx37# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x46,0x4c,0x80,0x7b]38 cmovbel 123(%r8,%rax,4), %ecx, %edx39# CHECK: cmovbeq 123(%r8,%rax,4), %r9, %r1540# CHECK: encoding: [0x62,0x54,0x84,0x18,0x46,0x4c,0x80,0x7b]41 cmovbeq 123(%r8,%rax,4), %r9, %r1542# CHECK: cmovlw %dx, %ax, %r9w43# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4c,0xc2]44 cmovlw %dx, %ax, %r9w45# CHECK: cmovll %ecx, %edx, %r10d46# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4c,0xd1]47 cmovll %ecx, %edx, %r10d48# CHECK: cmovlq %r9, %r15, %r1149# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4c,0xf9]50 cmovlq %r9, %r15, %r1151# CHECK: cmovlw 123(%r8,%rax,4), %dx, %ax52# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4c,0x54,0x80,0x7b]53 cmovlw 123(%r8,%rax,4), %dx, %ax54# CHECK: cmovll 123(%r8,%rax,4), %ecx, %edx55# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4c,0x4c,0x80,0x7b]56 cmovll 123(%r8,%rax,4), %ecx, %edx57# CHECK: cmovlq 123(%r8,%rax,4), %r9, %r1558# CHECK: encoding: [0x62,0x54,0x84,0x18,0x4c,0x4c,0x80,0x7b]59 cmovlq 123(%r8,%rax,4), %r9, %r1560# CHECK: cmovlew %dx, %ax, %r9w61# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4e,0xc2]62 cmovlew %dx, %ax, %r9w63# CHECK: cmovlel %ecx, %edx, %r10d64# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4e,0xd1]65 cmovlel %ecx, %edx, %r10d66# CHECK: cmovleq %r9, %r15, %r1167# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4e,0xf9]68 cmovleq %r9, %r15, %r1169# CHECK: cmovlew 123(%r8,%rax,4), %dx, %ax70# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4e,0x54,0x80,0x7b]71 cmovlew 123(%r8,%rax,4), %dx, %ax72# CHECK: cmovlel 123(%r8,%rax,4), %ecx, %edx73# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4e,0x4c,0x80,0x7b]74 cmovlel 123(%r8,%rax,4), %ecx, %edx75# CHECK: cmovleq 123(%r8,%rax,4), %r9, %r1576# CHECK: encoding: [0x62,0x54,0x84,0x18,0x4e,0x4c,0x80,0x7b]77 cmovleq 123(%r8,%rax,4), %r9, %r1578# CHECK: cmovaew %dx, %ax, %r9w79# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x43,0xc2]80 cmovaew %dx, %ax, %r9w81# CHECK: cmovael %ecx, %edx, %r10d82# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x43,0xd1]83 cmovael %ecx, %edx, %r10d84# CHECK: cmovaeq %r9, %r15, %r1185# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x43,0xf9]86 cmovaeq %r9, %r15, %r1187# CHECK: cmovaew 123(%r8,%rax,4), %dx, %ax88# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x43,0x54,0x80,0x7b]89 cmovaew 123(%r8,%rax,4), %dx, %ax90# CHECK: cmovael 123(%r8,%rax,4), %ecx, %edx91# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x43,0x4c,0x80,0x7b]92 cmovael 123(%r8,%rax,4), %ecx, %edx93# CHECK: cmovaeq 123(%r8,%rax,4), %r9, %r1594# CHECK: encoding: [0x62,0x54,0x84,0x18,0x43,0x4c,0x80,0x7b]95 cmovaeq 123(%r8,%rax,4), %r9, %r1596# CHECK: cmovaw %dx, %ax, %r9w97# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x47,0xc2]98 cmovaw %dx, %ax, %r9w99# CHECK: cmoval %ecx, %edx, %r10d100# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x47,0xd1]101 cmoval %ecx, %edx, %r10d102# CHECK: cmovaq %r9, %r15, %r11103# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x47,0xf9]104 cmovaq %r9, %r15, %r11105# CHECK: cmovaw 123(%r8,%rax,4), %dx, %ax106# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x47,0x54,0x80,0x7b]107 cmovaw 123(%r8,%rax,4), %dx, %ax108# CHECK: cmoval 123(%r8,%rax,4), %ecx, %edx109# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x47,0x4c,0x80,0x7b]110 cmoval 123(%r8,%rax,4), %ecx, %edx111# CHECK: cmovaq 123(%r8,%rax,4), %r9, %r15112# CHECK: encoding: [0x62,0x54,0x84,0x18,0x47,0x4c,0x80,0x7b]113 cmovaq 123(%r8,%rax,4), %r9, %r15114# CHECK: cmovgew %dx, %ax, %r9w115# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4d,0xc2]116 cmovgew %dx, %ax, %r9w117# CHECK: cmovgel %ecx, %edx, %r10d118# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4d,0xd1]119 cmovgel %ecx, %edx, %r10d120# CHECK: cmovgeq %r9, %r15, %r11121# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4d,0xf9]122 cmovgeq %r9, %r15, %r11123# CHECK: cmovgew 123(%r8,%rax,4), %dx, %ax124# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4d,0x54,0x80,0x7b]125 cmovgew 123(%r8,%rax,4), %dx, %ax126# CHECK: cmovgel 123(%r8,%rax,4), %ecx, %edx127# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4d,0x4c,0x80,0x7b]128 cmovgel 123(%r8,%rax,4), %ecx, %edx129# CHECK: cmovgeq 123(%r8,%rax,4), %r9, %r15130# CHECK: encoding: [0x62,0x54,0x84,0x18,0x4d,0x4c,0x80,0x7b]131 cmovgeq 123(%r8,%rax,4), %r9, %r15132# CHECK: cmovgw %dx, %ax, %r9w133# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4f,0xc2]134 cmovgw %dx, %ax, %r9w135# CHECK: cmovgl %ecx, %edx, %r10d136# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4f,0xd1]137 cmovgl %ecx, %edx, %r10d138# CHECK: cmovgq %r9, %r15, %r11139# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4f,0xf9]140 cmovgq %r9, %r15, %r11141# CHECK: cmovgw 123(%r8,%rax,4), %dx, %ax142# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4f,0x54,0x80,0x7b]143 cmovgw 123(%r8,%rax,4), %dx, %ax144# CHECK: cmovgl 123(%r8,%rax,4), %ecx, %edx145# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4f,0x4c,0x80,0x7b]146 cmovgl 123(%r8,%rax,4), %ecx, %edx147# CHECK: cmovgq 123(%r8,%rax,4), %r9, %r15148# CHECK: encoding: [0x62,0x54,0x84,0x18,0x4f,0x4c,0x80,0x7b]149 cmovgq 123(%r8,%rax,4), %r9, %r15150# CHECK: cmovnow %dx, %ax, %r9w151# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x41,0xc2]152 cmovnow %dx, %ax, %r9w153# CHECK: cmovnol %ecx, %edx, %r10d154# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x41,0xd1]155 cmovnol %ecx, %edx, %r10d156# CHECK: cmovnoq %r9, %r15, %r11157# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x41,0xf9]158 cmovnoq %r9, %r15, %r11159# CHECK: cmovnow 123(%r8,%rax,4), %dx, %ax160# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x41,0x54,0x80,0x7b]161 cmovnow 123(%r8,%rax,4), %dx, %ax162# CHECK: cmovnol 123(%r8,%rax,4), %ecx, %edx163# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x41,0x4c,0x80,0x7b]164 cmovnol 123(%r8,%rax,4), %ecx, %edx165# CHECK: cmovnoq 123(%r8,%rax,4), %r9, %r15166# CHECK: encoding: [0x62,0x54,0x84,0x18,0x41,0x4c,0x80,0x7b]167 cmovnoq 123(%r8,%rax,4), %r9, %r15168# CHECK: cmovnpw %dx, %ax, %r9w169# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4b,0xc2]170 cmovnpw %dx, %ax, %r9w171# CHECK: cmovnpl %ecx, %edx, %r10d172# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4b,0xd1]173 cmovnpl %ecx, %edx, %r10d174# CHECK: cmovnpq %r9, %r15, %r11175# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4b,0xf9]176 cmovnpq %r9, %r15, %r11177# CHECK: cmovnpw 123(%r8,%rax,4), %dx, %ax178# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4b,0x54,0x80,0x7b]179 cmovnpw 123(%r8,%rax,4), %dx, %ax180# CHECK: cmovnpl 123(%r8,%rax,4), %ecx, %edx181# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4b,0x4c,0x80,0x7b]182 cmovnpl 123(%r8,%rax,4), %ecx, %edx183# CHECK: cmovnpq 123(%r8,%rax,4), %r9, %r15184# CHECK: encoding: [0x62,0x54,0x84,0x18,0x4b,0x4c,0x80,0x7b]185 cmovnpq 123(%r8,%rax,4), %r9, %r15186# CHECK: cmovnsw %dx, %ax, %r9w187# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x49,0xc2]188 cmovnsw %dx, %ax, %r9w189# CHECK: cmovnsl %ecx, %edx, %r10d190# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x49,0xd1]191 cmovnsl %ecx, %edx, %r10d192# CHECK: cmovnsq %r9, %r15, %r11193# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x49,0xf9]194 cmovnsq %r9, %r15, %r11195# CHECK: cmovnsw 123(%r8,%rax,4), %dx, %ax196# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x49,0x54,0x80,0x7b]197 cmovnsw 123(%r8,%rax,4), %dx, %ax198# CHECK: cmovnsl 123(%r8,%rax,4), %ecx, %edx199# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x49,0x4c,0x80,0x7b]200 cmovnsl 123(%r8,%rax,4), %ecx, %edx201# CHECK: cmovnsq 123(%r8,%rax,4), %r9, %r15202# CHECK: encoding: [0x62,0x54,0x84,0x18,0x49,0x4c,0x80,0x7b]203 cmovnsq 123(%r8,%rax,4), %r9, %r15204# CHECK: cmovnew %dx, %ax, %r9w205# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x45,0xc2]206 cmovnew %dx, %ax, %r9w207# CHECK: cmovnel %ecx, %edx, %r10d208# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x45,0xd1]209 cmovnel %ecx, %edx, %r10d210# CHECK: cmovneq %r9, %r15, %r11211# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x45,0xf9]212 cmovneq %r9, %r15, %r11213# CHECK: cmovnew 123(%r8,%rax,4), %dx, %ax214# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x45,0x54,0x80,0x7b]215 cmovnew 123(%r8,%rax,4), %dx, %ax216# CHECK: cmovnel 123(%r8,%rax,4), %ecx, %edx217# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x45,0x4c,0x80,0x7b]218 cmovnel 123(%r8,%rax,4), %ecx, %edx219# CHECK: cmovneq 123(%r8,%rax,4), %r9, %r15220# CHECK: encoding: [0x62,0x54,0x84,0x18,0x45,0x4c,0x80,0x7b]221 cmovneq 123(%r8,%rax,4), %r9, %r15222# CHECK: cmovow %dx, %ax, %r9w223# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x40,0xc2]224 cmovow %dx, %ax, %r9w225# CHECK: cmovol %ecx, %edx, %r10d226# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x40,0xd1]227 cmovol %ecx, %edx, %r10d228# CHECK: cmovoq %r9, %r15, %r11229# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x40,0xf9]230 cmovoq %r9, %r15, %r11231# CHECK: cmovow 123(%r8,%rax,4), %dx, %ax232# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x40,0x54,0x80,0x7b]233 cmovow 123(%r8,%rax,4), %dx, %ax234# CHECK: cmovol 123(%r8,%rax,4), %ecx, %edx235# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x40,0x4c,0x80,0x7b]236 cmovol 123(%r8,%rax,4), %ecx, %edx237# CHECK: cmovoq 123(%r8,%rax,4), %r9, %r15238# CHECK: encoding: [0x62,0x54,0x84,0x18,0x40,0x4c,0x80,0x7b]239 cmovoq 123(%r8,%rax,4), %r9, %r15240# CHECK: cmovpw %dx, %ax, %r9w241# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x4a,0xc2]242 cmovpw %dx, %ax, %r9w243# CHECK: cmovpl %ecx, %edx, %r10d244# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x4a,0xd1]245 cmovpl %ecx, %edx, %r10d246# CHECK: cmovpq %r9, %r15, %r11247# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x4a,0xf9]248 cmovpq %r9, %r15, %r11249# CHECK: cmovpw 123(%r8,%rax,4), %dx, %ax250# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x4a,0x54,0x80,0x7b]251 cmovpw 123(%r8,%rax,4), %dx, %ax252# CHECK: cmovpl 123(%r8,%rax,4), %ecx, %edx253# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x4a,0x4c,0x80,0x7b]254 cmovpl 123(%r8,%rax,4), %ecx, %edx255# CHECK: cmovpq 123(%r8,%rax,4), %r9, %r15256# CHECK: encoding: [0x62,0x54,0x84,0x18,0x4a,0x4c,0x80,0x7b]257 cmovpq 123(%r8,%rax,4), %r9, %r15258# CHECK: cmovsw %dx, %ax, %r9w259# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x48,0xc2]260 cmovsw %dx, %ax, %r9w261# CHECK: cmovsl %ecx, %edx, %r10d262# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x48,0xd1]263 cmovsl %ecx, %edx, %r10d264# CHECK: cmovsq %r9, %r15, %r11265# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x48,0xf9]266 cmovsq %r9, %r15, %r11267# CHECK: cmovsw 123(%r8,%rax,4), %dx, %ax268# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x48,0x54,0x80,0x7b]269 cmovsw 123(%r8,%rax,4), %dx, %ax270# CHECK: cmovsl 123(%r8,%rax,4), %ecx, %edx271# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x48,0x4c,0x80,0x7b]272 cmovsl 123(%r8,%rax,4), %ecx, %edx273# CHECK: cmovsq 123(%r8,%rax,4), %r9, %r15274# CHECK: encoding: [0x62,0x54,0x84,0x18,0x48,0x4c,0x80,0x7b]275 cmovsq 123(%r8,%rax,4), %r9, %r15276# CHECK: cmovew %dx, %ax, %r9w277# CHECK: encoding: [0x62,0xf4,0x35,0x18,0x44,0xc2]278 cmovew %dx, %ax, %r9w279# CHECK: cmovel %ecx, %edx, %r10d280# CHECK: encoding: [0x62,0xf4,0x2c,0x18,0x44,0xd1]281 cmovel %ecx, %edx, %r10d282# CHECK: cmoveq %r9, %r15, %r11283# CHECK: encoding: [0x62,0x54,0xa4,0x18,0x44,0xf9]284 cmoveq %r9, %r15, %r11285# CHECK: cmovew 123(%r8,%rax,4), %dx, %ax286# CHECK: encoding: [0x62,0xd4,0x7d,0x18,0x44,0x54,0x80,0x7b]287 cmovew 123(%r8,%rax,4), %dx, %ax288# CHECK: cmovel 123(%r8,%rax,4), %ecx, %edx289# CHECK: encoding: [0x62,0xd4,0x6c,0x18,0x44,0x4c,0x80,0x7b]290 cmovel 123(%r8,%rax,4), %ecx, %edx291# CHECK: cmoveq 123(%r8,%rax,4), %r9, %r15292# CHECK: encoding: [0x62,0x54,0x84,0x18,0x44,0x4c,0x80,0x7b]293 cmoveq 123(%r8,%rax,4), %r9, %r15294