1# RUN: llvm-mc --disassemble %s -triple=x86_64 | FileCheck %s 2 3# Coverage 4 5# CHECK: vcmptrue_usps 60xc5 0x04 0xc2 0xc7 0x1f 7 8# CHECK: vcmptrue_uspd 90xc5 0x05 0xc2 0xc7 0x1f 10 11# CHECK: vcmptrue_usss 120xc5 0x06 0xc2 0xc7 0x1f 13 14# CHECK: vcmptrue_ussd 150xc5 0x07 0xc2 0xc7 0x1f 16 17# CHECK: vcmpeq_uqps 180xc5 0x04 0xc2 0xc7 0x08 19 20# CHECK: vcmpeq_uqpd 210xc5 0x05 0xc2 0xc7 0x08 22 23# CHECK: vcmpeq_uqss 240xc5 0x06 0xc2 0xc7 0x08 25 26# CHECK: vcmpeq_uqsd 270xc5 0x07 0xc2 0xc7 0x08 28 29# CHECK: vcmpeqps 300xc5 0x04 0xc2 0xc7 0x00 31 32# CHECK: vcmpeqpd 330xc5 0x05 0xc2 0xc7 0x00 34 35# CHECK: vcmpeqss 360xc5 0x06 0xc2 0xc7 0x00 37 38# CHECK: vcmpeqsd 390xc5 0x07 0xc2 0xc7 0x00 40 41# CHECK: cmpeqps 420x0f 0xc2 0xc7 0x00 43 44# CHECK: cmpeqpd 450x66 0x0f 0xc2 0xc7 0x00 46 47# CHECK: cmpeqss 480xf3 0x0f 0xc2 0xc7 0x00 49 50# CHECK: cmpeqsd 510xf2 0x0f 0xc2 0xc7 0x00 52 53# CHECK: cmpordps 540x0f 0xc2 0xc7 0x07 55 56# CHECK: cmpordpd 570x66 0x0f 0xc2 0xc7 0x07 58 59# CHECK: cmpordss 600xf3 0x0f 0xc2 0xc7 0x07 61 62# CHECK: cmpordsd 630xf2 0x0f 0xc2 0xc7 0x07 64 65# CHECK: extrq $2, $3, %xmm0 660x66 0x0f 0x78 0xc0 0x03 0x02 67 68# CHECK: extrq %xmm1, %xmm0 690x66 0x0f 0x79 0xc1 70 71# CHECK: insertq $6, $5, %xmm1, %xmm0 720xf2 0x0f 0x78 0xc1 0x05 0x06 73 74# CHECK: insertq %xmm1, %xmm0 750xf2 0x0f 0x79 0xc1 76 77# CHECK: movntsd %xmm0, (%rdi) 780xf2 0x0f 0x2b 0x07 79 80# CHECK: movntss %xmm0, (%rdi) 810xf3 0x0f 0x2b 0x07 82 83# CHECK: adcxl %eax, %eax 840x66 0x0f 0x38 0xf6 0xc0 85 86# CHECK: adcxl (%rax), %eax 870x66 0x0f 0x38 0xf6 0x00 88 89# CHECK: adcxq %rax, %rax 900x66 0x48 0x0f 0x38 0xf6 0xc0 91 92# CHECK: adcxq (%rax), %rax 930x66 0x48 0x0f 0x38 0xf6 0x00 94 95# CHECK: adoxl %eax, %eax 960xf3 0x0f 0x38 0xf6 0xc0 97 98# CHECK: adoxl (%rax), %eax 990xf3 0x0f 0x38 0xf6 0x00 100 101# CHECK: adoxq %rax, %rax 1020xf3 0x48 0x0f 0x38 0xf6 0xc0 103 104# CHECK: adoxq (%rax), %rax 1050xf3 0x48 0x0f 0x38 0xf6 0x00 106 107# CHECK: xbegin 53 1080xc7 0xf8 0x35 0x00 0x00 0x00 109 110# CHECK: xbegin 53 1110x66 0xc7 0xf8 0x35 0x00 112 113# CHECK: xend 1140x0f 0x01 0xd5 115 116# CHECK: xabort $13 1170xc6 0xf8 0x0d 118 119# CHECK: xsave64 (%rax) 1200x48 0x0f 0xae 0x20 121 122# CHECK: xrstor64 (%rax) 1230x48 0x0f 0xae 0x28 124 125# CHECK: xsaveopt64 (%rax) 1260x48 0x0f 0xae 0x30 127 128# CHECK: clac 1290x0f 0x01 0xca 130 131# CHECK: stac 1320x0f 0x01 0xcb 133 134# CHECK: movabsb -6066930261531658096, %al 1350xa0 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 136 137# CHECK: movabsb -6066930261531658096, %al 1380x48 0xa0 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 139 140# CHECK: movabsw -6066930261531658096, %ax 1410x66 0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 142 143# CHECK: movabsl -6066930261531658096, %eax 1440xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 145 146# CHECK: movabsq -6066930261531658096, %rax 1470x48 0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 148 149# CHECK: movabsb %al, -6066930261531658096 1500xa2 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 151 152# CHECK: movabsb %al, -6066930261531658096 1530x48 0xa2 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 154 155# CHECK: movabsw %ax, -6066930261531658096 1560x66 0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 157 158# CHECK: movabsl %eax, -6066930261531658096 1590xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 160 161# CHECK: movabsq %rax, -6066930261531658096 1620x48 0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab 163 164# CHECK: sha1rnds4 $1, %xmm1, %xmm2 1650x0f 0x3a 0xcc 0xd1 0x01 166 167# CHECK: sha1rnds4 $1, (%rax), %xmm2 1680x0f 0x3a 0xcc 0x10 0x01 169 170# CHECK: sha1nexte %xmm1, %xmm2 1710x0f 0x38 0xc8 0xd1 172 173# CHECK: sha1nexte (%rax), %xmm2 1740x0f 0x38 0xc8 0x10 175 176# CHECK: sha1msg1 %xmm1, %xmm2 1770x0f 0x38 0xc9 0xd1 178 179# CHECK: sha1msg1 (%rax), %xmm2 1800x0f 0x38 0xc9 0x10 181 182# CHECK: sha1msg2 %xmm1, %xmm2 1830x0f 0x38 0xca 0xd1 184 185# CHECK: sha1msg2 (%rax), %xmm2 1860x0f 0x38 0xca 0x10 187 188# CHECK: sha256rnds2 (%rax), %xmm2 1890x0f 0x38 0xcb 0x10 190 191# CHECK: sha256rnds2 %xmm1, %xmm2 1920x0f 0x38 0xcb 0xd1 193 194# CHECK: sha256msg1 %xmm1, %xmm2 1950x0f 0x38 0xcc 0xd1 196 197# CHECK: sha256msg1 (%rax), %xmm2 1980x0f 0x38 0xcc 0x10 199 200# CHECK: sha256msg2 %xmm1, %xmm2 2010x0f 0x38 0xcd 0xd1 202 203# CHECK: sha256msg2 (%rax), %xmm2 2040x0f 0x38 0xcd 0x10 205 206# CHECK: incl %ecx 2070xff 0xc1 208 209# CHECK: decl %ecx 2100xff 0xc9 211 212# CHECK: incw %cx 2130x66 0xff 0xc1 214 215# CHECK: decw %cx 2160x66 0xff 0xc9 217 218# CHECK: incb %cl 2190xfe 0xc1 220 221# CHECK: decb %cl 2220xfe 0xc9 223 224# CHECK: incq %rcx 2250x48 0xff 0xc1 226 227# CHECK: decq %rcx 2280x48 0xff 0xc9 229 230# CHECK: movq %xmm0, %xmm0 2310xf3 0x0f 0x7e 0xc0 232 233# CHECK: vmovq %xmm0, %xmm0 2340xc5 0xfa 0x7e 0xc0 235 236# CHECK: vmovq %xmm0, %rax 2370xc4 0xe1 0xf9 0x7e 0xc0 238 239# CHECK: movd (%rax), %mm0 2400x48 0x0f 0x6e 0x00 241 242# CHECK: movd %rax, %mm0 2430x48 0x0f 0x6e 0xc0 244 245# CHECK: movd %mm0, (%rax) 2460x48 0x0f 0x7e 0x00 247 248# CHECK: movd %mm0, %rax 2490x48 0x0f 0x7e 0xc0 250 251# CHECK: movd (%rax), %xmm0 2520x66 0x48 0x0f 0x6e 0x00 253 254# CHECK: movd %rax, %xmm0 2550x66 0x48 0x0f 0x6e 0xc0 256 257# CHECK: movd %xmm0, (%rax) 2580x66 0x48 0x0f 0x7e 0x00 259 260# CHECK: movd %xmm0, %rax 2610x66 0x48 0x0f 0x7e 0xc0 262 263# CHECK: pextrw $3, %xmm3, %ecx 2640x66 0x0f 0x3a 0x15 0xd9 0x03 265 266# CHECK: pextrw $3, %xmm3, (%rax) 2670x66 0x0f 0x3a 0x15 0x18 0x03 268 269# CHECK: $0, 305419896(,%r8) 2700x43 0x80 0x04 0x05 0x78 0x56 0x34 0x12 0x00 271 272# CHECK: $0, 305419896(%r13,%r8) 2730x43 0x80 0x84 0x05 0x78 0x56 0x34 0x12 0x00 274 275# CHECK: $0, 305419896(,%r8) 2760x42 0x80 0x04 0x05 0x78 0x56 0x34 0x12 0x00 277 278# CHECK: $0, 305419896(%rbp,%r8) 2790x42 0x80 0x84 0x05 0x78 0x56 0x34 0x12 0x00 280 281# CHECK: $0, 305419896(,%r12) 2820x42 0x80 0x04 0x25 0x78 0x56 0x34 0x12 0x00 283 284# CHECK: $0, 305419896(%rbp,%r12) 2850x42 0x80 0x84 0x25 0x78 0x56 0x34 0x12 0x00 286 287# CHECK: $0, 305419896 2880x80 0x04 0x25 0x78 0x56 0x34 0x12 0x00 289 290# CHECK: $0, 305419896(%rbp) 2910x80 0x84 0x25 0x78 0x56 0x34 0x12 0x00 292 293# CHECK: movabsq 6510615555426900570, %rax 2940x48 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 295 296# CHECK: movq 1515870810, %rax 2970x67, 0x48 0xa1 0x5a 0x5a 0x5a 0x5a 298 299# CHECK: movabsq %rax, 6510615555426900570 3000x48 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 301 302# CHECK: movq %rax, 1515870810 3030x67, 0x48 0xa3 0x5a 0x5a 0x5a 0x5a 304