394 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s3 4vpcompressb %zmm16, %zmm195vpcompressb %zmm16, (%rax)6vpcompressb %zmm16, %zmm19 {k1}7vpcompressb %zmm16, (%rax) {k1}8vpcompressb %zmm16, %zmm19 {k1}{z}9 10vpcompressw %zmm16, %zmm1911vpcompressw %zmm16, (%rax)12vpcompressw %zmm16, %zmm19 {k1}13vpcompressw %zmm16, (%rax) {k1}14vpcompressw %zmm16, %zmm19 {k1}{z}15 16vpexpandb %zmm16, %zmm1917vpexpandb (%rax), %zmm1918vpexpandb %zmm16, %zmm19 {k1}19vpexpandb (%rax), %zmm19 {k1}20vpexpandb %zmm16, %zmm19 {k1}{z}21 22vpexpandw %zmm16, %zmm1923vpexpandw (%rax), %zmm1924vpexpandw %zmm16, %zmm19 {k1}25vpexpandw (%rax), %zmm19 {k1}26vpexpandw %zmm16, %zmm19 {k1}{z}27 28vpshldd $1, %zmm16, %zmm17, %zmm1929vpshldd $1, (%rax), %zmm17, %zmm1930vpshldd $1, (%rax){1to16}, %zmm17, %zmm1931vpshldd $1, %zmm16, %zmm17, %zmm19 {k1}32vpshldd $1, (%rax), %zmm17, %zmm19 {k1}33vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}34vpshldd $1, %zmm16, %zmm17, %zmm19 {k1}{z}35vpshldd $1, (%rax), %zmm17, %zmm19 {k1}{z}36vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}{z}37 38vpshldq $1, %zmm16, %zmm17, %zmm1939vpshldq $1, (%rax), %zmm17, %zmm1940vpshldq $1, (%rax){1to8}, %zmm17, %zmm1941vpshldq $1, %zmm16, %zmm17, %zmm19 {k1}42vpshldq $1, (%rax), %zmm17, %zmm19 {k1}43vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}44vpshldq $1, %zmm16, %zmm17, %zmm19 {k1}{z}45vpshldq $1, (%rax), %zmm17, %zmm19 {k1}{z}46vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}{z}47 48vpshldvd %zmm16, %zmm17, %zmm1949vpshldvd (%rax), %zmm17, %zmm1950vpshldvd (%rax){1to16}, %zmm17, %zmm1951vpshldvd %zmm16, %zmm17, %zmm19 {k1}52vpshldvd (%rax), %zmm17, %zmm19 {k1}53vpshldvd (%rax){1to16}, %zmm17, %zmm19 {k1}54vpshldvd %zmm16, %zmm17, %zmm19 {k1}{z}55vpshldvd (%rax), %zmm17, %zmm19 {k1}{z}56vpshldvd (%rax){1to16}, %zmm17, %zmm19 {k1}{z}57 58vpshldvq %zmm16, %zmm17, %zmm1959vpshldvq (%rax), %zmm17, %zmm1960vpshldvq (%rax){1to8}, %zmm17, %zmm1961vpshldvq %zmm16, %zmm17, %zmm19 {k1}62vpshldvq (%rax), %zmm17, %zmm19 {k1}63vpshldvq (%rax){1to8}, %zmm17, %zmm19 {k1}64vpshldvq %zmm16, %zmm17, %zmm19 {k1}{z}65vpshldvq (%rax), %zmm17, %zmm19 {k1}{z}66vpshldvq (%rax){1to8}, %zmm17, %zmm19 {k1}{z}67 68vpshldvw %zmm16, %zmm17, %zmm1969vpshldvw (%rax), %zmm17, %zmm1970vpshldvw %zmm16, %zmm17, %zmm19 {k1}71vpshldvw (%rax), %zmm17, %zmm19 {k1}72vpshldvw %zmm16, %zmm17, %zmm19 {k1}{z}73vpshldvw (%rax), %zmm17, %zmm19 {k1}{z}74 75vpshldw $1, %zmm16, %zmm17, %zmm1976vpshldw $1, (%rax), %zmm17, %zmm1977vpshldw $1, %zmm16, %zmm17, %zmm19 {k1}78vpshldw $1, (%rax), %zmm17, %zmm19 {k1}79vpshldw $1, %zmm16, %zmm17, %zmm19 {k1}{z}80vpshldw $1, (%rax), %zmm17, %zmm19 {k1}{z}81 82vpshrdd $1, %zmm16, %zmm17, %zmm1983vpshrdd $1, (%rax), %zmm17, %zmm1984vpshrdd $1, (%rax){1to16}, %zmm17, %zmm1985vpshrdd $1, %zmm16, %zmm17, %zmm19 {k1}86vpshrdd $1, (%rax), %zmm17, %zmm19 {k1}87vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}88vpshrdd $1, %zmm16, %zmm17, %zmm19 {k1}{z}89vpshrdd $1, (%rax), %zmm17, %zmm19 {k1}{z}90vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}{z}91 92vpshrdq $1, %zmm16, %zmm17, %zmm1993vpshrdq $1, (%rax), %zmm17, %zmm1994vpshrdq $1, (%rax){1to8}, %zmm17, %zmm1995vpshrdq $1, %zmm16, %zmm17, %zmm19 {k1}96vpshrdq $1, (%rax), %zmm17, %zmm19 {k1}97vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}98vpshrdq $1, %zmm16, %zmm17, %zmm19 {k1}{z}99vpshrdq $1, (%rax), %zmm17, %zmm19 {k1}{z}100vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}{z}101 102vpshrdvd %zmm16, %zmm17, %zmm19103vpshrdvd (%rax), %zmm17, %zmm19104vpshrdvd (%rax){1to16}, %zmm17, %zmm19105vpshrdvd %zmm16, %zmm17, %zmm19 {k1}106vpshrdvd (%rax), %zmm17, %zmm19 {k1}107vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {k1}108vpshrdvd %zmm16, %zmm17, %zmm19 {k1}{z}109vpshrdvd (%rax), %zmm17, %zmm19 {k1}{z}110vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {k1}{z}111 112vpshrdvq %zmm16, %zmm17, %zmm19113vpshrdvq (%rax), %zmm17, %zmm19114vpshrdvq (%rax){1to8}, %zmm17, %zmm19115vpshrdvq %zmm16, %zmm17, %zmm19 {k1}116vpshrdvq (%rax), %zmm17, %zmm19 {k1}117vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {k1}118vpshrdvq %zmm16, %zmm17, %zmm19 {k1}{z}119vpshrdvq (%rax), %zmm17, %zmm19 {k1}{z}120vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {k1}{z}121 122vpshrdvw %zmm16, %zmm17, %zmm19123vpshrdvw (%rax), %zmm17, %zmm19124vpshrdvw %zmm16, %zmm17, %zmm19 {k1}125vpshrdvw (%rax), %zmm17, %zmm19 {k1}126vpshrdvw %zmm16, %zmm17, %zmm19 {k1}{z}127vpshrdvw (%rax), %zmm17, %zmm19 {k1}{z}128 129vpshrdw $1, %zmm16, %zmm17, %zmm19130vpshrdw $1, (%rax), %zmm17, %zmm19131vpshrdw $1, %zmm16, %zmm17, %zmm19 {k1}132vpshrdw $1, (%rax), %zmm17, %zmm19 {k1}133vpshrdw $1, %zmm16, %zmm17, %zmm19 {k1}{z}134vpshrdw $1, (%rax), %zmm17, %zmm19 {k1}{z}135 136# CHECK: Instruction Info:137# CHECK-NEXT: [1]: #uOps138# CHECK-NEXT: [2]: Latency139# CHECK-NEXT: [3]: RThroughput140# CHECK-NEXT: [4]: MayLoad141# CHECK-NEXT: [5]: MayStore142# CHECK-NEXT: [6]: HasSideEffects (U)143 144# CHECK: [1] [2] [3] [4] [5] [6] Instructions:145# CHECK-NEXT: 1 1 1.00 U vpcompressb %zmm16, %zmm19146# CHECK-NEXT: 2 8 1.00 * vpcompressb %zmm16, (%rax)147# CHECK-NEXT: 1 1 1.00 vpcompressb %zmm16, %zmm19 {%k1}148# CHECK-NEXT: 2 8 1.00 * vpcompressb %zmm16, (%rax) {%k1}149# CHECK-NEXT: 1 1 1.00 vpcompressb %zmm16, %zmm19 {%k1} {z}150# CHECK-NEXT: 1 1 1.00 U vpcompressw %zmm16, %zmm19151# CHECK-NEXT: 2 8 1.00 * vpcompressw %zmm16, (%rax)152# CHECK-NEXT: 1 1 1.00 vpcompressw %zmm16, %zmm19 {%k1}153# CHECK-NEXT: 2 8 1.00 * vpcompressw %zmm16, (%rax) {%k1}154# CHECK-NEXT: 1 1 1.00 vpcompressw %zmm16, %zmm19 {%k1} {z}155# CHECK-NEXT: 1 1 1.00 U vpexpandb %zmm16, %zmm19156# CHECK-NEXT: 2 8 1.00 * U vpexpandb (%rax), %zmm19157# CHECK-NEXT: 1 1 1.00 vpexpandb %zmm16, %zmm19 {%k1}158# CHECK-NEXT: 2 8 1.00 * vpexpandb (%rax), %zmm19 {%k1}159# CHECK-NEXT: 1 1 1.00 vpexpandb %zmm16, %zmm19 {%k1} {z}160# CHECK-NEXT: 1 1 1.00 U vpexpandw %zmm16, %zmm19161# CHECK-NEXT: 2 8 1.00 * U vpexpandw (%rax), %zmm19162# CHECK-NEXT: 1 1 1.00 vpexpandw %zmm16, %zmm19 {%k1}163# CHECK-NEXT: 2 8 1.00 * vpexpandw (%rax), %zmm19 {%k1}164# CHECK-NEXT: 1 1 1.00 vpexpandw %zmm16, %zmm19 {%k1} {z}165# CHECK-NEXT: 1 5 1.00 vpshldd $1, %zmm16, %zmm17, %zmm19166# CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax), %zmm17, %zmm19167# CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax){1to16}, %zmm17, %zmm19168# CHECK-NEXT: 1 5 1.00 vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1}169# CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax), %zmm17, %zmm19 {%k1}170# CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}171# CHECK-NEXT: 1 5 1.00 vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}172# CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax), %zmm17, %zmm19 {%k1} {z}173# CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}174# CHECK-NEXT: 1 5 1.00 vpshldq $1, %zmm16, %zmm17, %zmm19175# CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax), %zmm17, %zmm19176# CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax){1to8}, %zmm17, %zmm19177# CHECK-NEXT: 1 5 1.00 vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1}178# CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax), %zmm17, %zmm19 {%k1}179# CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}180# CHECK-NEXT: 1 5 1.00 vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}181# CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax), %zmm17, %zmm19 {%k1} {z}182# CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}183# CHECK-NEXT: 1 5 1.00 vpshldvd %zmm16, %zmm17, %zmm19184# CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax), %zmm17, %zmm19185# CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax){1to16}, %zmm17, %zmm19186# CHECK-NEXT: 1 5 1.00 vpshldvd %zmm16, %zmm17, %zmm19 {%k1}187# CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax), %zmm17, %zmm19 {%k1}188# CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1}189# CHECK-NEXT: 1 5 1.00 vpshldvd %zmm16, %zmm17, %zmm19 {%k1} {z}190# CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax), %zmm17, %zmm19 {%k1} {z}191# CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}192# CHECK-NEXT: 1 5 1.00 vpshldvq %zmm16, %zmm17, %zmm19193# CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax), %zmm17, %zmm19194# CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax){1to8}, %zmm17, %zmm19195# CHECK-NEXT: 1 5 1.00 vpshldvq %zmm16, %zmm17, %zmm19 {%k1}196# CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax), %zmm17, %zmm19 {%k1}197# CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1}198# CHECK-NEXT: 1 5 1.00 vpshldvq %zmm16, %zmm17, %zmm19 {%k1} {z}199# CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax), %zmm17, %zmm19 {%k1} {z}200# CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}201# CHECK-NEXT: 1 5 1.00 vpshldvw %zmm16, %zmm17, %zmm19202# CHECK-NEXT: 2 12 1.00 * vpshldvw (%rax), %zmm17, %zmm19203# CHECK-NEXT: 1 5 1.00 vpshldvw %zmm16, %zmm17, %zmm19 {%k1}204# CHECK-NEXT: 2 12 1.00 * vpshldvw (%rax), %zmm17, %zmm19 {%k1}205# CHECK-NEXT: 1 5 1.00 vpshldvw %zmm16, %zmm17, %zmm19 {%k1} {z}206# CHECK-NEXT: 2 12 1.00 * vpshldvw (%rax), %zmm17, %zmm19 {%k1} {z}207# CHECK-NEXT: 1 5 1.00 vpshldw $1, %zmm16, %zmm17, %zmm19208# CHECK-NEXT: 2 12 1.00 * vpshldw $1, (%rax), %zmm17, %zmm19209# CHECK-NEXT: 1 5 1.00 vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1}210# CHECK-NEXT: 2 12 1.00 * vpshldw $1, (%rax), %zmm17, %zmm19 {%k1}211# CHECK-NEXT: 1 5 1.00 vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}212# CHECK-NEXT: 2 12 1.00 * vpshldw $1, (%rax), %zmm17, %zmm19 {%k1} {z}213# CHECK-NEXT: 1 5 1.00 vpshrdd $1, %zmm16, %zmm17, %zmm19214# CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax), %zmm17, %zmm19215# CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19216# CHECK-NEXT: 1 5 1.00 vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1}217# CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1}218# CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}219# CHECK-NEXT: 1 5 1.00 vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}220# CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1} {z}221# CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}222# CHECK-NEXT: 1 5 1.00 vpshrdq $1, %zmm16, %zmm17, %zmm19223# CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax), %zmm17, %zmm19224# CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19225# CHECK-NEXT: 1 5 1.00 vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1}226# CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1}227# CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}228# CHECK-NEXT: 1 5 1.00 vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}229# CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1} {z}230# CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}231# CHECK-NEXT: 1 5 1.00 vpshrdvd %zmm16, %zmm17, %zmm19232# CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax), %zmm17, %zmm19233# CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax){1to16}, %zmm17, %zmm19234# CHECK-NEXT: 1 5 1.00 vpshrdvd %zmm16, %zmm17, %zmm19 {%k1}235# CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax), %zmm17, %zmm19 {%k1}236# CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1}237# CHECK-NEXT: 1 5 1.00 vpshrdvd %zmm16, %zmm17, %zmm19 {%k1} {z}238# CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax), %zmm17, %zmm19 {%k1} {z}239# CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}240# CHECK-NEXT: 1 5 1.00 vpshrdvq %zmm16, %zmm17, %zmm19241# CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax), %zmm17, %zmm19242# CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax){1to8}, %zmm17, %zmm19243# CHECK-NEXT: 1 5 1.00 vpshrdvq %zmm16, %zmm17, %zmm19 {%k1}244# CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax), %zmm17, %zmm19 {%k1}245# CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1}246# CHECK-NEXT: 1 5 1.00 vpshrdvq %zmm16, %zmm17, %zmm19 {%k1} {z}247# CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax), %zmm17, %zmm19 {%k1} {z}248# CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}249# CHECK-NEXT: 1 5 1.00 vpshrdvw %zmm16, %zmm17, %zmm19250# CHECK-NEXT: 2 12 1.00 * vpshrdvw (%rax), %zmm17, %zmm19251# CHECK-NEXT: 1 5 1.00 vpshrdvw %zmm16, %zmm17, %zmm19 {%k1}252# CHECK-NEXT: 2 12 1.00 * vpshrdvw (%rax), %zmm17, %zmm19 {%k1}253# CHECK-NEXT: 1 5 1.00 vpshrdvw %zmm16, %zmm17, %zmm19 {%k1} {z}254# CHECK-NEXT: 2 12 1.00 * vpshrdvw (%rax), %zmm17, %zmm19 {%k1} {z}255# CHECK-NEXT: 1 5 1.00 vpshrdw $1, %zmm16, %zmm17, %zmm19256# CHECK-NEXT: 2 12 1.00 * vpshrdw $1, (%rax), %zmm17, %zmm19257# CHECK-NEXT: 1 5 1.00 vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1}258# CHECK-NEXT: 2 12 1.00 * vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1}259# CHECK-NEXT: 1 5 1.00 vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}260# CHECK-NEXT: 2 12 1.00 * vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1} {z}261 262# CHECK: Resources:263# CHECK-NEXT: [0] - SBDivider264# CHECK-NEXT: [1] - SBFPDivider265# CHECK-NEXT: [2] - SBPort0266# CHECK-NEXT: [3] - SBPort1267# CHECK-NEXT: [4] - SBPort4268# CHECK-NEXT: [5] - SBPort5269# CHECK-NEXT: [6.0] - SBPort23270# CHECK-NEXT: [6.1] - SBPort23271 272# CHECK: Resource pressure per iteration:273# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]274# CHECK-NEXT: - - 96.00 - - 20.00 34.00 34.00275 276# CHECK: Resource pressure by instruction:277# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:278# CHECK-NEXT: - - - - - 1.00 - - vpcompressb %zmm16, %zmm19279# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressb %zmm16, (%rax)280# CHECK-NEXT: - - - - - 1.00 - - vpcompressb %zmm16, %zmm19 {%k1}281# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressb %zmm16, (%rax) {%k1}282# CHECK-NEXT: - - - - - 1.00 - - vpcompressb %zmm16, %zmm19 {%k1} {z}283# CHECK-NEXT: - - - - - 1.00 - - vpcompressw %zmm16, %zmm19284# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressw %zmm16, (%rax)285# CHECK-NEXT: - - - - - 1.00 - - vpcompressw %zmm16, %zmm19 {%k1}286# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressw %zmm16, (%rax) {%k1}287# CHECK-NEXT: - - - - - 1.00 - - vpcompressw %zmm16, %zmm19 {%k1} {z}288# CHECK-NEXT: - - - - - 1.00 - - vpexpandb %zmm16, %zmm19289# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandb (%rax), %zmm19290# CHECK-NEXT: - - - - - 1.00 - - vpexpandb %zmm16, %zmm19 {%k1}291# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandb (%rax), %zmm19 {%k1}292# CHECK-NEXT: - - - - - 1.00 - - vpexpandb %zmm16, %zmm19 {%k1} {z}293# CHECK-NEXT: - - - - - 1.00 - - vpexpandw %zmm16, %zmm19294# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandw (%rax), %zmm19295# CHECK-NEXT: - - - - - 1.00 - - vpexpandw %zmm16, %zmm19 {%k1}296# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandw (%rax), %zmm19 {%k1}297# CHECK-NEXT: - - - - - 1.00 - - vpexpandw %zmm16, %zmm19 {%k1} {z}298# CHECK-NEXT: - - 1.00 - - - - - vpshldd $1, %zmm16, %zmm17, %zmm19299# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax), %zmm17, %zmm19300# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19301# CHECK-NEXT: - - 1.00 - - - - - vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1}302# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax), %zmm17, %zmm19 {%k1}303# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}304# CHECK-NEXT: - - 1.00 - - - - - vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}305# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax), %zmm17, %zmm19 {%k1} {z}306# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}307# CHECK-NEXT: - - 1.00 - - - - - vpshldq $1, %zmm16, %zmm17, %zmm19308# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax), %zmm17, %zmm19309# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19310# CHECK-NEXT: - - 1.00 - - - - - vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1}311# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax), %zmm17, %zmm19 {%k1}312# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}313# CHECK-NEXT: - - 1.00 - - - - - vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}314# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax), %zmm17, %zmm19 {%k1} {z}315# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}316# CHECK-NEXT: - - 1.00 - - - - - vpshldvd %zmm16, %zmm17, %zmm19317# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax), %zmm17, %zmm19318# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax){1to16}, %zmm17, %zmm19319# CHECK-NEXT: - - 1.00 - - - - - vpshldvd %zmm16, %zmm17, %zmm19 {%k1}320# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax), %zmm17, %zmm19 {%k1}321# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1}322# CHECK-NEXT: - - 1.00 - - - - - vpshldvd %zmm16, %zmm17, %zmm19 {%k1} {z}323# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax), %zmm17, %zmm19 {%k1} {z}324# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}325# CHECK-NEXT: - - 1.00 - - - - - vpshldvq %zmm16, %zmm17, %zmm19326# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax), %zmm17, %zmm19327# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax){1to8}, %zmm17, %zmm19328# CHECK-NEXT: - - 1.00 - - - - - vpshldvq %zmm16, %zmm17, %zmm19 {%k1}329# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax), %zmm17, %zmm19 {%k1}330# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1}331# CHECK-NEXT: - - 1.00 - - - - - vpshldvq %zmm16, %zmm17, %zmm19 {%k1} {z}332# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax), %zmm17, %zmm19 {%k1} {z}333# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}334# CHECK-NEXT: - - 1.00 - - - - - vpshldvw %zmm16, %zmm17, %zmm19335# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvw (%rax), %zmm17, %zmm19336# CHECK-NEXT: - - 1.00 - - - - - vpshldvw %zmm16, %zmm17, %zmm19 {%k1}337# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvw (%rax), %zmm17, %zmm19 {%k1}338# CHECK-NEXT: - - 1.00 - - - - - vpshldvw %zmm16, %zmm17, %zmm19 {%k1} {z}339# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvw (%rax), %zmm17, %zmm19 {%k1} {z}340# CHECK-NEXT: - - 1.00 - - - - - vpshldw $1, %zmm16, %zmm17, %zmm19341# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldw $1, (%rax), %zmm17, %zmm19342# CHECK-NEXT: - - 1.00 - - - - - vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1}343# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldw $1, (%rax), %zmm17, %zmm19 {%k1}344# CHECK-NEXT: - - 1.00 - - - - - vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}345# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldw $1, (%rax), %zmm17, %zmm19 {%k1} {z}346# CHECK-NEXT: - - 1.00 - - - - - vpshrdd $1, %zmm16, %zmm17, %zmm19347# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax), %zmm17, %zmm19348# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19349# CHECK-NEXT: - - 1.00 - - - - - vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1}350# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1}351# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}352# CHECK-NEXT: - - 1.00 - - - - - vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}353# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1} {z}354# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}355# CHECK-NEXT: - - 1.00 - - - - - vpshrdq $1, %zmm16, %zmm17, %zmm19356# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax), %zmm17, %zmm19357# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19358# CHECK-NEXT: - - 1.00 - - - - - vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1}359# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1}360# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}361# CHECK-NEXT: - - 1.00 - - - - - vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}362# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1} {z}363# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}364# CHECK-NEXT: - - 1.00 - - - - - vpshrdvd %zmm16, %zmm17, %zmm19365# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax), %zmm17, %zmm19366# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax){1to16}, %zmm17, %zmm19367# CHECK-NEXT: - - 1.00 - - - - - vpshrdvd %zmm16, %zmm17, %zmm19 {%k1}368# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax), %zmm17, %zmm19 {%k1}369# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1}370# CHECK-NEXT: - - 1.00 - - - - - vpshrdvd %zmm16, %zmm17, %zmm19 {%k1} {z}371# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax), %zmm17, %zmm19 {%k1} {z}372# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}373# CHECK-NEXT: - - 1.00 - - - - - vpshrdvq %zmm16, %zmm17, %zmm19374# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax), %zmm17, %zmm19375# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax){1to8}, %zmm17, %zmm19376# CHECK-NEXT: - - 1.00 - - - - - vpshrdvq %zmm16, %zmm17, %zmm19 {%k1}377# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax), %zmm17, %zmm19 {%k1}378# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1}379# CHECK-NEXT: - - 1.00 - - - - - vpshrdvq %zmm16, %zmm17, %zmm19 {%k1} {z}380# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax), %zmm17, %zmm19 {%k1} {z}381# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}382# CHECK-NEXT: - - 1.00 - - - - - vpshrdvw %zmm16, %zmm17, %zmm19383# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvw (%rax), %zmm17, %zmm19384# CHECK-NEXT: - - 1.00 - - - - - vpshrdvw %zmm16, %zmm17, %zmm19 {%k1}385# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvw (%rax), %zmm17, %zmm19 {%k1}386# CHECK-NEXT: - - 1.00 - - - - - vpshrdvw %zmm16, %zmm17, %zmm19 {%k1} {z}387# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvw (%rax), %zmm17, %zmm19 {%k1} {z}388# CHECK-NEXT: - - 1.00 - - - - - vpshrdw $1, %zmm16, %zmm17, %zmm19389# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdw $1, (%rax), %zmm17, %zmm19390# CHECK-NEXT: - - 1.00 - - - - - vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1}391# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1}392# CHECK-NEXT: - - 1.00 - - - - - vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}393# CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1} {z}394