1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723
|
# Check 64bit AVX scalar instructions
.allow_index_reg
.text
_start:
# Tests for op xmm/mem64, xmm
vcomisd %xmm4,%xmm6
vcomisd (%rcx),%xmm4
vucomisd %xmm4,%xmm6
vucomisd (%rcx),%xmm4
# Tests for op mem64, xmm
vmovsd (%rcx),%xmm4
# Tests for op xmm, mem64
vmovsd %xmm4,(%rcx)
# Tests for op xmm, regq/mem64
# Tests for op regq/mem64, xmm
vmovd %xmm4,%rcx
vmovd %rcx,%xmm4
vmovq %xmm4,%rcx
vmovq %rcx,%xmm4
vmovq %xmm4,(%rcx)
vmovq (%rcx),%xmm4
# Tests for op xmm/mem64, regl
vcvtsd2si %xmm4,%ecx
vcvtsd2si (%rcx),%ecx
vcvttsd2si %xmm4,%ecx
vcvttsd2si (%rcx),%ecx
# Tests for op xmm/mem64, regq
vcvtsd2si %xmm4,%rcx
vcvtsd2si (%rcx),%rcx
vcvttsd2si %xmm4,%rcx
vcvttsd2si (%rcx),%rcx
# Tests for op regq/mem64, xmm, xmm
vcvtsi2sdq %rcx,%xmm4,%xmm6
vcvtsi2sdq (%rcx),%xmm4,%xmm6
vcvtsi2ssq %rcx,%xmm4,%xmm6
vcvtsi2ssq (%rcx),%xmm4,%xmm6
# Tests for op imm8, xmm/mem64, xmm, xmm
vcmpsd $7,%xmm4,%xmm6,%xmm2
vcmpsd $7,(%rcx),%xmm6,%xmm2
vroundsd $7,%xmm4,%xmm6,%xmm2
vroundsd $7,(%rcx),%xmm6,%xmm2
# Tests for op xmm/mem64, xmm, xmm
vaddsd %xmm4,%xmm6,%xmm2
vaddsd (%rcx),%xmm6,%xmm2
vcvtsd2ss %xmm4,%xmm6,%xmm2
vcvtsd2ss (%rcx),%xmm6,%xmm2
vdivsd %xmm4,%xmm6,%xmm2
vdivsd (%rcx),%xmm6,%xmm2
vmaxsd %xmm4,%xmm6,%xmm2
vmaxsd (%rcx),%xmm6,%xmm2
vminsd %xmm4,%xmm6,%xmm2
vminsd (%rcx),%xmm6,%xmm2
vmulsd %xmm4,%xmm6,%xmm2
vmulsd (%rcx),%xmm6,%xmm2
vsqrtsd %xmm4,%xmm6,%xmm2
vsqrtsd (%rcx),%xmm6,%xmm2
vsubsd %xmm4,%xmm6,%xmm2
vsubsd (%rcx),%xmm6,%xmm2
vcmpeqsd %xmm4,%xmm6,%xmm2
vcmpeqsd (%rcx),%xmm6,%xmm2
vcmpltsd %xmm4,%xmm6,%xmm2
vcmpltsd (%rcx),%xmm6,%xmm2
vcmplesd %xmm4,%xmm6,%xmm2
vcmplesd (%rcx),%xmm6,%xmm2
vcmpunordsd %xmm4,%xmm6,%xmm2
vcmpunordsd (%rcx),%xmm6,%xmm2
vcmpneqsd %xmm4,%xmm6,%xmm2
vcmpneqsd (%rcx),%xmm6,%xmm2
vcmpnltsd %xmm4,%xmm6,%xmm2
vcmpnltsd (%rcx),%xmm6,%xmm2
vcmpnlesd %xmm4,%xmm6,%xmm2
vcmpnlesd (%rcx),%xmm6,%xmm2
vcmpordsd %xmm4,%xmm6,%xmm2
vcmpordsd (%rcx),%xmm6,%xmm2
vcmpeq_uqsd %xmm4,%xmm6,%xmm2
vcmpeq_uqsd (%rcx),%xmm6,%xmm2
vcmpngesd %xmm4,%xmm6,%xmm2
vcmpngesd (%rcx),%xmm6,%xmm2
vcmpngtsd %xmm4,%xmm6,%xmm2
vcmpngtsd (%rcx),%xmm6,%xmm2
vcmpfalsesd %xmm4,%xmm6,%xmm2
vcmpfalsesd (%rcx),%xmm6,%xmm2
vcmpneq_oqsd %xmm4,%xmm6,%xmm2
vcmpneq_oqsd (%rcx),%xmm6,%xmm2
vcmpgesd %xmm4,%xmm6,%xmm2
vcmpgesd (%rcx),%xmm6,%xmm2
vcmpgtsd %xmm4,%xmm6,%xmm2
vcmpgtsd (%rcx),%xmm6,%xmm2
vcmptruesd %xmm4,%xmm6,%xmm2
vcmptruesd (%rcx),%xmm6,%xmm2
vcmpeq_ossd %xmm4,%xmm6,%xmm2
vcmpeq_ossd (%rcx),%xmm6,%xmm2
vcmplt_oqsd %xmm4,%xmm6,%xmm2
vcmplt_oqsd (%rcx),%xmm6,%xmm2
vcmple_oqsd %xmm4,%xmm6,%xmm2
vcmple_oqsd (%rcx),%xmm6,%xmm2
vcmpunord_ssd %xmm4,%xmm6,%xmm2
vcmpunord_ssd (%rcx),%xmm6,%xmm2
vcmpneq_ussd %xmm4,%xmm6,%xmm2
vcmpneq_ussd (%rcx),%xmm6,%xmm2
vcmpnlt_uqsd %xmm4,%xmm6,%xmm2
vcmpnlt_uqsd (%rcx),%xmm6,%xmm2
vcmpnle_uqsd %xmm4,%xmm6,%xmm2
vcmpnle_uqsd (%rcx),%xmm6,%xmm2
vcmpord_ssd %xmm4,%xmm6,%xmm2
vcmpord_ssd (%rcx),%xmm6,%xmm2
vcmpeq_ussd %xmm4,%xmm6,%xmm2
vcmpeq_ussd (%rcx),%xmm6,%xmm2
vcmpnge_uqsd %xmm4,%xmm6,%xmm2
vcmpnge_uqsd (%rcx),%xmm6,%xmm2
vcmpngt_uqsd %xmm4,%xmm6,%xmm2
vcmpngt_uqsd (%rcx),%xmm6,%xmm2
vcmpfalse_ossd %xmm4,%xmm6,%xmm2
vcmpfalse_ossd (%rcx),%xmm6,%xmm2
vcmpneq_ossd %xmm4,%xmm6,%xmm2
vcmpneq_ossd (%rcx),%xmm6,%xmm2
vcmpge_oqsd %xmm4,%xmm6,%xmm2
vcmpge_oqsd (%rcx),%xmm6,%xmm2
vcmpgt_oqsd %xmm4,%xmm6,%xmm2
vcmpgt_oqsd (%rcx),%xmm6,%xmm2
vcmptrue_ussd %xmm4,%xmm6,%xmm2
vcmptrue_ussd (%rcx),%xmm6,%xmm2
# Tests for op xmm/mem32, xmm, xmm
vaddss %xmm4,%xmm6,%xmm2
vaddss (%rcx),%xmm6,%xmm2
vcvtss2sd %xmm4,%xmm6,%xmm2
vcvtss2sd (%rcx),%xmm6,%xmm2
vdivss %xmm4,%xmm6,%xmm2
vdivss (%rcx),%xmm6,%xmm2
vmaxss %xmm4,%xmm6,%xmm2
vmaxss (%rcx),%xmm6,%xmm2
vminss %xmm4,%xmm6,%xmm2
vminss (%rcx),%xmm6,%xmm2
vmulss %xmm4,%xmm6,%xmm2
vmulss (%rcx),%xmm6,%xmm2
vrcpss %xmm4,%xmm6,%xmm2
vrcpss (%rcx),%xmm6,%xmm2
vrsqrtss %xmm4,%xmm6,%xmm2
vrsqrtss (%rcx),%xmm6,%xmm2
vsqrtss %xmm4,%xmm6,%xmm2
vsqrtss (%rcx),%xmm6,%xmm2
vsubss %xmm4,%xmm6,%xmm2
vsubss (%rcx),%xmm6,%xmm2
vcmpeqss %xmm4,%xmm6,%xmm2
vcmpeqss (%rcx),%xmm6,%xmm2
vcmpltss %xmm4,%xmm6,%xmm2
vcmpltss (%rcx),%xmm6,%xmm2
vcmpless %xmm4,%xmm6,%xmm2
vcmpless (%rcx),%xmm6,%xmm2
vcmpunordss %xmm4,%xmm6,%xmm2
vcmpunordss (%rcx),%xmm6,%xmm2
vcmpneqss %xmm4,%xmm6,%xmm2
vcmpneqss (%rcx),%xmm6,%xmm2
vcmpnltss %xmm4,%xmm6,%xmm2
vcmpnltss (%rcx),%xmm6,%xmm2
vcmpnless %xmm4,%xmm6,%xmm2
vcmpnless (%rcx),%xmm6,%xmm2
vcmpordss %xmm4,%xmm6,%xmm2
vcmpordss (%rcx),%xmm6,%xmm2
vcmpeq_uqss %xmm4,%xmm6,%xmm2
vcmpeq_uqss (%rcx),%xmm6,%xmm2
vcmpngess %xmm4,%xmm6,%xmm2
vcmpngess (%rcx),%xmm6,%xmm2
vcmpngtss %xmm4,%xmm6,%xmm2
vcmpngtss (%rcx),%xmm6,%xmm2
vcmpfalsess %xmm4,%xmm6,%xmm2
vcmpfalsess (%rcx),%xmm6,%xmm2
vcmpneq_oqss %xmm4,%xmm6,%xmm2
vcmpneq_oqss (%rcx),%xmm6,%xmm2
vcmpgess %xmm4,%xmm6,%xmm2
vcmpgess (%rcx),%xmm6,%xmm2
vcmpgtss %xmm4,%xmm6,%xmm2
vcmpgtss (%rcx),%xmm6,%xmm2
vcmptruess %xmm4,%xmm6,%xmm2
vcmptruess (%rcx),%xmm6,%xmm2
vcmpeq_osss %xmm4,%xmm6,%xmm2
vcmpeq_osss (%rcx),%xmm6,%xmm2
vcmplt_oqss %xmm4,%xmm6,%xmm2
vcmplt_oqss (%rcx),%xmm6,%xmm2
vcmple_oqss %xmm4,%xmm6,%xmm2
vcmple_oqss (%rcx),%xmm6,%xmm2
vcmpunord_sss %xmm4,%xmm6,%xmm2
vcmpunord_sss (%rcx),%xmm6,%xmm2
vcmpneq_usss %xmm4,%xmm6,%xmm2
vcmpneq_usss (%rcx),%xmm6,%xmm2
vcmpnlt_uqss %xmm4,%xmm6,%xmm2
vcmpnlt_uqss (%rcx),%xmm6,%xmm2
vcmpnle_uqss %xmm4,%xmm6,%xmm2
vcmpnle_uqss (%rcx),%xmm6,%xmm2
vcmpord_sss %xmm4,%xmm6,%xmm2
vcmpord_sss (%rcx),%xmm6,%xmm2
vcmpeq_usss %xmm4,%xmm6,%xmm2
vcmpeq_usss (%rcx),%xmm6,%xmm2
vcmpnge_uqss %xmm4,%xmm6,%xmm2
vcmpnge_uqss (%rcx),%xmm6,%xmm2
vcmpngt_uqss %xmm4,%xmm6,%xmm2
vcmpngt_uqss (%rcx),%xmm6,%xmm2
vcmpfalse_osss %xmm4,%xmm6,%xmm2
vcmpfalse_osss (%rcx),%xmm6,%xmm2
vcmpneq_osss %xmm4,%xmm6,%xmm2
vcmpneq_osss (%rcx),%xmm6,%xmm2
vcmpge_oqss %xmm4,%xmm6,%xmm2
vcmpge_oqss (%rcx),%xmm6,%xmm2
vcmpgt_oqss %xmm4,%xmm6,%xmm2
vcmpgt_oqss (%rcx),%xmm6,%xmm2
vcmptrue_usss %xmm4,%xmm6,%xmm2
vcmptrue_usss (%rcx),%xmm6,%xmm2
# Tests for op xmm/mem32, xmm
vcomiss %xmm4,%xmm6
vcomiss (%rcx),%xmm4
vucomiss %xmm4,%xmm6
vucomiss (%rcx),%xmm4
# Tests for op mem32, xmm
vmovss (%rcx),%xmm4
# Tests for op xmm, mem32
vmovss %xmm4,(%rcx)
# Tests for op xmm, regl/mem32
# Tests for op regl/mem32, xmm
vmovd %xmm4,%ecx
vmovd %xmm4,(%rcx)
vmovd %ecx,%xmm4
vmovd (%rcx),%xmm4
# Tests for op xmm/mem32, regl
vcvtss2si %xmm4,%ecx
vcvtss2si (%rcx),%ecx
vcvttss2si %xmm4,%ecx
vcvttss2si (%rcx),%ecx
# Tests for op xmm/mem32, regq
vcvtss2si %xmm4,%rcx
vcvtss2si (%rcx),%rcx
vcvttss2si %xmm4,%rcx
vcvttss2si (%rcx),%rcx
# Tests for op regl/mem32, xmm, xmm
vcvtsi2sd %ecx,%xmm4,%xmm6
vcvtsi2sd (%rcx),%xmm4,%xmm6
vcvtsi2ss %ecx,%xmm4,%xmm6
vcvtsi2ss (%rcx),%xmm4,%xmm6
# Tests for op imm8, xmm/mem32, xmm, xmm
vcmpss $7,%xmm4,%xmm6,%xmm2
vcmpss $7,(%rcx),%xmm6,%xmm2
vroundss $7,%xmm4,%xmm6,%xmm2
vroundss $7,(%rcx),%xmm6,%xmm2
# Tests for op xmm, xmm
vmovq %xmm4,%xmm6
# Tests for op xmm, xmm, xmm
vmovsd %xmm4,%xmm6,%xmm2
vmovss %xmm4,%xmm6,%xmm2
#Tests with different memory and register operands.
vmovd %xmm8,0x12345678
vcvtsi2sdl 0x12345678,%xmm8,%xmm15
vmovd %xmm8,(%rbp)
vcvtsi2sdl (%rbp),%xmm8,%xmm15
vmovd %xmm8,(%rsp)
vcvtsi2sdl (%rsp),%xmm8,%xmm15
vmovd %xmm8,0x99(%rbp)
vcvtsi2sdl 0x99(%rbp),%xmm8,%xmm15
vmovd %xmm8,0x99(%r15)
vcvtsi2sdl 0x99(%r15),%xmm8,%xmm15
vmovd %xmm8,0x99(%rip)
vcvtsi2sdl 0x99(%rip),%xmm8,%xmm15
vmovd %xmm8,0x99(%rsp)
vcvtsi2sdl 0x99(%rsp),%xmm8,%xmm15
vmovd %xmm8,0x99(%r12)
vcvtsi2sdl 0x99(%r12),%xmm8,%xmm15
vmovd %xmm8,-0x99(,%riz)
vcvtsi2sdl -0x99(,%riz),%xmm8,%xmm15
vmovd %xmm8,-0x99(,%riz,2)
vcvtsi2sdl -0x99(,%riz,2),%xmm8,%xmm15
vmovd %xmm8,-0x99(%rbx,%riz)
vcvtsi2sdl -0x99(%rbx,%riz),%xmm8,%xmm15
vmovd %xmm8,-0x99(%rbx,%riz,2)
vcvtsi2sdl -0x99(%rbx,%riz,2),%xmm8,%xmm15
vmovd %xmm8,-0x99(%r12,%r15,4)
vcvtsi2sdl -0x99(%r12,%r15,4),%xmm8,%xmm15
vmovd %xmm8,-0x99(%r8,%r15,8)
vcvtsi2sdl -0x99(%r8,%r15,8),%xmm8,%xmm15
vmovd %xmm8,-0x99(%rbp,%r13,4)
vcvtsi2sdl -0x99(%rbp,%r13,4),%xmm8,%xmm15
vmovd %xmm8,-0x99(%rsp,%r12,1)
vcvtsi2sdl -0x99(%rsp,%r12,1),%xmm8,%xmm15
# Tests for all register operands.
vmovd %xmm8,%r8d
vcvtsd2si %xmm8,%r8d
vcvtsi2sdl %r8d,%xmm8,%xmm15
# Tests for different memory/register operand
vcvtsd2si (%rcx),%r8
vcvtss2si (%rcx),%r8
.intel_syntax noprefix
# Tests for op xmm/mem64, xmm
vcomisd xmm6,xmm4
vcomisd xmm4,QWORD PTR [rcx]
vcomisd xmm4,[rcx]
vucomisd xmm6,xmm4
vucomisd xmm4,QWORD PTR [rcx]
vucomisd xmm4,[rcx]
# Tests for op mem64, xmm
vmovsd xmm4,QWORD PTR [rcx]
vmovsd xmm4,[rcx]
# Tests for op xmm, mem64
vmovsd QWORD PTR [rcx],xmm4
vmovsd [rcx],xmm4
# Tests for op xmm, regq/mem64
# Tests for op regq/mem64, xmm
vmovd rcx,xmm4
vmovd xmm4,rcx
vmovd [rcx],xmm4
vmovd xmm4,[rcx]
vmovq rcx,xmm4
vmovq xmm4,rcx
vmovq QWORD PTR [rcx],xmm4
vmovq xmm4,QWORD PTR [rcx]
vmovq [rcx],xmm4
vmovq xmm4,[rcx]
# Tests for op xmm/mem64, regl
vcvtsd2si ecx,xmm4
vcvtsd2si ecx,QWORD PTR [rcx]
vcvtsd2si ecx,[rcx]
vcvttsd2si ecx,xmm4
vcvttsd2si ecx,QWORD PTR [rcx]
vcvttsd2si ecx,[rcx]
# Tests for op xmm/mem64, regq
vcvtsd2si rcx,xmm4
vcvtsd2si rcx,QWORD PTR [rcx]
vcvtsd2si rcx,[rcx]
vcvttsd2si rcx,xmm4
vcvttsd2si rcx,QWORD PTR [rcx]
vcvttsd2si rcx,[rcx]
# Tests for op regq/mem64, xmm, xmm
vcvtsi2sdq xmm6,xmm4,rcx
vcvtsi2sdq xmm6,xmm4,QWORD PTR [rcx]
vcvtsi2sdq xmm6,xmm4,[rcx]
vcvtsi2ssq xmm6,xmm4,rcx
vcvtsi2ssq xmm6,xmm4,QWORD PTR [rcx]
vcvtsi2ssq xmm6,xmm4,[rcx]
# Tests for op imm8, xmm/mem64, xmm, xmm
vcmpsd xmm2,xmm6,xmm4,7
vcmpsd xmm2,xmm6,QWORD PTR [rcx],7
vcmpsd xmm2,xmm6,[rcx],7
vroundsd xmm2,xmm6,xmm4,7
vroundsd xmm2,xmm6,QWORD PTR [rcx],7
vroundsd xmm2,xmm6,[rcx],7
# Tests for op xmm/mem64, xmm, xmm
vaddsd xmm2,xmm6,xmm4
vaddsd xmm2,xmm6,QWORD PTR [rcx]
vaddsd xmm2,xmm6,[rcx]
vcvtsd2ss xmm2,xmm6,xmm4
vcvtsd2ss xmm2,xmm6,QWORD PTR [rcx]
vcvtsd2ss xmm2,xmm6,[rcx]
vdivsd xmm2,xmm6,xmm4
vdivsd xmm2,xmm6,QWORD PTR [rcx]
vdivsd xmm2,xmm6,[rcx]
vmaxsd xmm2,xmm6,xmm4
vmaxsd xmm2,xmm6,QWORD PTR [rcx]
vmaxsd xmm2,xmm6,[rcx]
vminsd xmm2,xmm6,xmm4
vminsd xmm2,xmm6,QWORD PTR [rcx]
vminsd xmm2,xmm6,[rcx]
vmulsd xmm2,xmm6,xmm4
vmulsd xmm2,xmm6,QWORD PTR [rcx]
vmulsd xmm2,xmm6,[rcx]
vsqrtsd xmm2,xmm6,xmm4
vsqrtsd xmm2,xmm6,QWORD PTR [rcx]
vsqrtsd xmm2,xmm6,[rcx]
vsubsd xmm2,xmm6,xmm4
vsubsd xmm2,xmm6,QWORD PTR [rcx]
vsubsd xmm2,xmm6,[rcx]
vcmpeqsd xmm2,xmm6,xmm4
vcmpeqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpeqsd xmm2,xmm6,[rcx]
vcmpltsd xmm2,xmm6,xmm4
vcmpltsd xmm2,xmm6,QWORD PTR [rcx]
vcmpltsd xmm2,xmm6,[rcx]
vcmplesd xmm2,xmm6,xmm4
vcmplesd xmm2,xmm6,QWORD PTR [rcx]
vcmplesd xmm2,xmm6,[rcx]
vcmpunordsd xmm2,xmm6,xmm4
vcmpunordsd xmm2,xmm6,QWORD PTR [rcx]
vcmpunordsd xmm2,xmm6,[rcx]
vcmpneqsd xmm2,xmm6,xmm4
vcmpneqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpneqsd xmm2,xmm6,[rcx]
vcmpnltsd xmm2,xmm6,xmm4
vcmpnltsd xmm2,xmm6,QWORD PTR [rcx]
vcmpnltsd xmm2,xmm6,[rcx]
vcmpnlesd xmm2,xmm6,xmm4
vcmpnlesd xmm2,xmm6,QWORD PTR [rcx]
vcmpnlesd xmm2,xmm6,[rcx]
vcmpordsd xmm2,xmm6,xmm4
vcmpordsd xmm2,xmm6,QWORD PTR [rcx]
vcmpordsd xmm2,xmm6,[rcx]
vcmpeq_uqsd xmm2,xmm6,xmm4
vcmpeq_uqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpeq_uqsd xmm2,xmm6,[rcx]
vcmpngesd xmm2,xmm6,xmm4
vcmpngesd xmm2,xmm6,QWORD PTR [rcx]
vcmpngesd xmm2,xmm6,[rcx]
vcmpngtsd xmm2,xmm6,xmm4
vcmpngtsd xmm2,xmm6,QWORD PTR [rcx]
vcmpngtsd xmm2,xmm6,[rcx]
vcmpfalsesd xmm2,xmm6,xmm4
vcmpfalsesd xmm2,xmm6,QWORD PTR [rcx]
vcmpfalsesd xmm2,xmm6,[rcx]
vcmpneq_oqsd xmm2,xmm6,xmm4
vcmpneq_oqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpneq_oqsd xmm2,xmm6,[rcx]
vcmpgesd xmm2,xmm6,xmm4
vcmpgesd xmm2,xmm6,QWORD PTR [rcx]
vcmpgesd xmm2,xmm6,[rcx]
vcmpgtsd xmm2,xmm6,xmm4
vcmpgtsd xmm2,xmm6,QWORD PTR [rcx]
vcmpgtsd xmm2,xmm6,[rcx]
vcmptruesd xmm2,xmm6,xmm4
vcmptruesd xmm2,xmm6,QWORD PTR [rcx]
vcmptruesd xmm2,xmm6,[rcx]
vcmpeq_ossd xmm2,xmm6,xmm4
vcmpeq_ossd xmm2,xmm6,QWORD PTR [rcx]
vcmpeq_ossd xmm2,xmm6,[rcx]
vcmplt_oqsd xmm2,xmm6,xmm4
vcmplt_oqsd xmm2,xmm6,QWORD PTR [rcx]
vcmplt_oqsd xmm2,xmm6,[rcx]
vcmple_oqsd xmm2,xmm6,xmm4
vcmple_oqsd xmm2,xmm6,QWORD PTR [rcx]
vcmple_oqsd xmm2,xmm6,[rcx]
vcmpunord_ssd xmm2,xmm6,xmm4
vcmpunord_ssd xmm2,xmm6,QWORD PTR [rcx]
vcmpunord_ssd xmm2,xmm6,[rcx]
vcmpneq_ussd xmm2,xmm6,xmm4
vcmpneq_ussd xmm2,xmm6,QWORD PTR [rcx]
vcmpneq_ussd xmm2,xmm6,[rcx]
vcmpnlt_uqsd xmm2,xmm6,xmm4
vcmpnlt_uqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpnlt_uqsd xmm2,xmm6,[rcx]
vcmpnle_uqsd xmm2,xmm6,xmm4
vcmpnle_uqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpnle_uqsd xmm2,xmm6,[rcx]
vcmpord_ssd xmm2,xmm6,xmm4
vcmpord_ssd xmm2,xmm6,QWORD PTR [rcx]
vcmpord_ssd xmm2,xmm6,[rcx]
vcmpeq_ussd xmm2,xmm6,xmm4
vcmpeq_ussd xmm2,xmm6,QWORD PTR [rcx]
vcmpeq_ussd xmm2,xmm6,[rcx]
vcmpnge_uqsd xmm2,xmm6,xmm4
vcmpnge_uqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpnge_uqsd xmm2,xmm6,[rcx]
vcmpngt_uqsd xmm2,xmm6,xmm4
vcmpngt_uqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpngt_uqsd xmm2,xmm6,[rcx]
vcmpfalse_ossd xmm2,xmm6,xmm4
vcmpfalse_ossd xmm2,xmm6,QWORD PTR [rcx]
vcmpfalse_ossd xmm2,xmm6,[rcx]
vcmpneq_ossd xmm2,xmm6,xmm4
vcmpneq_ossd xmm2,xmm6,QWORD PTR [rcx]
vcmpneq_ossd xmm2,xmm6,[rcx]
vcmpge_oqsd xmm2,xmm6,xmm4
vcmpge_oqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpge_oqsd xmm2,xmm6,[rcx]
vcmpgt_oqsd xmm2,xmm6,xmm4
vcmpgt_oqsd xmm2,xmm6,QWORD PTR [rcx]
vcmpgt_oqsd xmm2,xmm6,[rcx]
vcmptrue_ussd xmm2,xmm6,xmm4
vcmptrue_ussd xmm2,xmm6,QWORD PTR [rcx]
vcmptrue_ussd xmm2,xmm6,[rcx]
# Tests for op xmm/mem32, xmm, xmm
vaddss xmm2,xmm6,xmm4
vaddss xmm2,xmm6,DWORD PTR [rcx]
vaddss xmm2,xmm6,[rcx]
vcvtss2sd xmm2,xmm6,xmm4
vcvtss2sd xmm2,xmm6,DWORD PTR [rcx]
vcvtss2sd xmm2,xmm6,[rcx]
vdivss xmm2,xmm6,xmm4
vdivss xmm2,xmm6,DWORD PTR [rcx]
vdivss xmm2,xmm6,[rcx]
vmaxss xmm2,xmm6,xmm4
vmaxss xmm2,xmm6,DWORD PTR [rcx]
vmaxss xmm2,xmm6,[rcx]
vminss xmm2,xmm6,xmm4
vminss xmm2,xmm6,DWORD PTR [rcx]
vminss xmm2,xmm6,[rcx]
vmulss xmm2,xmm6,xmm4
vmulss xmm2,xmm6,DWORD PTR [rcx]
vmulss xmm2,xmm6,[rcx]
vrcpss xmm2,xmm6,xmm4
vrcpss xmm2,xmm6,DWORD PTR [rcx]
vrcpss xmm2,xmm6,[rcx]
vrsqrtss xmm2,xmm6,xmm4
vrsqrtss xmm2,xmm6,DWORD PTR [rcx]
vrsqrtss xmm2,xmm6,[rcx]
vsqrtss xmm2,xmm6,xmm4
vsqrtss xmm2,xmm6,DWORD PTR [rcx]
vsqrtss xmm2,xmm6,[rcx]
vsubss xmm2,xmm6,xmm4
vsubss xmm2,xmm6,DWORD PTR [rcx]
vsubss xmm2,xmm6,[rcx]
vcmpeqss xmm2,xmm6,xmm4
vcmpeqss xmm2,xmm6,DWORD PTR [rcx]
vcmpeqss xmm2,xmm6,[rcx]
vcmpltss xmm2,xmm6,xmm4
vcmpltss xmm2,xmm6,DWORD PTR [rcx]
vcmpltss xmm2,xmm6,[rcx]
vcmpless xmm2,xmm6,xmm4
vcmpless xmm2,xmm6,DWORD PTR [rcx]
vcmpless xmm2,xmm6,[rcx]
vcmpunordss xmm2,xmm6,xmm4
vcmpunordss xmm2,xmm6,DWORD PTR [rcx]
vcmpunordss xmm2,xmm6,[rcx]
vcmpneqss xmm2,xmm6,xmm4
vcmpneqss xmm2,xmm6,DWORD PTR [rcx]
vcmpneqss xmm2,xmm6,[rcx]
vcmpnltss xmm2,xmm6,xmm4
vcmpnltss xmm2,xmm6,DWORD PTR [rcx]
vcmpnltss xmm2,xmm6,[rcx]
vcmpnless xmm2,xmm6,xmm4
vcmpnless xmm2,xmm6,DWORD PTR [rcx]
vcmpnless xmm2,xmm6,[rcx]
vcmpordss xmm2,xmm6,xmm4
vcmpordss xmm2,xmm6,DWORD PTR [rcx]
vcmpordss xmm2,xmm6,[rcx]
vcmpeq_uqss xmm2,xmm6,xmm4
vcmpeq_uqss xmm2,xmm6,DWORD PTR [rcx]
vcmpeq_uqss xmm2,xmm6,[rcx]
vcmpngess xmm2,xmm6,xmm4
vcmpngess xmm2,xmm6,DWORD PTR [rcx]
vcmpngess xmm2,xmm6,[rcx]
vcmpngtss xmm2,xmm6,xmm4
vcmpngtss xmm2,xmm6,DWORD PTR [rcx]
vcmpngtss xmm2,xmm6,[rcx]
vcmpfalsess xmm2,xmm6,xmm4
vcmpfalsess xmm2,xmm6,DWORD PTR [rcx]
vcmpfalsess xmm2,xmm6,[rcx]
vcmpneq_oqss xmm2,xmm6,xmm4
vcmpneq_oqss xmm2,xmm6,DWORD PTR [rcx]
vcmpneq_oqss xmm2,xmm6,[rcx]
vcmpgess xmm2,xmm6,xmm4
vcmpgess xmm2,xmm6,DWORD PTR [rcx]
vcmpgess xmm2,xmm6,[rcx]
vcmpgtss xmm2,xmm6,xmm4
vcmpgtss xmm2,xmm6,DWORD PTR [rcx]
vcmpgtss xmm2,xmm6,[rcx]
vcmptruess xmm2,xmm6,xmm4
vcmptruess xmm2,xmm6,DWORD PTR [rcx]
vcmptruess xmm2,xmm6,[rcx]
vcmpeq_osss xmm2,xmm6,xmm4
vcmpeq_osss xmm2,xmm6,DWORD PTR [rcx]
vcmpeq_osss xmm2,xmm6,[rcx]
vcmplt_oqss xmm2,xmm6,xmm4
vcmplt_oqss xmm2,xmm6,DWORD PTR [rcx]
vcmplt_oqss xmm2,xmm6,[rcx]
vcmple_oqss xmm2,xmm6,xmm4
vcmple_oqss xmm2,xmm6,DWORD PTR [rcx]
vcmple_oqss xmm2,xmm6,[rcx]
vcmpunord_sss xmm2,xmm6,xmm4
vcmpunord_sss xmm2,xmm6,DWORD PTR [rcx]
vcmpunord_sss xmm2,xmm6,[rcx]
vcmpneq_usss xmm2,xmm6,xmm4
vcmpneq_usss xmm2,xmm6,DWORD PTR [rcx]
vcmpneq_usss xmm2,xmm6,[rcx]
vcmpnlt_uqss xmm2,xmm6,xmm4
vcmpnlt_uqss xmm2,xmm6,DWORD PTR [rcx]
vcmpnlt_uqss xmm2,xmm6,[rcx]
vcmpnle_uqss xmm2,xmm6,xmm4
vcmpnle_uqss xmm2,xmm6,DWORD PTR [rcx]
vcmpnle_uqss xmm2,xmm6,[rcx]
vcmpord_sss xmm2,xmm6,xmm4
vcmpord_sss xmm2,xmm6,DWORD PTR [rcx]
vcmpord_sss xmm2,xmm6,[rcx]
vcmpeq_usss xmm2,xmm6,xmm4
vcmpeq_usss xmm2,xmm6,DWORD PTR [rcx]
vcmpeq_usss xmm2,xmm6,[rcx]
vcmpnge_uqss xmm2,xmm6,xmm4
vcmpnge_uqss xmm2,xmm6,DWORD PTR [rcx]
vcmpnge_uqss xmm2,xmm6,[rcx]
vcmpngt_uqss xmm2,xmm6,xmm4
vcmpngt_uqss xmm2,xmm6,DWORD PTR [rcx]
vcmpngt_uqss xmm2,xmm6,[rcx]
vcmpfalse_osss xmm2,xmm6,xmm4
vcmpfalse_osss xmm2,xmm6,DWORD PTR [rcx]
vcmpfalse_osss xmm2,xmm6,[rcx]
vcmpneq_osss xmm2,xmm6,xmm4
vcmpneq_osss xmm2,xmm6,DWORD PTR [rcx]
vcmpneq_osss xmm2,xmm6,[rcx]
vcmpge_oqss xmm2,xmm6,xmm4
vcmpge_oqss xmm2,xmm6,DWORD PTR [rcx]
vcmpge_oqss xmm2,xmm6,[rcx]
vcmpgt_oqss xmm2,xmm6,xmm4
vcmpgt_oqss xmm2,xmm6,DWORD PTR [rcx]
vcmpgt_oqss xmm2,xmm6,[rcx]
vcmptrue_usss xmm2,xmm6,xmm4
vcmptrue_usss xmm2,xmm6,DWORD PTR [rcx]
vcmptrue_usss xmm2,xmm6,[rcx]
# Tests for op xmm/mem32, xmm
vcomiss xmm6,xmm4
vcomiss xmm4,DWORD PTR [rcx]
vcomiss xmm4,[rcx]
vucomiss xmm6,xmm4
vucomiss xmm4,DWORD PTR [rcx]
vucomiss xmm4,[rcx]
# Tests for op mem32, xmm
vmovss xmm4,DWORD PTR [rcx]
vmovss xmm4,[rcx]
# Tests for op xmm, mem32
vmovss DWORD PTR [rcx],xmm4
vmovss [rcx],xmm4
# Tests for op xmm, regl/mem32
# Tests for op regl/mem32, xmm
vmovd ecx,xmm4
vmovd DWORD PTR [rcx],xmm4
vmovd xmm4,ecx
vmovd xmm4,DWORD PTR [rcx]
vmovd [rcx],xmm4
vmovd xmm4,[rcx]
# Tests for op xmm/mem32, regl
vcvtss2si ecx,xmm4
vcvtss2si ecx,DWORD PTR [rcx]
vcvtss2si ecx,[rcx]
vcvttss2si ecx,xmm4
vcvttss2si ecx,DWORD PTR [rcx]
vcvttss2si ecx,[rcx]
# Tests for op xmm/mem32, regq
vcvtss2si rcx,xmm4
vcvtss2si rcx,DWORD PTR [rcx]
vcvtss2si rcx,[rcx]
vcvttss2si rcx,xmm4
vcvttss2si rcx,DWORD PTR [rcx]
vcvttss2si rcx,[rcx]
# Tests for op regl/mem32, xmm, xmm
vcvtsi2sd xmm6,xmm4,ecx
vcvtsi2sd xmm6,xmm4,DWORD PTR [rcx]
vcvtsi2ss xmm6,xmm4,ecx
vcvtsi2ss xmm6,xmm4,DWORD PTR [rcx]
# Tests for op imm8, xmm/mem32, xmm, xmm
vcmpss xmm2,xmm6,xmm4,7
vcmpss xmm2,xmm6,DWORD PTR [rcx],7
vcmpss xmm2,xmm6,[rcx],7
vroundss xmm2,xmm6,xmm4,7
vroundss xmm2,xmm6,DWORD PTR [rcx],7
vroundss xmm2,xmm6,[rcx],7
# Tests for op xmm, xmm
vmovq xmm6,xmm4
# Tests for op xmm, xmm, xmm
vmovsd xmm2,xmm6,xmm4
vmovss xmm2,xmm6,xmm4
#Tests with different memory and register operands.
vmovd DWORD PTR ds:0x12345678,xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR ds:0x12345678
vmovd DWORD PTR [rbp],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rbp]
vmovd DWORD PTR [rbp+0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rbp+0x99]
vmovd DWORD PTR [r15+0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [r15+0x99]
vmovd DWORD PTR [rip+0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rip+0x99]
vmovd DWORD PTR [rsp+0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rsp+0x99]
vmovd DWORD PTR [r12+0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [r12+0x99]
vmovd DWORD PTR [riz*1-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [riz*1-0x99]
vmovd DWORD PTR [riz*2-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [riz*2-0x99]
vmovd DWORD PTR [rbx+riz*1-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rbx+riz*1-0x99]
vmovd DWORD PTR [rbx+riz*2-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rbx+riz*2-0x99]
vmovd DWORD PTR [r12+r15*4-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [r12+r15*4-0x99]
vmovd DWORD PTR [r8+r15*8-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [r8+r15*8-0x99]
vmovd DWORD PTR [rbp+r12*4-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rbp+r12*4-0x99]
vmovd DWORD PTR [rsp+r13*1-0x99],xmm8
vcvtsi2sd xmm15,xmm8,DWORD PTR [rsp+r13*1-0x99]
# Tests for all register operands.
vmovd r8d,xmm8
vcvtsd2si r8d,xmm8
vcvtsi2sd xmm15,xmm8,r8d
# Tests for different memory/register operand
vcvtsd2si r8,QWORD PTR [rcx]
vcvtss2si r8,DWORD PTR [rcx]
|