1420d0d3aSSimon Pilgrim# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2420d0d3aSSimon Pilgrim# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver3 -instruction-tables < %s | FileCheck %s 3420d0d3aSSimon Pilgrim 4420d0d3aSSimon Pilgrimvaesdec %ymm0, %ymm1, %ymm3 5420d0d3aSSimon Pilgrimvaesdec (%rax), %ymm1, %ymm3 6420d0d3aSSimon Pilgrim 7420d0d3aSSimon Pilgrimvaesdeclast %ymm0, %ymm1, %ymm3 8420d0d3aSSimon Pilgrimvaesdeclast (%rax), %ymm1, %ymm3 9420d0d3aSSimon Pilgrim 10420d0d3aSSimon Pilgrimvaesenc %ymm0, %ymm1, %ymm3 11420d0d3aSSimon Pilgrimvaesenc (%rax), %ymm1, %ymm3 12420d0d3aSSimon Pilgrim 13420d0d3aSSimon Pilgrimvaesenclast %ymm0, %ymm1, %ymm3 14420d0d3aSSimon Pilgrimvaesenclast (%rax), %ymm1, %ymm3 15420d0d3aSSimon Pilgrim 16420d0d3aSSimon Pilgrim# CHECK: Instruction Info: 17420d0d3aSSimon Pilgrim# CHECK-NEXT: [1]: #uOps 18420d0d3aSSimon Pilgrim# CHECK-NEXT: [2]: Latency 19420d0d3aSSimon Pilgrim# CHECK-NEXT: [3]: RThroughput 20420d0d3aSSimon Pilgrim# CHECK-NEXT: [4]: MayLoad 21420d0d3aSSimon Pilgrim# CHECK-NEXT: [5]: MayStore 22420d0d3aSSimon Pilgrim# CHECK-NEXT: [6]: HasSideEffects (U) 23420d0d3aSSimon Pilgrim 24420d0d3aSSimon Pilgrim# CHECK: [1] [2] [3] [4] [5] [6] Instructions: 25420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 4 0.50 vaesdec %ymm0, %ymm1, %ymm3 26420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 11 0.50 * vaesdec (%rax), %ymm1, %ymm3 27420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 4 0.50 vaesdeclast %ymm0, %ymm1, %ymm3 28420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 11 0.50 * vaesdeclast (%rax), %ymm1, %ymm3 29420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 4 0.50 vaesenc %ymm0, %ymm1, %ymm3 30420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 11 0.50 * vaesenc (%rax), %ymm1, %ymm3 31420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 4 0.50 vaesenclast %ymm0, %ymm1, %ymm3 32420d0d3aSSimon Pilgrim# CHECK-NEXT: 1 11 0.50 * vaesenclast (%rax), %ymm1, %ymm3 33420d0d3aSSimon Pilgrim 34420d0d3aSSimon Pilgrim# CHECK: Resources: 35420d0d3aSSimon Pilgrim# CHECK-NEXT: [0] - Zn3AGU0 36420d0d3aSSimon Pilgrim# CHECK-NEXT: [1] - Zn3AGU1 37420d0d3aSSimon Pilgrim# CHECK-NEXT: [2] - Zn3AGU2 38420d0d3aSSimon Pilgrim# CHECK-NEXT: [3] - Zn3ALU0 39420d0d3aSSimon Pilgrim# CHECK-NEXT: [4] - Zn3ALU1 40420d0d3aSSimon Pilgrim# CHECK-NEXT: [5] - Zn3ALU2 41420d0d3aSSimon Pilgrim# CHECK-NEXT: [6] - Zn3ALU3 42420d0d3aSSimon Pilgrim# CHECK-NEXT: [7] - Zn3BRU1 43*5fd9babbSSimon Pilgrim# CHECK-NEXT: [8] - Zn3FP0 44*5fd9babbSSimon Pilgrim# CHECK-NEXT: [9] - Zn3FP1 45*5fd9babbSSimon Pilgrim# CHECK-NEXT: [10] - Zn3FP2 46*5fd9babbSSimon Pilgrim# CHECK-NEXT: [11] - Zn3FP3 47*5fd9babbSSimon Pilgrim# CHECK-NEXT: [12.0] - Zn3FP45 48*5fd9babbSSimon Pilgrim# CHECK-NEXT: [12.1] - Zn3FP45 49420d0d3aSSimon Pilgrim# CHECK-NEXT: [13] - Zn3FPSt 50420d0d3aSSimon Pilgrim# CHECK-NEXT: [14.0] - Zn3LSU 51420d0d3aSSimon Pilgrim# CHECK-NEXT: [14.1] - Zn3LSU 52420d0d3aSSimon Pilgrim# CHECK-NEXT: [14.2] - Zn3LSU 53420d0d3aSSimon Pilgrim# CHECK-NEXT: [15.0] - Zn3Load 54420d0d3aSSimon Pilgrim# CHECK-NEXT: [15.1] - Zn3Load 55420d0d3aSSimon Pilgrim# CHECK-NEXT: [15.2] - Zn3Load 56420d0d3aSSimon Pilgrim# CHECK-NEXT: [16.0] - Zn3Store 57420d0d3aSSimon Pilgrim# CHECK-NEXT: [16.1] - Zn3Store 58420d0d3aSSimon Pilgrim 59420d0d3aSSimon Pilgrim# CHECK: Resource pressure per iteration: 60420d0d3aSSimon Pilgrim# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] 61420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 4.00 4.00 - - 2.00 2.00 - 1.33 1.33 1.33 1.33 1.33 1.33 - - 62420d0d3aSSimon Pilgrim 63420d0d3aSSimon Pilgrim# CHECK: Resource pressure by instruction: 64420d0d3aSSimon Pilgrim# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions: 65420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vaesdec %ymm0, %ymm1, %ymm3 66420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vaesdec (%rax), %ymm1, %ymm3 67420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vaesdeclast %ymm0, %ymm1, %ymm3 68420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vaesdeclast (%rax), %ymm1, %ymm3 69420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vaesenc %ymm0, %ymm1, %ymm3 70420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vaesenc (%rax), %ymm1, %ymm3 71420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vaesenclast %ymm0, %ymm1, %ymm3 72420d0d3aSSimon Pilgrim# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vaesenclast (%rax), %ymm1, %ymm3 73