91 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=alderlake -instruction-tables < %s | FileCheck %s3 4{vex} vpdpbusd %xmm0, %xmm1, %xmm25{vex} vpdpbusd (%rax), %xmm1, %xmm26 7{vex} vpdpbusd %ymm0, %ymm1, %ymm28{vex} vpdpbusd (%rax), %ymm1, %ymm29 10{vex} vpdpbusds %xmm0, %xmm1, %xmm211{vex} vpdpbusds (%rax), %xmm1, %xmm212 13{vex} vpdpbusds %ymm0, %ymm1, %ymm214{vex} vpdpbusds (%rax), %ymm1, %ymm215 16{vex} vpdpwssd %xmm0, %xmm1, %xmm217{vex} vpdpwssd (%rax), %xmm1, %xmm218 19{vex} vpdpwssd %ymm0, %ymm1, %ymm220{vex} vpdpwssd (%rax), %ymm1, %ymm221 22{vex} vpdpwssds %xmm0, %xmm1, %xmm223{vex} vpdpwssds (%rax), %xmm1, %xmm224 25{vex} vpdpwssds %ymm0, %ymm1, %ymm226{vex} vpdpwssds (%rax), %ymm1, %ymm227 28# CHECK: Instruction Info:29# CHECK-NEXT: [1]: #uOps30# CHECK-NEXT: [2]: Latency31# CHECK-NEXT: [3]: RThroughput32# CHECK-NEXT: [4]: MayLoad33# CHECK-NEXT: [5]: MayStore34# CHECK-NEXT: [6]: HasSideEffects (U)35 36# CHECK: [1] [2] [3] [4] [5] [6] Instructions:37# CHECK-NEXT: 1 5 0.50 {vex} vpdpbusd %xmm0, %xmm1, %xmm238# CHECK-NEXT: 2 13 0.50 * {vex} vpdpbusd (%rax), %xmm1, %xmm239# CHECK-NEXT: 1 5 0.50 {vex} vpdpbusd %ymm0, %ymm1, %ymm240# CHECK-NEXT: 2 13 0.50 * {vex} vpdpbusd (%rax), %ymm1, %ymm241# CHECK-NEXT: 1 5 0.50 {vex} vpdpbusds %xmm0, %xmm1, %xmm242# CHECK-NEXT: 2 13 0.50 * {vex} vpdpbusds (%rax), %xmm1, %xmm243# CHECK-NEXT: 1 5 0.50 {vex} vpdpbusds %ymm0, %ymm1, %ymm244# CHECK-NEXT: 2 13 0.50 * {vex} vpdpbusds (%rax), %ymm1, %ymm245# CHECK-NEXT: 1 5 0.50 {vex} vpdpwssd %xmm0, %xmm1, %xmm246# CHECK-NEXT: 2 13 0.50 * {vex} vpdpwssd (%rax), %xmm1, %xmm247# CHECK-NEXT: 1 5 0.50 {vex} vpdpwssd %ymm0, %ymm1, %ymm248# CHECK-NEXT: 2 13 0.50 * {vex} vpdpwssd (%rax), %ymm1, %ymm249# CHECK-NEXT: 1 5 0.50 {vex} vpdpwssds %xmm0, %xmm1, %xmm250# CHECK-NEXT: 2 13 0.50 * {vex} vpdpwssds (%rax), %xmm1, %xmm251# CHECK-NEXT: 1 5 0.50 {vex} vpdpwssds %ymm0, %ymm1, %ymm252# CHECK-NEXT: 2 13 0.50 * {vex} vpdpwssds (%rax), %ymm1, %ymm253 54# CHECK: Resources:55# CHECK-NEXT: [0] - ADLPPort0056# CHECK-NEXT: [1] - ADLPPort0157# CHECK-NEXT: [2] - ADLPPort0258# CHECK-NEXT: [3] - ADLPPort0359# CHECK-NEXT: [4] - ADLPPort0460# CHECK-NEXT: [5] - ADLPPort0561# CHECK-NEXT: [6] - ADLPPort0662# CHECK-NEXT: [7] - ADLPPort0763# CHECK-NEXT: [8] - ADLPPort0864# CHECK-NEXT: [9] - ADLPPort0965# CHECK-NEXT: [10] - ADLPPort1066# CHECK-NEXT: [11] - ADLPPort1167# CHECK-NEXT: [12] - ADLPPortInvalid68 69# CHECK: Resource pressure per iteration:70# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]71# CHECK-NEXT: 8.00 8.00 2.67 2.67 - - - - - - 2.67 - -72 73# CHECK: Resource pressure by instruction:74# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Instructions:75# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpbusd %xmm0, %xmm1, %xmm276# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpbusd (%rax), %xmm1, %xmm277# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpbusd %ymm0, %ymm1, %ymm278# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpbusd (%rax), %ymm1, %ymm279# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpbusds %xmm0, %xmm1, %xmm280# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpbusds (%rax), %xmm1, %xmm281# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpbusds %ymm0, %ymm1, %ymm282# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpbusds (%rax), %ymm1, %ymm283# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpwssd %xmm0, %xmm1, %xmm284# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpwssd (%rax), %xmm1, %xmm285# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpwssd %ymm0, %ymm1, %ymm286# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpwssd (%rax), %ymm1, %ymm287# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpwssds %xmm0, %xmm1, %xmm288# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpwssds (%rax), %xmm1, %xmm289# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - {vex} vpdpwssds %ymm0, %ymm1, %ymm290# CHECK-NEXT: 0.50 0.50 0.33 0.33 - - - - - - 0.33 - - {vex} vpdpwssds (%rax), %ymm1, %ymm291