1# RUN: llvm-mc --disassemble %s -triple powerpc64-unknown-unknown -mcpu=pwr7 | FileCheck %s 2 3# CHECK: lvebx 2, 3, 4 40x7c 0x43 0x20 0x0e 5 6# CHECK: lvehx 2, 3, 4 70x7c 0x43 0x20 0x4e 8 9# CHECK: lvewx 2, 3, 4 100x7c 0x43 0x20 0x8e 11 12# CHECK: lvx 2, 3, 4 130x7c 0x43 0x20 0xce 14 15# CHECK: lvxl 2, 3, 4 160x7c 0x43 0x22 0xce 17 18# CHECK: stvebx 2, 3, 4 190x7c 0x43 0x21 0x0e 20 21# CHECK: stvehx 2, 3, 4 220x7c 0x43 0x21 0x4e 23 24# CHECK: stvewx 2, 3, 4 250x7c 0x43 0x21 0x8e 26 27# CHECK: stvx 2, 3, 4 280x7c 0x43 0x21 0xce 29 30# CHECK: stvxl 2, 3, 4 310x7c 0x43 0x23 0xce 32 33# CHECK: lvsl 2, 3, 4 340x7c 0x43 0x20 0x0c 35 36# CHECK: lvsr 2, 3, 4 370x7c 0x43 0x20 0x4c 38 39# CHECK: vpkpx 2, 3, 4 400x10 0x43 0x23 0x0e 41 42# CHECK: vpkshss 2, 3, 4 430x10 0x43 0x21 0x8e 44 45# CHECK: vpkshus 2, 3, 4 460x10 0x43 0x21 0x0e 47 48# CHECK: vpkswss 2, 3, 4 490x10 0x43 0x21 0xce 50 51# CHECK: vpkswus 2, 3, 4 520x10 0x43 0x21 0x4e 53 54# CHECK: vpkuhum 2, 3, 4 550x10 0x43 0x20 0x0e 56 57# CHECK: vpkuhus 2, 3, 4 580x10 0x43 0x20 0x8e 59 60# CHECK: vpkuwum 2, 3, 4 610x10 0x43 0x20 0x4e 62 63# CHECK: vpkuwus 2, 3, 4 640x10 0x43 0x20 0xce 65 66# CHECK: vupkhpx 2, 3 670x10 0x40 0x1b 0x4e 68 69# CHECK: vupkhsb 2, 3 700x10 0x40 0x1a 0x0e 71 72# CHECK: vupkhsh 2, 3 730x10 0x40 0x1a 0x4e 74 75# CHECK: vupklpx 2, 3 760x10 0x40 0x1b 0xce 77 78# CHECK: vupklsb 2, 3 790x10 0x40 0x1a 0x8e 80 81# CHECK: vupklsh 2, 3 820x10 0x40 0x1a 0xce 83 84# CHECK: vmrghb 2, 3, 4 850x10 0x43 0x20 0x0c 86 87# CHECK: vmrghh 2, 3, 4 880x10 0x43 0x20 0x4c 89 90# CHECK: vmrghw 2, 3, 4 910x10 0x43 0x20 0x8c 92 93# CHECK: vmrglb 2, 3, 4 940x10 0x43 0x21 0x0c 95 96# CHECK: vmrglh 2, 3, 4 970x10 0x43 0x21 0x4c 98 99# CHECK: vmrglw 2, 3, 4 1000x10 0x43 0x21 0x8c 101 102# CHECK: vmrgew 2, 3, 4 1030x10 0x43 0x27 0x8c 104 105# CHECK: vmrgow 2, 3, 4 1060x10 0x43 0x26 0x8c 107 108# CHECK: vspltb 2, 3, 1 1090x10 0x41 0x1a 0x0c 110 111# CHECK: vsplth 2, 3, 1 1120x10 0x41 0x1a 0x4c 113 114# CHECK: vspltw 2, 3, 1 1150x10 0x41 0x1a 0x8c 116 117# CHECK: vspltisb 2, 3 1180x10 0x43 0x03 0x0c 119 120# CHECK: vspltish 2, 3 1210x10 0x43 0x03 0x4c 122 123# CHECK: vspltisw 2, 3 1240x10 0x43 0x03 0x8c 125 126# CHECK: vperm 2, 3, 4, 5 1270x10 0x43 0x21 0x6b 128 129# CHECK: vpermxor 2, 3, 4, 5 1300x10 0x43 0x21 0x6d 131 132# CHECK: vsbox 2, 5 1330x10 0x45 0x05 0xc8 134 135# CHECK: vcipher 2, 5, 17 1360x10 0x45 0x8d 0x08 137 138# CHECK: vcipherlast 2, 5, 17 1390x10 0x45 0x8d 0x09 140 141# CHECK: vncipher 2, 5, 17 1420x10,0x45,0x8d,0x48 143 144# CHECK: vncipherlast 2, 5, 17 1450x10,0x45,0x8d,0x49 146 147# CHECK: vpmsumb 2, 5, 17 1480x10 0x45 0x8c 0x08 149 150# CHECK: vpmsumh 2, 5, 17 1510x10 0x45 0x8c 0x48 152 153# CHECK: vpmsumw 2, 5, 17 1540x10 0x45 0x8c 0x88 155 156# CHECK: vpmsumd 2, 5, 17 1570x10 0x45 0x8c 0xc8 158 159# CHECK: vshasigmaw 2, 3, 0, 11 1600x10 0x43 0x5e 0x82 161 162# CHECK: vshasigmad 2, 3, 1, 15 1630x10 0x43 0xfe 0xc2 164 165# CHECK: vsel 2, 3, 4, 5 1660x10 0x43 0x21 0x6a 167 168# CHECK: vsl 2, 3, 4 1690x10 0x43 0x21 0xc4 170 171# CHECK: vsldoi 2, 3, 4, 5 1720x10 0x43 0x21 0x6c 173 174# CHECK: vslo 2, 3, 4 1750x10 0x43 0x24 0x0c 176 177# CHECK: vsr 2, 3, 4 1780x10 0x43 0x22 0xc4 179 180# CHECK: vsro 2, 3, 4 1810x10 0x43 0x24 0x4c 182 183# CHECK: vaddcuw 2, 3, 4 1840x10 0x43 0x21 0x80 185 186# CHECK: vaddsbs 2, 3, 4 1870x10 0x43 0x23 0x00 188 189# CHECK: vaddshs 2, 3, 4 1900x10 0x43 0x23 0x40 191 192# CHECK: vaddsws 2, 3, 4 1930x10 0x43 0x23 0x80 194 195# CHECK: vaddubm 2, 3, 4 1960x10 0x43 0x20 0x00 197 198# CHECK: vadduhm 2, 3, 4 1990x10 0x43 0x20 0x40 200 201# CHECK: vadduwm 2, 3, 4 2020x10 0x43 0x20 0x80 203 204# CHECK: vaddudm 2, 3, 4 2050x10 0x43 0x20 0xc0 206 207# CHECK: vaddubs 2, 3, 4 2080x10 0x43 0x22 0x00 209 210# CHECK: vadduhs 2, 3, 4 2110x10 0x43 0x22 0x40 212 213# CHECK: vadduws 2, 3, 4 2140x10 0x43 0x22 0x80 215 216# CHECK: vadduqm 2, 3, 4 2170x10 0x43 0x21 0x00 218 219# CHECK: vaddeuqm 2, 3, 4, 5 2200x10 0x43 0x21 0x7c 221 222# CHECK: vaddcuq 2, 3, 4 2230x10 0x43 0x21 0x40 224 225# CHECK: vaddecuq 2, 3, 4, 5 2260x10 0x43 0x21 0x7d 227 228# CHECK: vsubcuw 2, 3, 4 2290x10 0x43 0x25 0x80 230 231# CHECK: vsubsbs 2, 3, 4 2320x10 0x43 0x27 0x00 233 234# CHECK: vsubshs 2, 3, 4 2350x10 0x43 0x27 0x40 236 237# CHECK: vsubsws 2, 3, 4 2380x10 0x43 0x27 0x80 239 240# CHECK: vsububm 2, 3, 4 2410x10 0x43 0x24 0x00 242 243# CHECK: vsubuhm 2, 3, 4 2440x10 0x43 0x24 0x40 245 246# CHECK: vsubuwm 2, 3, 4 2470x10 0x43 0x24 0x80 248 249# CHECK: vsubudm 2, 3, 4 2500x10 0x43 0x24 0xc0 251 252# CHECK: vsububs 2, 3, 4 2530x10 0x43 0x26 0x00 254 255# CHECK: vsubuhs 2, 3, 4 2560x10 0x43 0x26 0x40 257 258# CHECK: vsubuws 2, 3, 4 2590x10 0x43 0x26 0x80 260 261# CHECK: vsubuqm 2, 3, 4 2620x10 0x43 0x25 0x00 263 264# CHECK: vsubeuqm 2, 3, 4, 5 2650x10 0x43 0x21 0x7e 266 267# CHECK: vsubcuq 2, 3, 4 2680x10 0x43 0x25 0x40 269 270# CHECK: vsubecuq 2, 3, 4, 5 2710x10 0x43 0x21 0x7f 272 273# CHECK: vmulesb 2, 3, 4 2740x10 0x43 0x23 0x08 275 276# CHECK: vmulesh 2, 3, 4 2770x10 0x43 0x23 0x48 278 279# CHECK: vmulesw 2, 3, 4 2800x10 0x43 0x23 0x88 281 282# CHECK: vmuleub 2, 3, 4 2830x10 0x43 0x22 0x08 284 285# CHECK: vmuleuh 2, 3, 4 2860x10 0x43 0x22 0x48 287 288# CHECK: vmuleuw 2, 3, 4 2890x10 0x43 0x22 0x88 290 291# CHECK: vmulosb 2, 3, 4 2920x10 0x43 0x21 0x08 293 294# CHECK: vmulosh 2, 3, 4 2950x10 0x43 0x21 0x48 296 297# CHECK: vmulosw 2, 3, 4 2980x10 0x43 0x21 0x88 299 300# CHECK: vmuloub 2, 3, 4 3010x10 0x43 0x20 0x08 302 303# CHECK: vmulouh 2, 3, 4 3040x10 0x43 0x20 0x48 305 306# CHECK: vmulouw 2, 3, 4 3070x10 0x43 0x20 0x88 308 309# CHECK: vmuluwm 2, 3, 4 3100x10 0x43 0x20 0x89 311 312# CHECK: vmhaddshs 2, 3, 4, 5 3130x10 0x43 0x21 0x60 314 315# CHECK: vmhraddshs 2, 3, 4, 5 3160x10 0x43 0x21 0x61 317 318# CHECK: vmladduhm 2, 3, 4, 5 3190x10 0x43 0x21 0x62 320 321# CHECK: vmsumubm 2, 3, 4, 5 3220x10 0x43 0x21 0x64 323 324# CHECK: vmsummbm 2, 3, 4, 5 3250x10 0x43 0x21 0x65 326 327# CHECK: vmsumshm 2, 3, 4, 5 3280x10 0x43 0x21 0x68 329 330# CHECK: vmsumshs 2, 3, 4, 5 3310x10 0x43 0x21 0x69 332 333# CHECK: vmsumuhm 2, 3, 4, 5 3340x10 0x43 0x21 0x66 335 336# CHECK: vmsumuhs 2, 3, 4, 5 3370x10 0x43 0x21 0x67 338 339# CHECK: vsumsws 2, 3, 4 3400x10 0x43 0x27 0x88 341 342# CHECK: vsum2sws 2, 3, 4 3430x10 0x43 0x26 0x88 344 345# CHECK: vsum4sbs 2, 3, 4 3460x10 0x43 0x27 0x08 347 348# CHECK: vsum4shs 2, 3, 4 3490x10 0x43 0x26 0x48 350 351# CHECK: vsum4ubs 2, 3, 4 3520x10 0x43 0x26 0x08 353 354# CHECK: vavgsb 2, 3, 4 3550x10 0x43 0x25 0x02 356 357# CHECK: vavgsh 2, 3, 4 3580x10 0x43 0x25 0x42 359 360# CHECK: vavgsw 2, 3, 4 3610x10 0x43 0x25 0x82 362 363# CHECK: vavgub 2, 3, 4 3640x10 0x43 0x24 0x02 365 366# CHECK: vavguh 2, 3, 4 3670x10 0x43 0x24 0x42 368 369# CHECK: vavguw 2, 3, 4 3700x10 0x43 0x24 0x82 371 372# CHECK: vmaxsb 2, 3, 4 3730x10 0x43 0x21 0x02 374 375# CHECK: vmaxsh 2, 3, 4 3760x10 0x43 0x21 0x42 377 378# CHECK: vmaxsw 2, 3, 4 3790x10 0x43 0x21 0x82 380 381# CHECK: vmaxsd 2, 3, 4 3820x10 0x43 0x21 0xc2 383 384# CHECK: vmaxub 2, 3, 4 3850x10 0x43 0x20 0x02 386 387# CHECK: vmaxuh 2, 3, 4 3880x10 0x43 0x20 0x42 389 390# CHECK: vmaxuw 2, 3, 4 3910x10 0x43 0x20 0x82 392 393# CHECK: vmaxud 2, 3, 4 3940x10 0x43 0x20 0xc2 395 396# CHECK: vminsb 2, 3, 4 3970x10 0x43 0x23 0x02 398 399# CHECK: vminsh 2, 3, 4 4000x10 0x43 0x23 0x42 401 402# CHECK: vminsw 2, 3, 4 4030x10 0x43 0x23 0x82 404 405# CHECK: vminsd 2, 3, 4 4060x10 0x43 0x23 0xc2 407 408# CHECK: vminub 2, 3, 4 4090x10 0x43 0x22 0x02 410 411# CHECK: vminuh 2, 3, 4 4120x10 0x43 0x22 0x42 413 414# CHECK: vminuw 2, 3, 4 4150x10 0x43 0x22 0x82 416 417# CHECK: vminud 2, 3, 4 4180x10 0x43 0x22 0xc2 419 420# CHECK: vcmpequb 2, 3, 4 4210x10 0x43 0x20 0x06 422 423# CHECK: vcmpequb. 2, 3, 4 4240x10 0x43 0x24 0x06 425 426# CHECK: vcmpequh 2, 3, 4 4270x10 0x43 0x20 0x46 428 429# CHECK: vcmpequh. 2, 3, 4 4300x10 0x43 0x24 0x46 431 432# CHECK: vcmpequw 2, 3, 4 4330x10 0x43 0x20 0x86 434 435# CHECK: vcmpequw. 2, 3, 4 4360x10 0x43 0x24 0x86 437 438# CHECK: vcmpequd 2, 3, 4 4390x10 0x43 0x20 0xc7 440 441# CHECK: vcmpequd. 2, 3, 4 4420x10 0x43 0x24 0xc7 443 444# CHECK: vcmpgtsb 2, 3, 4 4450x10 0x43 0x23 0x06 446 447# CHECK: vcmpgtsb. 2, 3, 4 4480x10 0x43 0x27 0x06 449 450# CHECK: vcmpgtsh 2, 3, 4 4510x10 0x43 0x23 0x46 452 453# CHECK: vcmpgtsh. 2, 3, 4 4540x10 0x43 0x27 0x46 455 456# CHECK: vcmpgtsw 2, 3, 4 4570x10 0x43 0x23 0x86 458 459# CHECK: vcmpgtsw. 2, 3, 4 4600x10 0x43 0x27 0x86 461 462# CHECK: vcmpgtsd 2, 3, 4 4630x10 0x43 0x23 0xc7 464 465# CHECK: vcmpgtsd. 2, 3, 4 4660x10 0x43 0x27 0xc7 467 468# CHECK: vcmpgtub 2, 3, 4 4690x10 0x43 0x22 0x06 470 471# CHECK: vcmpgtub. 2, 3, 4 4720x10 0x43 0x26 0x06 473 474# CHECK: vcmpgtuh 2, 3, 4 4750x10 0x43 0x22 0x46 476 477# CHECK: vcmpgtuh. 2, 3, 4 4780x10 0x43 0x26 0x46 479 480# CHECK: vcmpgtuw 2, 3, 4 4810x10 0x43 0x22 0x86 482 483# CHECK: vcmpgtuw. 2, 3, 4 4840x10 0x43 0x26 0x86 485 486# CHECK: vcmpgtud 2, 3, 4 4870x10 0x43 0x22 0xc7 488 489# CHECK: vcmpgtud. 2, 3, 4 4900x10 0x43 0x26 0xc7 491 492# CHECK: vand 2, 3, 4 4930x10 0x43 0x24 0x04 494 495# CHECK: vandc 2, 3, 4 4960x10 0x43 0x24 0x44 497 498# CHECK: veqv 2, 3, 4 4990x10 0x43 0x26 0x84 500 501# CHECK: vnand 2, 3, 4 5020x10 0x43 0x25 0x84 503 504# CHECK: vorc 2, 3, 4 5050x10 0x43 0x25 0x44 506 507# CHECK: vnor 2, 3, 4 5080x10 0x43 0x25 0x04 509 510# CHECK: vor 2, 3, 4 5110x10 0x43 0x24 0x84 512 513# CHECK: vxor 2, 3, 4 5140x10 0x43 0x24 0xc4 515 516# CHECK: vrlb 2, 3, 4 5170x10 0x43 0x20 0x04 518 519# CHECK: vrlh 2, 3, 4 5200x10 0x43 0x20 0x44 521 522# CHECK: vrlw 2, 3, 4 5230x10 0x43 0x20 0x84 524 525# CHECK: vslb 2, 3, 4 5260x10 0x43 0x21 0x04 527 528# CHECK: vslh 2, 3, 4 5290x10 0x43 0x21 0x44 530 531# CHECK: vslw 2, 3, 4 5320x10 0x43 0x21 0x84 533 534# CHECK: vrld 2, 3, 4 5350x10 0x43 0x20 0xc4 536 537# CHECK: vsrb 2, 3, 4 5380x10 0x43 0x22 0x04 539 540# CHECK: vsrh 2, 3, 4 5410x10 0x43 0x22 0x44 542 543# CHECK: vsrw 2, 3, 4 5440x10 0x43 0x22 0x84 545 546# CHECK: vsrd 2, 3, 4 5470x10 0x43 0x26 0xc4 548 549# CHECK: vsrab 2, 3, 4 5500x10 0x43 0x23 0x04 551 552# CHECK: vsrah 2, 3, 4 5530x10 0x43 0x23 0x44 554 555# CHECK: vsraw 2, 3, 4 5560x10 0x43 0x23 0x84 557 558# CHECK: vsrad 2, 3, 4 5590x10 0x43 0x23 0xc4 560 561# CHECK: vaddfp 2, 3, 4 5620x10 0x43 0x20 0x0a 563 564# CHECK: vsubfp 2, 3, 4 5650x10 0x43 0x20 0x4a 566 567# CHECK: vmaddfp 2, 3, 4, 5 5680x10 0x43 0x29 0x2e 569 570# CHECK: vnmsubfp 2, 3, 4, 5 5710x10 0x43 0x29 0x2f 572 573# CHECK: vmaxfp 2, 3, 4 5740x10 0x43 0x24 0x0a 575 576# CHECK: vminfp 2, 3, 4 5770x10 0x43 0x24 0x4a 578 579# CHECK: vctsxs 2, 3, 4 5800x10 0x44 0x1b 0xca 581 582# CHECK: vctuxs 2, 3, 4 5830x10 0x44 0x1b 0x8a 584 585# CHECK: vcfsx 2, 3, 4 5860x10 0x44 0x1b 0x4a 587 588# CHECK: vcfux 2, 3, 4 5890x10 0x44 0x1b 0x0a 590 591# CHECK: vrfim 2, 3 5920x10 0x40 0x1a 0xca 593 594# CHECK: vrfin 2, 3 5950x10 0x40 0x1a 0x0a 596 597# CHECK: vrfip 2, 3 5980x10 0x40 0x1a 0x8a 599 600# CHECK: vrfiz 2, 3 6010x10 0x40 0x1a 0x4a 602 603# CHECK: vcmpbfp 2, 3, 4 6040x10 0x43 0x23 0xc6 605 606# CHECK: vcmpbfp. 2, 3, 4 6070x10 0x43 0x27 0xc6 608 609# CHECK: vcmpeqfp 2, 3, 4 6100x10 0x43 0x20 0xc6 611 612# CHECK: vcmpeqfp. 2, 3, 4 6130x10 0x43 0x24 0xc6 614 615# CHECK: vcmpgefp 2, 3, 4 6160x10 0x43 0x21 0xc6 617 618# CHECK: vcmpgefp. 2, 3, 4 6190x10 0x43 0x25 0xc6 620 621# CHECK: vcmpgtfp 2, 3, 4 6220x10 0x43 0x22 0xc6 623 624# CHECK: vcmpgtfp. 2, 3, 4 6250x10 0x43 0x26 0xc6 626 627# CHECK: vexptefp 2, 3 6280x10 0x40 0x19 0x8a 629 630# CHECK: vlogefp 2, 3 6310x10 0x40 0x19 0xca 632 633# CHECK: vrefp 2, 3 6340x10 0x40 0x19 0x0a 635 636# CHECK: vrsqrtefp 2, 3 6370x10 0x40 0x19 0x4a 638 639# CHECK: vgbbd 2, 3 6400x10 0x40 0x1d 0x0c 641 642# CHECK: vbpermq 2, 5, 17 6430x10 0x45 0x8d 0x4c 644 645# CHECK: vclzb 2, 3 6460x10 0x40 0x1f 0x02 647 648# CHECK: vclzh 2, 3 6490x10 0x40 0x1f 0x42 650 651# CHECK: vclzw 2, 3 6520x10 0x40 0x1f 0x82 653 654# CHECK: vclzd 2, 3 6550x10 0x40 0x1f 0xc2 656 657# CHECK: vpopcntb 2, 3 6580x10 0x40 0x1f 0x03 659 660# CHECK: vpopcnth 2, 3 6610x10 0x40 0x1f 0x43 662 663# CHECK: vpopcntw 2, 3 6640x10 0x40 0x1f 0x83 665 666# CHECK: vpopcntd 2, 3 6670x10 0x40 0x1f 0xc3 668 669# CHECK: mtvscr 2 6700x10 0x00 0x16 0x44 671 672# CHECK: mfvscr 2 6730x10 0x40 0x06 0x04 674 675