[llvm] [AArch64] Extend llvm-mca input tests (PR #217036)
Nashe Mncube via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 24 03:31:40 PDT 2026
https://github.com/nasherm updated https://github.com/llvm/llvm-project/pull/217036
>From 9d52c6546f5454ed9f81580f4ac7f38418b0508c Mon Sep 17 00:00:00 2001
From: Nashe Mncube <nashe.mncube at arm.com>
Date: Tue, 18 Aug 2026 14:30:37 +0100
Subject: [PATCH 1/3] [AArch64] Extend llvm-mca input tests
Add extra coverage to tests for AArch64 llvm-mca
Change-Id: I38cbb75ae5206d2f577969ce976467f061cd674a
---
.../AArch64/Apple/M1-basic-instructions.s | 4 +-
.../AArch64/Apple/M1-neon-instructions.s | 6 +-
.../Cortex/A55-in-order-bottleneck-analysis.s | 4 +-
.../AArch64/Cortex/A57-basic-instructions.s | 4 +-
.../llvm-mca/AArch64/Cortex/A57-forwarding.s | 2706 +++++++++++++++--
.../Cortex/C1Nano-basic-instructions.s | 8 +-
.../AArch64/Cortex/C1Nano-neon-instructions.s | 12 +-
.../C1Nano-streaming-cme-instructions.s | 12 +-
.../C1Nano-streaming-sme-only-instructions.s | 16 +-
.../AArch64/Cortex/C1Nano-sve-instructions.s | 20 +-
.../Cortex/C1Premium-basic-instructions.s | 4 +-
.../Cortex/C1Premium-neon-instructions.s | 6 +-
.../Cortex/C1Premium-sve-instructions.s | 10 +-
.../Cortex/C1Ultra-basic-instructions.s | 4 +-
.../Cortex/C1Ultra-neon-instructions.s | 12 +-
.../AArch64/Cortex/C1Ultra-sme-instructions.s | 12 +-
.../C1Ultra-streaming-cme-instructions.s | 12 +-
.../C1Ultra-streaming-sme-only-instructions.s | 16 +-
.../AArch64/Cortex/C1Ultra-sve-instructions.s | 20 +-
.../Cortex/C1Ultra-sve-sme-instructions.s | 20 +-
.../AArch64/Cortex/IPC/A55-2-skewed-alu.s | 13 +-
.../llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s | 13 +-
.../HiSilicon/hip12-basic-instructions.s | 4 +-
.../HiSilicon/hip12-neon-instructions.s | 6 +-
.../HiSilicon/hip12-sve-instructions.s | 10 +-
.../AArch64/Inputs/basic-instructions.s | 1 +
.../AArch64/Inputs/neon-instructions.s | 2 +
.../AArch64/Inputs/sme-instructions.s | 2 +
.../Inputs/streaming-cme-instructions.s | 2 +
.../Inputs/streaming-sme-only-instructions.s | 9 +-
.../AArch64/Inputs/sve-instructions.s | 4 +
.../AArch64/Inputs/sve-sme-instructions.s | 9 +
.../AArch64/Neoverse/N1-basic-instructions.s | 4 +-
.../AArch64/Neoverse/N1-neon-instructions.s | 6 +-
.../AArch64/Neoverse/N2-basic-instructions.s | 4 +-
.../AArch64/Neoverse/N2-neon-instructions.s | 6 +-
.../AArch64/Neoverse/N2-sve-instructions.s | 10 +-
.../AArch64/Neoverse/N3-basic-instructions.s | 4 +-
.../AArch64/Neoverse/N3-neon-instructions.s | 6 +-
.../AArch64/Neoverse/N3-sve-instructions.s | 10 +-
.../AArch64/Neoverse/V1-basic-instructions.s | 4 +-
.../AArch64/Neoverse/V1-neon-instructions.s | 6 +-
.../AArch64/Neoverse/V2-basic-instructions.s | 4 +-
.../AArch64/Neoverse/V2-neon-instructions.s | 6 +-
.../AArch64/Neoverse/V2-sve-instructions.s | 10 +-
.../AArch64/Neoverse/V3-basic-instructions.s | 4 +-
.../AArch64/Neoverse/V3-neon-instructions.s | 6 +-
.../AArch64/Neoverse/V3-sve-instructions.s | 10 +-
.../Neoverse/V3AE-basic-instructions.s | 4 +-
.../AArch64/Neoverse/V3AE-neon-instructions.s | 6 +-
.../AArch64/Neoverse/V3AE-sve-instructions.s | 10 +-
51 files changed, 2764 insertions(+), 339 deletions(-)
diff --git a/llvm/test/tools/llvm-mca/AArch64/Apple/M1-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Apple/M1-basic-instructions.s
index eadc911d56ca0..abbb2b04722a8 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Apple/M1-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Apple/M1-basic-instructions.s
@@ -1224,6 +1224,7 @@
# CHECK-NEXT: 1 2 1.00 mov wzr, w2
# CHECK-NEXT: 1 2 1.00 mov w3, w5
# CHECK-NEXT: 1 1 0.25 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.25 mov w10, #-1235
# CHECK-NEXT: 1 1 0.25 mov w2, #-1235
# CHECK-NEXT: 1 1 0.25 mov x2, #5299989643264
# CHECK-NEXT: 1 1 0.25 mov x2, #0
@@ -1282,7 +1283,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4] [5] [6.0] [6.1] [7] [8.0] [8.1] [9.0] [9.1] [9.2] [10] [11] [12.0] [12.1]
-# CHECK-NEXT: 42.00 42.00 56.00 51.00 51.00 258.25 258.25 258.25 258.25 8.00 50.00 289.50 289.50 46.00 263.00 263.00 95.67 95.67 95.67 26.00 12.00 21.50 21.50
+# CHECK-NEXT: 42.00 42.00 56.00 51.00 51.00 258.50 258.50 258.50 258.50 8.00 50.00 289.50 289.50 46.00 263.00 263.00 95.67 95.67 95.67 26.00 12.00 21.50 21.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4] [5] [6.0] [6.1] [7] [8.0] [8.1] [9.0] [9.1] [9.2] [10] [11] [12.0] [12.1] Instructions:
@@ -2495,6 +2496,7 @@
# CHECK-NEXT: - - - - - 0.50 0.50 0.50 0.50 - - 1.00 1.00 - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - 0.50 0.50 0.50 0.50 - - 1.00 1.00 - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - mov w10, #-1235
# CHECK-NEXT: - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - mov w2, #-1235
# CHECK-NEXT: - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Apple/M1-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Apple/M1-neon-instructions.s
index c641d109eff5e..d91b7c6a8f7d6 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Apple/M1-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Apple/M1-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.33 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.33 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.33 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.33 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.33 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.33 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.33 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.33 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.33 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.33 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.33 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.33 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.33 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.33 ushll2 v0.8h, v0.16b, #3
@@ -1597,7 +1599,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4] [5] [6.0] [6.1] [7] [8.0] [8.1] [9.0] [9.1] [9.2] [10] [11] [12.0] [12.1]
-# CHECK-NEXT: - - - - - 16.75 16.75 16.75 16.75 - - - - - 217.00 217.00 579.00 579.00 579.00 - 8.00 103.00 103.00
+# CHECK-NEXT: - - - - - 16.75 16.75 16.75 16.75 - - - - - 217.00 217.00 579.67 579.67 579.67 - 8.00 103.00 103.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4] [5] [6.0] [6.1] [7] [8.0] [8.1] [9.0] [9.1] [9.2] [10] [11] [12.0] [12.1] Instructions:
@@ -2684,6 +2686,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - sshll2 v17.2d, v13.4s, #22
@@ -3074,6 +3077,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.33 0.33 0.33 - - - - ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-bottleneck-analysis.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-bottleneck-analysis.s
index ed915c350cfb7..8dfccb24c76d7 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-bottleneck-analysis.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-bottleneck-analysis.s
@@ -1,8 +1,10 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a55 --all-views < %s | FileCheck %s
# CHECK-NOT: Throughput Bottlenecks
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a55 --bottleneck-analysis < %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=CHECK-WARN
-# CHECK-WARN: warning: bottleneck analysis is not supported for in-order CPU 'cortex-a55'
add w2, w3, #1
+
+# CHECK-WARN: warning: bottleneck analysis is not supported for in-order CPU 'cortex-a55'.
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s
index 7328af216577a..a665115012f6a 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-basic-instructions.s
@@ -1137,6 +1137,7 @@
# CHECK-NEXT: 1 1 0.50 mov wzr, w2
# CHECK-NEXT: 1 1 0.50 mov w3, w5
# CHECK-NEXT: 1 1 0.50 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.50 mov w10, #-1235
# CHECK-NEXT: 1 1 0.50 mov w2, #-1235
# CHECK-NEXT: 1 1 0.50 mov x2, #5299989643264
# CHECK-NEXT: 1 1 0.50 mov x2, #0
@@ -1180,7 +1181,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
-# CHECK-NEXT: 26.00 336.00 336.00 391.00 301.00 188.00 195.50 87.50
+# CHECK-NEXT: 26.00 336.50 336.50 391.00 301.00 188.00 195.50 87.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
@@ -2311,6 +2312,7 @@
# CHECK-NEXT: - 0.50 0.50 - - - - - mov wzr, w2
# CHECK-NEXT: - 0.50 0.50 - - - - - mov w3, w5
# CHECK-NEXT: - 0.50 0.50 - - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - 0.50 0.50 - - - - - mov w10, #-1235
# CHECK-NEXT: - 0.50 0.50 - - - - - mov w2, #-1235
# CHECK-NEXT: - 0.50 0.50 - - - - - mov x2, #5299989643264
# CHECK-NEXT: - 0.50 0.50 - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-forwarding.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-forwarding.s
index 07113df465ade..f02b579980e1d 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-forwarding.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/A57-forwarding.s
@@ -1,285 +1,6 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a57 -iterations=1 -timeline < %s | FileCheck %s
-# CHECK: [0] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 12
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER .. fmul v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] DeeeeeeeeeER fmla v0.2s, v1.2s, v2.2s
-
-# CHECK: [1] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . fmul v0.4s, v1.4s, v2.4s
-# CHECK-NEXT: [0,1] DeeeeeeeeeeER fmla v0.4s, v1.4s, v2.4s
-
-# CHECK: [2] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 12
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER .. fmulx v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] DeeeeeeeeeER fmls v0.2s, v1.2s, v2.2s
-
-# CHECK: [3] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . fmulx v0.4s, v1.4s, v2.4s
-# CHECK-NEXT: [0,1] DeeeeeeeeeeER fmls v0.4s, v1.4s, v2.4s
-
-# CHECK: [4] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 16
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeeeeER . fmla v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmla v0.2s, v3.2s, v4.2s
-
-# CHECK: [5] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 16
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeeeeER . fmls v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmls v0.2s, v3.2s, v4.2s
-
-# CHECK: [6] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 12
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER .. fmul d4, d5, d6
-# CHECK-NEXT: [0,1] DeeeeeeeeeER fmadd d1, d2, d3, d4
-
-# CHECK: [7] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 12
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER .. fmul d4, d5, d6
-# CHECK-NEXT: [0,1] DeeeeeeeeeER fmadd d1, d2, d3, d4
-
-# CHECK: [8] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 16
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeeeeER . fmadd d4, d5, d6, d7
-# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmadd d1, d2, d3, d4
-
-# CHECK: [9] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 16
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeeeeER . fmsub d4, d5, d6, d7
-# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmsub d1, d2, d3, d4
-
-# CHECK: [10] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 16
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeeeeER . fnmadd d4, d5, d6, d7
-# CHECK-NEXT: [0,1] D====eeeeeeeeeER fnmadd d1, d2, d3, d4
-
-# CHECK: [11] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 16
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeeeeER . fnmsub d4, d5, d6, d7
-# CHECK-NEXT: [0,1] D====eeeeeeeeeER fnmsub d1, d2, d3, d4
-
-# CHECK: [12] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. saba v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeER saba v0.2s, v3.2s, v4.2s
-
-# CHECK: [13] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. sabal v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeER sabal v0.2d, v3.2s, v4.2s
-
-# CHECK: [14] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. uaba v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeER uaba v0.2s, v3.2s, v4.2s
-
-# CHECK: [15] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. uabal v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeER uabal v0.2d, v3.2s, v4.2s
-
-# CHECK: [16] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. sadalp v0.1d, v1.2s
-# CHECK-NEXT: [0,1] D=eeeeER sadalp v0.1d, v2.2s
-
-# CHECK: [17] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. uadalp v0.1d, v1.2s
-# CHECK-NEXT: [0,1] D=eeeeER uadalp v0.1d, v2.2s
-
-# CHECK: [18] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. srsra v0.8b, v1.8b, #3
-# CHECK-NEXT: [0,1] D=eeeeER srsra v0.8b, v2.8b, #3
-
-# CHECK: [19] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. ursra v0.8b, v1.8b, #3
-# CHECK-NEXT: [0,1] D=eeeeER ursra v0.8b, v2.8b, #3
-
-# CHECK: [20] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 8
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeER. usra v0.4s, v1.4s, #3
-# CHECK-NEXT: [0,1] D=eeeeER usra v0.4s, v2.4s, #3
-
-# CHECK: [21] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. mul v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER mla v0.2s, v1.2s, v2.2s
-
-# CHECK: [22] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . pmul v0.8b, v1.8b, v2.8b
-# CHECK-NEXT: [0,1] D=====eeeeeER mla v0.8b, v1.8b, v2.8b
-
-# CHECK: [23] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . sqdmulh v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=====eeeeeER mla v0.2s, v1.2s, v2.2s
-
-# CHECK: [24] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . sqrdmulh v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=====eeeeeER mla v0.2s, v1.2s, v2.2s
-
-# CHECK: [25] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. smull v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER smlal v0.2d, v1.2s, v2.2s
-
-# CHECK: [26] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. umull v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER umlal v0.2d, v1.2s, v2.2s
-
-# CHECK: [27] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . sqdmull v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=====eeeeeER smlal v0.2d, v1.2s, v2.2s
-
-# CHECK: [28] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . pmull v0.8h, v1.8b, v2.8b
-# CHECK-NEXT: [0,1] D=====eeeeeER smlal v0.8h, v1.8b, v2.8b
-
-# CHECK: [29] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 13
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . . pmull2 v0.8h, v1.16b, v2.16b
-# CHECK-NEXT: [0,1] D=====eeeeeER smlal v0.8h, v1.8b, v2.8b
-
-# CHECK: [30] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. mla v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER mla v0.2s, v1.2s, v2.2s
-
-# CHECK: [31] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 11
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeER . mla v0.4s, v1.4s, v2.4s
-# CHECK-NEXT: [0,1] .D=eeeeeeER mla v0.4s, v1.4s, v2.4s
-
-# CHECK: [32] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. mls v0.2s, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER mls v0.2s, v1.2s, v2.2s
-
-# CHECK: [33] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 11
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeeER . mls v0.4s, v1.4s, v2.4s
-# CHECK-NEXT: [0,1] .D=eeeeeeER mls v0.4s, v1.4s, v2.4s
-
-# CHECK: [34] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. smlal v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER smlal v0.2d, v1.2s, v2.2s
-
-# CHECK: [35] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. smlsl v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER smlsl v0.2d, v1.2s, v2.2s
-
-# CHECK: [36] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. umlal v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER umlal v0.2d, v1.2s, v2.2s
-
-# CHECK: [37] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 9
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER. umlsl v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D=eeeeeER umlsl v0.2d, v1.2s, v2.2s
-
-# CHECK: [38] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 10
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . sqdmlal v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D==eeeeeER sqdmlal v0.2d, v1.2s, v2.2s
-
-# CHECK: [39] Code Region
-# CHECK: Instructions: 2
-# CHECK-NEXT: Total Cycles: 10
-# CHECK: Timeline view:
-# CHECK: [0,0] DeeeeeER . sqdmlsl v0.2d, v1.2s, v2.2s
-# CHECK-NEXT: [0,1] D==eeeeeER sqdmlsl v0.2d, v1.2s, v2.2s
-
# ASIMD FP Instructions
# FMUL, FMULX, FMLA, FMLS are impacted
# testing only a subset of combinations
@@ -313,7 +34,6 @@ fmls v0.2s, v1.2s, v2.2s
fmls v0.2s, v3.2s, v4.2s
# LLVM-MCA-END
-
# FP Multiply Instructions
# FMUL, FMUL, FNMUL, FMADD, FMSUB, FNMADD, FNMSUB are impacted
# testing only a subset of combinations
@@ -347,8 +67,6 @@ fnmsub d4, d5, d6, d7
fnmsub d1, d2, d3, d4
# LLVM-MCA-END
-
-
# ASIMD Integer Instructions X-Unit
# SABA, UABA, SABAL, UABAL, SADALP, UADALP, SRSRA, USRA, URSRA are impacted
# testing only a subset of combinations
@@ -398,7 +116,6 @@ usra v0.4s, v1.4s, #3
usra v0.4s, v2.4s, #3
# LLVM-MCA-END
-
# ASIMD Multiply Instructions X-Unit
# pmuls and sqd/sqrdmuls dont forward
@@ -448,7 +165,6 @@ pmull2.8h v0, v1, v2
smlal.8h v0, v1, v2
# LLVM-MCA-END
-
# MLAs
# LLVM-MCA-BEGIN
mla v0.2s, v1.2s, v2.2s
@@ -499,3 +215,2423 @@ sqdmlal v0.2d, v1.2s, v2.2s
sqdmlsl v0.2d, v1.2s, v2.2s
sqdmlsl v0.2d, v1.2s, v2.2s
# LLVM-MCA-END
+
+# CHECK: [0] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 12
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.17
+# CHECK-NEXT: IPC: 0.17
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 0.50 fmul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 9 0.50 fmla v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - fmla v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 01
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER .. fmul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] DeeeeeeeeeER fmla v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 1.0 0.0 0.0 fmla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.0 0.5 0.0 <total>
+
+# CHECK: [1] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 3
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.23
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 2 5 1.00 fmul v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 1 10 1.00 fmla v0.4s, v1.4s, v2.4s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 2.00 fmul v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: - - - - - - 2.00 - fmla v0.4s, v1.4s, v2.4s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . fmul v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: [0,1] DeeeeeeeeeeER fmla v0.4s, v1.4s, v2.4s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmul v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 1. 1 1.0 0.0 0.0 fmla v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 2 1.0 0.5 0.0 <total>
+
+# CHECK: [2] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 12
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.17
+# CHECK-NEXT: IPC: 0.17
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 0.50 fmulx v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 9 0.50 fmls v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmulx v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - fmls v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 01
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER .. fmulx v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] DeeeeeeeeeER fmls v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmulx v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 1.0 0.0 0.0 fmls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.0 0.5 0.0 <total>
+
+# CHECK: [3] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 3
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.23
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 2 5 1.00 fmulx v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 1 10 1.00 fmls v0.4s, v1.4s, v2.4s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 2.00 fmulx v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: - - - - - - 2.00 - fmls v0.4s, v1.4s, v2.4s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . fmulx v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: [0,1] DeeeeeeeeeeER fmls v0.4s, v1.4s, v2.4s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmulx v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 1. 1 1.0 0.0 0.0 fmls v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 2 1.0 0.5 0.0 <total>
+
+# CHECK: [4] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 16
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.13
+# CHECK-NEXT: IPC: 0.13
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 9 0.50 fmla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 9 0.50 fmla v0.2s, v3.2s, v4.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - fmla v0.2s, v3.2s, v4.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012345
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeeeeER . fmla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmla v0.2s, v3.2s, v4.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 5.0 0.0 0.0 fmla v0.2s, v3.2s, v4.2s
+# CHECK-NEXT: 2 3.0 0.5 0.0 <total>
+
+# CHECK: [5] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 16
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.13
+# CHECK-NEXT: IPC: 0.13
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 9 0.50 fmls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 9 0.50 fmls v0.2s, v3.2s, v4.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - fmls v0.2s, v3.2s, v4.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012345
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeeeeER . fmls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmls v0.2s, v3.2s, v4.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 5.0 0.0 0.0 fmls v0.2s, v3.2s, v4.2s
+# CHECK-NEXT: 2 3.0 0.5 0.0 <total>
+
+# CHECK: [6] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 12
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.17
+# CHECK-NEXT: IPC: 0.17
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 0.50 fmul d4, d5, d6
+# CHECK-NEXT: 1 9 0.50 fmadd d1, d2, d3, d4
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmul d4, d5, d6
+# CHECK-NEXT: - - - - - - 1.00 - fmadd d1, d2, d3, d4
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 01
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER .. fmul d4, d5, d6
+# CHECK-NEXT: [0,1] DeeeeeeeeeER fmadd d1, d2, d3, d4
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmul d4, d5, d6
+# CHECK-NEXT: 1. 1 1.0 0.0 0.0 fmadd d1, d2, d3, d4
+# CHECK-NEXT: 2 1.0 0.5 0.0 <total>
+
+# CHECK: [7] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 12
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.17
+# CHECK-NEXT: IPC: 0.17
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 0.50 fmul d4, d5, d6
+# CHECK-NEXT: 1 9 0.50 fmadd d1, d2, d3, d4
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmul d4, d5, d6
+# CHECK-NEXT: - - - - - - 1.00 - fmadd d1, d2, d3, d4
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 01
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER .. fmul d4, d5, d6
+# CHECK-NEXT: [0,1] DeeeeeeeeeER fmadd d1, d2, d3, d4
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmul d4, d5, d6
+# CHECK-NEXT: 1. 1 1.0 0.0 0.0 fmadd d1, d2, d3, d4
+# CHECK-NEXT: 2 1.0 0.5 0.0 <total>
+
+# CHECK: [8] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 16
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.13
+# CHECK-NEXT: IPC: 0.13
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 9 0.50 fmadd d4, d5, d6, d7
+# CHECK-NEXT: 1 9 0.50 fmadd d1, d2, d3, d4
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmadd d4, d5, d6, d7
+# CHECK-NEXT: - - - - - - 1.00 - fmadd d1, d2, d3, d4
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012345
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeeeeER . fmadd d4, d5, d6, d7
+# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmadd d1, d2, d3, d4
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmadd d4, d5, d6, d7
+# CHECK-NEXT: 1. 1 5.0 0.0 0.0 fmadd d1, d2, d3, d4
+# CHECK-NEXT: 2 3.0 0.5 0.0 <total>
+
+# CHECK: [9] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 16
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.13
+# CHECK-NEXT: IPC: 0.13
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 9 0.50 fmsub d4, d5, d6, d7
+# CHECK-NEXT: 1 9 0.50 fmsub d1, d2, d3, d4
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fmsub d4, d5, d6, d7
+# CHECK-NEXT: - - - - - - 1.00 - fmsub d1, d2, d3, d4
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012345
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeeeeER . fmsub d4, d5, d6, d7
+# CHECK-NEXT: [0,1] D====eeeeeeeeeER fmsub d1, d2, d3, d4
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fmsub d4, d5, d6, d7
+# CHECK-NEXT: 1. 1 5.0 0.0 0.0 fmsub d1, d2, d3, d4
+# CHECK-NEXT: 2 3.0 0.5 0.0 <total>
+
+# CHECK: [10] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 16
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.13
+# CHECK-NEXT: IPC: 0.13
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 9 0.50 fnmadd d4, d5, d6, d7
+# CHECK-NEXT: 1 9 0.50 fnmadd d1, d2, d3, d4
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fnmadd d4, d5, d6, d7
+# CHECK-NEXT: - - - - - - 1.00 - fnmadd d1, d2, d3, d4
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012345
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeeeeER . fnmadd d4, d5, d6, d7
+# CHECK-NEXT: [0,1] D====eeeeeeeeeER fnmadd d1, d2, d3, d4
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fnmadd d4, d5, d6, d7
+# CHECK-NEXT: 1. 1 5.0 0.0 0.0 fnmadd d1, d2, d3, d4
+# CHECK-NEXT: 2 3.0 0.5 0.0 <total>
+
+# CHECK: [11] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 16
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.13
+# CHECK-NEXT: IPC: 0.13
+# CHECK-NEXT: Block RThroughput: 1.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 9 0.50 fnmsub d4, d5, d6, d7
+# CHECK-NEXT: 1 9 0.50 fnmsub d1, d2, d3, d4
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 1.00 1.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 fnmsub d4, d5, d6, d7
+# CHECK-NEXT: - - - - - - 1.00 - fnmsub d1, d2, d3, d4
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012345
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeeeeER . fnmsub d4, d5, d6, d7
+# CHECK-NEXT: [0,1] D====eeeeeeeeeER fnmsub d1, d2, d3, d4
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 fnmsub d4, d5, d6, d7
+# CHECK-NEXT: 1. 1 5.0 0.0 0.0 fnmsub d1, d2, d3, d4
+# CHECK-NEXT: 2 3.0 0.5 0.0 <total>
+
+# CHECK: [12] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 saba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 4 1.00 saba v0.2s, v3.2s, v4.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 saba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - - 1.00 saba v0.2s, v3.2s, v4.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. saba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeER saba v0.2s, v3.2s, v4.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 saba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 saba v0.2s, v3.2s, v4.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [13] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 sabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 4 1.00 sabal v0.2d, v3.2s, v4.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 sabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - - 1.00 sabal v0.2d, v3.2s, v4.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. sabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeER sabal v0.2d, v3.2s, v4.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 sabal v0.2d, v3.2s, v4.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [14] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 uaba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 4 1.00 uaba v0.2s, v3.2s, v4.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 uaba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - - 1.00 uaba v0.2s, v3.2s, v4.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. uaba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeER uaba v0.2s, v3.2s, v4.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 uaba v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 uaba v0.2s, v3.2s, v4.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [15] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 uabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 4 1.00 uabal v0.2d, v3.2s, v4.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 uabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - - 1.00 uabal v0.2d, v3.2s, v4.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. uabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeER uabal v0.2d, v3.2s, v4.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 uabal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 uabal v0.2d, v3.2s, v4.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [16] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 sadalp v0.1d, v1.2s
+# CHECK-NEXT: 1 4 1.00 sadalp v0.1d, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 sadalp v0.1d, v1.2s
+# CHECK-NEXT: - - - - - - - 1.00 sadalp v0.1d, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. sadalp v0.1d, v1.2s
+# CHECK-NEXT: [0,1] D=eeeeER sadalp v0.1d, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sadalp v0.1d, v1.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 sadalp v0.1d, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [17] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 uadalp v0.1d, v1.2s
+# CHECK-NEXT: 1 4 1.00 uadalp v0.1d, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 uadalp v0.1d, v1.2s
+# CHECK-NEXT: - - - - - - - 1.00 uadalp v0.1d, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. uadalp v0.1d, v1.2s
+# CHECK-NEXT: [0,1] D=eeeeER uadalp v0.1d, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 uadalp v0.1d, v1.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 uadalp v0.1d, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [18] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 srsra v0.8b, v1.8b, #3
+# CHECK-NEXT: 1 4 1.00 srsra v0.8b, v2.8b, #3
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 srsra v0.8b, v1.8b, #3
+# CHECK-NEXT: - - - - - - - 1.00 srsra v0.8b, v2.8b, #3
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. srsra v0.8b, v1.8b, #3
+# CHECK-NEXT: [0,1] D=eeeeER srsra v0.8b, v2.8b, #3
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 srsra v0.8b, v1.8b, #3
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 srsra v0.8b, v2.8b, #3
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [19] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 ursra v0.8b, v1.8b, #3
+# CHECK-NEXT: 1 4 1.00 ursra v0.8b, v2.8b, #3
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 ursra v0.8b, v1.8b, #3
+# CHECK-NEXT: - - - - - - - 1.00 ursra v0.8b, v2.8b, #3
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. ursra v0.8b, v1.8b, #3
+# CHECK-NEXT: [0,1] D=eeeeER ursra v0.8b, v2.8b, #3
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 ursra v0.8b, v1.8b, #3
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 ursra v0.8b, v2.8b, #3
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [20] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 8
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.25
+# CHECK-NEXT: IPC: 0.25
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 4 1.00 usra v0.4s, v1.4s, #3
+# CHECK-NEXT: 1 4 1.00 usra v0.4s, v2.4s, #3
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - - 2.00
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - - 1.00 usra v0.4s, v1.4s, #3
+# CHECK-NEXT: - - - - - - - 1.00 usra v0.4s, v2.4s, #3
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 01234567
+
+# CHECK: [0,0] DeeeeER. usra v0.4s, v1.4s, #3
+# CHECK-NEXT: [0,1] D=eeeeER usra v0.4s, v2.4s, #3
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 usra v0.4s, v1.4s, #3
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 usra v0.4s, v2.4s, #3
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [21] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 mul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - mul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. mul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 mul v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [22] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.15
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 pmul v0.8b, v1.8b, v2.8b
+# CHECK-NEXT: 1 5 1.00 mla v0.8b, v1.8b, v2.8b
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - pmul v0.8b, v1.8b, v2.8b
+# CHECK-NEXT: - - - - - - 1.00 - mla v0.8b, v1.8b, v2.8b
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . pmul v0.8b, v1.8b, v2.8b
+# CHECK-NEXT: [0,1] D=====eeeeeER mla v0.8b, v1.8b, v2.8b
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 pmul v0.8b, v1.8b, v2.8b
+# CHECK-NEXT: 1. 1 6.0 0.0 0.0 mla v0.8b, v1.8b, v2.8b
+# CHECK-NEXT: 2 3.5 0.5 0.0 <total>
+
+# CHECK: [23] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.15
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 sqdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - sqdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . sqdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=====eeeeeER mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sqdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 6.0 0.0 0.0 mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 3.5 0.5 0.0 <total>
+
+# CHECK: [24] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.15
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 sqrdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - sqrdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . sqrdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=====eeeeeER mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sqrdmulh v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 6.0 0.0 0.0 mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 3.5 0.5 0.0 <total>
+
+# CHECK: [25] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 smull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - smull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. smull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 smull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [26] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 umull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 umlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - umull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - umlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. umull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER umlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 umull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 umlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [27] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.15
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 sqdmull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - sqdmull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . sqdmull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=====eeeeeER smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sqdmull v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 6.0 0.0 0.0 smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 3.5 0.5 0.0 <total>
+
+# CHECK: [28] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.15
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 pmull v0.8h, v1.8b, v2.8b
+# CHECK-NEXT: 1 5 1.00 smlal v0.8h, v1.8b, v2.8b
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - pmull v0.8h, v1.8b, v2.8b
+# CHECK-NEXT: - - - - - - 1.00 - smlal v0.8h, v1.8b, v2.8b
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . pmull v0.8h, v1.8b, v2.8b
+# CHECK-NEXT: [0,1] D=====eeeeeER smlal v0.8h, v1.8b, v2.8b
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 pmull v0.8h, v1.8b, v2.8b
+# CHECK-NEXT: 1. 1 6.0 0.0 0.0 smlal v0.8h, v1.8b, v2.8b
+# CHECK-NEXT: 2 3.5 0.5 0.0 <total>
+
+# CHECK: [29] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 13
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.15
+# CHECK-NEXT: IPC: 0.15
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 pmull2 v0.8h, v1.16b, v2.16b
+# CHECK-NEXT: 1 5 1.00 smlal v0.8h, v1.8b, v2.8b
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - pmull2 v0.8h, v1.16b, v2.16b
+# CHECK-NEXT: - - - - - - 1.00 - smlal v0.8h, v1.8b, v2.8b
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 012
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . . pmull2 v0.8h, v1.16b, v2.16b
+# CHECK-NEXT: [0,1] D=====eeeeeER smlal v0.8h, v1.8b, v2.8b
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 pmull2 v0.8h, v1.16b, v2.16b
+# CHECK-NEXT: 1. 1 6.0 0.0 0.0 smlal v0.8h, v1.8b, v2.8b
+# CHECK-NEXT: 2 3.5 0.5 0.0 <total>
+
+# CHECK: [30] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER mla v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 mla v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [31] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 11
+# CHECK-NEXT: Total uOps: 4
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.36
+# CHECK-NEXT: IPC: 0.18
+# CHECK-NEXT: Block RThroughput: 4.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 2 6 2.00 mla v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 2 6 2.00 mla v0.4s, v1.4s, v2.4s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 4.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 2.00 - mla v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: - - - - - - 2.00 - mla v0.4s, v1.4s, v2.4s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 0
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeER . mla v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: [0,1] .D=eeeeeeER mla v0.4s, v1.4s, v2.4s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 mla v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 mla v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [32] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 mls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 mls v0.2s, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - mls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - mls v0.2s, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. mls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER mls v0.2s, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 mls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 mls v0.2s, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [33] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 11
+# CHECK-NEXT: Total uOps: 4
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.36
+# CHECK-NEXT: IPC: 0.18
+# CHECK-NEXT: Block RThroughput: 4.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 2 6 2.00 mls v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 2 6 2.00 mls v0.4s, v1.4s, v2.4s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 4.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 2.00 - mls v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: - - - - - - 2.00 - mls v0.4s, v1.4s, v2.4s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: 0
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeeER . mls v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: [0,1] .D=eeeeeeER mls v0.4s, v1.4s, v2.4s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 mls v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 mls v0.4s, v1.4s, v2.4s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [34] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER smlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 smlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [35] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 smlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 smlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - smlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - smlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. smlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER smlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 smlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 smlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [36] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 umlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 umlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - umlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - umlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. umlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER umlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 umlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 umlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [37] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 9
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.22
+# CHECK-NEXT: IPC: 0.22
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 umlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 umlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - umlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - umlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 012345678
+
+# CHECK: [0,0] DeeeeeER. umlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D=eeeeeER umlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 umlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 2.0 0.0 0.0 umlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 1.5 0.5 0.0 <total>
+
+# CHECK: [38] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 10
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.20
+# CHECK-NEXT: IPC: 0.20
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 sqdmlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 sqdmlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - sqdmlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - sqdmlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . sqdmlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D==eeeeeER sqdmlal v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sqdmlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 3.0 0.0 0.0 sqdmlal v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 2.0 0.5 0.0 <total>
+
+# CHECK: [39] Code Region
+
+# CHECK: Iterations: 1
+# CHECK-NEXT: Instructions: 2
+# CHECK-NEXT: Total Cycles: 10
+# CHECK-NEXT: Total uOps: 2
+
+# CHECK: Dispatch Width: 3
+# CHECK-NEXT: uOps Per Cycle: 0.20
+# CHECK-NEXT: IPC: 0.20
+# CHECK-NEXT: Block RThroughput: 2.0
+
+# CHECK: Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects (U)
+
+# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: 1 5 1.00 sqdmlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1 5 1.00 sqdmlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Resources:
+# CHECK-NEXT: [0] - A57UnitB
+# CHECK-NEXT: [1.0] - A57UnitI
+# CHECK-NEXT: [1.1] - A57UnitI
+# CHECK-NEXT: [2] - A57UnitL
+# CHECK-NEXT: [3] - A57UnitM
+# CHECK-NEXT: [4] - A57UnitS
+# CHECK-NEXT: [5] - A57UnitW
+# CHECK-NEXT: [6] - A57UnitX
+
+# CHECK: Resource pressure per iteration:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6]
+# CHECK-NEXT: - - - - - - 2.00 -
+
+# CHECK: Resource pressure by instruction:
+# CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions:
+# CHECK-NEXT: - - - - - - 1.00 - sqdmlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: - - - - - - 1.00 - sqdmlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Timeline view:
+# CHECK-NEXT: Index 0123456789
+
+# CHECK: [0,0] DeeeeeER . sqdmlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: [0,1] D==eeeeeER sqdmlsl v0.2d, v1.2s, v2.2s
+
+# CHECK: Average Wait times (based on the timeline view):
+# CHECK-NEXT: [0]: Executions
+# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue
+# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready
+# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
+
+# CHECK: [0] [1] [2] [3]
+# CHECK-NEXT: 0. 1 1.0 1.0 0.0 sqdmlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 1. 1 3.0 0.0 0.0 sqdmlsl v0.2d, v1.2s, v2.2s
+# CHECK-NEXT: 2 2.0 0.5 0.0 <total>
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-basic-instructions.s
index 843035137b4a5..1addcd9660b91 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-basic-instructions.s
@@ -1228,6 +1228,7 @@
# NONSTREAMING-NEXT: 1 1 0.50 mov wzr, w2
# NONSTREAMING-NEXT: 1 1 0.50 mov w3, w5
# NONSTREAMING-NEXT: 1 1 0.50 movz w2, #0, lsl #16
+# NONSTREAMING-NEXT: 1 1 0.50 mov w10, #-1235
# NONSTREAMING-NEXT: 1 1 0.50 mov w2, #-1235
# NONSTREAMING-NEXT: 1 1 0.50 mov x2, #5299989643264
# NONSTREAMING-NEXT: 1 1 0.50 mov x2, #0
@@ -2469,6 +2470,7 @@
# STREAMING-NEXT: 1 1 0.50 mov wzr, w2
# STREAMING-NEXT: 1 1 0.50 mov w3, w5
# STREAMING-NEXT: 1 1 0.50 movz w2, #0, lsl #16
+# STREAMING-NEXT: 1 1 0.50 mov w10, #-1235
# STREAMING-NEXT: 1 1 0.50 mov w2, #-1235
# STREAMING-NEXT: 1 1 0.50 mov x2, #5299989643264
# STREAMING-NEXT: 1 1 0.50 mov x2, #0
@@ -2582,11 +2584,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# NONSTREAMING-NEXT: - - - - - - - - 260.50 260.50 27.00 - - - - - - - - - - - - - - - - - 64.00 178.50 328.50 89.00 - 136.50 136.50 8.50 8.50 67.00
+# NONSTREAMING-NEXT: - - - - - - - - 261.00 261.00 27.00 - - - - - - - - - - - - - - - - - 64.00 178.50 328.50 89.00 - 136.50 136.50 8.50 8.50 67.00
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# STREAMING-NEXT: - - - - - - - - 260.50 260.50 27.00 - - - - 153.00 105.00 - - - - 43.00 405.00 - - 127.00 - - 64.00 161.00 373.00 89.00 - 22.50 22.50 1.00 1.00 67.00
+# STREAMING-NEXT: - - - - - - - - 261.00 261.00 27.00 - - - - 153.00 105.00 - - - - 43.00 405.00 - - 127.00 - - 64.00 161.00 373.00 89.00 - 22.50 22.50 1.00 1.00 67.00
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] Instructions:
@@ -3799,6 +3801,7 @@
# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov wzr, w2
# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov w3, w5
# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - movz w2, #0, lsl #16
+# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov w10, #-1235
# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov w2, #-1235
# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov x2, #5299989643264
# NONSTREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov x2, #0
@@ -5041,6 +5044,7 @@
# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov wzr, w2
# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov w3, w5
# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - movz w2, #0, lsl #16
+# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov w10, #-1235
# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov w2, #-1235
# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov x2, #5299989643264
# STREAMING-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-neon-instructions.s
index 3030759877d58..d56d623ff8897 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-neon-instructions.s
@@ -1102,6 +1102,7 @@
# NONSTREAMING-NEXT: 1 3 0.50 sshll v9.8h, v2.8b, #0
# NONSTREAMING-NEXT: 1 3 0.50 sshll v12.4s, v3.4h, #4
# NONSTREAMING-NEXT: 1 3 0.50 sshll v0.2d, v0.2s, #3
+# NONSTREAMING-NEXT: 1 3 0.50 sshll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: 1 3 0.50 sshll2 v28.8h, v12.16b, #7
# NONSTREAMING-NEXT: 1 3 0.50 sshll2 v0.4s, v0.8h, #3
# NONSTREAMING-NEXT: 1 3 0.50 sshll2 v17.2d, v13.4s, #22
@@ -1492,6 +1493,7 @@
# NONSTREAMING-NEXT: 1 3 0.50 ushll v0.4s, v0.4h, #3
# NONSTREAMING-NEXT: 1 3 0.50 ushll v18.8h, v24.8b, #4
# NONSTREAMING-NEXT: 1 3 0.50 ushll v16.2d, v16.2s, #31
+# NONSTREAMING-NEXT: 1 3 0.50 ushll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: 1 3 0.50 ushll2 v31.2d, v12.4s, #11
# NONSTREAMING-NEXT: 1 3 0.50 ushll2 v18.4s, v22.8h, #13
# NONSTREAMING-NEXT: 1 3 0.50 ushll2 v0.8h, v0.16b, #3
@@ -2663,6 +2665,7 @@
# STREAMING-NEXT: 1 4 0.50 sshll v9.8h, v2.8b, #0
# STREAMING-NEXT: 1 4 0.50 sshll v12.4s, v3.4h, #4
# STREAMING-NEXT: 1 4 0.50 sshll v0.2d, v0.2s, #3
+# STREAMING-NEXT: 1 4 0.50 sshll v0.8h, v1.8b, #0
# STREAMING-NEXT: 1 4 0.50 sshll2 v28.8h, v12.16b, #7
# STREAMING-NEXT: 1 4 0.50 sshll2 v0.4s, v0.8h, #3
# STREAMING-NEXT: 1 4 0.50 sshll2 v17.2d, v13.4s, #22
@@ -3053,6 +3056,7 @@
# STREAMING-NEXT: 1 4 0.50 ushll v0.4s, v0.4h, #3
# STREAMING-NEXT: 1 4 0.50 ushll v18.8h, v24.8b, #4
# STREAMING-NEXT: 1 4 0.50 ushll v16.2d, v16.2s, #31
+# STREAMING-NEXT: 1 4 0.50 ushll v0.8h, v1.8b, #0
# STREAMING-NEXT: 1 4 0.50 ushll2 v31.2d, v12.4s, #11
# STREAMING-NEXT: 1 4 0.50 ushll2 v18.4s, v22.8h, #13
# STREAMING-NEXT: 1 4 0.50 ushll2 v0.8h, v0.16b, #3
@@ -3222,11 +3226,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13.50 545.50 - - 744.00 744.00 117.00 117.00 163.00
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 13.50 545.50 - - 745.00 745.00 117.00 117.00 163.00
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# STREAMING-NEXT: - - - - - - - - - - - - 112.00 - - 169.00 135.00 - - - - - 611.00 - 22.50 363.00 - 22.50 - 13.50 545.50 - - 318.50 318.50 73.50 73.50 38.00
+# STREAMING-NEXT: - - - - - - - - - - - - 112.00 - - 169.00 135.00 - - - - - 612.00 - 22.50 364.00 - 22.50 - 13.50 545.50 - - 318.50 318.50 73.50 73.50 38.00
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] Instructions:
@@ -4313,6 +4317,7 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll v9.8h, v2.8b, #0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll v12.4s, v3.4h, #4
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll v0.2d, v0.2s, #3
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll2 v28.8h, v12.16b, #7
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll2 v0.4s, v0.8h, #3
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - sshll2 v17.2d, v13.4s, #22
@@ -4703,6 +4708,7 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll v0.4s, v0.4h, #3
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll v18.8h, v24.8b, #4
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll v16.2d, v16.2s, #31
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll2 v31.2d, v12.4s, #11
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll2 v18.4s, v22.8h, #13
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - ushll2 v0.8h, v0.16b, #3
@@ -5875,6 +5881,7 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll v9.8h, v2.8b, #0
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll v12.4s, v3.4h, #4
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll v0.2d, v0.2s, #3
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll v0.8h, v1.8b, #0
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll2 v28.8h, v12.16b, #7
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll2 v0.4s, v0.8h, #3
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sshll2 v17.2d, v13.4s, #22
@@ -6265,6 +6272,7 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll v0.4s, v0.4h, #3
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll v18.8h, v24.8b, #4
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll v16.2d, v16.2s, #31
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll v0.8h, v1.8b, #0
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll2 v31.2d, v12.4s, #11
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll2 v18.4s, v22.8h, #13
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-cme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-cme-instructions.s
index b671f92b0ed87..8c58421724c39 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-cme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-cme-instructions.s
@@ -43,6 +43,8 @@
# NONSTREAMING-NEXT: 1 4 0.50 fadd z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: 1 4 0.50 fmul z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: 1 4 0.50 fmin z0.s, p0/m, z0.s, z1.s
+# NONSTREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: 1 3 0.50 fmov z0.s, p0/m, #1.00000000
# NONSTREAMING-NEXT: 2 10 0.50 bfdot z0.s, z1.h, z2.h
# NONSTREAMING-NEXT: 1 3 1.00 * ld1w { z0.s }, p0/z, [x0]
@@ -105,6 +107,8 @@
# STREAMING-NEXT: 1 4 0.50 fadd z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: 1 4 0.50 fmul z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: 1 4 0.50 fmin z0.s, p0/m, z0.s, z1.s
+# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: 1 1 0.50 fmov z0.s, p0/m, #1.00000000
# STREAMING-NEXT: 1 4 0.50 bfdot z0.s, z1.h, z2.h
# STREAMING-NEXT: 1 2 1.00 * ld1w { z0.s }, p0/z, [x0]
@@ -226,11 +230,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - 2.00 22.00 - - 46.00 42.00 6.50 6.50 -
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - 2.00 22.00 - - 48.00 44.00 6.50 6.50 -
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# STREAMING-NEXT: 0.33 0.33 0.33 - - - - - - - - 2.00 - - - 30.00 12.00 - - - - 4.00 58.50 0.50 1.00 19.50 0.50 1.00 - 1.00 23.00 - - 1.50 1.50 - - -
+# STREAMING-NEXT: 0.33 0.33 0.33 - - - - - - - - 2.00 - - - 30.00 12.00 - - - - 4.00 60.50 0.50 1.00 19.50 0.50 1.00 - 1.00 23.00 - - 1.50 1.50 - - -
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] Instructions:
@@ -256,6 +260,8 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - fadd z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - fmul z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - fmin z0.s, p0/m, z0.s, z1.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - fmov z0.s, p0/m, #1.00000000
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 - bfdot z0.s, z1.h, z2.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - - - - - ld1w { z0.s }, p0/z, [x0]
@@ -319,6 +325,8 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - fadd z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - fmul z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - fmin z0.s, p0/m, z0.s, z1.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - fmov z0.s, p0/m, #1.00000000
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - bfdot z0.s, z1.h, z2.h
# STREAMING-NEXT: - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - - - - ld1w { z0.s }, p0/z, [x0]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-sme-only-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-sme-only-instructions.s
index 6d4b021d054ab..f4369605992ac 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-sme-only-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-streaming-sme-only-instructions.s
@@ -24,6 +24,7 @@
# STREAMING-NEXT: 1 11 1.20 * bf2cvtlt z0.h, z0.b
# STREAMING-NEXT: 1 4 1.00 U bfadd za.h[w8, 0, vgx2], { z0.h, z1.h }
# STREAMING-NEXT: 1 4 2.00 U bfadd za.h[w8, 0, vgx4], { z0.h - z3.h }
+# STREAMING-NEXT: 1 4 1.00 U bfsub za.h[w8, 0, vgx2], { z0.h, z1.h }
# STREAMING-NEXT: 1 11 1.20 U bfcvt z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 7 1.00 U bfcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 5 1.00 U bfclamp { z0.h, z1.h }, z0.h, z0.h
@@ -71,7 +72,10 @@
# STREAMING-NEXT: 1 5 1.00 U famin { z0.s, z1.s }, { z0.s, z1.s }, { z0.s, z1.s }
# STREAMING-NEXT: 1 5 1.00 U fclamp { z0.h, z1.h }, z0.h, z0.h
# STREAMING-NEXT: 1 7 2.00 U fclamp { z0.d - z3.d }, z0.d, z0.d
+# STREAMING-NEXT: 1 4 1.00 * U fcvt z0.b, { z0.s - z3.s }
# STREAMING-NEXT: 1 4 1.20 U fcvt z0.h, { z0.s, z1.s }
+# STREAMING-NEXT: 1 4 1.00 * U fcvtnb z0.b, { z0.s, z1.s }
+# STREAMING-NEXT: 1 7 1.00 * U bfcvtn z0.b, { z0.h, z1.h }
# STREAMING-NEXT: 1 4 1.00 U fcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 4 1.00 U fcvtzs { z0.s, z1.s }, { z0.s, z1.s }
# STREAMING-NEXT: 1 4 2.00 U fcvtzs { z0.s - z3.s }, { z0.s - z3.s }
@@ -108,6 +112,7 @@
# STREAMING-NEXT: 1 4 2.00 U fvdotb za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# STREAMING-NEXT: 1 4 2.00 U fvdott za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# STREAMING-NEXT: 1 4 0.50 U fscale { z0.s, z1.s }, { z0.s, z1.s }, z0.s
+# STREAMING-NEXT: 1 5 2.00 U fscale { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# STREAMING-NEXT: 1 5 2.00 U luti2 { z0.h, z1.h }, zt0, z0[0]
# STREAMING-NEXT: 1 7 4.00 U luti2 { z0.h - z3.h }, zt0, z0[0]
# STREAMING-NEXT: 1 5 2.00 U luti4 { z0.h, z1.h }, zt0, z0[0]
@@ -166,6 +171,8 @@
# STREAMING-NEXT: 1 8 1.00 U sqcvt z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 8 1.00 U sqcvt z0.b, { z0.s - z3.s }
# STREAMING-NEXT: 1 8 1.00 U sqcvtun z0.b, { z0.s - z3.s }
+# STREAMING-NEXT: 1 8 1.00 U sqcvtu z0.h, { z0.s, z1.s }
+# STREAMING-NEXT: 1 8 1.00 U uqcvt z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 5 1.00 U sqdmulh { z0.h, z1.h }, { z0.h, z1.h }, z0.h
# STREAMING-NEXT: 1 5 2.00 U sqdmulh { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# STREAMING-NEXT: 1 4 1.00 U sqrshr z0.h, { z0.s, z1.s }, #16
@@ -274,7 +281,7 @@
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# STREAMING-NEXT: - - - 7.20 7.20 7.20 7.20 7.20 - - - 12.00 - 145.00 4.00 41.50 19.50 3.00 0.33 0.33 0.33 12.00 105.50 - 0.50 98.50 - 0.50 - 1.50 4.50 - - - - - - -
+# STREAMING-NEXT: - - - 7.20 7.20 7.20 7.20 7.20 - - - 12.00 - 146.00 4.00 45.50 21.50 3.00 0.33 0.33 0.33 12.00 111.00 - 0.50 104.00 - 0.50 - 1.50 4.50 - - - - - - -
# STREAMING: Resource pressure by instruction:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] Instructions:
@@ -292,6 +299,7 @@
# STREAMING-NEXT: - - - 1.20 1.20 1.20 1.20 1.20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bf2cvtlt z0.h, z0.b
# STREAMING-NEXT: - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - bfadd za.h[w8, 0, vgx2], { z0.h, z1.h }
# STREAMING-NEXT: - - - - - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - bfadd za.h[w8, 0, vgx4], { z0.h - z3.h }
+# STREAMING-NEXT: - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - bfsub za.h[w8, 0, vgx2], { z0.h, z1.h }
# STREAMING-NEXT: - - - 1.20 1.20 1.20 1.20 1.20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bfcvt z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - bfcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - bfclamp { z0.h, z1.h }, z0.h, z0.h
@@ -339,7 +347,10 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - famin { z0.s, z1.s }, { z0.s, z1.s }, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - fclamp { z0.h, z1.h }, z0.h, z0.h
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - fclamp { z0.d - z3.d }, z0.d, z0.d
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - fcvt z0.b, { z0.s - z3.s }
# STREAMING-NEXT: - - - 1.20 1.20 1.20 1.20 1.20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fcvt z0.h, { z0.s, z1.s }
+# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - fcvtnb z0.b, { z0.s, z1.s }
+# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - bfcvtn z0.b, { z0.h, z1.h }
# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - fcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - fcvtzs { z0.s, z1.s }, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - fcvtzs { z0.s - z3.s }, { z0.s - z3.s }
@@ -376,6 +387,7 @@
# STREAMING-NEXT: - - - - - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - fvdotb za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# STREAMING-NEXT: - - - - - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - fvdott za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - fscale { z0.s, z1.s }, { z0.s, z1.s }, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - fscale { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - luti2 { z0.h, z1.h }, zt0, z0[0]
# STREAMING-NEXT: - - - - - - - - - - - - - - - 4.00 - - - - - - - - - - - - - - - - - - - - - - luti2 { z0.h - z3.h }, zt0, z0[0]
# STREAMING-NEXT: - - - - - - - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - luti4 { z0.h, z1.h }, zt0, z0[0]
@@ -434,6 +446,8 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sqcvt z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sqcvt z0.b, { z0.s - z3.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sqcvtun z0.b, { z0.s - z3.s }
+# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - - - - - - - - - - sqcvtu z0.h, { z0.s, z1.s }
+# STREAMING-NEXT: - - - - - - - - - - - - - - - 1.00 1.00 - - - - - 0.50 - - 0.50 - - - - - - - - - - - - uqcvt z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - sqdmulh { z0.h, z1.h }, { z0.h, z1.h }, z0.h
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - sqdmulh { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - sqrshr z0.h, { z0.s, z1.s }, #16
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-sve-instructions.s
index 863bd654fb29c..90fab0c7df0f5 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-sve-instructions.s
@@ -571,12 +571,16 @@
# NONSTREAMING-NEXT: 1 4 1.00 facge p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: 1 4 1.00 facge p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z0.d, z1.d
# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z1.d, z0.d
# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.h, p0/z, z0.h, z1.h
# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: 1 4 0.50 fadd z0.d, p0/m, z0.d, #0.5
# NONSTREAMING-NEXT: 1 4 0.50 fadd z0.d, p7/m, z0.d, z31.d
# NONSTREAMING-NEXT: 1 4 0.50 fadd z0.d, z1.d, z31.d
@@ -3987,12 +3991,16 @@
# STREAMING-NEXT: 1 4 1.00 facge p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: 1 4 1.00 facge p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z0.d, z1.d
# STREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z1.d, z0.d
# STREAMING-NEXT: 1 4 1.00 facgt p0.h, p0/z, z0.h, z1.h
# STREAMING-NEXT: 1 4 1.00 facgt p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: 1 4 0.50 fadd z0.d, p0/m, z0.d, #0.5
# STREAMING-NEXT: 1 4 0.50 fadd z0.d, p7/m, z0.d, z31.d
# STREAMING-NEXT: 1 4 0.50 fadd z0.d, z1.d, z31.d
@@ -6932,11 +6940,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# NONSTREAMING-NEXT: - - - - - - - - 393.00 54.00 9.00 - - - - - - - - - - - - - - - - - - 221.00 2425.00 - - 1378.50 1308.50 212.00 212.00 676.00
+# NONSTREAMING-NEXT: - - - - - - - - 393.00 54.00 9.00 - - - - - - - - - - - - - - - - - - 221.00 2425.00 - - 1382.50 1312.50 212.00 212.00 676.00
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
-# STREAMING-NEXT: 2.67 2.67 2.67 - - - - - 225.00 14.00 9.00 245.00 211.00 - - 464.50 267.50 - - - - 122.00 1283.50 1.50 179.00 730.50 1.50 179.00 - 241.50 2093.50 - - 184.50 172.50 6.00 6.00 435.00
+# STREAMING-NEXT: 2.67 2.67 2.67 - - - - - 225.00 14.00 9.00 245.00 211.00 - - 464.50 267.50 - - - - 122.00 1287.50 1.50 179.00 730.50 1.50 179.00 - 241.50 2093.50 - - 184.50 172.50 6.00 6.00 435.00
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [1.2] [1.3] [1.4] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [12.2] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] Instructions:
@@ -7492,12 +7500,16 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facge p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facge p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facge p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.d, p0/z, z0.d, z1.d
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.d, p0/z, z1.d, z0.d
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.h, p0/z, z0.h, z1.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - fadd z0.d, p0/m, z0.d, #0.5
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - fadd z0.d, p7/m, z0.d, z31.d
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - fadd z0.d, z1.d, z31.d
@@ -10909,12 +10921,16 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facge p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facge p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facge p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facge p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.d, p0/z, z0.d, z1.d
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.d, p0/z, z1.d, z0.d
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.h, p0/z, z0.h, z1.h
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - fadd z0.d, p0/m, z0.d, #0.5
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - fadd z0.d, p7/m, z0.d, z31.d
# STREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-basic-instructions.s
index 99ca353f47956..5bd5fad9c425b 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 1 0.13 mov wzr, w2
# CHECK-NEXT: 1 1 0.13 mov w3, w5
# CHECK-NEXT: 1 1 0.13 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.13 mov w10, #-1235
# CHECK-NEXT: 1 1 0.13 mov w2, #-1235
# CHECK-NEXT: 1 1 0.13 mov x2, #5299989643264
# CHECK-NEXT: 1 1 0.13 mov x2, #0
@@ -1278,7 +1279,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]
-# CHECK-NEXT: 8.67 8.67 8.67 - 34.00 34.00 42.00 42.00 42.00 42.00 74.75 74.75 149.75 149.75 234.25 104.75 112.25 99.75 112.25 99.75 112.25 99.75 145.50 151.50
+# CHECK-NEXT: 8.67 8.67 8.67 - 34.00 34.00 42.00 42.00 42.00 42.00 74.75 74.75 149.75 149.75 234.38 104.88 112.38 99.88 112.38 99.88 112.38 99.88 145.50 151.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] Instructions:
@@ -2491,6 +2492,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-neon-instructions.s
index 9b332c7e93972..652c99ee0aaf2 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.50 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.50 ushll2 v0.8h, v0.16b, #3
@@ -1598,7 +1600,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]
-# CHECK-NEXT: - - - - - - - - - - 77.00 77.00 163.50 163.50 18.50 5.50 5.50 5.50 5.50 5.50 5.50 5.50 964.50 1004.50
+# CHECK-NEXT: - - - - - - - - - - 77.00 77.00 163.50 163.50 18.50 5.50 5.50 5.50 5.50 5.50 5.50 5.50 965.50 1005.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] Instructions:
@@ -2685,6 +2687,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll2 v17.2d, v13.4s, #22
@@ -3075,6 +3078,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-sve-instructions.s
index 4739fcd9c5bff..dbdbf9f4fc3ca 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 1.00 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.50 fadd z0.d, z1.d, z31.d
@@ -3453,7 +3457,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]
-# CHECK-NEXT: - - - - - - - - - - 194.75 194.75 297.75 297.75 428.00 345.00 24.50 24.50 24.50 24.50 24.50 24.50 1704.00 1412.00
+# CHECK-NEXT: - - - - - - - - - - 194.75 194.75 297.75 297.75 428.00 345.00 24.50 24.50 24.50 24.50 24.50 24.50 1708.00 1412.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2.0] [2.1] [3.0] [3.1] [3.2] [3.3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] Instructions:
@@ -4009,12 +4013,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s
index 2c0348dbb06eb..2eb1d206ac9a3 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 1 0.13 mov wzr, w2
# CHECK-NEXT: 1 1 0.13 mov w3, w5
# CHECK-NEXT: 1 1 0.13 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.13 mov w10, #-1235
# CHECK-NEXT: 1 1 0.13 mov w2, #-1235
# CHECK-NEXT: 1 1 0.13 mov x2, #5299989643264
# CHECK-NEXT: 1 1 0.13 mov x2, #0
@@ -1298,7 +1299,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# CHECK-NEXT: 8.67 8.67 8.67 - - - - - - - - - - - - - - - - - 34.00 34.00 42.00 42.00 42.00 42.00 74.75 74.75 149.75 149.75 233.25 103.75 111.25 98.75 111.25 98.75 111.25 98.75 120.42 126.42 9.17 15.92 15.92 9.17
+# CHECK-NEXT: 8.67 8.67 8.67 - - - - - - - - - - - - - - - - - 34.00 34.00 42.00 42.00 42.00 42.00 74.75 74.75 149.75 149.75 233.38 103.88 111.38 98.88 111.38 98.88 111.38 98.88 120.42 126.42 9.17 15.92 15.92 9.17
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
@@ -2511,6 +2512,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s
index e7ae7afd92870..4acacee1e018b 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s
@@ -1102,6 +1102,7 @@
# NONSTREAMING-NEXT: 1 2 0.17 sshll v9.8h, v2.8b, #0
# NONSTREAMING-NEXT: 1 2 0.17 sshll v12.4s, v3.4h, #4
# NONSTREAMING-NEXT: 1 2 0.17 sshll v0.2d, v0.2s, #3
+# NONSTREAMING-NEXT: 1 2 0.17 sshll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: 1 2 0.17 sshll2 v28.8h, v12.16b, #7
# NONSTREAMING-NEXT: 1 2 0.17 sshll2 v0.4s, v0.8h, #3
# NONSTREAMING-NEXT: 1 2 0.17 sshll2 v17.2d, v13.4s, #22
@@ -1492,6 +1493,7 @@
# NONSTREAMING-NEXT: 1 2 0.17 ushll v0.4s, v0.4h, #3
# NONSTREAMING-NEXT: 1 2 0.17 ushll v18.8h, v24.8b, #4
# NONSTREAMING-NEXT: 1 2 0.17 ushll v16.2d, v16.2s, #31
+# NONSTREAMING-NEXT: 1 2 0.17 ushll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: 1 2 0.17 ushll2 v31.2d, v12.4s, #11
# NONSTREAMING-NEXT: 1 2 0.17 ushll2 v18.4s, v22.8h, #13
# NONSTREAMING-NEXT: 1 2 0.17 ushll2 v0.8h, v0.16b, #3
@@ -2663,6 +2665,7 @@
# STREAMING-NEXT: 1 4 0.50 sshll v9.8h, v2.8b, #0
# STREAMING-NEXT: 1 4 0.50 sshll v12.4s, v3.4h, #4
# STREAMING-NEXT: 1 4 0.50 sshll v0.2d, v0.2s, #3
+# STREAMING-NEXT: 1 4 0.50 sshll v0.8h, v1.8b, #0
# STREAMING-NEXT: 1 4 0.50 sshll2 v28.8h, v12.16b, #7
# STREAMING-NEXT: 1 4 0.50 sshll2 v0.4s, v0.8h, #3
# STREAMING-NEXT: 1 4 0.50 sshll2 v17.2d, v13.4s, #22
@@ -3053,6 +3056,7 @@
# STREAMING-NEXT: 1 4 0.50 ushll v0.4s, v0.4h, #3
# STREAMING-NEXT: 1 4 0.50 ushll v18.8h, v24.8b, #4
# STREAMING-NEXT: 1 4 0.50 ushll v16.2d, v16.2s, #31
+# STREAMING-NEXT: 1 4 0.50 ushll v0.8h, v1.8b, #0
# STREAMING-NEXT: 1 4 0.50 ushll2 v31.2d, v12.4s, #11
# STREAMING-NEXT: 1 4 0.50 ushll2 v18.4s, v22.8h, #13
# STREAMING-NEXT: 1 4 0.50 ushll2 v0.8h, v0.16b, #3
@@ -3234,11 +3238,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - 69.25 69.25 179.25 179.25 15.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 450.83 490.83 237.83 340.83 340.83 237.83
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - 69.25 69.25 179.25 179.25 15.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 451.17 491.17 238.17 341.17 341.17 238.17
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# STREAMING-NEXT: - - - - 136.00 - - 36.00 16.00 - - - - - 385.00 - 59.00 385.00 - 59.00 - - - - - - 69.25 69.25 179.25 179.25 15.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 281.58 281.58 161.33 171.58 171.58 161.33
+# STREAMING-NEXT: - - - - 136.00 - - 36.00 16.00 - - - - - 386.00 - 59.00 386.00 - 59.00 - - - - - - 69.25 69.25 179.25 179.25 15.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 281.58 281.58 161.33 171.58 171.58 161.33
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
@@ -4325,6 +4329,7 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll v9.8h, v2.8b, #0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll v12.4s, v3.4h, #4
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll v0.2d, v0.2s, #3
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll2 v28.8h, v12.16b, #7
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll2 v0.4s, v0.8h, #3
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sshll2 v17.2d, v13.4s, #22
@@ -4715,6 +4720,7 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll v0.4s, v0.4h, #3
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll v18.8h, v24.8b, #4
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll v16.2d, v16.2s, #31
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll v0.8h, v1.8b, #0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll2 v31.2d, v12.4s, #11
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll2 v18.4s, v22.8h, #13
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 ushll2 v0.8h, v0.16b, #3
@@ -5887,6 +5893,7 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll v9.8h, v2.8b, #0
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll v12.4s, v3.4h, #4
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll v0.2d, v0.2s, #3
+# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll v0.8h, v1.8b, #0
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll2 v28.8h, v12.16b, #7
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll2 v0.4s, v0.8h, #3
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sshll2 v17.2d, v13.4s, #22
@@ -6277,6 +6284,7 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll v0.4s, v0.4h, #3
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll v18.8h, v24.8b, #4
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll v16.2d, v16.2s, #31
+# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll v0.8h, v1.8b, #0
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll2 v31.2d, v12.4s, #11
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll2 v18.4s, v22.8h, #13
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s
index bc5284ce3e9b2..11d6d8548f7e3 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s
@@ -53,6 +53,7 @@
# NONSTREAMING-NEXT: 1 3 0.50 udot z0.s, z0.h, z0.h[0]
# NONSTREAMING-NEXT: 1 8 1.00 sqcvtn z0.h, { z0.s, z1.s }
# NONSTREAMING-NEXT: 1 2 0.17 sqcvtun z0.h, { z0.s, z1.s }
+# NONSTREAMING-NEXT: 1 3 0.50 sqrshrun z0.h, { z0.s, z1.s }, #16
# NONSTREAMING-NEXT: 1 8 1.00 uqcvtn z0.h, { z0.s, z1.s }
# NONSTREAMING-NEXT: 1 2 0.50 whilege { p0.h, p1.h }, x0, x0
# NONSTREAMING-NEXT: 1 2 0.50 whilegt { p0.h, p1.h }, x0, x0
@@ -66,6 +67,7 @@
# NONSTREAMING-NEXT: 1 4 0.17 bfmlslt z0.s, z1.h, z2.h
# NONSTREAMING-NEXT: 1 2 0.17 fclamp z0.s, z1.s, z2.s
# NONSTREAMING-NEXT: 1 4 0.17 fdot z0.s, z1.h, z2.h
+# NONSTREAMING-NEXT: 1 3 0.25 flogb z0.s, p0/m, z1.s
# NONSTREAMING-NEXT: 1 2 0.17 revd z0.q, p0/m, z0.q
# NONSTREAMING-NEXT: 1 2 2.00 U rprfm pldkeep, x0, [x0]
# NONSTREAMING-NEXT: 1 2 0.17 sclamp z0.s, z1.s, z2.s
@@ -116,6 +118,7 @@
# STREAMING-NEXT: 1 4 0.50 udot z0.s, z0.h, z0.h[0]
# STREAMING-NEXT: 1 8 1.00 sqcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 8 1.00 sqcvtun z0.h, { z0.s, z1.s }
+# STREAMING-NEXT: 1 4 0.50 sqrshrun z0.h, { z0.s, z1.s }, #16
# STREAMING-NEXT: 1 8 1.00 uqcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: 1 4 1.00 whilege { p0.h, p1.h }, x0, x0
# STREAMING-NEXT: 1 4 1.00 whilegt { p0.h, p1.h }, x0, x0
@@ -129,6 +132,7 @@
# STREAMING-NEXT: 1 4 1.00 bfmlslt z0.s, z1.h, z2.h
# STREAMING-NEXT: 1 5 1.00 fclamp z0.s, z1.s, z2.s
# STREAMING-NEXT: 1 4 1.00 fdot z0.s, z1.h, z2.h
+# STREAMING-NEXT: 1 4 0.50 flogb z0.s, p0/m, z1.s
# STREAMING-NEXT: 1 4 0.50 revd z0.q, p0/m, z0.q
# STREAMING-NEXT: 1 2 2.00 U rprfm pldkeep, x0, [x0]
# STREAMING-NEXT: 1 4 0.50 sclamp z0.s, z1.s, z2.s
@@ -238,11 +242,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# NONSTREAMING-NEXT: - - - - - - - 10.00 10.00 2.00 - - - - 10.00 - - 10.00 - - - - - - - - - - - - 11.63 11.63 0.63 0.63 0.63 0.63 0.63 0.63 6.00 6.00 3.00 3.00 3.00 3.00
+# NONSTREAMING-NEXT: - - - - - - - 10.00 10.00 2.00 - - - - 10.00 - - 10.00 - - - - - - - - - - - - 11.63 11.63 0.63 0.63 0.63 0.63 0.63 0.63 6.75 6.75 3.00 3.25 3.25 3.00
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# STREAMING-NEXT: - - - - - 9.00 - 13.00 13.00 2.00 - - - - 26.00 - - 18.00 - - - - - - - - - - - - 12.63 12.63 0.63 0.63 0.63 0.63 0.63 0.63 - - - - - -
+# STREAMING-NEXT: - - - - - 9.00 - 13.00 13.00 2.00 - - - - 26.50 - 0.50 18.50 - 0.50 - - - - - - - - - - 12.63 12.63 0.63 0.63 0.63 0.63 0.63 0.63 - - - - - -
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
@@ -280,6 +284,7 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - udot z0.s, z0.h, z0.h[0]
# NONSTREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvtn z0.h, { z0.s, z1.s }
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sqcvtun z0.h, { z0.s, z1.s }
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - sqrshrun z0.h, { z0.s, z1.s }, #16
# NONSTREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - uqcvtn z0.h, { z0.s, z1.s }
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - - - - - - - - - whilege { p0.h, p1.h }, x0, x0
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - - - - - - - - - whilegt { p0.h, p1.h }, x0, x0
@@ -293,6 +298,7 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 bfmlslt z0.s, z1.h, z2.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fclamp z0.s, z1.s, z2.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fdot z0.s, z1.h, z2.h
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 - 0.25 0.25 - flogb z0.s, p0/m, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 revd z0.q, p0/m, z0.q
# NONSTREAMING-NEXT: - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - rprfm pldkeep, x0, [x0]
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sclamp z0.s, z1.s, z2.s
@@ -344,6 +350,7 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - udot z0.s, z0.h, z0.h[0]
# STREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvtun z0.h, { z0.s, z1.s }
+# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sqrshrun z0.h, { z0.s, z1.s }, #16
# STREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - uqcvtn z0.h, { z0.s, z1.s }
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - 0.50 0.50 - - - - - - - - - - - - whilege { p0.h, p1.h }, x0, x0
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - 0.50 0.50 - - - - - - - - - - - - whilegt { p0.h, p1.h }, x0, x0
@@ -357,6 +364,7 @@
# STREAMING-NEXT: - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bfmlslt z0.s, z1.h, z2.h
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fclamp z0.s, z1.s, z2.s
# STREAMING-NEXT: - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fdot z0.s, z1.h, z2.h
+# STREAMING-NEXT: - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - flogb z0.s, p0/m, z1.s
# STREAMING-NEXT: - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - revd z0.q, p0/m, z0.q
# STREAMING-NEXT: - - - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - rprfm pldkeep, x0, [x0]
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - sclamp z0.s, z1.s, z2.s
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
index 656aaa5768fd7..a679524ada449 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
@@ -43,6 +43,8 @@
# NONSTREAMING-NEXT: 1 2 0.17 fadd z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: 1 3 0.17 fmul z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: 1 2 0.17 fmin z0.s, p0/m, z0.s, z1.s
+# NONSTREAMING-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: 1 2 0.17 fmov z0.s, p0/m, #1.00000000
# NONSTREAMING-NEXT: 1 4 0.17 bfdot z0.s, z1.h, z2.h
# NONSTREAMING-NEXT: 1 6 0.25 * ld1w { z0.s }, p0/z, [x0]
@@ -105,6 +107,8 @@
# STREAMING-NEXT: 1 4 0.50 fadd z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: 1 4 0.50 fmul z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: 1 4 0.50 fmin z0.s, p0/m, z0.s, z1.s
+# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: 1 1 0.50 fmov z0.s, p0/m, #1.00000000
# STREAMING-NEXT: 1 4 0.50 bfdot z0.s, z1.h, z2.h
# STREAMING-NEXT: 1 2 1.00 * ld1w { z0.s }, p0/z, [x0]
@@ -238,11 +242,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# NONSTREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - 1.50 1.50 4.00 4.00 10.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 21.50 18.50 4.50 7.00 7.00 4.50
+# NONSTREAMING-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - 1.50 1.50 4.00 4.00 10.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 23.50 18.50 4.50 7.00 7.00 4.50
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# STREAMING-NEXT: - - - 4.00 - - - 25.50 8.50 - - - - 3.00 33.50 1.00 1.50 19.50 1.00 1.50 - - - - - - 1.25 1.25 3.75 3.75 3.63 0.63 0.13 0.13 0.13 0.13 0.13 0.13 3.67 3.67 0.17 0.17 0.17 0.17
+# STREAMING-NEXT: - - - 4.00 - - - 25.50 8.50 - - - - 3.00 35.50 1.00 1.50 19.50 1.00 1.50 - - - - - - 1.25 1.25 3.75 3.75 3.63 0.63 0.13 0.13 0.13 0.13 0.13 0.13 3.67 3.67 0.17 0.17 0.17 0.17
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
@@ -268,6 +272,8 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fadd z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fmul z0.s, p0/m, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fmin z0.s, p0/m, z0.s, z1.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fmov z0.s, p0/m, #1.00000000
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 bfdot z0.s, z1.h, z2.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - ld1w { z0.s }, p0/z, [x0]
@@ -331,6 +337,8 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - fadd z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - fmul z0.s, p0/m, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - fmin z0.s, p0/m, z0.s, z1.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: - - - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fmov z0.s, p0/m, #1.00000000
# STREAMING-NEXT: - - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - bfdot z0.s, z1.h, z2.h
# STREAMING-NEXT: - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - ld1w { z0.s }, p0/z, [x0]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s
index acfa1e8578756..bd3e65f056fa0 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s
@@ -24,6 +24,7 @@
# CHECK-NEXT: 1 11 1.00 * bf2cvtlt z0.h, z0.b
# CHECK-NEXT: 1 4 1.00 U bfadd za.h[w8, 0, vgx2], { z0.h, z1.h }
# CHECK-NEXT: 1 4 2.00 U bfadd za.h[w8, 0, vgx4], { z0.h - z3.h }
+# CHECK-NEXT: 1 4 1.00 U bfsub za.h[w8, 0, vgx2], { z0.h, z1.h }
# CHECK-NEXT: 1 11 1.00 U bfcvt z0.h, { z0.s, z1.s }
# CHECK-NEXT: 1 7 1.00 U bfcvtn z0.h, { z0.s, z1.s }
# CHECK-NEXT: 1 5 1.00 U bfclamp { z0.h, z1.h }, z0.h, z0.h
@@ -71,7 +72,10 @@
# CHECK-NEXT: 1 5 1.00 U famin { z0.s, z1.s }, { z0.s, z1.s }, { z0.s, z1.s }
# CHECK-NEXT: 1 5 1.00 U fclamp { z0.h, z1.h }, z0.h, z0.h
# CHECK-NEXT: 1 7 2.00 U fclamp { z0.d - z3.d }, z0.d, z0.d
+# CHECK-NEXT: 1 4 1.00 * U fcvt z0.b, { z0.s - z3.s }
# CHECK-NEXT: 1 4 1.00 U fcvt z0.h, { z0.s, z1.s }
+# CHECK-NEXT: 1 4 1.00 * U fcvtnb z0.b, { z0.s, z1.s }
+# CHECK-NEXT: 1 7 1.00 * U bfcvtn z0.b, { z0.h, z1.h }
# CHECK-NEXT: 1 4 1.00 U fcvtn z0.h, { z0.s, z1.s }
# CHECK-NEXT: 1 4 1.00 U fcvtzs { z0.s, z1.s }, { z0.s, z1.s }
# CHECK-NEXT: 1 4 2.00 U fcvtzs { z0.s - z3.s }, { z0.s - z3.s }
@@ -108,6 +112,7 @@
# CHECK-NEXT: 1 4 2.00 U fvdotb za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# CHECK-NEXT: 1 4 2.00 U fvdott za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# CHECK-NEXT: 1 4 1.00 U fscale { z0.s, z1.s }, { z0.s, z1.s }, z0.s
+# CHECK-NEXT: 1 5 2.00 U fscale { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# CHECK-NEXT: 1 5 2.00 U luti2 { z0.h, z1.h }, zt0, z0[0]
# CHECK-NEXT: 1 7 4.00 U luti2 { z0.h - z3.h }, zt0, z0[0]
# CHECK-NEXT: 1 5 2.00 U luti4 { z0.h, z1.h }, zt0, z0[0]
@@ -166,6 +171,8 @@
# CHECK-NEXT: 1 8 1.00 U sqcvt z0.h, { z0.s, z1.s }
# CHECK-NEXT: 1 8 1.00 U sqcvt z0.b, { z0.s - z3.s }
# CHECK-NEXT: 1 8 1.00 U sqcvtun z0.b, { z0.s - z3.s }
+# CHECK-NEXT: 1 8 1.00 U sqcvtu z0.h, { z0.s, z1.s }
+# CHECK-NEXT: 1 8 1.00 U uqcvt z0.h, { z0.s, z1.s }
# CHECK-NEXT: 1 5 1.00 U sqdmulh { z0.h, z1.h }, { z0.h, z1.h }, z0.h
# CHECK-NEXT: 1 5 2.00 U sqdmulh { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# CHECK-NEXT: 1 4 1.00 U sqrshr z0.h, { z0.s, z1.s }, #16
@@ -280,7 +287,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# CHECK-NEXT: - - - 9.00 - 145.00 4.00 41.50 19.50 2.00 0.33 0.33 0.33 9.00 118.00 - - 111.00 - - - - - - - - 0.75 0.75 2.25 2.25 - - - - - - - - - - - - - -
+# CHECK-NEXT: - - - 9.00 - 146.00 4.00 45.50 21.50 2.00 0.33 0.33 0.33 9.00 125.00 - - 118.00 - - - - - - - - 0.75 0.75 2.25 2.25 - - - - - - - - - - - - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
@@ -298,6 +305,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - bf2cvtlt z0.h, z0.b
# CHECK-NEXT: - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bfadd za.h[w8, 0, vgx2], { z0.h, z1.h }
# CHECK-NEXT: - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bfadd za.h[w8, 0, vgx4], { z0.h - z3.h }
+# CHECK-NEXT: - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bfsub za.h[w8, 0, vgx2], { z0.h, z1.h }
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - bfcvt z0.h, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - 1.00 - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - bfcvtn z0.h, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - bfclamp { z0.h, z1.h }, z0.h, z0.h
@@ -345,7 +353,10 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - famin { z0.s, z1.s }, { z0.s, z1.s }, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fclamp { z0.h, z1.h }, z0.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fclamp { z0.d - z3.d }, z0.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fcvt z0.b, { z0.s - z3.s }
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fcvt z0.h, { z0.s, z1.s }
+# CHECK-NEXT: - - - - - - - 1.00 - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fcvtnb z0.b, { z0.s, z1.s }
+# CHECK-NEXT: - - - - - - - 1.00 - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - bfcvtn z0.b, { z0.h, z1.h }
# CHECK-NEXT: - - - - - - - 1.00 - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fcvtn z0.h, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fcvtzs { z0.s, z1.s }, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fcvtzs { z0.s - z3.s }, { z0.s - z3.s }
@@ -382,6 +393,7 @@
# CHECK-NEXT: - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fvdotb za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# CHECK-NEXT: - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fvdott za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fscale { z0.s, z1.s }, { z0.s, z1.s }, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - fscale { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# CHECK-NEXT: - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - luti2 { z0.h, z1.h }, zt0, z0[0]
# CHECK-NEXT: - - - - - - - 4.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - luti2 { z0.h - z3.h }, zt0, z0[0]
# CHECK-NEXT: - - - - - - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - luti4 { z0.h, z1.h }, zt0, z0[0]
@@ -440,6 +452,8 @@
# CHECK-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvt z0.h, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvt z0.b, { z0.s - z3.s }
# CHECK-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvtun z0.b, { z0.s - z3.s }
+# CHECK-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqcvtu z0.h, { z0.s, z1.s }
+# CHECK-NEXT: - - - - - - - 1.00 1.00 - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - uqcvt z0.h, { z0.s, z1.s }
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqdmulh { z0.h, z1.h }, { z0.h, z1.h }, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - - 2.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqdmulh { z0.s - z3.s }, { z0.s - z3.s }, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - sqrshr z0.h, { z0.s, z1.s }, #16
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s
index 515d6497aca29..7423fab8e7a92 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s
@@ -571,12 +571,16 @@
# NONSTREAMING-NEXT: 1 2 1.00 facge p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: 1 2 1.00 facge p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: 1 2 1.00 facge p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.d, p0/z, z0.d, z1.d
# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.h, p0/z, z0.h, z1.h
# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: 1 2 0.17 fadd z0.d, p0/m, z0.d, #0.5
# NONSTREAMING-NEXT: 1 2 0.17 fadd z0.d, p7/m, z0.d, z31.d
# NONSTREAMING-NEXT: 1 2 0.17 fadd z0.d, z1.d, z31.d
@@ -3987,12 +3991,16 @@
# STREAMING-NEXT: 1 4 1.00 facge p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: 1 4 1.00 facge p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: 1 4 1.00 facge p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z0.d, z1.d
# STREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z1.d, z0.d
# STREAMING-NEXT: 1 4 1.00 facgt p0.h, p0/z, z0.h, z1.h
# STREAMING-NEXT: 1 4 1.00 facgt p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: 1 4 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: 1 4 1.00 facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: 1 4 0.50 fadd z0.d, p0/m, z0.d, #0.5
# STREAMING-NEXT: 1 4 0.50 fadd z0.d, p7/m, z0.d, z31.d
# STREAMING-NEXT: 1 4 0.50 fadd z0.d, z1.d, z31.d
@@ -6944,11 +6952,11 @@
# NONSTREAMING: Resource pressure per iteration:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - 174.75 174.75 373.75 373.75 347.00 256.00 14.50 14.50 14.50 14.50 14.50 14.50 1043.83 823.83 300.83 400.33 400.33 300.83
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - 174.75 174.75 373.75 373.75 347.00 256.00 14.50 14.50 14.50 14.50 14.50 14.50 1047.83 823.83 300.83 400.33 400.33 300.83
# STREAMING: Resource pressure per iteration:
# STREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# STREAMING-NEXT: - - - 205.00 171.00 - - 273.50 124.50 - - - - 122.00 953.50 1.50 184.50 720.50 1.50 184.50 - - - - - - 144.75 144.75 343.75 343.75 298.50 255.50 11.50 11.50 11.50 11.50 11.50 11.50 423.17 396.17 9.17 14.67 14.67 9.17
+# STREAMING-NEXT: - - - 205.00 171.00 - - 273.50 124.50 - - - - 122.00 957.50 1.50 184.50 720.50 1.50 184.50 - - - - - - 144.75 144.75 343.75 343.75 298.50 255.50 11.50 11.50 11.50 11.50 11.50 11.50 423.17 396.17 9.17 14.67 14.67 9.17
# NONSTREAMING: Resource pressure by instruction:
# NONSTREAMING-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
@@ -7504,12 +7512,16 @@
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facge p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facge p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facge p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facge p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facge p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.d, p0/z, z0.d, z1.d
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.d, p0/z, z1.d, z0.d
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.h, p0/z, z0.h, z1.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.h, p0/z, z1.h, z0.h
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.s, p0/z, z0.s, z1.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.s, p0/z, z1.s, z0.s
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.d, p0/z, z1.d, z0.d
+# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 - - - - - facgt p0.s, p0/z, z1.s, z0.s
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fadd z0.d, p0/m, z0.d, #0.5
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fadd z0.d, p7/m, z0.d, z31.d
# NONSTREAMING-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fadd z0.d, z1.d, z31.d
@@ -10921,12 +10933,16 @@
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facge p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facge p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facge p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facge p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facge p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.d, p0/z, z0.d, z1.d
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.d, p0/z, z1.d, z0.d
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.h, p0/z, z0.h, z1.h
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.h, p0/z, z1.h, z0.h
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.s, p0/z, z0.s, z1.s
# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.s, p0/z, z1.s, z0.s
+# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.d, p0/z, z1.d, z0.d
+# STREAMING-NEXT: - - - - - - - - - - - - - - 1.00 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - facgt p0.s, p0/z, z1.s, z0.s
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - fadd z0.d, p0/m, z0.d, #0.5
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - fadd z0.d, p7/m, z0.d, z31.d
# STREAMING-NEXT: - - - - - - - - - - - - - - 0.50 - - 0.50 - - - - - - - - - - - - - - - - - - - - - - - - - - fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s
index 1045dc3daac38..446be9c3ec8ba 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s
@@ -11,8 +11,17 @@
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
# CHECK-NEXT: 1 4 0.17 bfmlslb z0.s, z1.h, z2.h
+# CHECK-NEXT: 1 4 0.17 bfmlslt z0.s, z1.h, z2.h
+# CHECK-NEXT: 1 2 0.17 fclamp z0.s, z1.s, z2.s
# CHECK-NEXT: 1 4 0.17 fdot z0.s, z1.h, z2.h
# CHECK-NEXT: 1 2 1.00 psel p0, p0, p0.b[w12, 0]
+# CHECK-NEXT: 1 2 0.17 revd z0.q, p0/m, z0.q
+# CHECK-NEXT: 1 2 0.17 sclamp z0.s, z1.s, z2.s
+# CHECK-NEXT: 1 2 0.17 uclamp z0.s, z1.s, z2.s
+# CHECK-NEXT: 1 3 0.50 sdot z0.s, z0.h, z0.h
+# CHECK-NEXT: 1 3 0.50 udot z0.s, z0.h, z0.h
+# CHECK-NEXT: 1 2 0.17 sqcvtun z0.h, { z0.s, z1.s }
+# CHECK-NEXT: 1 3 0.50 sqrshrun z0.h, { z0.s, z1.s }, #16
# CHECK: Resources:
# CHECK-NEXT: [0.0] - C1UUnitB
@@ -62,10 +71,19 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34]
-# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - - - - 0.33 0.33 0.33 0.33 0.33 0.33
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - - - - 2.83 2.83 1.33 1.33 1.33 1.33
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [8.2] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17.0] [17.1] [17.2] [17.3] [18.0] [18.1] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Instructions:
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 bfmlslb z0.s, z1.h, z2.h
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 bfmlslt z0.s, z1.h, z2.h
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fclamp z0.s, z1.s, z2.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 fdot z0.s, z1.h, z2.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.00 1.00 - - - - - - - - - - - - psel p0, p0, p0.b[w12, 0]
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 revd z0.q, p0/m, z0.q
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sclamp z0.s, z1.s, z2.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 uclamp z0.s, z1.s, z2.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - sdot z0.s, z0.h, z0.h
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - udot z0.s, z0.h, z0.h
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 sqcvtun z0.h, { z0.s, z1.s }
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 - - - - sqrshrun z0.h, { z0.s, z1.s }, #16
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s
index ba18c8f2bf409..3ccf4db60693d 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s
@@ -1,6 +1,5 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a55 --all-views=false --summary-view --iterations=1000 < %s | FileCheck %s
-# CHECK: IPC:
-# CHECK-SAME: 2.00
#
# XFAIL: *
#
@@ -16,3 +15,13 @@
add w8, w8, #1
add w10, w8, #1
add w12, w8, #1
+
+# CHECK: Iterations: 1000
+# CHECK-NEXT: Instructions: 3000
+# CHECK-NEXT: Total Cycles: 2003
+# CHECK-NEXT: Total uOps: 3000
+
+# CHECK: Dispatch Width: 2
+# CHECK-NEXT: uOps Per Cycle: 1.50
+# CHECK-NEXT: IPC: 1.50
+# CHECK-NEXT: Block RThroughput: 1.5
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s
index 52bd9b0968a86..af1a8323f3377 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s
@@ -1,6 +1,5 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a55 --all-views=false --summary-view --iterations=1000 < %s | FileCheck %s
-# CHECK: IPC:
-# CHECK-SAME: 1.50
#
# XFAIL: *
#
@@ -17,3 +16,13 @@
add w8, w8, #1
and w12, w8, #0x3f
ldr w14, [x10, w12, uxtw #2]
+
+# CHECK: Iterations: 1000
+# CHECK-NEXT: Instructions: 3000
+# CHECK-NEXT: Total Cycles: 5004
+# CHECK-NEXT: Total uOps: 3000
+
+# CHECK: Dispatch Width: 2
+# CHECK-NEXT: uOps Per Cycle: 0.60
+# CHECK-NEXT: IPC: 0.60
+# CHECK-NEXT: Block RThroughput: 1.5
diff --git a/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-basic-instructions.s
index 956b3efdede2b..d67a8310da846 100644
--- a/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 1 0.17 mov wzr, w2
# CHECK-NEXT: 1 1 0.17 mov w3, w5
# CHECK-NEXT: 1 1 0.17 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.17 mov w10, #-1235
# CHECK-NEXT: 1 1 0.17 mov w2, #-1235
# CHECK-NEXT: 1 1 0.17 mov x2, #5299989643264
# CHECK-NEXT: 1 1 0.17 mov x2, #0
@@ -1274,7 +1275,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [2.2] [3] [4] [5] [6] [7] [8] [9.0] [9.1] [10.0] [10.1] [11] [12] [13] [14]
-# CHECK-NEXT: 13.00 13.00 4.00 93.33 93.33 93.33 68.83 229.58 68.83 229.58 162.08 162.08 75.00 75.00 75.00 75.00 68.75 62.75 68.75 62.75
+# CHECK-NEXT: 13.00 13.00 4.00 93.33 93.33 93.33 69.00 229.75 69.00 229.75 162.25 162.25 75.00 75.00 75.00 75.00 68.75 62.75 68.75 62.75
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [2.2] [3] [4] [5] [6] [7] [8] [9.0] [9.1] [10.0] [10.1] [11] [12] [13] [14] Instructions:
@@ -2487,6 +2488,7 @@
# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - mov w10, #-1235
# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - mov w2, #-1235
# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-neon-instructions.s
index e018c0160bcde..6c268cc4b9f13 100644
--- a/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.25 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.25 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.25 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.25 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.25 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.25 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.25 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.25 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.25 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.25 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.25 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.25 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.25 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.25 ushll2 v0.8h, v0.16b, #3
@@ -1594,7 +1596,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [2.2] [3] [4] [5] [6] [7] [8] [9.0] [9.1] [10.0] [10.1] [11] [12] [13] [14]
-# CHECK-NEXT: - - - 86.33 86.33 86.33 13.67 14.67 13.67 14.67 8.17 8.17 83.00 83.00 83.00 83.00 494.25 494.25 494.25 494.25
+# CHECK-NEXT: - - - 86.33 86.33 86.33 13.67 14.67 13.67 14.67 8.17 8.17 83.00 83.00 83.00 83.00 494.75 494.75 494.75 494.75
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [2.2] [3] [4] [5] [6] [7] [8] [9.0] [9.1] [10.0] [10.1] [11] [12] [13] [14] Instructions:
@@ -2681,6 +2683,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll2 v17.2d, v13.4s, #22
@@ -3071,6 +3074,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-sve-instructions.s
index 709dda826bd56..60d61c39a4282 100644
--- a/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/HiSilicon/hip12-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 0.50 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 0.50 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 0.50 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 0.50 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 0.50 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 0.50 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 0.50 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 0.50 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 0.50 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 0.50 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 0.50 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 0.50 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.50 fadd z0.d, z1.d, z31.d
@@ -3449,7 +3453,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [2.2] [3] [4] [5] [6] [7] [8] [9.0] [9.1] [10.0] [10.1] [11] [12] [13] [14]
-# CHECK-NEXT: - - - 466.67 466.67 466.67 52.83 61.33 52.83 61.33 77.33 77.33 401.00 401.00 401.00 401.00 1726.50 1699.50 1726.50 1699.50
+# CHECK-NEXT: - - - 466.67 466.67 466.67 52.83 61.33 52.83 61.33 77.33 77.33 401.00 401.00 401.00 401.00 1728.50 1701.50 1728.50 1701.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2.0] [2.1] [2.2] [3] [4] [5] [6] [7] [8] [9.0] [9.1] [10.0] [10.1] [11] [12] [13] [14] Instructions:
@@ -4005,12 +4009,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 0.50 0.50 0.50 fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/basic-instructions.s
index 48254ad76b968..c8e99bdcdcf99 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/basic-instructions.s
@@ -1391,6 +1391,7 @@ mov w3, w5
#------------------------------------------------------------------------------
movz w2, #0, lsl #16
+movn w10, #1234
mov w2, #-1235
mov x2, #5299989643264
mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/neon-instructions.s
index b034633a80e67..d212679f87d3a 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/neon-instructions.s
@@ -1081,6 +1081,7 @@ sshl v0.8b, v0.8b, v0.8b
sshll v9.8h, v2.8b, #0
sshll v12.4s, v3.4h, #4
sshll v0.2d, v0.2s, #3
+sxtl v0.8h, v1.8b
sshll2 v28.8h, v12.16b, #7
sshll2 v0.4s, v0.8h, #3
sshll2 v17.2d, v13.4s, #22
@@ -1471,6 +1472,7 @@ ushl v0.8h, v0.8h, v0.8h
ushll v0.4s, v0.4h, #3
ushll v18.8h, v24.8b, #4
ushll v16.2d, v16.2s, #31
+uxtl v0.8h, v1.8b
ushll2 v31.2d, v12.4s, #11
ushll2 v18.4s, v22.8h, #13
ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s
index 7a168bd5e23b8..448674b16fe85 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s
@@ -34,6 +34,7 @@ udot z0.s, z0.h, z0.h
udot z0.s, z0.h, z0.h[0]
sqcvtn z0.h, { z0.s, z1.s }
sqcvtun z0.h, { z0.s, z1.s }
+sqrshrun z0.h, { z0.s, z1.s }, #16
uqcvtn z0.h, { z0.s, z1.s }
whilege { p0.h, p1.h }, x0, x0
whilegt { p0.h, p1.h }, x0, x0
@@ -50,6 +51,7 @@ bfmlslb z0.s, z1.h, z2.h
bfmlslt z0.s, z1.h, z2.h
fclamp z0.s, z1.s, z2.s
fdot z0.s, z1.h, z2.h
+flogb z0.s, p0/m, z1.s
revd z0.q, p0/m, z0.q
rprfm #0, x0, [x0]
sclamp z0.s, z1.s, z2.s
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
index 39a72876dcbbe..a83d076afcedd 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
@@ -23,6 +23,8 @@ tbl z0.b, { z0.b, z1.b }, z2.b
fadd z0.s, p0/m, z0.s, z1.s
fmul z0.s, p0/m, z0.s, z1.s
fmin z0.s, p0/m, z0.s, z1.s
+facle p0.s, p0/z, z0.s, z1.s
+faclt p0.s, p0/z, z0.s, z1.s
fcpy z0.s, p0/m, #1.0
bfdot z0.s, z1.h, z2.h
ld1w { z0.s }, p0/z, [x0]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s
index f1da537b1aef7..7d23a75cd53fd 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s
@@ -16,6 +16,7 @@ bf2cvt {z0.h - z1.h}, z0.b
bf2cvtlt z0.h, z0.b
bfadd za.h[w8, 0, vgx2], {z0.h, z1.h}
bfadd za.h[w8, 0, vgx4], {z0.h - z3.h}
+bfsub za.h[w8, 0, vgx2], {z0.h, z1.h}
bfcvt z0.h, {z0.s, z1.s}
bfcvtn z0.h, {z0.s, z1.s}
bfclamp {z0.h, z1.h}, z0.h, z0.h
@@ -63,7 +64,10 @@ famax {z0.s, z1.s}, {z0.s, z1.s}, {z0.s, z1.s}
famin {z0.s, z1.s}, {z0.s, z1.s}, {z0.s, z1.s}
fclamp {z0.h, z1.h}, z0.h, z0.h
fclamp {z0.d - z3.d}, z0.d, z0.d
+fcvt z0.b, {z0.s - z3.s}
fcvt z0.h, {z0.s, z1.s}
+fcvtnb z0.b, {z0.s, z1.s}
+bfcvtn z0.b, {z0.h, z1.h}
fcvtn z0.h, {z0.s, z1.s}
fcvtzs {z0.s, z1.s}, {z0.s, z1.s}
fcvtzs {z0.s - z3.s}, {z0.s - z3.s}
@@ -100,6 +104,7 @@ fvdot za.s[w8, 0, vgx2], {z0.h, z1.h}, z0.h[0]
fvdotb za.s[w8, 0, vgx4], {z0.b, z1.b}, z0.b[0]
fvdott za.s[w8, 0, vgx4], {z0.b, z1.b}, z0.b[0]
fscale {z0.s, z1.s}, {z0.s, z1.s}, z0.s
+fscale {z0.s - z3.s}, {z0.s - z3.s}, z0.s
luti2 {z0.h - z1.h}, zt0, z0[0]
luti2 {z0.h - z3.h}, zt0, z0[0]
luti4 {z0.h - z1.h}, zt0, z0[0]
@@ -158,6 +163,8 @@ umops za0.s, p0/m, p0/m, z0.h, z0.h
sqcvt z0.h, {z0.s - z1.s}
sqcvt z0.b, {z0.s - z3.s}
sqcvtun z0.b, {z0.s - z3.s}
+sqcvtu z0.h, {z0.s, z1.s}
+uqcvt z0.h, {z0.s, z1.s}
sqdmulh {z0.h - z1.h}, {z0.h - z1.h}, z0.h
sqdmulh {z0.s - z3.s}, {z0.s - z3.s}, z0.s
sqrshr z0.h, {z0.s - z1.s}, #16
@@ -228,4 +235,4 @@ str zt0, [x0]
str za[w12, #0], [x0]
// SYS instructions.
-cpp rctx, x2
\ No newline at end of file
+cpp rctx, x2
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-instructions.s
index e961e74883fda..807427c1b8860 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-instructions.s
@@ -550,12 +550,16 @@ facge p0.h, p0/z, z0.h, z1.h
facge p0.h, p0/z, z1.h, z0.h
facge p0.s, p0/z, z0.s, z1.s
facge p0.s, p0/z, z1.s, z0.s
+facle p0.d, p0/z, z0.d, z1.d
+facle p0.s, p0/z, z0.s, z1.s
facgt p0.d, p0/z, z0.d, z1.d
facgt p0.d, p0/z, z1.d, z0.d
facgt p0.h, p0/z, z0.h, z1.h
facgt p0.h, p0/z, z1.h, z0.h
facgt p0.s, p0/z, z0.s, z1.s
facgt p0.s, p0/z, z1.s, z0.s
+faclt p0.d, p0/z, z0.d, z1.d
+faclt p0.s, p0/z, z0.s, z1.s
fadd z0.d, p0/m, z0.d, #0.5
fadd z0.d, p7/m, z0.d, z31.d
fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s
index 7d45a201876ed..c9cfc158b37b0 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s
@@ -1,5 +1,14 @@
// SVE instructions added by SME and available when not in Streaming SVE mode
bfmlslb z0.s, z1.h, z2.h
+bfmlslt z0.s, z1.h, z2.h
+fclamp z0.s, z1.s, z2.s
fdot z0.s, z1.h, z2.h
psel p0, p0, p0.b[w12, 0]
+revd z0.q, p0/m, z0.q
+sclamp z0.s, z1.s, z2.s
+uclamp z0.s, z1.s, z2.s
+sdot z0.s, z0.h, z0.h
+udot z0.s, z0.h, z0.h
+sqcvtun z0.h, { z0.s, z1.s }
+sqrshrun z0.h, { z0.s, z1.s }, #16
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
index 45ff12a64a700..3b7c6e862668f 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 1 0.33 mov wzr, w2
# CHECK-NEXT: 1 1 0.33 mov w3, w5
# CHECK-NEXT: 1 1 0.33 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.33 mov w10, #-1235
# CHECK-NEXT: 1 1 0.33 mov w2, #-1235
# CHECK-NEXT: 1 1 0.33 mov x2, #5299989643264
# CHECK-NEXT: 1 1 0.33 mov x2, #0
@@ -1264,7 +1265,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1.0] [1.1] [2.0] [2.1] [3] [4.0] [4.1] [5] [6]
-# CHECK-NEXT: 26.00 34.00 34.00 252.50 252.50 489.33 197.33 197.33 293.00 161.00
+# CHECK-NEXT: 26.00 34.00 34.00 252.50 252.50 489.67 197.67 197.67 293.00 161.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1.0] [1.1] [2.0] [2.1] [3] [4.0] [4.1] [5] [6] Instructions:
@@ -2477,6 +2478,7 @@
# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - mov wzr, w2
# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - mov w3, w5
# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - mov w10, #-1235
# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - mov w2, #-1235
# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - 0.33 0.33 0.33 - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-neon-instructions.s
index a88d19da25cd2..466f51e13bc75 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 1.00 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 1.00 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 1.00 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 1.00 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 1.00 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 1.00 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 1.00 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 1.00 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 1.00 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 1.00 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 1.00 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 1.00 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 1.00 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 1.00 ushll2 v0.8h, v0.16b, #3
@@ -1584,7 +1586,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1.0] [1.1] [2.0] [2.1] [3] [4.0] [4.1] [5] [6]
-# CHECK-NEXT: - - - 270.00 270.00 29.33 16.33 16.33 1089.00 956.00
+# CHECK-NEXT: - - - 270.00 270.00 29.33 16.33 16.33 1089.00 958.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1.0] [1.1] [2.0] [2.1] [3] [4.0] [4.1] [5] [6] Instructions:
@@ -2671,6 +2673,7 @@
# CHECK-NEXT: - - - - - - - - - 1.00 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - 1.00 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - 1.00 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - 1.00 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - 1.00 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - 1.00 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - 1.00 sshll2 v17.2d, v13.4s, #22
@@ -3061,6 +3064,7 @@
# CHECK-NEXT: - - - - - - - - - 1.00 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - 1.00 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - 1.00 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - 1.00 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - 1.00 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - 1.00 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - 1.00 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
index da25a685e2dee..3b3e4cc80476d 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 0 0.20 mov wzr, w2
# CHECK-NEXT: 1 0 0.20 mov w3, w5
# CHECK-NEXT: 1 1 0.25 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.25 mov w10, #-1235
# CHECK-NEXT: 1 1 0.25 mov w2, #-1235
# CHECK-NEXT: 1 1 0.25 mov x2, #5299989643264
# CHECK-NEXT: 1 0 0.20 mov x2, #0
@@ -1270,7 +1271,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9]
-# CHECK-NEXT: 13.00 13.00 34.00 34.00 56.00 56.00 56.00 94.33 165.33 165.33 543.00 237.00 169.00 169.00 254.00 101.00
+# CHECK-NEXT: 13.00 13.00 34.00 34.00 56.00 56.00 56.00 94.33 165.33 165.33 543.25 237.25 169.25 169.25 254.00 101.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] Instructions:
@@ -2483,6 +2484,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-neon-instructions.s
index 0e074d4543e96..4fcd22cd80bfd 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 1.00 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 1.00 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 1.00 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 1.00 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 1.00 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 1.00 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 1.00 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 1.00 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 1.00 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 1.00 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 1.00 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 1.00 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 1.00 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 1.00 ushll2 v0.8h, v0.16b, #3
@@ -1590,7 +1592,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9]
-# CHECK-NEXT: - - - - - - - 102.67 199.67 199.67 43.25 12.25 12.25 12.25 1102.50 948.50
+# CHECK-NEXT: - - - - - - - 102.67 199.67 199.67 43.25 12.25 12.25 12.25 1102.50 950.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] Instructions:
@@ -2677,6 +2679,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 sshll2 v17.2d, v13.4s, #22
@@ -3067,6 +3070,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - 1.00 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s
index 01af6c1bedf2e..b7e986c1a23bf 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 1.00 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.50 fadd z0.d, z1.d, z31.d
@@ -3445,7 +3449,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9]
-# CHECK-NEXT: - - - - - - - 225.00 463.00 463.00 491.00 316.00 84.50 84.50 1701.00 1554.00
+# CHECK-NEXT: - - - - - - - 225.00 463.00 463.00 491.00 316.00 84.50 84.50 1705.00 1554.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] Instructions:
@@ -4001,12 +4005,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s
index 348de6e9f90b5..9d50ab59d33fc 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 0 0.20 mov wzr, w2
# CHECK-NEXT: 1 0 0.20 mov w3, w5
# CHECK-NEXT: 1 1 0.25 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.25 mov w10, #-1235
# CHECK-NEXT: 1 1 0.25 mov w2, #-1235
# CHECK-NEXT: 1 1 0.25 mov x2, #5299989643264
# CHECK-NEXT: 1 0 0.20 mov x2, #0
@@ -1267,7 +1268,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2] [3.0] [3.1] [4] [5] [6.0] [6.1] [7] [8]
-# CHECK-NEXT: 13.00 13.00 34.00 34.00 102.33 173.33 173.33 370.00 213.00 159.00 159.00 208.00 79.00
+# CHECK-NEXT: 13.00 13.00 34.00 34.00 102.33 173.33 173.33 370.25 213.25 159.25 159.25 208.00 79.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2] [3.0] [3.1] [4] [5] [6.0] [6.1] [7] [8] Instructions:
@@ -2480,6 +2481,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-neon-instructions.s
index e8ce5d3d9db50..c701de6422ced 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 1.00 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 1.00 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 1.00 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 1.00 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 1.00 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 1.00 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 1.00 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 1.00 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 1.00 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 1.00 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 1.00 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 1.00 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 1.00 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 1.00 ushll2 v0.8h, v0.16b, #3
@@ -1587,7 +1589,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2] [3.0] [3.1] [4] [5] [6.0] [6.1] [7] [8]
-# CHECK-NEXT: - - - - 118.67 190.67 190.67 25.25 12.25 12.25 12.25 993.50 847.50
+# CHECK-NEXT: - - - - 118.67 190.67 190.67 25.25 12.25 12.25 12.25 993.50 849.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2] [3.0] [3.1] [4] [5] [6.0] [6.1] [7] [8] Instructions:
@@ -2674,6 +2676,7 @@
# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - 1.00 sshll2 v17.2d, v13.4s, #22
@@ -3064,6 +3067,7 @@
# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - 1.00 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-sve-instructions.s
index 4a1d1a56d2e07..48892f3fa2ddb 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 0.50 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 0.50 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 0.50 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 0.50 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 0.50 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 0.50 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 0.50 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 0.50 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 0.50 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 0.50 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 0.50 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 0.50 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.50 fadd z0.d, z1.d, z31.d
@@ -3442,7 +3446,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2] [3.0] [3.1] [4] [5] [6.0] [6.1] [7] [8]
-# CHECK-NEXT: - - - - 252.00 552.25 552.25 295.00 227.00 88.50 88.50 1708.25 1551.25
+# CHECK-NEXT: - - - - 252.00 552.25 552.25 295.00 227.00 88.50 88.50 1710.25 1553.25
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2] [3.0] [3.1] [4] [5] [6.0] [6.1] [7] [8] Instructions:
@@ -3998,12 +4002,16 @@
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - 0.50 0.50 fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
index ae6510d2bae81..da6a36c654ee8 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 0 0.13 mov wzr, w2
# CHECK-NEXT: 1 0 0.13 mov w3, w5
# CHECK-NEXT: 1 1 0.25 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.25 mov w10, #-1235
# CHECK-NEXT: 1 1 0.25 mov w2, #-1235
# CHECK-NEXT: 1 1 0.25 mov x2, #5299989643264
# CHECK-NEXT: 1 0 0.13 mov x2, #0
@@ -1272,7 +1273,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] [10] [11]
-# CHECK-NEXT: 13.00 13.00 34.00 34.00 48.00 48.00 48.00 98.67 171.67 171.67 323.25 210.25 142.75 142.75 190.00 56.50 65.50 13.00
+# CHECK-NEXT: 13.00 13.00 34.00 34.00 48.00 48.00 48.00 98.67 171.67 171.67 323.50 210.50 143.00 143.00 190.00 56.50 65.50 13.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] [10] [11] Instructions:
@@ -2485,6 +2486,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - 0.25 0.25 0.25 0.25 - - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
index 0cd253b983a80..64c5f3f594c69 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.50 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.50 ushll2 v0.8h, v0.16b, #3
@@ -1592,7 +1594,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] [10] [11]
-# CHECK-NEXT: - - - - - - - 101.33 187.33 187.33 25.25 12.25 12.25 12.25 611.25 503.75 502.25 394.75
+# CHECK-NEXT: - - - - - - - 101.33 187.33 187.33 25.25 12.25 12.25 12.25 611.25 504.75 502.25 395.75
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7.0] [7.1] [8] [9] [10] [11] Instructions:
@@ -2679,6 +2681,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 sshll2 v17.2d, v13.4s, #22
@@ -3069,6 +3072,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - 0.50 - 0.50 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
index f0702f0e7d9f5..0df3cc31016a8 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 0 0.17 mov wzr, w2
# CHECK-NEXT: 1 0 0.17 mov w3, w5
# CHECK-NEXT: 1 1 0.17 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.17 mov w10, #-1235
# CHECK-NEXT: 1 1 0.17 mov w2, #-1235
# CHECK-NEXT: 1 1 0.17 mov x2, #5299989643264
# CHECK-NEXT: 1 0 0.17 mov x2, #0
@@ -1274,7 +1275,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]
-# CHECK-NEXT: 13.00 13.00 34.00 34.00 54.33 54.33 54.33 99.33 170.33 170.33 341.50 184.50 116.50 116.50 87.00 87.00 207.25 155.75 39.25 13.75
+# CHECK-NEXT: 13.00 13.00 34.00 34.00 54.33 54.33 54.33 99.33 170.33 170.33 341.67 184.67 116.67 116.67 87.17 87.17 207.25 155.75 39.25 13.75
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] Instructions:
@@ -2487,6 +2488,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - 0.17 0.17 0.17 0.17 0.17 0.17 - - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
index 14e46e89a8460..ac25e6b79defc 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.50 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.50 ushll2 v0.8h, v0.16b, #3
@@ -1594,7 +1596,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]
-# CHECK-NEXT: - - - - - - - 106.00 189.00 189.00 21.17 8.17 8.17 8.17 8.17 8.17 725.75 566.75 561.75 402.75
+# CHECK-NEXT: - - - - - - - 106.00 189.00 189.00 21.17 8.17 8.17 8.17 8.17 8.17 725.75 567.75 561.75 403.75
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] Instructions:
@@ -2681,6 +2683,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 sshll2 v17.2d, v13.4s, #22
@@ -3071,6 +3074,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - - - 0.50 - 0.50 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
index 96e4806bf4460..50a4058012dd3 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 1.00 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.25 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.25 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.25 fadd z0.d, z1.d, z31.d
@@ -3449,7 +3453,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]
-# CHECK-NEXT: - - - - - - - 245.00 651.00 651.00 570.50 272.50 83.75 83.75 81.75 81.75 1540.75 1285.75 790.25 744.25
+# CHECK-NEXT: - - - - - - - 245.00 651.00 651.00 570.50 272.50 83.75 83.75 81.75 81.75 1544.75 1285.75 790.25 744.25
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1.0] [1.1] [2.0] [2.1] [2.2] [3] [4.0] [4.1] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] Instructions:
@@ -4005,12 +4009,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s
index 46af108eb07e4..8598b97bb17a2 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 0 0.10 mov wzr, w2
# CHECK-NEXT: 1 0 0.10 mov w3, w5
# CHECK-NEXT: 1 1 0.13 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.13 mov w10, #-1235
# CHECK-NEXT: 1 1 0.13 mov w2, #-1235
# CHECK-NEXT: 1 1 0.13 mov x2, #5299989643264
# CHECK-NEXT: 1 0 0.10 mov x2, #0
@@ -1279,7 +1280,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]
-# CHECK-NEXT: 8.67 8.67 8.67 34.00 34.00 40.75 40.75 40.75 40.75 99.33 99.33 170.33 290.50 163.50 79.83 79.83 79.83 79.83 79.83 79.83 71.00 195.25 161.75 27.25 13.75
+# CHECK-NEXT: 8.67 8.67 8.67 34.00 34.00 40.75 40.75 40.75 40.75 99.33 99.33 170.33 290.63 163.63 79.96 79.96 79.96 79.96 79.96 79.96 71.00 195.25 161.75 27.25 13.75
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] Instructions:
@@ -2492,6 +2493,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-neon-instructions.s
index 9ee039d5ce615..784c8d6838966 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.25 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.25 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.25 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.25 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.25 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.25 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.25 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.25 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.25 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.25 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.25 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.25 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.25 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.25 ushll2 v0.8h, v0.16b, #3
@@ -1599,7 +1601,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]
-# CHECK-NEXT: - - - - - - - - - 106.00 106.00 189.00 19.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 83.00 750.00 528.50 591.00 329.50
+# CHECK-NEXT: - - - - - - - - - 106.00 106.00 189.00 19.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 83.00 750.50 529.00 591.50 330.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] Instructions:
@@ -2686,6 +2688,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sshll2 v17.2d, v13.4s, #22
@@ -3076,6 +3079,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-sve-instructions.s
index 1f3a9f6f1828b..18be979eb2514 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 1.00 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.25 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.25 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.25 fadd z0.d, z1.d, z31.d
@@ -3454,7 +3458,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]
-# CHECK-NEXT: - - - - - - - - - 245.00 245.00 696.50 400.88 303.88 41.88 41.88 41.88 41.88 41.88 41.88 451.50 1606.00 1268.50 817.00 681.50
+# CHECK-NEXT: - - - - - - - - - 245.00 245.00 696.50 400.88 303.88 41.88 41.88 41.88 41.88 41.88 41.88 451.50 1610.00 1268.50 817.00 681.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] Instructions:
@@ -4010,12 +4014,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - - - facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fadd z0.d, z1.d, z31.d
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s
index 629889d773731..b9c64a3ddca8f 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s
@@ -1219,6 +1219,7 @@
# CHECK-NEXT: 1 0 0.10 mov wzr, w2
# CHECK-NEXT: 1 0 0.10 mov w3, w5
# CHECK-NEXT: 1 1 0.13 movz w2, #0, lsl #16
+# CHECK-NEXT: 1 1 0.13 mov w10, #-1235
# CHECK-NEXT: 1 1 0.13 mov w2, #-1235
# CHECK-NEXT: 1 1 0.13 mov x2, #5299989643264
# CHECK-NEXT: 1 0 0.10 mov x2, #0
@@ -1277,7 +1278,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]
-# CHECK-NEXT: 8.67 8.67 8.67 34.00 34.00 40.75 40.75 40.75 40.75 99.33 99.33 170.33 290.50 163.50 79.83 79.83 79.83 79.83 79.83 79.83 71.00 219.50 96.50
+# CHECK-NEXT: 8.67 8.67 8.67 34.00 34.00 40.75 40.75 40.75 40.75 99.33 99.33 170.33 290.63 163.63 79.96 79.96 79.96 79.96 79.96 79.96 71.00 219.50 96.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] Instructions:
@@ -2490,6 +2491,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - mov wzr, w2
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - mov w3, w5
# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - movz w2, #0, lsl #16
+# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - mov w10, #-1235
# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - mov w2, #-1235
# CHECK-NEXT: - - - - - - - - - - - - 0.13 0.13 0.13 0.13 0.13 0.13 0.13 0.13 - - - mov x2, #5299989643264
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - mov x2, #0
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-neon-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-neon-instructions.s
index b37eff1ae2daf..b2d3f604013dc 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-neon-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-neon-instructions.s
@@ -1093,6 +1093,7 @@
# CHECK-NEXT: 1 2 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: 1 2 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: 1 2 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: 1 2 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: 1 2 0.50 sshll2 v17.2d, v13.4s, #22
@@ -1483,6 +1484,7 @@
# CHECK-NEXT: 1 2 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: 1 2 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: 1 2 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: 1 2 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: 1 2 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: 1 2 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: 1 2 0.50 ushll2 v0.8h, v0.16b, #3
@@ -1597,7 +1599,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]
-# CHECK-NEXT: - - - - - - - - - 106.00 106.00 189.00 19.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 83.00 1340.50 858.50
+# CHECK-NEXT: - - - - - - - - - 106.00 106.00 189.00 19.13 6.13 6.13 6.13 6.13 6.13 6.13 6.13 83.00 1341.50 859.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] Instructions:
@@ -2684,6 +2686,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v9.8h, v2.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v12.4s, v3.4h, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v0.2d, v0.2s, #3
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll2 v28.8h, v12.16b, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll2 v0.4s, v0.8h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 sshll2 v17.2d, v13.4s, #22
@@ -3074,6 +3077,7 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v0.4s, v0.4h, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v18.8h, v24.8b, #4
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v16.2d, v16.2s, #31
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll v0.8h, v1.8b, #0
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll2 v31.2d, v12.4s, #11
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll2 v18.4s, v22.8h, #13
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 ushll2 v0.8h, v0.16b, #3
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-sve-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-sve-instructions.s
index bed7ffc9089e8..bed7fb4e6eafb 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-sve-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-sve-instructions.s
@@ -562,12 +562,16 @@
# CHECK-NEXT: 1 2 1.00 facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: 1 2 1.00 facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: 1 2 1.00 facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: 1 2 1.00 facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: 1 2 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: 1 2 0.50 fadd z0.d, z1.d, z31.d
@@ -3452,7 +3456,7 @@
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]
-# CHECK-NEXT: - - - - - - - - - 245.00 245.00 651.00 400.88 303.88 41.88 41.88 41.88 41.88 41.88 41.88 406.00 2376.50 1905.50
+# CHECK-NEXT: - - - - - - - - - 245.00 245.00 651.00 400.88 303.88 41.88 41.88 41.88 41.88 41.88 41.88 406.00 2380.50 1905.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [0.2] [1.0] [1.1] [2.0] [2.1] [2.2] [2.3] [3.0] [3.1] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] Instructions:
@@ -4008,12 +4012,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facge p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z0.d, z1.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z1.d, z0.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.h, p0/z, z0.h, z1.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.h, p0/z, z1.h, z0.h
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z0.s, z1.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 1.00 - facgt p0.s, p0/z, z1.s, z0.s
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, p0/m, z0.d, #0.5
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, p7/m, z0.d, z31.d
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - 0.50 0.50 fadd z0.d, z1.d, z31.d
>From 57626257d19e9c6b5e7b3d9c8bea4e740be39652 Mon Sep 17 00:00:00 2001
From: Nashe Mncube <nashe.mncube at arm.com>
Date: Wed, 19 Aug 2026 13:44:33 +0100
Subject: [PATCH 2/3] Restore failing IPC tests
Change-Id: I2f7a7d93d9f02d65913d7d23a09179b34cfc26e9
---
.../llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s | 13 ++-----------
.../tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s | 13 ++-----------
2 files changed, 4 insertions(+), 22 deletions(-)
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s
index 3ccf4db60693d..ba18c8f2bf409 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-2-skewed-alu.s
@@ -1,5 +1,6 @@
-# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a55 --all-views=false --summary-view --iterations=1000 < %s | FileCheck %s
+# CHECK: IPC:
+# CHECK-SAME: 2.00
#
# XFAIL: *
#
@@ -15,13 +16,3 @@
add w8, w8, #1
add w10, w8, #1
add w12, w8, #1
-
-# CHECK: Iterations: 1000
-# CHECK-NEXT: Instructions: 3000
-# CHECK-NEXT: Total Cycles: 2003
-# CHECK-NEXT: Total uOps: 3000
-
-# CHECK: Dispatch Width: 2
-# CHECK-NEXT: uOps Per Cycle: 1.50
-# CHECK-NEXT: IPC: 1.50
-# CHECK-NEXT: Block RThroughput: 1.5
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s
index af1a8323f3377..52bd9b0968a86 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Cortex/IPC/A55-8-ldr.s
@@ -1,5 +1,6 @@
-# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=aarch64 -mcpu=cortex-a55 --all-views=false --summary-view --iterations=1000 < %s | FileCheck %s
+# CHECK: IPC:
+# CHECK-SAME: 1.50
#
# XFAIL: *
#
@@ -16,13 +17,3 @@
add w8, w8, #1
and w12, w8, #0x3f
ldr w14, [x10, w12, uxtw #2]
-
-# CHECK: Iterations: 1000
-# CHECK-NEXT: Instructions: 3000
-# CHECK-NEXT: Total Cycles: 5004
-# CHECK-NEXT: Total uOps: 3000
-
-# CHECK: Dispatch Width: 2
-# CHECK-NEXT: uOps Per Cycle: 0.60
-# CHECK-NEXT: IPC: 0.60
-# CHECK-NEXT: Block RThroughput: 1.5
>From 43c952e4e4fae000944c0d229c4c5892d3015aa4 Mon Sep 17 00:00:00 2001
From: Nashe Mncube <nashe.mncube at arm.com>
Date: Mon, 24 Aug 2026 11:29:33 +0100
Subject: [PATCH 3/3] Rename llvm-mca/AArch64/Inputs/sve-sme-instructions.
Change-Id: I8b46dfedb30cfa03dfd42824cdb0671a0c040dc4
---
...Ultra-sve-sme-instructions.s => C1Ultra-sve2p1-instructions.s} | 0
.../Inputs/{sve-sme-instructions.s => sve2p1-instructions.s} | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename llvm/test/tools/llvm-mca/AArch64/Cortex/{C1Ultra-sve-sme-instructions.s => C1Ultra-sve2p1-instructions.s} (100%)
rename llvm/test/tools/llvm-mca/AArch64/Inputs/{sve-sme-instructions.s => sve2p1-instructions.s} (100%)
diff --git a/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve2p1-instructions.s
similarity index 100%
rename from llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s
rename to llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve2p1-instructions.s
diff --git a/llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Inputs/sve2p1-instructions.s
similarity index 100%
rename from llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s
rename to llvm/test/tools/llvm-mca/AArch64/Inputs/sve2p1-instructions.s
More information about the llvm-commits
mailing list