1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s 3 4vpabsb %zmm16, %zmm19 5vpabsb (%rax), %zmm19 6vpabsb %zmm16, %zmm19 {k1} 7vpabsb (%rax), %zmm19 {k1} 8vpabsb %zmm16, %zmm19 {z}{k1} 9vpabsb (%rax), %zmm19 {z}{k1} 10 11vpabsw %zmm16, %zmm19 12vpabsw (%rax), %zmm19 13vpabsw %zmm16, %zmm19 {k1} 14vpabsw (%rax), %zmm19 {k1} 15vpabsw %zmm16, %zmm19 {z}{k1} 16vpabsw (%rax), %zmm19 {z}{k1} 17 18vpaddb %zmm16, %zmm17, %zmm19 19vpaddb (%rax), %zmm17, %zmm19 20vpaddb %zmm16, %zmm17, %zmm19 {k1} 21vpaddb (%rax), %zmm17, %zmm19 {k1} 22vpaddb %zmm16, %zmm17, %zmm19 {z}{k1} 23vpaddb (%rax), %zmm17, %zmm19 {z}{k1} 24 25vpaddw %zmm16, %zmm17, %zmm19 26vpaddw (%rax), %zmm17, %zmm19 27vpaddw %zmm16, %zmm17, %zmm19 {k1} 28vpaddw (%rax), %zmm17, %zmm19 {k1} 29vpaddw %zmm16, %zmm17, %zmm19 {z}{k1} 30vpaddw (%rax), %zmm17, %zmm19 {z}{k1} 31 32vpermw %zmm16, %zmm17, %zmm19 33vpermw (%rax), %zmm17, %zmm19 34vpermw %zmm16, %zmm17, %zmm19 {k1} 35vpermw (%rax), %zmm17, %zmm19 {k1} 36vpermw %zmm16, %zmm17, %zmm19 {z}{k1} 37vpermw (%rax), %zmm17, %zmm19 {z}{k1} 38 39vpshufb %zmm16, %zmm17, %zmm19 40vpshufb (%rax), %zmm17, %zmm19 41vpshufb %zmm16, %zmm17, %zmm19 {k1} 42vpshufb (%rax), %zmm17, %zmm19 {k1} 43vpshufb %zmm16, %zmm17, %zmm19 {z}{k1} 44vpshufb (%rax), %zmm17, %zmm19 {z}{k1} 45 46vpshufhw $0, %zmm16, %zmm19 47vpshufhw $0, (%rax), %zmm19 48vpshufhw $0, %zmm16, %zmm19 {k1} 49vpshufhw $0, (%rax), %zmm19 {k1} 50vpshufhw $0, %zmm16, %zmm19 {z}{k1} 51vpshufhw $0, (%rax), %zmm19 {z}{k1} 52 53vpshuflw $0, %zmm16, %zmm19 54vpshuflw $0, (%rax), %zmm19 55vpshuflw $0, %zmm16, %zmm19 {k1} 56vpshuflw $0, (%rax), %zmm19 {k1} 57vpshuflw $0, %zmm16, %zmm19 {z}{k1} 58vpshuflw $0, (%rax), %zmm19 {z}{k1} 59 60vpsubb %zmm16, %zmm17, %zmm19 61vpsubb (%rax), %zmm17, %zmm19 62vpsubb %zmm16, %zmm17, %zmm19 {k1} 63vpsubb (%rax), %zmm17, %zmm19 {k1} 64vpsubb %zmm16, %zmm17, %zmm19 {z}{k1} 65vpsubb (%rax), %zmm17, %zmm19 {z}{k1} 66 67vpsubw %zmm16, %zmm17, %zmm19 68vpsubw (%rax), %zmm17, %zmm19 69vpsubw %zmm16, %zmm17, %zmm19 {k1} 70vpsubw (%rax), %zmm17, %zmm19 {k1} 71vpsubw %zmm16, %zmm17, %zmm19 {z}{k1} 72vpsubw (%rax), %zmm17, %zmm19 {z}{k1} 73 74vpunpckhbw %zmm16, %zmm17, %zmm19 75vpunpckhbw (%rax), %zmm17, %zmm19 76vpunpckhbw %zmm16, %zmm17, %zmm19 {k1} 77vpunpckhbw (%rax), %zmm17, %zmm19 {k1} 78vpunpckhbw %zmm16, %zmm17, %zmm19 {z}{k1} 79vpunpckhbw (%rax), %zmm17, %zmm19 {z}{k1} 80 81vpunpckhwd %zmm16, %zmm17, %zmm19 82vpunpckhwd (%rax), %zmm17, %zmm19 83vpunpckhwd %zmm16, %zmm17, %zmm19 {k1} 84vpunpckhwd (%rax), %zmm17, %zmm19 {k1} 85vpunpckhwd %zmm16, %zmm17, %zmm19 {z}{k1} 86vpunpckhwd (%rax), %zmm17, %zmm19 {z}{k1} 87 88vpunpcklbw %zmm16, %zmm17, %zmm19 89vpunpcklbw (%rax), %zmm17, %zmm19 90vpunpcklbw %zmm16, %zmm17, %zmm19 {k1} 91vpunpcklbw (%rax), %zmm17, %zmm19 {k1} 92vpunpcklbw %zmm16, %zmm17, %zmm19 {z}{k1} 93vpunpcklbw (%rax), %zmm17, %zmm19 {z}{k1} 94 95vpunpcklwd %zmm16, %zmm17, %zmm19 96vpunpcklwd (%rax), %zmm17, %zmm19 97vpunpcklwd %zmm16, %zmm17, %zmm19 {k1} 98vpunpcklwd (%rax), %zmm17, %zmm19 {k1} 99vpunpcklwd %zmm16, %zmm17, %zmm19 {z}{k1} 100vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} 101 102# CHECK: Instruction Info: 103# CHECK-NEXT: [1]: #uOps 104# CHECK-NEXT: [2]: Latency 105# CHECK-NEXT: [3]: RThroughput 106# CHECK-NEXT: [4]: MayLoad 107# CHECK-NEXT: [5]: MayStore 108# CHECK-NEXT: [6]: HasSideEffects (U) 109 110# CHECK: [1] [2] [3] [4] [5] [6] Instructions: 111# CHECK-NEXT: 1 1 0.50 vpabsb %zmm16, %zmm19 112# CHECK-NEXT: 2 8 0.50 * vpabsb (%rax), %zmm19 113# CHECK-NEXT: 1 1 0.50 vpabsb %zmm16, %zmm19 {%k1} 114# CHECK-NEXT: 2 8 0.50 * vpabsb (%rax), %zmm19 {%k1} 115# CHECK-NEXT: 1 1 0.50 vpabsb %zmm16, %zmm19 {%k1} {z} 116# CHECK-NEXT: 2 8 0.50 * vpabsb (%rax), %zmm19 {%k1} {z} 117# CHECK-NEXT: 1 1 0.50 vpabsw %zmm16, %zmm19 118# CHECK-NEXT: 2 8 0.50 * vpabsw (%rax), %zmm19 119# CHECK-NEXT: 1 1 0.50 vpabsw %zmm16, %zmm19 {%k1} 120# CHECK-NEXT: 2 8 0.50 * vpabsw (%rax), %zmm19 {%k1} 121# CHECK-NEXT: 1 1 0.50 vpabsw %zmm16, %zmm19 {%k1} {z} 122# CHECK-NEXT: 2 8 0.50 * vpabsw (%rax), %zmm19 {%k1} {z} 123# CHECK-NEXT: 1 1 0.50 vpaddb %zmm16, %zmm17, %zmm19 124# CHECK-NEXT: 2 8 0.50 * vpaddb (%rax), %zmm17, %zmm19 125# CHECK-NEXT: 1 1 0.50 vpaddb %zmm16, %zmm17, %zmm19 {%k1} 126# CHECK-NEXT: 2 8 0.50 * vpaddb (%rax), %zmm17, %zmm19 {%k1} 127# CHECK-NEXT: 1 1 0.50 vpaddb %zmm16, %zmm17, %zmm19 {%k1} {z} 128# CHECK-NEXT: 2 8 0.50 * vpaddb (%rax), %zmm17, %zmm19 {%k1} {z} 129# CHECK-NEXT: 1 1 0.50 vpaddw %zmm16, %zmm17, %zmm19 130# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 131# CHECK-NEXT: 1 1 0.50 vpaddw %zmm16, %zmm17, %zmm19 {%k1} 132# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1} 133# CHECK-NEXT: 1 1 0.50 vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z} 134# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1} {z} 135# CHECK-NEXT: 1 1 1.00 vpermw %zmm16, %zmm17, %zmm19 136# CHECK-NEXT: 2 8 1.00 * vpermw (%rax), %zmm17, %zmm19 137# CHECK-NEXT: 1 1 1.00 vpermw %zmm16, %zmm17, %zmm19 {%k1} 138# CHECK-NEXT: 2 8 1.00 * vpermw (%rax), %zmm17, %zmm19 {%k1} 139# CHECK-NEXT: 1 1 1.00 vpermw %zmm16, %zmm17, %zmm19 {%k1} {z} 140# CHECK-NEXT: 2 8 1.00 * vpermw (%rax), %zmm17, %zmm19 {%k1} {z} 141# CHECK-NEXT: 1 1 0.50 vpshufb %zmm16, %zmm17, %zmm19 142# CHECK-NEXT: 2 8 0.50 * vpshufb (%rax), %zmm17, %zmm19 143# CHECK-NEXT: 1 1 0.50 vpshufb %zmm16, %zmm17, %zmm19 {%k1} 144# CHECK-NEXT: 2 8 0.50 * vpshufb (%rax), %zmm17, %zmm19 {%k1} 145# CHECK-NEXT: 1 1 0.50 vpshufb %zmm16, %zmm17, %zmm19 {%k1} {z} 146# CHECK-NEXT: 2 8 0.50 * vpshufb (%rax), %zmm17, %zmm19 {%k1} {z} 147# CHECK-NEXT: 1 1 1.00 vpshufhw $0, %zmm16, %zmm19 148# CHECK-NEXT: 2 8 1.00 * vpshufhw $0, (%rax), %zmm19 149# CHECK-NEXT: 1 1 1.00 vpshufhw $0, %zmm16, %zmm19 {%k1} 150# CHECK-NEXT: 2 8 1.00 * vpshufhw $0, (%rax), %zmm19 {%k1} 151# CHECK-NEXT: 1 1 1.00 vpshufhw $0, %zmm16, %zmm19 {%k1} {z} 152# CHECK-NEXT: 2 8 1.00 * vpshufhw $0, (%rax), %zmm19 {%k1} {z} 153# CHECK-NEXT: 1 1 1.00 vpshuflw $0, %zmm16, %zmm19 154# CHECK-NEXT: 2 8 1.00 * vpshuflw $0, (%rax), %zmm19 155# CHECK-NEXT: 1 1 1.00 vpshuflw $0, %zmm16, %zmm19 {%k1} 156# CHECK-NEXT: 2 8 1.00 * vpshuflw $0, (%rax), %zmm19 {%k1} 157# CHECK-NEXT: 1 1 1.00 vpshuflw $0, %zmm16, %zmm19 {%k1} {z} 158# CHECK-NEXT: 2 8 1.00 * vpshuflw $0, (%rax), %zmm19 {%k1} {z} 159# CHECK-NEXT: 1 1 0.50 vpsubb %zmm16, %zmm17, %zmm19 160# CHECK-NEXT: 2 8 0.50 * vpsubb (%rax), %zmm17, %zmm19 161# CHECK-NEXT: 1 1 0.50 vpsubb %zmm16, %zmm17, %zmm19 {%k1} 162# CHECK-NEXT: 2 8 0.50 * vpsubb (%rax), %zmm17, %zmm19 {%k1} 163# CHECK-NEXT: 1 1 0.50 vpsubb %zmm16, %zmm17, %zmm19 {%k1} {z} 164# CHECK-NEXT: 2 8 0.50 * vpsubb (%rax), %zmm17, %zmm19 {%k1} {z} 165# CHECK-NEXT: 1 1 0.50 vpsubw %zmm16, %zmm17, %zmm19 166# CHECK-NEXT: 2 8 0.50 * vpsubw (%rax), %zmm17, %zmm19 167# CHECK-NEXT: 1 1 0.50 vpsubw %zmm16, %zmm17, %zmm19 {%k1} 168# CHECK-NEXT: 2 8 0.50 * vpsubw (%rax), %zmm17, %zmm19 {%k1} 169# CHECK-NEXT: 1 1 0.50 vpsubw %zmm16, %zmm17, %zmm19 {%k1} {z} 170# CHECK-NEXT: 2 8 0.50 * vpsubw (%rax), %zmm17, %zmm19 {%k1} {z} 171# CHECK-NEXT: 1 1 1.00 vpunpckhbw %zmm16, %zmm17, %zmm19 172# CHECK-NEXT: 2 8 1.00 * vpunpckhbw (%rax), %zmm17, %zmm19 173# CHECK-NEXT: 1 1 1.00 vpunpckhbw %zmm16, %zmm17, %zmm19 {%k1} 174# CHECK-NEXT: 2 8 1.00 * vpunpckhbw (%rax), %zmm17, %zmm19 {%k1} 175# CHECK-NEXT: 1 1 1.00 vpunpckhbw %zmm16, %zmm17, %zmm19 {%k1} {z} 176# CHECK-NEXT: 2 8 1.00 * vpunpckhbw (%rax), %zmm17, %zmm19 {%k1} {z} 177# CHECK-NEXT: 1 1 1.00 vpunpckhwd %zmm16, %zmm17, %zmm19 178# CHECK-NEXT: 2 8 1.00 * vpunpckhwd (%rax), %zmm17, %zmm19 179# CHECK-NEXT: 1 1 1.00 vpunpckhwd %zmm16, %zmm17, %zmm19 {%k1} 180# CHECK-NEXT: 2 8 1.00 * vpunpckhwd (%rax), %zmm17, %zmm19 {%k1} 181# CHECK-NEXT: 1 1 1.00 vpunpckhwd %zmm16, %zmm17, %zmm19 {%k1} {z} 182# CHECK-NEXT: 2 8 1.00 * vpunpckhwd (%rax), %zmm17, %zmm19 {%k1} {z} 183# CHECK-NEXT: 1 1 1.00 vpunpcklbw %zmm16, %zmm17, %zmm19 184# CHECK-NEXT: 2 8 1.00 * vpunpcklbw (%rax), %zmm17, %zmm19 185# CHECK-NEXT: 1 1 1.00 vpunpcklbw %zmm16, %zmm17, %zmm19 {%k1} 186# CHECK-NEXT: 2 8 1.00 * vpunpcklbw (%rax), %zmm17, %zmm19 {%k1} 187# CHECK-NEXT: 1 1 1.00 vpunpcklbw %zmm16, %zmm17, %zmm19 {%k1} {z} 188# CHECK-NEXT: 2 8 1.00 * vpunpcklbw (%rax), %zmm17, %zmm19 {%k1} {z} 189# CHECK-NEXT: 1 1 1.00 vpunpcklwd %zmm16, %zmm17, %zmm19 190# CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 191# CHECK-NEXT: 1 1 1.00 vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} 192# CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} 193# CHECK-NEXT: 1 1 1.00 vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} 194# CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} 195 196# CHECK: Resources: 197# CHECK-NEXT: [0] - SBDivider 198# CHECK-NEXT: [1] - SBFPDivider 199# CHECK-NEXT: [2] - SBPort0 200# CHECK-NEXT: [3] - SBPort1 201# CHECK-NEXT: [4] - SBPort4 202# CHECK-NEXT: [5] - SBPort5 203# CHECK-NEXT: [6.0] - SBPort23 204# CHECK-NEXT: [6.1] - SBPort23 205 206# CHECK: Resource pressure per iteration: 207# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] 208# CHECK-NEXT: - - - 21.00 - 63.00 21.00 21.00 209 210# CHECK: Resource pressure by instruction: 211# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: 212# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsb %zmm16, %zmm19 213# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsb (%rax), %zmm19 214# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsb %zmm16, %zmm19 {%k1} 215# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsb (%rax), %zmm19 {%k1} 216# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsb %zmm16, %zmm19 {%k1} {z} 217# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsb (%rax), %zmm19 {%k1} {z} 218# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsw %zmm16, %zmm19 219# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsw (%rax), %zmm19 220# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsw %zmm16, %zmm19 {%k1} 221# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsw (%rax), %zmm19 {%k1} 222# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsw %zmm16, %zmm19 {%k1} {z} 223# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsw (%rax), %zmm19 {%k1} {z} 224# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddb %zmm16, %zmm17, %zmm19 225# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddb (%rax), %zmm17, %zmm19 226# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddb %zmm16, %zmm17, %zmm19 {%k1} 227# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddb (%rax), %zmm17, %zmm19 {%k1} 228# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddb %zmm16, %zmm17, %zmm19 {%k1} {z} 229# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddb (%rax), %zmm17, %zmm19 {%k1} {z} 230# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %zmm16, %zmm17, %zmm19 231# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %zmm17, %zmm19 232# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %zmm16, %zmm17, %zmm19 {%k1} 233# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %zmm17, %zmm19 {%k1} 234# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z} 235# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %zmm17, %zmm19 {%k1} {z} 236# CHECK-NEXT: - - - - - 1.00 - - vpermw %zmm16, %zmm17, %zmm19 237# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpermw (%rax), %zmm17, %zmm19 238# CHECK-NEXT: - - - - - 1.00 - - vpermw %zmm16, %zmm17, %zmm19 {%k1} 239# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpermw (%rax), %zmm17, %zmm19 {%k1} 240# CHECK-NEXT: - - - - - 1.00 - - vpermw %zmm16, %zmm17, %zmm19 {%k1} {z} 241# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpermw (%rax), %zmm17, %zmm19 {%k1} {z} 242# CHECK-NEXT: - - - 0.50 - 0.50 - - vpshufb %zmm16, %zmm17, %zmm19 243# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpshufb (%rax), %zmm17, %zmm19 244# CHECK-NEXT: - - - 0.50 - 0.50 - - vpshufb %zmm16, %zmm17, %zmm19 {%k1} 245# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpshufb (%rax), %zmm17, %zmm19 {%k1} 246# CHECK-NEXT: - - - 0.50 - 0.50 - - vpshufb %zmm16, %zmm17, %zmm19 {%k1} {z} 247# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpshufb (%rax), %zmm17, %zmm19 {%k1} {z} 248# CHECK-NEXT: - - - - - 1.00 - - vpshufhw $0, %zmm16, %zmm19 249# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpshufhw $0, (%rax), %zmm19 250# CHECK-NEXT: - - - - - 1.00 - - vpshufhw $0, %zmm16, %zmm19 {%k1} 251# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpshufhw $0, (%rax), %zmm19 {%k1} 252# CHECK-NEXT: - - - - - 1.00 - - vpshufhw $0, %zmm16, %zmm19 {%k1} {z} 253# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpshufhw $0, (%rax), %zmm19 {%k1} {z} 254# CHECK-NEXT: - - - - - 1.00 - - vpshuflw $0, %zmm16, %zmm19 255# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpshuflw $0, (%rax), %zmm19 256# CHECK-NEXT: - - - - - 1.00 - - vpshuflw $0, %zmm16, %zmm19 {%k1} 257# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpshuflw $0, (%rax), %zmm19 {%k1} 258# CHECK-NEXT: - - - - - 1.00 - - vpshuflw $0, %zmm16, %zmm19 {%k1} {z} 259# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpshuflw $0, (%rax), %zmm19 {%k1} {z} 260# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubb %zmm16, %zmm17, %zmm19 261# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubb (%rax), %zmm17, %zmm19 262# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubb %zmm16, %zmm17, %zmm19 {%k1} 263# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubb (%rax), %zmm17, %zmm19 {%k1} 264# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubb %zmm16, %zmm17, %zmm19 {%k1} {z} 265# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubb (%rax), %zmm17, %zmm19 {%k1} {z} 266# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubw %zmm16, %zmm17, %zmm19 267# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubw (%rax), %zmm17, %zmm19 268# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubw %zmm16, %zmm17, %zmm19 {%k1} 269# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubw (%rax), %zmm17, %zmm19 {%k1} 270# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubw %zmm16, %zmm17, %zmm19 {%k1} {z} 271# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubw (%rax), %zmm17, %zmm19 {%k1} {z} 272# CHECK-NEXT: - - - - - 1.00 - - vpunpckhbw %zmm16, %zmm17, %zmm19 273# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpckhbw (%rax), %zmm17, %zmm19 274# CHECK-NEXT: - - - - - 1.00 - - vpunpckhbw %zmm16, %zmm17, %zmm19 {%k1} 275# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpckhbw (%rax), %zmm17, %zmm19 {%k1} 276# CHECK-NEXT: - - - - - 1.00 - - vpunpckhbw %zmm16, %zmm17, %zmm19 {%k1} {z} 277# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpckhbw (%rax), %zmm17, %zmm19 {%k1} {z} 278# CHECK-NEXT: - - - - - 1.00 - - vpunpckhwd %zmm16, %zmm17, %zmm19 279# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpckhwd (%rax), %zmm17, %zmm19 280# CHECK-NEXT: - - - - - 1.00 - - vpunpckhwd %zmm16, %zmm17, %zmm19 {%k1} 281# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpckhwd (%rax), %zmm17, %zmm19 {%k1} 282# CHECK-NEXT: - - - - - 1.00 - - vpunpckhwd %zmm16, %zmm17, %zmm19 {%k1} {z} 283# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpckhwd (%rax), %zmm17, %zmm19 {%k1} {z} 284# CHECK-NEXT: - - - - - 1.00 - - vpunpcklbw %zmm16, %zmm17, %zmm19 285# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklbw (%rax), %zmm17, %zmm19 286# CHECK-NEXT: - - - - - 1.00 - - vpunpcklbw %zmm16, %zmm17, %zmm19 {%k1} 287# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklbw (%rax), %zmm17, %zmm19 {%k1} 288# CHECK-NEXT: - - - - - 1.00 - - vpunpcklbw %zmm16, %zmm17, %zmm19 {%k1} {z} 289# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklbw (%rax), %zmm17, %zmm19 {%k1} {z} 290# CHECK-NEXT: - - - - - 1.00 - - vpunpcklwd %zmm16, %zmm17, %zmm19 291# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %zmm17, %zmm19 292# CHECK-NEXT: - - - - - 1.00 - - vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} 293# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} 294# CHECK-NEXT: - - - - - 1.00 - - vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} 295# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} 296