1f068304b1f9205b49aa4bef75e669f750906b84fChris Lattner// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s 2c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner 314aaeac5cf8dd96859c4e74423f17a3da1c094c4Dan Gohman pause 414aaeac5cf8dd96859c4e74423f17a3da1c094c4Dan Gohman// CHECK: pause 514aaeac5cf8dd96859c4e74423f17a3da1c094c4Dan Gohman// CHECK: encoding: [0xf3,0x90] 6ee5673b622de7684c20b265f15a7563c573f452aDan Gohman sfence 7ee5673b622de7684c20b265f15a7563c573f452aDan Gohman// CHECK: sfence 8ee5673b622de7684c20b265f15a7563c573f452aDan Gohman// CHECK: encoding: [0x0f,0xae,0xf8] 9c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner lfence 10c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: lfence 11c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: encoding: [0x0f,0xae,0xe8] 12c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner mfence 13c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: mfence 14c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: encoding: [0x0f,0xae,0xf0] 15c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner monitor 16c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: monitor 17c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: encoding: [0x0f,0x01,0xc8] 185ad596f9d27a67767118857471e63b55bfb152d6Joerg Sonnenberger monitor %eax, %ecx, %edx 195ad596f9d27a67767118857471e63b55bfb152d6Joerg Sonnenberger// CHECK: monitor 205ad596f9d27a67767118857471e63b55bfb152d6Joerg Sonnenberger// CHECK: encoding: [0x0f,0x01,0xc8] 21c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner mwait 22c4d3f662fc2e907ea2c76aca8ec1971e43f89c98Chris Lattner// CHECK: mwait 23a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: encoding: [0x0f,0x01,0xc9] 245ad596f9d27a67767118857471e63b55bfb152d6Joerg Sonnenberger mwait %eax, %ecx 255ad596f9d27a67767118857471e63b55bfb152d6Joerg Sonnenberger// CHECK: mwait 265ad596f9d27a67767118857471e63b55bfb152d6Joerg Sonnenberger// CHECK: encoding: [0x0f,0x01,0xc9] 27a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner 28a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner vmcall 29a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: vmcall 30a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: encoding: [0x0f,0x01,0xc1] 31a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner vmlaunch 32a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: vmlaunch 33a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: encoding: [0x0f,0x01,0xc2] 34a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner vmresume 35a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: vmresume 36a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: encoding: [0x0f,0x01,0xc3] 37a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner vmxoff 38a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: vmxoff 39a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: encoding: [0x0f,0x01,0xc4] 40a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner swapgs 41a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: swapgs 42a599de241041eebc84867ac8e4cb76668cabd236Chris Lattner// CHECK: encoding: [0x0f,0x01,0xf8] 43e9a60eb4987a096df10de0442af1e2929bc32547Daniel Dunbar 44b779033a23c49c2e5e02b15a87bbae42973287b3Chris Lattnerrdtscp 45b779033a23c49c2e5e02b15a87bbae42973287b3Chris Lattner// CHECK: rdtscp 46b779033a23c49c2e5e02b15a87bbae42973287b3Chris Lattner// CHECK: encoding: [0x0f,0x01,0xf9] 47b779033a23c49c2e5e02b15a87bbae42973287b3Chris Lattner 48b779033a23c49c2e5e02b15a87bbae42973287b3Chris Lattner 49e9a60eb4987a096df10de0442af1e2929bc32547Daniel Dunbar// CHECK: movl %eax, 16(%ebp) # encoding: [0x89,0x45,0x10] 50e9a60eb4987a096df10de0442af1e2929bc32547Daniel Dunbar movl %eax, 16(%ebp) 51e9a60eb4987a096df10de0442af1e2929bc32547Daniel Dunbar// CHECK: movl %eax, -16(%ebp) # encoding: [0x89,0x45,0xf0] 52e9a60eb4987a096df10de0442af1e2929bc32547Daniel Dunbar movl %eax, -16(%ebp) 53b93c72cda456c96224d25e1df11112bd9b69cf69Daniel Dunbar 54b93c72cda456c96224d25e1df11112bd9b69cf69Daniel Dunbar// CHECK: testb %bl, %cl # encoding: [0x84,0xcb] 55b93c72cda456c96224d25e1df11112bd9b69cf69Daniel Dunbar testb %bl, %cl 561e8ee89c213704c398d8a7ea2567a30b0f75eb5fDaniel Dunbar 571e8ee89c213704c398d8a7ea2567a30b0f75eb5fDaniel Dunbar// CHECK: cmpl %eax, %ebx # encoding: [0x39,0xc3] 581e8ee89c213704c398d8a7ea2567a30b0f75eb5fDaniel Dunbar cmpl %eax, %ebx 59f291be3159530fdca2fd5e726ec2bd3100f38e55Daniel Dunbar 60f291be3159530fdca2fd5e726ec2bd3100f38e55Daniel Dunbar// CHECK: addw %ax, %ax # encoding: [0x66,0x01,0xc0] 61f291be3159530fdca2fd5e726ec2bd3100f38e55Daniel Dunbar addw %ax, %ax 62d5e7705a05947e60806b795880f09757e835f590Daniel Dunbar 63d5e7705a05947e60806b795880f09757e835f590Daniel Dunbar// CHECK: shrl %eax # encoding: [0xd1,0xe8] 64d5e7705a05947e60806b795880f09757e835f590Daniel Dunbar shrl $1, %eax 652745f6e920dd8b562ded008e3e34acc873c5a36fChris Lattner 661a1ecc9f3c2684249bd765d1299302d629aaf4feChris Lattner// CHECK: shll %eax # encoding: [0xd1,0xe0] 671a1ecc9f3c2684249bd765d1299302d629aaf4feChris Lattner sall $1, %eax 681a1ecc9f3c2684249bd765d1299302d629aaf4feChris Lattner// CHECK: shll %eax # encoding: [0xd1,0xe0] 691a1ecc9f3c2684249bd765d1299302d629aaf4feChris Lattner sal $1, %eax 701a1ecc9f3c2684249bd765d1299302d629aaf4feChris Lattner 712745f6e920dd8b562ded008e3e34acc873c5a36fChris Lattner// moffset forms of moves, rdar://7947184 722745f6e920dd8b562ded008e3e34acc873c5a36fChris Lattnermovb 0, %al // CHECK: movb 0, %al # encoding: [0xa0,A,A,A,A] 732745f6e920dd8b562ded008e3e34acc873c5a36fChris Lattnermovw 0, %ax // CHECK: movw 0, %ax # encoding: [0x66,0xa1,A,A,A,A] 742745f6e920dd8b562ded008e3e34acc873c5a36fChris Lattnermovl 0, %eax // CHECK: movl 0, %eax # encoding: [0xa1,A,A,A,A] 752745f6e920dd8b562ded008e3e34acc873c5a36fChris Lattner 76c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// rdar://7973775 77c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderbyinto 78c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: into 79c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: encoding: [0xce] 80c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderbyint3 81c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: int3 82c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: encoding: [0xcc] 83c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderbyint $4 84c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: int $4 85c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: encoding: [0xcd,0x04] 86c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderbyint $255 87c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: int $255 88c3ce05c594ded5c2ad20410719bd9e586aeff180Kevin Enderby// CHECK: encoding: [0xcd,0xff] 89e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman 90e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman// CHECK: pushfl # encoding: [0x9c] 91e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman pushf 92e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman// CHECK: pushfl # encoding: [0x9c] 93e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman pushfl 94e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman// CHECK: popfl # encoding: [0x9d] 95e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman popf 96e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman// CHECK: popfl # encoding: [0x9d] 97e5e4ff974df52aa870085904b6670c4d22ada0acDan Gohman popfl 989d31d79493be05ab9cbf5b7fb16b52e79712eff3Kevin Enderby 999d31d79493be05ab9cbf5b7fb16b52e79712eff3Kevin Enderby// rdar://8014869 1009d31d79493be05ab9cbf5b7fb16b52e79712eff3Kevin Enderbyretl 1019d31d79493be05ab9cbf5b7fb16b52e79712eff3Kevin Enderby// CHECK: ret 1029d31d79493be05ab9cbf5b7fb16b52e79712eff3Kevin Enderby// CHECK: encoding: [0xc3] 103ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 104ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// rdar://7973854 105ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmoval %eax, %edx 106ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x47,0xd0] 107ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmoval %eax,%edx 108ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 109ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovael %eax, %edx 110ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x43,0xd0] 111ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovael %eax,%edx 112ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 113ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovbel %eax, %edx 114ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x46,0xd0] 115ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovbel %eax,%edx 116ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 117ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovbl %eax, %edx 118ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x42,0xd0] 119ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovbl %eax,%edx 120ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 1210989d29d093c281a0d8b4f1b1ea22436249c4087Chris Lattner// CHECK: cmovbw %bx, %bx 1220989d29d093c281a0d8b4f1b1ea22436249c4087Chris Lattnercmovnae %bx,%bx 1230989d29d093c281a0d8b4f1b1ea22436249c4087Chris Lattner 1240989d29d093c281a0d8b4f1b1ea22436249c4087Chris Lattner 125ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovbel %eax, %edx 126ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x46,0xd0] 127ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovbel %eax,%edx 128ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 129ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovbl %eax, %edx 130ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x42,0xd0] 131ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovcl %eax,%edx 132ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 133ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovel %eax, %edx 134ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x44,0xd0] 135ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovel %eax,%edx 136ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 137ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovgl %eax, %edx 138ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4f,0xd0] 139ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovgl %eax,%edx 140ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 141ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovgel %eax, %edx 142ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4d,0xd0] 143ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovgel %eax,%edx 144ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 145ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovll %eax, %edx 146ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4c,0xd0] 147ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovll %eax,%edx 148ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 149ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovlel %eax, %edx 150ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4e,0xd0] 151ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovlel %eax,%edx 152ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 153ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovbel %eax, %edx 154ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x46,0xd0] 155ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnal %eax,%edx 156ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 157ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnel %eax, %edx 158ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x45,0xd0] 159ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnel %eax,%edx 160ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 161ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovael %eax, %edx 162ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x43,0xd0] 163ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnbl %eax,%edx 164ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 165ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmoval %eax, %edx 166ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x47,0xd0] 167ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnbel %eax,%edx 168ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 169ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovael %eax, %edx 170ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x43,0xd0] 171ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovncl %eax,%edx 172ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 173ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnel %eax, %edx 174ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x45,0xd0] 175ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnel %eax,%edx 176ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 177ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovlel %eax, %edx 178ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4e,0xd0] 179ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovngl %eax,%edx 180ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 181ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovgel %eax, %edx 182ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4d,0xd0] 183ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnl %eax,%edx 184ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 185ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnel %eax, %edx 186ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x45,0xd0] 187ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnel %eax,%edx 188ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 189ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovlel %eax, %edx 190ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4e,0xd0] 191ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovngl %eax,%edx 192ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 193ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovll %eax, %edx 194ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4c,0xd0] 195ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovngel %eax,%edx 196ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 197ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovgel %eax, %edx 198ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4d,0xd0] 199ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnll %eax,%edx 200ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 201ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovgl %eax, %edx 202ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4f,0xd0] 203ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnlel %eax,%edx 204ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 205ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnol %eax, %edx 206ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x41,0xd0] 207ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnol %eax,%edx 208ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 209ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnpl %eax, %edx 210ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4b,0xd0] 211ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnpl %eax,%edx 212ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 213ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnsl %eax, %edx 214ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x49,0xd0] 215ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnsl %eax,%edx 216ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 217ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovnel %eax, %edx 218ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x45,0xd0] 219ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovnzl %eax,%edx 220ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 221ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovol %eax, %edx 222ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x40,0xd0] 223ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovol %eax,%edx 224ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 225ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovpl %eax, %edx 226ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x4a,0xd0] 227ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovpl %eax,%edx 228ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 229ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovsl %eax, %edx 230ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x48,0xd0] 231ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovsl %eax,%edx 232ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby 233ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: cmovel %eax, %edx 234ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby// CHECK: encoding: [0x0f,0x44,0xd0] 235ca956dc0f66a573735cdea16acab7159c0c254e5Kevin Enderby cmovzl %eax,%edx 23679373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar 23779373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmpps $0, %xmm0, %xmm1 23879373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0x0f,0xc2,0xc8,0x00] 23979373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmpps $0, %xmm0, %xmm1 24079373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmpps $0, (%eax), %xmm1 24179373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0x0f,0xc2,0x08,0x00] 24279373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmpps $0, 0(%eax), %xmm1 24379373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmppd $0, %xmm0, %xmm1 24479373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x00] 24579373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmppd $0, %xmm0, %xmm1 24679373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmppd $0, (%eax), %xmm1 24779373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0x66,0x0f,0xc2,0x08,0x00] 24879373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmppd $0, 0(%eax), %xmm1 24979373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmpss $0, %xmm0, %xmm1 25079373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0xf3,0x0f,0xc2,0xc8,0x00] 25179373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmpss $0, %xmm0, %xmm1 25279373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmpss $0, (%eax), %xmm1 25379373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0xf3,0x0f,0xc2,0x08,0x00] 25479373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmpss $0, 0(%eax), %xmm1 25579373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmpsd $0, %xmm0, %xmm1 25679373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0xf2,0x0f,0xc2,0xc8,0x00] 25779373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmpsd $0, %xmm0, %xmm1 25879373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: cmpsd $0, (%eax), %xmm1 25979373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar// CHECK: encoding: [0xf2,0x0f,0xc2,0x08,0x00] 26079373680ed7f2b92df4a5c45d0d9bbd47af77c58Daniel Dunbar cmpsd $0, 0(%eax), %xmm1 26139e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 26239e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// Check matching of instructions which embed the SSE comparison code. 26339e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 26439e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmpps $0, %xmm0, %xmm1 26539e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0x0f,0xc2,0xc8,0x00] 26639e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpeqps %xmm0, %xmm1 26739e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 26839e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmppd $1, %xmm0, %xmm1 26939e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x01] 27039e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpltpd %xmm0, %xmm1 27139e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 27239e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmpss $2, %xmm0, %xmm1 27339e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0xf3,0x0f,0xc2,0xc8,0x02] 27439e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpless %xmm0, %xmm1 27539e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 27639e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmppd $3, %xmm0, %xmm1 27739e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x03] 27839e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpunordpd %xmm0, %xmm1 27939e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 28039e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmpps $4, %xmm0, %xmm1 28139e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0x0f,0xc2,0xc8,0x04] 28239e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpneqps %xmm0, %xmm1 28339e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 28439e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmppd $5, %xmm0, %xmm1 28539e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0x66,0x0f,0xc2,0xc8,0x05] 28639e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpnltpd %xmm0, %xmm1 28739e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 28839e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmpss $6, %xmm0, %xmm1 28939e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0xf3,0x0f,0xc2,0xc8,0x06] 29039e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpnless %xmm0, %xmm1 29139e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar 29239e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: cmpsd $7, %xmm0, %xmm1 29339e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar// CHECK: encoding: [0xf2,0x0f,0xc2,0xc8,0x07] 29439e2dd7bab1925e12d4a03ae7abca0eff87274d6Daniel Dunbar cmpordsd %xmm0, %xmm1 295cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby 296cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// rdar://7995856 297cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: fmul %st(0) 298cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: encoding: [0xd8,0xc8] 299cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby fmul %st(0), %st 300cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby 301cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: fadd %st(0) 302cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: encoding: [0xd8,0xc0] 303cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby fadd %st(0), %st 304cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby 305cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: fsub %st(0) 306cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: encoding: [0xd8,0xe0] 307cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby fsub %st(0), %st 308cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby 309cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: fsubr %st(0) 310cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: encoding: [0xd8,0xe8] 311cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby fsubr %st(0), %st 312cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby 313cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: fdivr %st(0) 314cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: encoding: [0xd8,0xf8] 315cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby fdivr %st(0), %st 316cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby 317cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: fdiv %st(0) 318cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby// CHECK: encoding: [0xd8,0xf0] 319cf50a5390c09325a7fc41640449205eced4363f6Kevin Enderby fdiv %st(0), %st 320b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 321b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// radr://8017519 322b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movl %cs, %eax 323b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x8c,0xc8] 324b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movl %cs, %eax 325b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 326b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movw %cs, %ax 327b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x66,0x8c,0xc8] 328b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movw %cs, %ax 329b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 330b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movl %cs, (%eax) 331b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x8c,0x08] 332b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movl %cs, (%eax) 333b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 334b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movw %cs, (%eax) 335b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x66,0x8c,0x08] 336b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movw %cs, (%eax) 337b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 338b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movl %eax, %cs 339b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x8e,0xc8] 340b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movl %eax, %cs 341b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 342b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movl (%eax), %cs 343b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x8e,0x08] 344b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movl (%eax), %cs 345b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby 346b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: movw (%eax), %cs 347b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby// CHECK: encoding: [0x66,0x8e,0x08] 348b106543592abcaabdbe929dd05d914f613f00af2Kevin Enderby movw (%eax), %cs 34931b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 35031b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// radr://8033374 35131b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %cr0, %eax 35231b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x20,0xc0] 35331b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %cr0,%eax 35431b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 35531b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %cr1, %eax 35631b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x20,0xc8] 35731b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %cr1,%eax 35831b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 35931b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %cr2, %eax 36031b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x20,0xd0] 36131b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %cr2,%eax 36231b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 36331b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %cr3, %eax 36431b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x20,0xd8] 36531b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %cr3,%eax 36631b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 36731b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %cr4, %eax 36831b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x20,0xe0] 36931b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %cr4,%eax 37031b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 37131b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr0, %eax 37231b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xc0] 37331b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr0,%eax 37431b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 37531b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr1, %eax 37631b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xc8] 37731b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr1,%eax 37831b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 37931b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr1, %eax 38031b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xc8] 38131b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr1,%eax 38231b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 38331b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr2, %eax 38431b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xd0] 38531b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr2,%eax 38631b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 38731b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr3, %eax 38831b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xd8] 38931b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr3,%eax 39031b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 39131b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr4, %eax 39231b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xe0] 39331b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr4,%eax 39431b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 39531b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr5, %eax 39631b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xe8] 39731b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr5,%eax 39831b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 39931b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr6, %eax 40031b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xf0] 40131b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr6,%eax 40231b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby 40331b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: movl %dr7, %eax 40431b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby// CHECK: encoding: [0x0f,0x21,0xf8] 40531b6c5b2f3118ba8ab9366ecf37085a26be6db97Kevin Enderby movl %dr7,%eax 4065e394429ab0a51af87056fbdaceeae879e651963Kevin Enderby 4075e394429ab0a51af87056fbdaceeae879e651963Kevin Enderby// radr://8017522 4085e394429ab0a51af87056fbdaceeae879e651963Kevin Enderby// CHECK: wait 4095e394429ab0a51af87056fbdaceeae879e651963Kevin Enderby// CHECK: encoding: [0x9b] 4105e394429ab0a51af87056fbdaceeae879e651963Kevin Enderby fwait 4111cf44fc051e05c7cd96a4b071b654381338baae9Chris Lattner 4121cf44fc051e05c7cd96a4b071b654381338baae9Chris Lattner// rdar://7873482 4131cf44fc051e05c7cd96a4b071b654381338baae9Chris Lattner// CHECK: [0x65,0x8b,0x05,0x7c,0x00,0x00,0x00] 4141cf44fc051e05c7cd96a4b071b654381338baae9Chris Lattner// FIXME: This is a correct bug poor encoding: Use 65 a1 7c 00 00 00 4151cf44fc051e05c7cd96a4b071b654381338baae9Chris Lattner movl %gs:124, %eax 41650b9efc2a852bab753948a35e6615ace3100c9daNico Weber 41750b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: pusha 41850b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: encoding: [0x60] 41950b9efc2a852bab753948a35e6615ace3100c9daNico Weber pusha 42050b9efc2a852bab753948a35e6615ace3100c9daNico Weber 42150b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: popa 42250b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: encoding: [0x61] 42350b9efc2a852bab753948a35e6615ace3100c9daNico Weber popa 42450b9efc2a852bab753948a35e6615ace3100c9daNico Weber 42550b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: pushal 42650b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: encoding: [0x60] 42750b9efc2a852bab753948a35e6615ace3100c9daNico Weber pushal 42850b9efc2a852bab753948a35e6615ace3100c9daNico Weber 42950b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: popal 43050b9efc2a852bab753948a35e6615ace3100c9daNico Weber// CHECK: encoding: [0x61] 43150b9efc2a852bab753948a35e6615ace3100c9daNico Weber popal 43250b9efc2a852bab753948a35e6615ace3100c9daNico Weber 43377e2dd7bb2bb5f28d389ba246d815cd9848ee53bDaniel Dunbar// CHECK: jmpl *8(%eax) 43477e2dd7bb2bb5f28d389ba246d815cd9848ee53bDaniel Dunbar// CHECK: encoding: [0xff,0x60,0x08] 43577e2dd7bb2bb5f28d389ba246d815cd9848ee53bDaniel Dunbar jmp *8(%eax) 43659f8a6a66621f7c6f45b838e48fbf210af9d1fb5Chris Lattner 43759f8a6a66621f7c6f45b838e48fbf210af9d1fb5Chris Lattner// PR7465 43859f8a6a66621f7c6f45b838e48fbf210af9d1fb5Chris Lattner// CHECK: lcalll $2, $4660 43959f8a6a66621f7c6f45b838e48fbf210af9d1fb5Chris Lattner// CHECK: encoding: [0x9a,0x34,0x12,0x00,0x00,0x02,0x00] 44059f8a6a66621f7c6f45b838e48fbf210af9d1fb5Chris Lattnerlcalll $0x2, $0x1234 441a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner 442a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner 443a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner// rdar://8061602 444a247685b3013b3dc675d4e83f9c98de6473af1d7Chris LattnerL1: 445a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner jcxz L1 446a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner// CHECK: jcxz L1 447a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner// CHECK: encoding: [0x67,0xe3,A] 448a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner jecxz L1 449a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner// CHECK: jecxz L1 450a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner// CHECK: encoding: [0xe3,A] 451a247685b3013b3dc675d4e83f9c98de6473af1d7Chris Lattner 452ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// rdar://8403974 453ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattneriret 454ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// CHECK: iretl 455ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// CHECK: encoding: [0xcf] 456ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattneriretw 457ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// CHECK: iretw 458ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// CHECK: encoding: [0x66,0xcf] 459ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattneriretl 460ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// CHECK: iretl 461ba8cea450f330145cc7764e23e5d8b1aadd5e131Chris Lattner// CHECK: encoding: [0xcf] 462ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattner 463ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattner// rdar://8403907 464ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattnersysret 465ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattner// CHECK: sysretl 466ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattner// CHECK: encoding: [0x0f,0x07] 467ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattnersysretl 468ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattner// CHECK: sysretl 469ba8e81cca281a92fe30c25a10d8990521128be39Chris Lattner// CHECK: encoding: [0x0f,0x07] 470c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattner 471c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattner// rdar://8018260 472c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattnertestl %ecx, -24(%ebp) 473c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattner// CHECK: testl -24(%ebp), %ecx 474c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattnertestl -24(%ebp), %ecx 475c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattner// CHECK: testl -24(%ebp), %ecx 476c8ae35a8e8a6a39ae05b1c876afbf404e20961ffChris Lattner 477373c458850a963ab062046529337fe976e1f944dChris Lattner 478373c458850a963ab062046529337fe976e1f944dChris Lattner// rdar://8407242 479373c458850a963ab062046529337fe976e1f944dChris Lattnerpush %cs 480373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushl %cs 481373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x0e] 482373c458850a963ab062046529337fe976e1f944dChris Lattnerpush %ds 483373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushl %ds 484373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x1e] 485373c458850a963ab062046529337fe976e1f944dChris Lattnerpush %ss 486373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushl %ss 487373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x16] 488373c458850a963ab062046529337fe976e1f944dChris Lattnerpush %es 489373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushl %es 490373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x06] 491373c458850a963ab062046529337fe976e1f944dChris Lattnerpush %fs 492373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushl %fs 493373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x0f,0xa0] 494373c458850a963ab062046529337fe976e1f944dChris Lattnerpush %gs 495373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushl %gs 496373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x0f,0xa8] 497373c458850a963ab062046529337fe976e1f944dChris Lattner 498373c458850a963ab062046529337fe976e1f944dChris Lattnerpushw %cs 499373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushw %cs 500373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x66,0x0e] 501373c458850a963ab062046529337fe976e1f944dChris Lattnerpushw %ds 502373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushw %ds 503373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x66,0x1e] 504373c458850a963ab062046529337fe976e1f944dChris Lattnerpushw %ss 505373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushw %ss 506373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x66,0x16] 507373c458850a963ab062046529337fe976e1f944dChris Lattnerpushw %es 508373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushw %es 509373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x66,0x06] 510373c458850a963ab062046529337fe976e1f944dChris Lattnerpushw %fs 511373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushw %fs 512373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x66,0x0f,0xa0] 513373c458850a963ab062046529337fe976e1f944dChris Lattnerpushw %gs 514373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: pushw %gs 515373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x66,0x0f,0xa8] 516373c458850a963ab062046529337fe976e1f944dChris Lattner 517373c458850a963ab062046529337fe976e1f944dChris Lattnerpop %ss 518373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: popl %ss 519373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x17] 520373c458850a963ab062046529337fe976e1f944dChris Lattnerpop %ds 521373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: popl %ds 522373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x1f] 523373c458850a963ab062046529337fe976e1f944dChris Lattnerpop %es 524373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: popl %es 525373c458850a963ab062046529337fe976e1f944dChris Lattner// CHECK: encoding: [0x07] 526dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattner 527dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattner// rdar://8408129 528dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattnerpushfd 529dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattner// CHECK: pushfl 530dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattnerpopfd 531dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattner// CHECK: popfl 532dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattnerpushfl 533dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattner// CHECK: pushfl 534dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattnerpopfl 535dfa3c9d98260f899297c11cda2b15dc44fc4f91eChris Lattner// CHECK: popfl 536697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner 537697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner 538697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner// rdar://8416805 539697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setc %bl 540697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnae %bl 541697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnb %bl 542697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnc %bl 543697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setna %bl 544697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnbe %bl 545697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setpe %bl 546697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setpo %bl 547697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnge %bl 548697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnl %bl 549697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setng %bl 550697d37a43625b8862a6d6993c6c5ee614fdc0843Chris Lattner setnle %bl 551cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner 552d8f717911dcdccb1a60b3049ea22c7767970dcb7Chris Lattner// PR8686 553d8f717911dcdccb1a60b3049ea22c7767970dcb7Chris Lattner setneb %cl // CHECK: setne %cl 554d8f717911dcdccb1a60b3049ea22c7767970dcb7Chris Lattner setcb %bl // CHECK: setb %bl 555d8f717911dcdccb1a60b3049ea22c7767970dcb7Chris Lattner setnaeb %bl // CHECK: setb %bl 556cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner 557cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner 558cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner// CHECK: lcalll $31438, $31438 559cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner// CHECK: lcalll $31438, $31438 560cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner// CHECK: ljmpl $31438, $31438 561cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner// CHECK: ljmpl $31438, $31438 562cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner 563cbb442640fdefae48edca2b4c60555a68352b553Chris Lattnercalll $0x7ace,$0x7ace 564cbb442640fdefae48edca2b4c60555a68352b553Chris Lattnerlcalll $0x7ace,$0x7ace 565cbb442640fdefae48edca2b4c60555a68352b553Chris Lattnerjmpl $0x7ace,$0x7ace 566cbb442640fdefae48edca2b4c60555a68352b553Chris Lattnerljmpl $0x7ace,$0x7ace 567cbb442640fdefae48edca2b4c60555a68352b553Chris Lattner 568d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattner// CHECK: lcalll $31438, $31438 569d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattner// CHECK: lcalll $31438, $31438 570d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattner// CHECK: ljmpl $31438, $31438 571d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattner// CHECK: ljmpl $31438, $31438 572d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattner 573d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattnercall $0x7ace,$0x7ace 574d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattnerlcall $0x7ace,$0x7ace 575d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattnerjmp $0x7ace,$0x7ace 576d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattnerljmp $0x7ace,$0x7ace 577d0bcc9a01590c60adb4d288691120c46a49a2288Chris Lattner 5781eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2Chris Lattner// rdar://8456370 5791eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2Chris Lattner// CHECK: calll a 5801eb1b68e3a5241591bfa18d4beb0e0cf13a48ef2Chris Lattner calll a 58127c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 58227c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner// CHECK: incb %al # encoding: [0xfe,0xc0] 58327c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner incb %al 58427c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 58527c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner// CHECK: incw %ax # encoding: [0x66,0x40] 58627c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner incw %ax 58727c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 58827c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner// CHECK: incl %eax # encoding: [0x40] 58927c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner incl %eax 59027c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 59127c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner// CHECK: decb %al # encoding: [0xfe,0xc8] 59227c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner decb %al 59327c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 59427c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner// CHECK: decw %ax # encoding: [0x66,0x48] 59527c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner decw %ax 59627c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 59727c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner// CHECK: decl %eax # encoding: [0x48] 59827c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner decl %eax 59927c5215fbd59c2e8262dd14d63ada96ce3cfd351Chris Lattner 600d47691460770c886cf2fdafaf0f53e0cd101ccf1Chris Lattner// CHECK: pshufw $14, %mm4, %mm0 # encoding: [0x0f,0x70,0xc4,0x0e] 601d47691460770c886cf2fdafaf0f53e0cd101ccf1Chris Lattnerpshufw $14, %mm4, %mm0 602591d76ea5a10062316e18075eccd4c62d60b5a80Chris Lattner 603591d76ea5a10062316e18075eccd4c62d60b5a80Chris Lattner// CHECK: pshufw $90, %mm4, %mm0 # encoding: [0x0f,0x70,0xc4,0x5a] 604591d76ea5a10062316e18075eccd4c62d60b5a80Chris Lattner// PR8288 605591d76ea5a10062316e18075eccd4c62d60b5a80Chris Lattnerpshufw $90, %mm4, %mm0 606591d76ea5a10062316e18075eccd4c62d60b5a80Chris Lattner 6077aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// rdar://8416805 6087aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: aaa 6097aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x37] 6107aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aaa 6117aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6127aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: aad $1 6137aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0xd5,0x01] 6147aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aad $1 6157aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 616c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: aad 6177aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0xd5,0x0a] 6187aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aad $0xA 6197aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 620c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: aad 6217aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0xd5,0x0a] 6227aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aad 6237aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6247aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: aam $2 6257aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0xd4,0x02] 6267aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aam $2 6277aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 628c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: aam 6297aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0xd4,0x0a] 6307aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aam $0xA 6317aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 632c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: aam 6337aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0xd4,0x0a] 6347aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aam 6357aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6367aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: aas 6377aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x3f] 6387aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby aas 6397aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6407aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: daa 6417aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x27] 6427aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby daa 6437aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6447aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: das 6457aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x2f] 6467aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby das 6477aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6487aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: retw $31438 6497aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x66,0xc2,0xce,0x7a] 6507aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby retw $0x7ace 6517aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6527aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: lretw $31438 6537aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x66,0xca,0xce,0x7a] 6547aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby lretw $0x7ace 6557aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6567aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: bound 2(%eax), %bx 6577aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x66,0x62,0x58,0x02] 6587aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby bound 2(%eax),%bx 6597aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6607aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: bound 4(%ebx), %ecx 6617aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x62,0x4b,0x04] 6627aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby bound 4(%ebx),%ecx 6637aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6647aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: arpl %bx, %bx 6657aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x63,0xdb] 6667aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby arpl %bx,%bx 6677aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby 6687aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: arpl %bx, 6(%ecx) 6697aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby// CHECK: encoding: [0x63,0x59,0x06] 6707aef62ff8c72506cc9b77333d25f4aa8aa9cf9feKevin Enderby arpl %bx,6(%ecx) 67187f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 67287f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: lgdtw 4(%eax) 67387f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x66,0x0f,0x01,0x50,0x04] 67487f4a1a4331e40cbba28e829561759d146273840Kevin Enderby lgdtw 4(%eax) 67587f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 67687f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: lgdt 4(%eax) 67787f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x50,0x04] 67887f4a1a4331e40cbba28e829561759d146273840Kevin Enderby lgdt 4(%eax) 67987f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 68087f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: lgdt 4(%eax) 68187f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x50,0x04] 68287f4a1a4331e40cbba28e829561759d146273840Kevin Enderby lgdtl 4(%eax) 68387f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 68487f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: lidtw 4(%eax) 68587f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x66,0x0f,0x01,0x58,0x04] 68687f4a1a4331e40cbba28e829561759d146273840Kevin Enderby lidtw 4(%eax) 68787f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 68887f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: lidt 4(%eax) 68987f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x58,0x04] 69087f4a1a4331e40cbba28e829561759d146273840Kevin Enderby lidt 4(%eax) 69187f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 69287f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: lidt 4(%eax) 69387f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x58,0x04] 69487f4a1a4331e40cbba28e829561759d146273840Kevin Enderby lidtl 4(%eax) 69587f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 69687f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: sgdtw 4(%eax) 69787f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x66,0x0f,0x01,0x40,0x04] 69887f4a1a4331e40cbba28e829561759d146273840Kevin Enderby sgdtw 4(%eax) 69987f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 70087f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: sgdt 4(%eax) 70187f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x40,0x04] 70287f4a1a4331e40cbba28e829561759d146273840Kevin Enderby sgdt 4(%eax) 70387f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 70487f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: sgdt 4(%eax) 70587f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x40,0x04] 70687f4a1a4331e40cbba28e829561759d146273840Kevin Enderby sgdtl 4(%eax) 70787f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 70887f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: sidtw 4(%eax) 70987f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x66,0x0f,0x01,0x48,0x04] 71087f4a1a4331e40cbba28e829561759d146273840Kevin Enderby sidtw 4(%eax) 71187f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 71287f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: sidt 4(%eax) 71387f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x48,0x04] 71487f4a1a4331e40cbba28e829561759d146273840Kevin Enderby sidt 4(%eax) 71587f4a1a4331e40cbba28e829561759d146273840Kevin Enderby 71687f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: sidt 4(%eax) 71787f4a1a4331e40cbba28e829561759d146273840Kevin Enderby// CHECK: encoding: [0x0f,0x01,0x48,0x04] 71887f4a1a4331e40cbba28e829561759d146273840Kevin Enderby sidtl 4(%eax) 71941e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby 720db28788e4ae01c3fa8003773fc236768e87f6917Chris Lattner// CHECK: fcompi %st(2) 72141e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby// CHECK: encoding: [0xdf,0xf2] 722db28788e4ae01c3fa8003773fc236768e87f6917Chris Lattner fcompi %st(2), %st 72341e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby 724db28788e4ae01c3fa8003773fc236768e87f6917Chris Lattner// CHECK: fcompi %st(2) 72541e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby// CHECK: encoding: [0xdf,0xf2] 72641e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby fcompi %st(2) 72741e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby 728c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: fcompi 72941e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby// CHECK: encoding: [0xdf,0xf1] 73041e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby fcompi 73141e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby 732db28788e4ae01c3fa8003773fc236768e87f6917Chris Lattner// CHECK: fucompi %st(2) 73341e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby// CHECK: encoding: [0xdf,0xea] 73441e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby fucompi %st(2),%st 73541e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby 736db28788e4ae01c3fa8003773fc236768e87f6917Chris Lattner// CHECK: fucompi %st(2) 73741e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby// CHECK: encoding: [0xdf,0xea] 73841e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby fucompi %st(2) 73941e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby 740c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: fucompi 74141e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby// CHECK: encoding: [0xdf,0xe9] 74241e8cc73cf570754fffdc6963321c153a8010458Kevin Enderby fucompi 743f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 744f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: fldcw 32493 745f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0xd9,0x2d,0xed,0x7e,0x00,0x00] 746f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fldcww 0x7eed 747f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 748f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: fldcw 32493 749f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0xd9,0x2d,0xed,0x7e,0x00,0x00] 750f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fldcw 0x7eed 751f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 752f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: fnstcw 32493 753f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0xd9,0x3d,0xed,0x7e,0x00,0x00] 754f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fnstcww 0x7eed 755f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 756f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: fnstcw 32493 757f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0xd9,0x3d,0xed,0x7e,0x00,0x00] 758f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fnstcw 0x7eed 759f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 760f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: wait 761f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0x9b] 762f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fstcww 0x7eed 763f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 764f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: wait 765f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0x9b] 766f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fstcw 0x7eed 767f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 768f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: fnstsw 32493 769f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0xdd,0x3d,0xed,0x7e,0x00,0x00] 770f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fnstsww 0x7eed 771f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 772f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: fnstsw 32493 773f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0xdd,0x3d,0xed,0x7e,0x00,0x00] 774f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fnstsw 0x7eed 775f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 776f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: wait 777f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0x9b] 778f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fstsww 0x7eed 779f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 780f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: wait 781f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0x9b] 782f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby fstsw 0x7eed 783f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 784f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: verr 32493 785f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0x0f,0x00,0x25,0xed,0x7e,0x00,0x00] 786f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby verrw 0x7eed 787f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby 788f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: verr 32493 789f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby// CHECK: encoding: [0x0f,0x00,0x25,0xed,0x7e,0x00,0x00] 790f4630ecc3f2b80440b2d9e59add56a3b422de684Kevin Enderby verr 0x7eed 7915a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby 7925a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby// CHECK: wait 7935a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby// CHECK: encoding: [0x9b] 7945a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby fclex 7955a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby 7965a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby// CHECK: fnclex 7975a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby// CHECK: encoding: [0xdb,0xe2] 7985a378076a44ef3f507b91aa8e7715fabaec42074Kevin Enderby fnclex 799e460890351ed36fa518960a417d85964c2b29eeeKevin Enderby 800e460890351ed36fa518960a417d85964c2b29eeeKevin Enderby// CHECK: ud2 801e460890351ed36fa518960a417d85964c2b29eeeKevin Enderby// CHECK: encoding: [0x0f,0x0b] 802905b8f76142b43cd33c36c554d359ee8740f51d5Chris Lattner ud2 803905b8f76142b43cd33c36c554d359ee8740f51d5Chris Lattner 804905b8f76142b43cd33c36c554d359ee8740f51d5Chris Lattner// CHECK: ud2 805905b8f76142b43cd33c36c554d359ee8740f51d5Chris Lattner// CHECK: encoding: [0x0f,0x0b] 806e460890351ed36fa518960a417d85964c2b29eeeKevin Enderby ud2a 807529b1a43986265fb399eecd0dcbf9c409d049853Kevin Enderby 808529b1a43986265fb399eecd0dcbf9c409d049853Kevin Enderby// CHECK: ud2b 809529b1a43986265fb399eecd0dcbf9c409d049853Kevin Enderby// CHECK: encoding: [0x0f,0xb9] 810529b1a43986265fb399eecd0dcbf9c409d049853Kevin Enderby ud2b 811d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger 812d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger// CHECK: loope 0 813d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger// CHECK: encoding: [0xe1,A] 814d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger loopz 0 815d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger 816d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger// CHECK: loopne 0 817d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger// CHECK: encoding: [0xe0,A] 818d86f482e4a9d71596e4f81afb0f7912ab3e40a7fJoerg Sonnenberger loopnz 0 819ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman 82096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsb # encoding: [0x6e] 82196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsb 82296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsb 82396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsb 82496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsb %ds:(%esi), %dx 82596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsb (%esi), %dx 82696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 82796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsw # encoding: [0x66,0x6f] 82896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsw 82996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsw 83096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsw 83196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsw %ds:(%esi), %dx 83296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsw (%esi), %dx 83396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 83496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsl # encoding: [0x6f] 83596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: outsl 83696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsl 83796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsl %ds:(%esi), %dx 83896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger outsl (%esi), %dx 83996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 84096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: insb # encoding: [0x6c] 84196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: insb 84296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger insb 84396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger insb %dx, %es:(%edi) 84496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 84596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: insw # encoding: [0x66,0x6d] 84696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: insw 84796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger insw 84896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger insw %dx, %es:(%edi) 84996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 85096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: insl # encoding: [0x6d] 85196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: insl 85296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger insl 85396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger insl %dx, %es:(%edi) 85496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 85596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: movsb # encoding: [0xa4] 85696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: movsb 85796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: movsb 85896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsb 85996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsb %ds:(%esi), %es:(%edi) 86096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsb (%esi), %es:(%edi) 86196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 86296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: movsw # encoding: [0x66,0xa5] 86396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: movsw 86496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: movsw 86596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsw 86696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsw %ds:(%esi), %es:(%edi) 86796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsw (%esi), %es:(%edi) 86896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 869c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: movsd # encoding: [0xa5] 870c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: movsd 871c6df9883da99915d1cfa491b381ffa703c61ed90Bill Wendling// CHECK: movsd 87296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsl 87396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsl %ds:(%esi), %es:(%edi) 87496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger movsl (%esi), %es:(%edi) 87596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 87696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsb # encoding: [0xac] 87796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsb 87896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsb 87996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsb 88096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsb 88196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsb 88296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsb %ds:(%esi), %al 88396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsb (%esi), %al 88496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lods %ds:(%esi), %al 88596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lods (%esi), %al 88696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 88796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsw # encoding: [0x66,0xad] 88896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsw 88996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsw 89096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsw 89196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsw 89296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsw 89396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsw %ds:(%esi), %ax 89496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsw (%esi), %ax 89596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lods %ds:(%esi), %ax 89696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lods (%esi), %ax 89796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 89896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsl # encoding: [0xad] 89996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsl 90096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsl 90196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsl 90296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: lodsl 90396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsl 90496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsl %ds:(%esi), %eax 90596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lodsl (%esi), %eax 90696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lods %ds:(%esi), %eax 90796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger lods (%esi), %eax 90896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 90996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosb # encoding: [0xaa] 91096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosb 91196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosb 91296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stosb 91396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stosb %al, %es:(%edi) 91496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stos %al, %es:(%edi) 91596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 91696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosw # encoding: [0x66,0xab] 91796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosw 91896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosw 91996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stosw 92096622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stosw %ax, %es:(%edi) 92196622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stos %ax, %es:(%edi) 92296622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 92396622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosl # encoding: [0xab] 92496622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosl 92596622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger// CHECK: stosl 92696622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stosl 92796622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stosl %eax, %es:(%edi) 92896622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger stos %eax, %es:(%edi) 92996622aa063435b1de085489f0e3e49b5912c22daJoerg Sonnenberger 930ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman// CHECK: strw 931ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman// CHECK: encoding: [0x66,0x0f,0x00,0xc8] 932ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman str %ax 933ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman 934ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman// CHECK: strl 935ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman// CHECK: encoding: [0x0f,0x00,0xc8] 936ac39bd534be9a8022c09cc8be81db2de109baecbEli Friedman str %eax 937b8a21ad91556903d055bb1de47f75655ca4e9ba6Chris Lattner 938b8a21ad91556903d055bb1de47f75655ca4e9ba6Chris Lattner 939b8a21ad91556903d055bb1de47f75655ca4e9ba6Chris Lattner// PR9378 940b8a21ad91556903d055bb1de47f75655ca4e9ba6Chris Lattner// CHECK: fsubp 941b8a21ad91556903d055bb1de47f75655ca4e9ba6Chris Lattner// CHECK: encoding: [0xde,0xe1] 942b8a21ad91556903d055bb1de47f75655ca4e9ba6Chris Lattnerfsubp %st,%st(1) 943d521d8bf923b2f4b3e44a4ae2ebd0dcb59d7b23bChris Lattner 944d521d8bf923b2f4b3e44a4ae2ebd0dcb59d7b23bChris Lattner// PR9164 945d521d8bf923b2f4b3e44a4ae2ebd0dcb59d7b23bChris Lattner// CHECK: fsubp %st(2) 946d521d8bf923b2f4b3e44a4ae2ebd0dcb59d7b23bChris Lattner// CHECK: encoding: [0xde,0xe2] 947d521d8bf923b2f4b3e44a4ae2ebd0dcb59d7b23bChris Lattnerfsubp %st, %st(2) 948d521d8bf923b2f4b3e44a4ae2ebd0dcb59d7b23bChris Lattner 9497ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// PR10345 9507ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// CHECK: xchgl %eax, %eax 95125f6dfd108801d1dc5877c420ef0dd47131aeda7Craig Topper// CHECK: encoding: [0x90] 9527ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topperxchgl %eax, %eax 9537ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper 9547ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// CHECK: xchgw %ax, %ax 95525f6dfd108801d1dc5877c420ef0dd47131aeda7Craig Topper// CHECK: encoding: [0x66,0x90] 9567ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topperxchgw %ax, %ax 9577ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper 9587ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// CHECK: xchgl %ecx, %eax 9597ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// CHECK: encoding: [0x91] 9607ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topperxchgl %ecx, %eax 9617ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper 9627ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// CHECK: xchgl %ecx, %eax 9637ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topper// CHECK: encoding: [0x91] 9647ea16b01fad5236cc132cb5fc3e443fcbf70d3b8Craig Topperxchgl %eax, %ecx 965