1// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s 2 3// CHECK: addsubpd -485498096(%edx,%eax,4), %xmm1 4// CHECK: encoding: [0x66,0x0f,0xd0,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 5addsubpd -485498096(%edx,%eax,4), %xmm1 6 7// CHECK: addsubpd 485498096(%edx,%eax,4), %xmm1 8// CHECK: encoding: [0x66,0x0f,0xd0,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 9addsubpd 485498096(%edx,%eax,4), %xmm1 10 11// CHECK: addsubpd 485498096(%edx), %xmm1 12// CHECK: encoding: [0x66,0x0f,0xd0,0x8a,0xf0,0x1c,0xf0,0x1c] 13addsubpd 485498096(%edx), %xmm1 14 15// CHECK: addsubpd 485498096, %xmm1 16// CHECK: encoding: [0x66,0x0f,0xd0,0x0d,0xf0,0x1c,0xf0,0x1c] 17addsubpd 485498096, %xmm1 18 19// CHECK: addsubpd 64(%edx,%eax), %xmm1 20// CHECK: encoding: [0x66,0x0f,0xd0,0x4c,0x02,0x40] 21addsubpd 64(%edx,%eax), %xmm1 22 23// CHECK: addsubpd (%edx), %xmm1 24// CHECK: encoding: [0x66,0x0f,0xd0,0x0a] 25addsubpd (%edx), %xmm1 26 27// CHECK: addsubpd %xmm1, %xmm1 28// CHECK: encoding: [0x66,0x0f,0xd0,0xc9] 29addsubpd %xmm1, %xmm1 30 31// CHECK: addsubps -485498096(%edx,%eax,4), %xmm1 32// CHECK: encoding: [0xf2,0x0f,0xd0,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 33addsubps -485498096(%edx,%eax,4), %xmm1 34 35// CHECK: addsubps 485498096(%edx,%eax,4), %xmm1 36// CHECK: encoding: [0xf2,0x0f,0xd0,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 37addsubps 485498096(%edx,%eax,4), %xmm1 38 39// CHECK: addsubps 485498096(%edx), %xmm1 40// CHECK: encoding: [0xf2,0x0f,0xd0,0x8a,0xf0,0x1c,0xf0,0x1c] 41addsubps 485498096(%edx), %xmm1 42 43// CHECK: addsubps 485498096, %xmm1 44// CHECK: encoding: [0xf2,0x0f,0xd0,0x0d,0xf0,0x1c,0xf0,0x1c] 45addsubps 485498096, %xmm1 46 47// CHECK: addsubps 64(%edx,%eax), %xmm1 48// CHECK: encoding: [0xf2,0x0f,0xd0,0x4c,0x02,0x40] 49addsubps 64(%edx,%eax), %xmm1 50 51// CHECK: addsubps (%edx), %xmm1 52// CHECK: encoding: [0xf2,0x0f,0xd0,0x0a] 53addsubps (%edx), %xmm1 54 55// CHECK: addsubps %xmm1, %xmm1 56// CHECK: encoding: [0xf2,0x0f,0xd0,0xc9] 57addsubps %xmm1, %xmm1 58 59// CHECK: fisttpl -485498096(%edx,%eax,4) 60// CHECK: encoding: [0xdb,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 61fisttpl -485498096(%edx,%eax,4) 62 63// CHECK: fisttpl 485498096(%edx,%eax,4) 64// CHECK: encoding: [0xdb,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 65fisttpl 485498096(%edx,%eax,4) 66 67// CHECK: fisttpl 485498096(%edx) 68// CHECK: encoding: [0xdb,0x8a,0xf0,0x1c,0xf0,0x1c] 69fisttpl 485498096(%edx) 70 71// CHECK: fisttpl 485498096 72// CHECK: encoding: [0xdb,0x0d,0xf0,0x1c,0xf0,0x1c] 73fisttpl 485498096 74 75// CHECK: fisttpl 64(%edx,%eax) 76// CHECK: encoding: [0xdb,0x4c,0x02,0x40] 77fisttpl 64(%edx,%eax) 78 79// CHECK: fisttpl (%edx) 80// CHECK: encoding: [0xdb,0x0a] 81fisttpl (%edx) 82 83// CHECK: fisttpll -485498096(%edx,%eax,4) 84// CHECK: encoding: [0xdd,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 85fisttpll -485498096(%edx,%eax,4) 86 87// CHECK: fisttpll 485498096(%edx,%eax,4) 88// CHECK: encoding: [0xdd,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 89fisttpll 485498096(%edx,%eax,4) 90 91// CHECK: fisttpll 485498096(%edx) 92// CHECK: encoding: [0xdd,0x8a,0xf0,0x1c,0xf0,0x1c] 93fisttpll 485498096(%edx) 94 95// CHECK: fisttpll 485498096 96// CHECK: encoding: [0xdd,0x0d,0xf0,0x1c,0xf0,0x1c] 97fisttpll 485498096 98 99// CHECK: fisttpll 64(%edx,%eax) 100// CHECK: encoding: [0xdd,0x4c,0x02,0x40] 101fisttpll 64(%edx,%eax) 102 103// CHECK: fisttpll (%edx) 104// CHECK: encoding: [0xdd,0x0a] 105fisttpll (%edx) 106 107// CHECK: fisttps -485498096(%edx,%eax,4) 108// CHECK: encoding: [0xdf,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 109fisttps -485498096(%edx,%eax,4) 110 111// CHECK: fisttps 485498096(%edx,%eax,4) 112// CHECK: encoding: [0xdf,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 113fisttps 485498096(%edx,%eax,4) 114 115// CHECK: fisttps 485498096(%edx) 116// CHECK: encoding: [0xdf,0x8a,0xf0,0x1c,0xf0,0x1c] 117fisttps 485498096(%edx) 118 119// CHECK: fisttps 485498096 120// CHECK: encoding: [0xdf,0x0d,0xf0,0x1c,0xf0,0x1c] 121fisttps 485498096 122 123// CHECK: fisttps 64(%edx,%eax) 124// CHECK: encoding: [0xdf,0x4c,0x02,0x40] 125fisttps 64(%edx,%eax) 126 127// CHECK: fisttps (%edx) 128// CHECK: encoding: [0xdf,0x0a] 129fisttps (%edx) 130 131// CHECK: haddpd -485498096(%edx,%eax,4), %xmm1 132// CHECK: encoding: [0x66,0x0f,0x7c,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 133haddpd -485498096(%edx,%eax,4), %xmm1 134 135// CHECK: haddpd 485498096(%edx,%eax,4), %xmm1 136// CHECK: encoding: [0x66,0x0f,0x7c,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 137haddpd 485498096(%edx,%eax,4), %xmm1 138 139// CHECK: haddpd 485498096(%edx), %xmm1 140// CHECK: encoding: [0x66,0x0f,0x7c,0x8a,0xf0,0x1c,0xf0,0x1c] 141haddpd 485498096(%edx), %xmm1 142 143// CHECK: haddpd 485498096, %xmm1 144// CHECK: encoding: [0x66,0x0f,0x7c,0x0d,0xf0,0x1c,0xf0,0x1c] 145haddpd 485498096, %xmm1 146 147// CHECK: haddpd 64(%edx,%eax), %xmm1 148// CHECK: encoding: [0x66,0x0f,0x7c,0x4c,0x02,0x40] 149haddpd 64(%edx,%eax), %xmm1 150 151// CHECK: haddpd (%edx), %xmm1 152// CHECK: encoding: [0x66,0x0f,0x7c,0x0a] 153haddpd (%edx), %xmm1 154 155// CHECK: haddpd %xmm1, %xmm1 156// CHECK: encoding: [0x66,0x0f,0x7c,0xc9] 157haddpd %xmm1, %xmm1 158 159// CHECK: haddps -485498096(%edx,%eax,4), %xmm1 160// CHECK: encoding: [0xf2,0x0f,0x7c,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 161haddps -485498096(%edx,%eax,4), %xmm1 162 163// CHECK: haddps 485498096(%edx,%eax,4), %xmm1 164// CHECK: encoding: [0xf2,0x0f,0x7c,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 165haddps 485498096(%edx,%eax,4), %xmm1 166 167// CHECK: haddps 485498096(%edx), %xmm1 168// CHECK: encoding: [0xf2,0x0f,0x7c,0x8a,0xf0,0x1c,0xf0,0x1c] 169haddps 485498096(%edx), %xmm1 170 171// CHECK: haddps 485498096, %xmm1 172// CHECK: encoding: [0xf2,0x0f,0x7c,0x0d,0xf0,0x1c,0xf0,0x1c] 173haddps 485498096, %xmm1 174 175// CHECK: haddps 64(%edx,%eax), %xmm1 176// CHECK: encoding: [0xf2,0x0f,0x7c,0x4c,0x02,0x40] 177haddps 64(%edx,%eax), %xmm1 178 179// CHECK: haddps (%edx), %xmm1 180// CHECK: encoding: [0xf2,0x0f,0x7c,0x0a] 181haddps (%edx), %xmm1 182 183// CHECK: haddps %xmm1, %xmm1 184// CHECK: encoding: [0xf2,0x0f,0x7c,0xc9] 185haddps %xmm1, %xmm1 186 187// CHECK: hsubpd -485498096(%edx,%eax,4), %xmm1 188// CHECK: encoding: [0x66,0x0f,0x7d,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 189hsubpd -485498096(%edx,%eax,4), %xmm1 190 191// CHECK: hsubpd 485498096(%edx,%eax,4), %xmm1 192// CHECK: encoding: [0x66,0x0f,0x7d,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 193hsubpd 485498096(%edx,%eax,4), %xmm1 194 195// CHECK: hsubpd 485498096(%edx), %xmm1 196// CHECK: encoding: [0x66,0x0f,0x7d,0x8a,0xf0,0x1c,0xf0,0x1c] 197hsubpd 485498096(%edx), %xmm1 198 199// CHECK: hsubpd 485498096, %xmm1 200// CHECK: encoding: [0x66,0x0f,0x7d,0x0d,0xf0,0x1c,0xf0,0x1c] 201hsubpd 485498096, %xmm1 202 203// CHECK: hsubpd 64(%edx,%eax), %xmm1 204// CHECK: encoding: [0x66,0x0f,0x7d,0x4c,0x02,0x40] 205hsubpd 64(%edx,%eax), %xmm1 206 207// CHECK: hsubpd (%edx), %xmm1 208// CHECK: encoding: [0x66,0x0f,0x7d,0x0a] 209hsubpd (%edx), %xmm1 210 211// CHECK: hsubpd %xmm1, %xmm1 212// CHECK: encoding: [0x66,0x0f,0x7d,0xc9] 213hsubpd %xmm1, %xmm1 214 215// CHECK: hsubps -485498096(%edx,%eax,4), %xmm1 216// CHECK: encoding: [0xf2,0x0f,0x7d,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 217hsubps -485498096(%edx,%eax,4), %xmm1 218 219// CHECK: hsubps 485498096(%edx,%eax,4), %xmm1 220// CHECK: encoding: [0xf2,0x0f,0x7d,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 221hsubps 485498096(%edx,%eax,4), %xmm1 222 223// CHECK: hsubps 485498096(%edx), %xmm1 224// CHECK: encoding: [0xf2,0x0f,0x7d,0x8a,0xf0,0x1c,0xf0,0x1c] 225hsubps 485498096(%edx), %xmm1 226 227// CHECK: hsubps 485498096, %xmm1 228// CHECK: encoding: [0xf2,0x0f,0x7d,0x0d,0xf0,0x1c,0xf0,0x1c] 229hsubps 485498096, %xmm1 230 231// CHECK: hsubps 64(%edx,%eax), %xmm1 232// CHECK: encoding: [0xf2,0x0f,0x7d,0x4c,0x02,0x40] 233hsubps 64(%edx,%eax), %xmm1 234 235// CHECK: hsubps (%edx), %xmm1 236// CHECK: encoding: [0xf2,0x0f,0x7d,0x0a] 237hsubps (%edx), %xmm1 238 239// CHECK: hsubps %xmm1, %xmm1 240// CHECK: encoding: [0xf2,0x0f,0x7d,0xc9] 241hsubps %xmm1, %xmm1 242 243// CHECK: lddqu -485498096(%edx,%eax,4), %xmm1 244// CHECK: encoding: [0xf2,0x0f,0xf0,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 245lddqu -485498096(%edx,%eax,4), %xmm1 246 247// CHECK: lddqu 485498096(%edx,%eax,4), %xmm1 248// CHECK: encoding: [0xf2,0x0f,0xf0,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 249lddqu 485498096(%edx,%eax,4), %xmm1 250 251// CHECK: lddqu 485498096(%edx), %xmm1 252// CHECK: encoding: [0xf2,0x0f,0xf0,0x8a,0xf0,0x1c,0xf0,0x1c] 253lddqu 485498096(%edx), %xmm1 254 255// CHECK: lddqu 485498096, %xmm1 256// CHECK: encoding: [0xf2,0x0f,0xf0,0x0d,0xf0,0x1c,0xf0,0x1c] 257lddqu 485498096, %xmm1 258 259// CHECK: lddqu 64(%edx,%eax), %xmm1 260// CHECK: encoding: [0xf2,0x0f,0xf0,0x4c,0x02,0x40] 261lddqu 64(%edx,%eax), %xmm1 262 263// CHECK: lddqu (%edx), %xmm1 264// CHECK: encoding: [0xf2,0x0f,0xf0,0x0a] 265lddqu (%edx), %xmm1 266 267// CHECK: monitor 268// CHECK: encoding: [0x0f,0x01,0xc8] 269monitor 270 271// CHECK: movddup -485498096(%edx,%eax,4), %xmm1 272// CHECK: encoding: [0xf2,0x0f,0x12,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 273movddup -485498096(%edx,%eax,4), %xmm1 274 275// CHECK: movddup 485498096(%edx,%eax,4), %xmm1 276// CHECK: encoding: [0xf2,0x0f,0x12,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 277movddup 485498096(%edx,%eax,4), %xmm1 278 279// CHECK: movddup 485498096(%edx), %xmm1 280// CHECK: encoding: [0xf2,0x0f,0x12,0x8a,0xf0,0x1c,0xf0,0x1c] 281movddup 485498096(%edx), %xmm1 282 283// CHECK: movddup 485498096, %xmm1 284// CHECK: encoding: [0xf2,0x0f,0x12,0x0d,0xf0,0x1c,0xf0,0x1c] 285movddup 485498096, %xmm1 286 287// CHECK: movddup 64(%edx,%eax), %xmm1 288// CHECK: encoding: [0xf2,0x0f,0x12,0x4c,0x02,0x40] 289movddup 64(%edx,%eax), %xmm1 290 291// CHECK: movddup (%edx), %xmm1 292// CHECK: encoding: [0xf2,0x0f,0x12,0x0a] 293movddup (%edx), %xmm1 294 295// CHECK: movddup %xmm1, %xmm1 296// CHECK: encoding: [0xf2,0x0f,0x12,0xc9] 297movddup %xmm1, %xmm1 298 299// CHECK: movshdup -485498096(%edx,%eax,4), %xmm1 300// CHECK: encoding: [0xf3,0x0f,0x16,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 301movshdup -485498096(%edx,%eax,4), %xmm1 302 303// CHECK: movshdup 485498096(%edx,%eax,4), %xmm1 304// CHECK: encoding: [0xf3,0x0f,0x16,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 305movshdup 485498096(%edx,%eax,4), %xmm1 306 307// CHECK: movshdup 485498096(%edx), %xmm1 308// CHECK: encoding: [0xf3,0x0f,0x16,0x8a,0xf0,0x1c,0xf0,0x1c] 309movshdup 485498096(%edx), %xmm1 310 311// CHECK: movshdup 485498096, %xmm1 312// CHECK: encoding: [0xf3,0x0f,0x16,0x0d,0xf0,0x1c,0xf0,0x1c] 313movshdup 485498096, %xmm1 314 315// CHECK: movshdup 64(%edx,%eax), %xmm1 316// CHECK: encoding: [0xf3,0x0f,0x16,0x4c,0x02,0x40] 317movshdup 64(%edx,%eax), %xmm1 318 319// CHECK: movshdup (%edx), %xmm1 320// CHECK: encoding: [0xf3,0x0f,0x16,0x0a] 321movshdup (%edx), %xmm1 322 323// CHECK: movshdup %xmm1, %xmm1 324// CHECK: encoding: [0xf3,0x0f,0x16,0xc9] 325movshdup %xmm1, %xmm1 326 327// CHECK: movsldup -485498096(%edx,%eax,4), %xmm1 328// CHECK: encoding: [0xf3,0x0f,0x12,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 329movsldup -485498096(%edx,%eax,4), %xmm1 330 331// CHECK: movsldup 485498096(%edx,%eax,4), %xmm1 332// CHECK: encoding: [0xf3,0x0f,0x12,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 333movsldup 485498096(%edx,%eax,4), %xmm1 334 335// CHECK: movsldup 485498096(%edx), %xmm1 336// CHECK: encoding: [0xf3,0x0f,0x12,0x8a,0xf0,0x1c,0xf0,0x1c] 337movsldup 485498096(%edx), %xmm1 338 339// CHECK: movsldup 485498096, %xmm1 340// CHECK: encoding: [0xf3,0x0f,0x12,0x0d,0xf0,0x1c,0xf0,0x1c] 341movsldup 485498096, %xmm1 342 343// CHECK: movsldup 64(%edx,%eax), %xmm1 344// CHECK: encoding: [0xf3,0x0f,0x12,0x4c,0x02,0x40] 345movsldup 64(%edx,%eax), %xmm1 346 347// CHECK: movsldup (%edx), %xmm1 348// CHECK: encoding: [0xf3,0x0f,0x12,0x0a] 349movsldup (%edx), %xmm1 350 351// CHECK: movsldup %xmm1, %xmm1 352// CHECK: encoding: [0xf3,0x0f,0x12,0xc9] 353movsldup %xmm1, %xmm1 354 355// CHECK: mwait 356// CHECK: encoding: [0x0f,0x01,0xc9] 357mwait 358 359