[llvm] a187057 - [AArch64][NeoverseV1/V2] Fix ASIMD FP convert and round scheduling (#224046)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 30 02:13:29 PDT 2026
Author: Julien Villette
Date: 2026-09-30T10:13:22+01:00
New Revision: a187057dfe16b215dc44c4be7937ceccebe9882a
URL: https://github.com/llvm/llvm-project/commit/a187057dfe16b215dc44c4be7937ceccebe9882a
DIFF: https://github.com/llvm/llvm-project/commit/a187057dfe16b215dc44c4be7937ceccebe9882a.diff
LOG: [AArch64][NeoverseV1/V2] Fix ASIMD FP convert and round scheduling (#224046)
Measured on Neoverse V1 and V2 hardware with unrolled loops of
independent instances, using perf inst_spec/op_spec counters for the
micro-op counts. Both cores measure identically on every test below.
| Instruction | uop | Latency | RThroughput | was |
|----------------------|-----|---------|-------------|-----------|
| fcvtas h0, h1 | 1 | 3 | 0.50 | 4/6/1.00 |
| fcvtas s0, s1 | 1 | 3 | 0.50 | 2/4/1.00 |
| fcvtzs w0, s1, #1 | 1 | 3 | 1.00 | 1/3/0.50 |
| fcvtas v0.4s, v1.4s | 1 | 4 | 1.00 | 2 uops |
| fcvtas v0.8h, v1.8h | 1 | 6 | 2.00 | 4/6/1.00 |
| frinta v0.8h, v1.8h | 1 | 6 | 2.00 | 4/6/1.00 |
| bfcvtn v0.4h, v0.4s | 1 | 4 | 1.00 | 1/4/0.50 |
Scalar H and S conversions were grouped with wider vector forms; they
measure the same as the D-form F32 row, so they move there.
Fixed-point conversions to a general register were missed by the InstRW
regex on V1, which now covers the "ri" suffix as V2 already did.
On V2 the reworked classes are new definitions, since the originals are
shared with the SVE and reciprocal-estimate rules; on V1 they had no
other user and are updated in place.
Added:
Modified:
llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-bf16-instructions.s
llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-bf16-instructions.s
llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-fptoint-instructions.s
llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
Removed:
################################################################################
diff --git a/llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td b/llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
index b0fa993537f56..05a48a23be875 100644
--- a/llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
+++ b/llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
@@ -145,6 +145,9 @@ def V1Write_4c_1V01 : SchedWriteRes<[V1UnitV01]> { let Latency = 4; }
def V1Write_5c_1V01 : SchedWriteRes<[V1UnitV01]> { let Latency = 5; }
def V1Write_3c_1V02 : SchedWriteRes<[V1UnitV02]> { let Latency = 3; }
def V1Write_4c_1V02 : SchedWriteRes<[V1UnitV02]> { let Latency = 4; }
+def V1Write_4c_2V02 : SchedWriteRes<[V1UnitV02, V1UnitV02]> { let Latency = 4; }
+def V1Write_6c_4V02 : SchedWriteRes<[V1UnitV02, V1UnitV02,
+ V1UnitV02, V1UnitV02]> { let Latency = 6; }
def V1Write_7c7_1V02 : SchedWriteRes<[V1UnitV02]> { let Latency = 7;
let ReleaseAtCycles = [7]; }
def V1Write_10c7_1V02 : SchedWriteRes<[V1UnitV02]> { let Latency = 10;
@@ -232,8 +235,6 @@ let Latency = 2, NumMicroOps = 2 in
def V1Write_2c_2V01 : SchedWriteRes<[V1UnitV01, V1UnitV01]>;
let Latency = 4, NumMicroOps = 2 in
def V1Write_4c_2V01 : SchedWriteRes<[V1UnitV01, V1UnitV01]>;
-let Latency = 4, NumMicroOps = 2 in
-def V1Write_4c_2V02 : SchedWriteRes<[V1UnitV02, V1UnitV02]>;
let Latency = 6, NumMicroOps = 2 in
def V1Write_6c_2V02 : SchedWriteRes<[V1UnitV02, V1UnitV02]>;
let Latency = 4, NumMicroOps = 2 in
@@ -314,8 +315,6 @@ def V1Write_6c_4V0 : SchedWriteRes<[V1UnitV0, V1UnitV0,
let Latency = 12, NumMicroOps = 4 in
def V1Write_12c_4V01 : SchedWriteRes<[V1UnitV01, V1UnitV01,
V1UnitV01, V1UnitV01]>;
-let Latency = 6, NumMicroOps = 4 in
-def V1Write_6c_4V02 : SchedWriteRes<[V1UnitV02, V1UnitV02]>;
//===----------------------------------------------------------------------===//
// Define generic 5 micro-op types
@@ -821,7 +820,7 @@ def : InstRW<[V1Write_2c_1V01], (instregex "^FCSEL[HSD]rrr$")>;
def : InstRW<[V1Write_3c_1M0], (instregex "^[SU]CVTF[SU][WX][HSD]ri$")>;
// FP convert, from vec to gen reg
-def : InstRW<[V1Write_3c_1V0], (instregex "^FCVT[AMNPZ][SU][SU][WX][HSD]r$")>;
+def : InstRW<[V1Write_3c_1V0], (instregex "^FCVT[AMNPZ][SU][SU][WX][HSD]ri?$")>;
// FP convert, Javascript from vec to gen reg
def : InstRW<[V1Write_3c_1V0], (instrs FJCVTZS)>;
@@ -1049,34 +1048,31 @@ def : InstRW<[V1Write_3c_1V02], (instregex "^FCVTNv[24]i32$",
"^FCVTXN(v[24]f32|v1i64)$")>;
// ASIMD FP convert, other, D-form F32 and Q-form F64
+// Includes the scalar H, S and D forms (SCVTFh, FCVTZSs, ...)
def : InstRW<[V1Write_3c_1V02], (instregex "^FCVT[AMNPZ][SU]v2f(32|64)$",
+ "^FCVT[AMNPZ][SU]v1f16$",
"^FCVT[AMNPZ][SU]v2i(32|64)_shift$",
"^FCVT[AMNPZ][SU]v1i64$",
- "^FCVTZ[SU]d$",
+ "^FCVT[AMNPZ][SU]v1i32$",
"^[SU]CVTFv2f(32|64)$",
"^[SU]CVTFv2i(32|64)_shift$",
+ "^[SU]CVTFv1i16$",
+ "^[SU]CVTFv1i32$",
"^[SU]CVTFv1i64$",
- "^[SU]CVTFd$")>;
+ "^FCVTZ[SU][hsd]$",
+ "^[SU]CVTF[hsd]$")>;
// ASIMD FP convert, other, D-form F16 and Q-form F32
def : InstRW<[V1Write_4c_2V02], (instregex "^FCVT[AMNPZ][SU]v4f(16|32)$",
"^FCVT[AMNPZ][SU]v4i(16|32)_shift$",
- "^FCVT[AMNPZ][SU]v1i32$",
- "^FCVTZ[SU]s$",
"^[SU]CVTFv4f(16|32)$",
- "^[SU]CVTFv4i(16|32)_shift$",
- "^[SU]CVTFv1i32$",
- "^[SU]CVTFs$")>;
+ "^[SU]CVTFv4i(16|32)_shift$")>;
// ASIMD FP convert, other, Q-form F16
def : InstRW<[V1Write_6c_4V02], (instregex "^FCVT[AMNPZ][SU]v8f16$",
"^FCVT[AMNPZ][SU]v8i16_shift$",
- "^FCVT[AMNPZ][SU]v1f16$",
- "^FCVTZ[SU]h$",
"^[SU]CVTFv8f16$",
- "^[SU]CVTFv8i16_shift$",
- "^[SU]CVTFv1i16$",
- "^[SU]CVTFh$")>;
+ "^[SU]CVTFv8i16_shift$")>;
// ASIMD FP divide, D-form, F16
// ASIMD FP square root, D-form, F16
@@ -1119,7 +1115,7 @@ def : InstRW<[V1Write_6c_4V02], (instregex "^FRINT[AIMNPXZ]v8f16$")>;
// -----------------------------------------------------------------------------
// ASIMD convert, F32 to BF16
-def : InstRW<[V1Write_4c_1V02], (instrs BFCVTN, BFCVTN2)>;
+def : InstRW<[V1Write_4c_2V02], (instrs BFCVTN, BFCVTN2)>;
// ASIMD dot product
def : InstRW<[V1Wr_BFD, V1Rd_BFD], (instregex "^BF(DOT|16DOTlane)v[48]bf16$")>;
diff --git a/llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td b/llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
index 983e9d81f61e6..22e672bd11d04 100644
--- a/llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
+++ b/llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
@@ -135,6 +135,10 @@ def V2Write_3c_1V0 : SchedWriteRes<[V2UnitV0]> { let Latency = 3; }
def V2Write_3c_1V02 : SchedWriteRes<[V2UnitV02]> { let Latency = 3; }
def V2Write_4c_1V0 : SchedWriteRes<[V2UnitV0]> { let Latency = 4; }
def V2Write_4c_1V02 : SchedWriteRes<[V2UnitV02]> { let Latency = 4; }
+def V2Write_4c_2V02_1uop : SchedWriteRes<[V2UnitV02,
+ V2UnitV02]> { let Latency = 4; }
+def V2Write_6c_4V02_1uop : SchedWriteRes<[V2UnitV02, V2UnitV02, V2UnitV02,
+ V2UnitV02]> { let Latency = 6; }
def V2Write_7c_1V0 : SchedWriteRes<[V2UnitV0]> { let Latency = 7;
let ReleaseAtCycles = [7]; }
def V2Write_7c_1V02 : SchedWriteRes<[V2UnitV02]> { let Latency = 7;
@@ -1581,47 +1585,44 @@ def : InstRW<[V2Write_4c_1V13],
def : InstRW<[V2Wr_VFCMA, V2Rd_VFCMA], (instregex "^FCMLAv")>;
// ASIMD FP convert, long (F16 to F32)
-def : InstRW<[V2Write_4c_2V02], (instregex "^FCVTL(v4|v8)i16")>;
+def : InstRW<[V2Write_4c_2V02_1uop], (instregex "^FCVTL(v4|v8)i16")>;
// ASIMD FP convert, long (F32 to F64)
def : InstRW<[V2Write_3c_1V02], (instregex "^FCVTL(v2|v4)i32")>;
// ASIMD FP convert, narrow (F32 to F16)
-def : InstRW<[V2Write_4c_2V02], (instregex "^FCVTN(v4|v8)i16")>;
+def : InstRW<[V2Write_4c_2V02_1uop], (instregex "^FCVTN(v4|v8)i16")>;
// ASIMD FP convert, narrow (F64 to F32)
def : InstRW<[V2Write_3c_1V02], (instregex "^FCVTN(v2|v4)i32",
"^FCVTXN(v2|v4)f32")>;
// ASIMD FP convert, other, D-form F32 and Q-form F64
+// Includes the scalar H, S and D forms (SCVTFh, FCVTZSs, ...)
def : InstRW<[V2Write_3c_1V02], (instregex "^FCVT[AMNPZ][SU]v2f(32|64)$",
"^FCVT[AMNPZ][SU]v2i(32|64)_shift$",
+ "^FCVT[AMNPZ][SU]v1i32$",
"^FCVT[AMNPZ][SU]v1i64$",
- "^FCVTZ[SU]d$",
+ "^FCVT[AMNPZ][SU]v1f16$",
"^[SU]CVTFv2f(32|64)$",
"^[SU]CVTFv2i(32|64)_shift$",
+ "^[SU]CVTFv1i16$",
+ "^[SU]CVTFv1i32$",
"^[SU]CVTFv1i64$",
- "^[SU]CVTFd$")>;
+ "^FCVTZ[SU][hsd]$",
+ "^[SU]CVTF[hsd]$")>;
// ASIMD FP convert, other, D-form F16 and Q-form F32
-def : InstRW<[V2Write_4c_2V02], (instregex "^FCVT[AMNPZ][SU]v4f(16|32)$",
- "^FCVT[AMNPZ][SU]v4i(16|32)_shift$",
- "^FCVT[AMNPZ][SU]v1i32$",
- "^FCVTZ[SU]s$",
- "^[SU]CVTFv4f(16|32)$",
- "^[SU]CVTFv4i(16|32)_shift$",
- "^[SU]CVTFv1i32$",
- "^[SU]CVTFs$")>;
+def : InstRW<[V2Write_4c_2V02_1uop], (instregex "^FCVT[AMNPZ][SU]v4f(16|32)$",
+ "^FCVT[AMNPZ][SU]v4i(16|32)_shift$",
+ "^[SU]CVTFv4f(16|32)$",
+ "^[SU]CVTFv4i(16|32)_shift$")>;
// ASIMD FP convert, other, Q-form F16
-def : InstRW<[V2Write_6c_4V02], (instregex "^FCVT[AMNPZ][SU]v8f16$",
- "^FCVT[AMNPZ][SU]v8i16_shift$",
- "^FCVT[AMNPZ][SU]v1f16$",
- "^FCVTZ[SU]h$",
- "^[SU]CVTFv8f16$",
- "^[SU]CVTFv8i16_shift$",
- "^[SU]CVTFv1i16$",
- "^[SU]CVTFh$")>;
+def : InstRW<[V2Write_6c_4V02_1uop], (instregex "^FCVT[AMNPZ][SU]v8f16$",
+ "^FCVT[AMNPZ][SU]v8i16_shift$",
+ "^[SU]CVTFv8f16$",
+ "^[SU]CVTFv8i16_shift$")>;
// ASIMD FP divide, D-form, F16
def : InstRW<[V2Write_7c_1V02_7rc], (instrs FDIVv4f16)>;
@@ -1659,12 +1660,12 @@ def : InstRW<[V2Write_3c_1V02],
"^FRINT(32|64)[XZ]v2f(32|64)$")>;
// ASIMD FP round, D-form F16 and Q-form F32
-def : InstRW<[V2Write_4c_2V02],
+def : InstRW<[V2Write_4c_2V02_1uop],
(instregex "^FRINT[AIMNPXZ]v4f(16|32)$",
"^FRINT(32|64)[XZ]v4f32$")>;
// ASIMD FP round, Q-form F16
-def : InstRW<[V2Write_6c_4V02], (instregex "^FRINT[AIMNPXZ]v8f16$")>;
+def : InstRW<[V2Write_6c_4V02_1uop], (instregex "^FRINT[AIMNPXZ]v8f16$")>;
// ASIMD FP square root, D-form, F16
def : InstRW<[V2Write_7c_1V02_7rc], (instrs FSQRTv4f16)>;
@@ -1685,7 +1686,7 @@ def : InstRW<[V2Write_16c_1V02_15rc], (instrs FSQRTv2f64)>;
// -----------------------------------------------------------------------------
// ASIMD convert, F32 to BF16
-def : InstRW<[V2Write_4c_2V02], (instrs BFCVTN, BFCVTN2)>;
+def : InstRW<[V2Write_4c_2V02_1uop], (instrs BFCVTN, BFCVTN2)>;
// ASIMD dot product
def : InstRW<[V2Wr_VBFDOT, V2Rd_VBFDOT], (instrs BFDOTv4bf16, BFDOTv8bf16)>;
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 29f74ccc46105..16e9de608f46d 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
@@ -620,42 +620,42 @@
# CHECK-NEXT: 1 4 0.25 fnmsub s3, s5, s6, s31
# CHECK-NEXT: 1 4 0.25 fnmsub d3, d13, d0, d23
# CHECK-NEXT: 1 4 0.25 fnmsub h3, h29, h24, h17
-# CHECK-NEXT: 1 3 0.50 fcvtzs w3, h5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzs wzr, h20, #13
-# CHECK-NEXT: 1 3 0.50 fcvtzs w19, h0, #32
-# CHECK-NEXT: 1 3 0.50 fcvtzs x3, h5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzs x12, h30, #45
-# CHECK-NEXT: 1 3 0.50 fcvtzs x19, h0, #64
-# CHECK-NEXT: 1 3 0.50 fcvtzs w3, s5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzs wzr, s20, #13
-# CHECK-NEXT: 1 3 0.50 fcvtzs w19, s0, #32
-# CHECK-NEXT: 1 3 0.50 fcvtzs x3, s5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzs x12, s30, #45
-# CHECK-NEXT: 1 3 0.50 fcvtzs x19, s0, #64
-# CHECK-NEXT: 1 3 0.50 fcvtzs w3, d5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzs wzr, d20, #13
-# CHECK-NEXT: 1 3 0.50 fcvtzs w19, d0, #32
-# CHECK-NEXT: 1 3 0.50 fcvtzs x3, d5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzs x12, d30, #45
-# CHECK-NEXT: 1 3 0.50 fcvtzs x19, d0, #64
-# CHECK-NEXT: 1 3 0.50 fcvtzu w3, h5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzu wzr, h20, #13
-# CHECK-NEXT: 1 3 0.50 fcvtzu w19, h0, #32
-# CHECK-NEXT: 1 3 0.50 fcvtzu x3, h5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzu x12, h30, #45
-# CHECK-NEXT: 1 3 0.50 fcvtzu x19, h0, #64
-# CHECK-NEXT: 1 3 0.50 fcvtzu w3, s5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzu wzr, s20, #13
-# CHECK-NEXT: 1 3 0.50 fcvtzu w19, s0, #32
-# CHECK-NEXT: 1 3 0.50 fcvtzu x3, s5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzu x12, s30, #45
-# CHECK-NEXT: 1 3 0.50 fcvtzu x19, s0, #64
-# CHECK-NEXT: 1 3 0.50 fcvtzu w3, d5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzu wzr, d20, #13
-# CHECK-NEXT: 1 3 0.50 fcvtzu w19, d0, #32
-# CHECK-NEXT: 1 3 0.50 fcvtzu x3, d5, #1
-# CHECK-NEXT: 1 3 0.50 fcvtzu x12, d30, #45
-# CHECK-NEXT: 1 3 0.50 fcvtzu x19, d0, #64
+# CHECK-NEXT: 1 3 1.00 fcvtzs w3, h5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzs wzr, h20, #13
+# CHECK-NEXT: 1 3 1.00 fcvtzs w19, h0, #32
+# CHECK-NEXT: 1 3 1.00 fcvtzs x3, h5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzs x12, h30, #45
+# CHECK-NEXT: 1 3 1.00 fcvtzs x19, h0, #64
+# CHECK-NEXT: 1 3 1.00 fcvtzs w3, s5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzs wzr, s20, #13
+# CHECK-NEXT: 1 3 1.00 fcvtzs w19, s0, #32
+# CHECK-NEXT: 1 3 1.00 fcvtzs x3, s5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzs x12, s30, #45
+# CHECK-NEXT: 1 3 1.00 fcvtzs x19, s0, #64
+# CHECK-NEXT: 1 3 1.00 fcvtzs w3, d5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzs wzr, d20, #13
+# CHECK-NEXT: 1 3 1.00 fcvtzs w19, d0, #32
+# CHECK-NEXT: 1 3 1.00 fcvtzs x3, d5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzs x12, d30, #45
+# CHECK-NEXT: 1 3 1.00 fcvtzs x19, d0, #64
+# CHECK-NEXT: 1 3 1.00 fcvtzu w3, h5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzu wzr, h20, #13
+# CHECK-NEXT: 1 3 1.00 fcvtzu w19, h0, #32
+# CHECK-NEXT: 1 3 1.00 fcvtzu x3, h5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzu x12, h30, #45
+# CHECK-NEXT: 1 3 1.00 fcvtzu x19, h0, #64
+# CHECK-NEXT: 1 3 1.00 fcvtzu w3, s5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzu wzr, s20, #13
+# CHECK-NEXT: 1 3 1.00 fcvtzu w19, s0, #32
+# CHECK-NEXT: 1 3 1.00 fcvtzu x3, s5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzu x12, s30, #45
+# CHECK-NEXT: 1 3 1.00 fcvtzu x19, s0, #64
+# CHECK-NEXT: 1 3 1.00 fcvtzu w3, d5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzu wzr, d20, #13
+# CHECK-NEXT: 1 3 1.00 fcvtzu w19, d0, #32
+# CHECK-NEXT: 1 3 1.00 fcvtzu x3, d5, #1
+# CHECK-NEXT: 1 3 1.00 fcvtzu x12, d30, #45
+# CHECK-NEXT: 1 3 1.00 fcvtzu x19, d0, #64
# CHECK-NEXT: 1 3 1.00 scvtf h23, w19, #1
# CHECK-NEXT: 1 3 1.00 scvtf h31, wzr, #20
# CHECK-NEXT: 1 3 1.00 scvtf h14, w0, #32
@@ -1286,7 +1286,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 51.00 51.00 51.00 98.67 171.67 171.67 321.00 208.00 152.00 152.00 190.00 56.50 65.50 13.00
+# CHECK-NEXT: 13.00 13.00 34.00 34.00 51.00 51.00 51.00 98.67 171.67 171.67 321.00 208.00 152.00 152.00 208.00 56.50 47.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:
@@ -1900,42 +1900,42 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fnmsub s3, s5, s6, s31
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fnmsub d3, d13, d0, d23
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fnmsub h3, h29, h24, h17
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs w3, h5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs wzr, h20, #13
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs w19, h0, #32
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x3, h5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x12, h30, #45
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x19, h0, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs w3, s5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs wzr, s20, #13
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs w19, s0, #32
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x3, s5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x12, s30, #45
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x19, s0, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs w3, d5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs wzr, d20, #13
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs w19, d0, #32
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x3, d5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x12, d30, #45
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs x19, d0, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu w3, h5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu wzr, h20, #13
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu w19, h0, #32
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x3, h5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x12, h30, #45
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x19, h0, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu w3, s5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu wzr, s20, #13
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu w19, s0, #32
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x3, s5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x12, s30, #45
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x19, s0, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu w3, d5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu wzr, d20, #13
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu w19, d0, #32
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x3, d5, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x12, d30, #45
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu x19, d0, #64
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs w3, h5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs wzr, h20, #13
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs w19, h0, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x3, h5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x12, h30, #45
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x19, h0, #64
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs w3, s5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs wzr, s20, #13
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs w19, s0, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x3, s5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x12, s30, #45
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x19, s0, #64
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs w3, d5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs wzr, d20, #13
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs w19, d0, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x3, d5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x12, d30, #45
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzs x19, d0, #64
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu w3, h5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu wzr, h20, #13
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu w19, h0, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x3, h5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x12, h30, #45
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x19, h0, #64
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu w3, s5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu wzr, s20, #13
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu w19, s0, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x3, s5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x12, s30, #45
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x19, s0, #64
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu w3, d5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu wzr, d20, #13
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu w19, d0, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x3, d5, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x12, d30, #45
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - - - fcvtzu x19, d0, #64
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - scvtf h23, w19, #1
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - scvtf h31, wzr, #20
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - scvtf h14, w0, #32
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-bf16-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-bf16-instructions.s
index fa8a5b7b3e2f5..bcc7084709b46 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-bf16-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-bf16-instructions.s
@@ -11,8 +11,8 @@
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
# CHECK-NEXT: 1 3 0.50 bfcvt h0, s0
-# CHECK-NEXT: 1 4 0.50 bfcvtn v0.4h, v0.4s
-# CHECK-NEXT: 1 4 0.50 bfcvtn2 v0.8h, v0.4s
+# CHECK-NEXT: 1 4 1.00 bfcvtn v0.4h, v0.4s
+# CHECK-NEXT: 1 4 1.00 bfcvtn2 v0.8h, v0.4s
# CHECK-NEXT: 1 4 0.25 bfdot v0.2s, v24.4h, v14.2h[2]
# CHECK-NEXT: 1 4 0.25 bfdot v0.2s, v0.4h, v0.4h
# CHECK-NEXT: 1 4 0.25 bfdot v0.4s, v0.8h, v0.8h
@@ -44,13 +44,13 @@
# 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: - - - - - - - - - - - - - - 3.50 2.00 3.50 2.00
+# CHECK-NEXT: - - - - - - - - - - - - - - 4.50 2.00 4.50 2.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:
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - bfcvt h0, s0
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - bfcvtn v0.4h, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - bfcvtn2 v0.8h, v0.4s
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - bfcvtn v0.4h, v0.4s
+# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - bfcvtn2 v0.8h, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 bfdot v0.2s, v24.4h, v14.2h[2]
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 bfdot v0.2s, v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 bfdot v0.4s, v0.8h, v0.8h
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 64c5f3f594c69..11712dec26341 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
@@ -192,112 +192,112 @@
# CHECK-NEXT: 1 2 0.25 fcmlt v8.4h, v2.4h, #0.0
# CHECK-NEXT: 1 2 0.25 fcmlt v7.2d, v16.2d, #0.0
# CHECK-NEXT: 1 3 0.50 fcvtas d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtas s12, s13
-# CHECK-NEXT: 4 6 1.00 fcvtas h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtas s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtas h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtas v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtas v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtas v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtas v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtas v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtas v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtas v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtas v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtau d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtau s12, s13
-# CHECK-NEXT: 4 6 1.00 fcvtau h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtau s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtau h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtau v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtau v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtau v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtau v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtau v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtau v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtau v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtau v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtl v0.2d, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtl v0.4s, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtl v0.4s, v0.4h
# CHECK-NEXT: 1 3 0.50 fcvtl2 v0.2d, v0.4s
-# CHECK-NEXT: 2 4 1.00 fcvtl2 v0.4s, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtl2 v0.4s, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtms d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtms s22, s13
-# CHECK-NEXT: 4 6 1.00 fcvtms h22, h13
+# CHECK-NEXT: 1 3 0.50 fcvtms s22, s13
+# CHECK-NEXT: 1 3 0.50 fcvtms h22, h13
# CHECK-NEXT: 1 3 0.50 fcvtms v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtms v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtms v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtms v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtms v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtms v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtms v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtms v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtmu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtmu s12, s13
-# CHECK-NEXT: 4 6 1.00 fcvtmu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtmu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtmu h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtmu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtmu v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtmu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtmu v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtmu v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtmu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtmu v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtmu v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtn v0.2s, v0.2d
-# CHECK-NEXT: 2 4 1.00 fcvtn v0.4h, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtn v0.4h, v0.4s
# CHECK-NEXT: 1 3 0.50 fcvtn2 v0.4s, v0.2d
-# CHECK-NEXT: 2 4 1.00 fcvtn2 v0.8h, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtn2 v0.8h, v0.4s
# CHECK-NEXT: 1 3 0.50 fcvtns d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtns s22, s13
-# CHECK-NEXT: 4 6 1.00 fcvtns h22, h13
+# CHECK-NEXT: 1 3 0.50 fcvtns s22, s13
+# CHECK-NEXT: 1 3 0.50 fcvtns h22, h13
# CHECK-NEXT: 1 3 0.50 fcvtns v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtns v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtns v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtns v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtns v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtns v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtns v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtns v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtnu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtnu s12, s13
-# CHECK-NEXT: 4 6 1.00 fcvtnu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtnu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtnu h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtnu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtnu v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtnu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtnu v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtnu v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtnu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtnu v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtnu v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtps d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtps s22, s13
-# CHECK-NEXT: 4 6 1.00 fcvtps h22, h13
+# CHECK-NEXT: 1 3 0.50 fcvtps s22, s13
+# CHECK-NEXT: 1 3 0.50 fcvtps h22, h13
# CHECK-NEXT: 1 3 0.50 fcvtps v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtps v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtps v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtps v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtps v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtps v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtps v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtps v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtpu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtpu s12, s13
-# CHECK-NEXT: 4 6 1.00 fcvtpu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtpu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtpu h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtpu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtpu v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtpu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtpu v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 fcvtpu v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtpu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtpu v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtpu v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtxn s22, d13
# CHECK-NEXT: 1 3 0.50 fcvtxn v0.2s, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtxn2 v0.4s, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtzs d21, d12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzs d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtzs s12, s13
-# CHECK-NEXT: 2 4 1.00 fcvtzs s21, s12, #1
-# CHECK-NEXT: 4 6 1.00 fcvtzs h21, h14
-# CHECK-NEXT: 4 6 1.00 fcvtzs h21, h12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzs s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtzs s21, s12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzs h21, h14
+# CHECK-NEXT: 1 3 0.50 fcvtzs h21, h12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 fcvtzs v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtzs v20.4h, v24.4h, #11
-# CHECK-NEXT: 2 4 1.00 fcvtzs v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 fcvtzs v0.4s, v0.4s, #3
-# CHECK-NEXT: 4 6 1.00 fcvtzs v0.8h, v0.8h
-# CHECK-NEXT: 4 6 1.00 fcvtzs v18.8h, v10.8h, #7
+# CHECK-NEXT: 1 4 1.00 fcvtzs v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtzs v20.4h, v24.4h, #11
+# CHECK-NEXT: 1 4 1.00 fcvtzs v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtzs v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 6 2.00 fcvtzs v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 fcvtzs v18.8h, v10.8h, #7
# CHECK-NEXT: 1 3 0.50 fcvtzu d21, d12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtzu s12, s13
-# CHECK-NEXT: 2 4 1.00 fcvtzu s21, s12, #1
-# CHECK-NEXT: 4 6 1.00 fcvtzu h12, h13
-# CHECK-NEXT: 4 6 1.00 fcvtzu h21, h12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtzu s21, s12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtzu h21, h12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 fcvtzu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtzu v19.4h, v26.4h, #9
-# CHECK-NEXT: 2 4 1.00 fcvtzu v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 fcvtzu v0.4s, v0.4s, #3
-# CHECK-NEXT: 4 6 1.00 fcvtzu v0.8h, v0.8h
-# CHECK-NEXT: 4 6 1.00 fcvtzu v27.8h, v6.8h, #11
+# CHECK-NEXT: 1 4 1.00 fcvtzu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtzu v19.4h, v26.4h, #9
+# CHECK-NEXT: 1 4 1.00 fcvtzu v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtzu v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 6 2.00 fcvtzu v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 fcvtzu v27.8h, v6.8h, #11
# CHECK-NEXT: 1 15 3.50 fdiv v0.2d, v0.2d, v0.2d
# CHECK-NEXT: 1 10 3.50 fdiv v0.2s, v0.2s, v0.2s
# CHECK-NEXT: 1 7 3.50 fdiv v0.4h, v0.4h, v0.4h
@@ -414,39 +414,39 @@
# CHECK-NEXT: 1 3 0.50 frecpx s18, s10
# CHECK-NEXT: 1 3 0.50 frinta v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frinta v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frinta v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frinta v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frinta v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frinta v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frinta v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frinta v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frinti v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frinti v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frinti v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frinti v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frinti v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frinti v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frinti v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frinti v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintm v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintm v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintm v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintm v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frintm v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintm v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintm v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintm v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintn v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintn v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintn v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintn v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frintn v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintn v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintn v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintn v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintp v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintp v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintp v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintp v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frintp v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintp v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintp v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintp v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintx v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintx v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintx v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintx v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frintx v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintx v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintx v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintx v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintz v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintz v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintz v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintz v0.4s, v0.4s
-# CHECK-NEXT: 4 6 1.00 frintz v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintz v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintz v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintz v0.8h, v0.8h
# CHECK-NEXT: 1 4 0.50 frsqrte h23, h26
# CHECK-NEXT: 1 3 0.50 frsqrte d21, d12
# CHECK-NEXT: 1 3 0.50 frsqrte s22, s13
@@ -751,22 +751,22 @@
# CHECK-NEXT: 1 2 0.25 saddw2 v0.2d, v0.2d, v0.4s
# CHECK-NEXT: 1 2 0.25 saddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: 1 2 0.25 saddw2 v0.8h, v0.8h, v0.16b
-# CHECK-NEXT: 4 6 1.00 scvtf h4, h8, #9
-# CHECK-NEXT: 4 6 1.00 scvtf h5, h14
+# CHECK-NEXT: 1 3 0.50 scvtf h4, h8, #9
+# CHECK-NEXT: 1 3 0.50 scvtf h5, h14
# CHECK-NEXT: 1 3 0.50 scvtf d21, d12
# CHECK-NEXT: 1 3 0.50 scvtf d21, d12, #64
-# CHECK-NEXT: 2 4 1.00 scvtf s22, s13
-# CHECK-NEXT: 2 4 1.00 scvtf s22, s13, #32
+# CHECK-NEXT: 1 3 0.50 scvtf s22, s13
+# CHECK-NEXT: 1 3 0.50 scvtf s22, s13, #32
# CHECK-NEXT: 1 3 0.50 scvtf v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 scvtf v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 scvtf v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 scvtf v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 scvtf v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 scvtf v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 scvtf v0.4s, v0.4s, #3
-# CHECK-NEXT: 2 4 1.00 scvtf v25.4h, v13.4h, #8
-# CHECK-NEXT: 4 6 1.00 scvtf v0.8h, v0.8h
-# CHECK-NEXT: 4 6 1.00 scvtf v4.8h, v8.8h, #10
+# CHECK-NEXT: 1 4 1.00 scvtf v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 scvtf v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 scvtf v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 4 1.00 scvtf v25.4h, v13.4h, #8
+# CHECK-NEXT: 1 6 2.00 scvtf v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 scvtf v4.8h, v8.8h, #10
# CHECK-NEXT: 1 3 0.25 sdot v0.2s, v0.8b, v0.4b[2]
# CHECK-NEXT: 1 3 0.25 sdot v0.2s, v0.8b, v0.8b
# CHECK-NEXT: 1 3 0.25 sdot v0.4s, v0.16b, v0.16b
@@ -1302,23 +1302,23 @@
# CHECK-NEXT: 1 2 0.25 uaddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: 1 2 0.25 uaddw2 v0.8h, v0.8h, v0.16b
# CHECK-NEXT: 1 3 1.00 ucvtf h17, x12
-# CHECK-NEXT: 4 6 1.00 ucvtf h22, h16, #11
-# CHECK-NEXT: 4 6 1.00 ucvtf h7, h21
+# CHECK-NEXT: 1 3 0.50 ucvtf h22, h16, #11
+# CHECK-NEXT: 1 3 0.50 ucvtf h7, h21
# CHECK-NEXT: 1 3 0.50 ucvtf d21, d14
# CHECK-NEXT: 1 3 0.50 ucvtf d21, d14, #64
# CHECK-NEXT: 1 3 1.00 ucvtf s8, x0
-# CHECK-NEXT: 2 4 1.00 ucvtf s22, s13
-# CHECK-NEXT: 2 4 1.00 ucvtf s22, s13, #32
+# CHECK-NEXT: 1 3 0.50 ucvtf s22, s13
+# CHECK-NEXT: 1 3 0.50 ucvtf s22, s13, #32
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 ucvtf v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 ucvtf v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 ucvtf v0.4s, v0.4s, #3
-# CHECK-NEXT: 2 4 1.00 ucvtf v18.4h, v11.4h, #7
-# CHECK-NEXT: 4 6 1.00 ucvtf v0.8h, v0.8h
-# CHECK-NEXT: 4 6 1.00 ucvtf v22.8h, v20.8h, #10
+# CHECK-NEXT: 1 4 1.00 ucvtf v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 ucvtf v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 ucvtf v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 4 1.00 ucvtf v18.4h, v11.4h, #7
+# CHECK-NEXT: 1 6 2.00 ucvtf v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 ucvtf v22.8h, v20.8h, #10
# CHECK-NEXT: 1 3 0.25 udot v0.2s, v0.8b, v0.4b[2]
# CHECK-NEXT: 1 3 0.25 udot v0.2s, v0.8b, v0.8b
# CHECK-NEXT: 1 3 0.25 udot v0.4s, v0.16b, v0.16b
@@ -1594,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 504.75 502.25 395.75
+# CHECK-NEXT: - - - - - - - 101.33 187.33 187.33 25.25 12.25 12.25 12.25 618.25 504.75 509.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:
@@ -1780,86 +1780,86 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fcmlt v8.4h, v2.4h, #0.0
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fcmlt v7.2d, v16.2d, #0.0
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtas v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtau v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtl v0.2d, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtl v0.4s, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtl2 v0.2d, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtl2 v0.4s, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms h22, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms h22, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtms v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtmu v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtn v0.2s, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtn v0.4h, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtn2 v0.4s, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtn2 v0.8h, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns h22, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns h22, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtns v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtnu v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps h22, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps h22, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtps v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtpu v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtxn s22, d13
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtxn v0.2s, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtxn2 v0.4s, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs d21, d12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs s21, s12, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs h21, h14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs h21, h12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs s21, s12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs h21, h14
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs h21, h12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs v0.2s, v0.2s
@@ -1868,14 +1868,14 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs v20.4h, v24.4h, #11
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs v0.4s, v0.4s, #3
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs v0.8h, v0.8h
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs v18.8h, v10.8h, #7
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzs v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzs v18.8h, v10.8h, #7
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu d21, d12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu s21, s12, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu h12, h13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu h21, h12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu s21, s12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu h21, h12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu v0.2s, v0.2s
@@ -1884,8 +1884,8 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu v19.4h, v26.4h, #9
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu v0.4s, v0.4s, #3
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu v0.8h, v0.8h
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu v27.8h, v6.8h, #11
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzu v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzu v27.8h, v6.8h, #11
# CHECK-NEXT: - - - - - - - - - - - - - - 3.50 - 3.50 - fdiv v0.2d, v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 3.50 - 3.50 - fdiv v0.2s, v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 3.50 - 3.50 - fdiv v0.4h, v0.4h, v0.4h
@@ -2004,37 +2004,37 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frinta v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frinta v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frinta v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frinta v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frinta v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frinti v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frinti v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frinti v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frinti v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frinti v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frinti v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintm v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintm v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintm v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintm v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintm v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frintm v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintn v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintn v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintn v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintn v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintn v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frintn v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintp v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintp v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintp v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintp v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintp v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frintp v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintx v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintx v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintx v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintx v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintx v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frintx v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintz v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frintz v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintz v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintz v0.4s, v0.4s
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - frintz v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - frintz v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frsqrte h23, h26
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frsqrte d21, d12
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - frsqrte s22, s13
@@ -2339,12 +2339,12 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 saddw2 v0.2d, v0.2d, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 saddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 saddw2 v0.8h, v0.8h, v0.16b
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf h4, h8, #9
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf h5, h14
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf h4, h8, #9
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf h5, h14
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf d21, d12
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf d21, d12, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf s22, s13, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf s22, s13, #32
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf v0.2s, v0.2s
@@ -2353,8 +2353,8 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf v0.4s, v0.4s, #3
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf v25.4h, v13.4h, #8
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf v0.8h, v0.8h
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf v4.8h, v8.8h, #10
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - scvtf v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - scvtf v4.8h, v8.8h, #10
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sdot v0.2s, v0.8b, v0.4b[2]
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sdot v0.2s, v0.8b, v0.8b
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 sdot v0.4s, v0.16b, v0.16b
@@ -2890,13 +2890,13 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 uaddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 uaddw2 v0.8h, v0.8h, v0.16b
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - ucvtf h17, x12
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf h22, h16, #11
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf h7, h21
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf h22, h16, #11
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf h7, h21
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf d21, d14
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf d21, d14, #64
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - ucvtf s8, x0
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf s22, s13, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf s22, s13, #32
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf v0.2s, v0.2s
@@ -2905,8 +2905,8 @@
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf v0.4s, v0.4s, #3
# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf v18.4h, v11.4h, #7
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf v0.8h, v0.8h
-# CHECK-NEXT: - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf v22.8h, v20.8h, #10
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - ucvtf v0.8h, v0.8h
+# CHECK-NEXT: - - - - - - - - - - - - - - 2.00 - 2.00 - ucvtf v22.8h, v20.8h, #10
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 udot v0.2s, v0.8b, v0.4b[2]
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 udot v0.2s, v0.8b, v0.8b
# CHECK-NEXT: - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 udot v0.4s, v0.16b, v0.16b
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-bf16-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-bf16-instructions.s
index 81964d84ac041..21caf817c5808 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-bf16-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-bf16-instructions.s
@@ -11,8 +11,8 @@
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
# CHECK-NEXT: 1 3 0.50 bfcvt h0, s0
-# CHECK-NEXT: 2 4 1.00 bfcvtn v0.4h, v0.4s
-# CHECK-NEXT: 2 4 1.00 bfcvtn2 v0.8h, v0.4s
+# CHECK-NEXT: 1 4 1.00 bfcvtn v0.4h, v0.4s
+# CHECK-NEXT: 1 4 1.00 bfcvtn2 v0.8h, v0.4s
# CHECK-NEXT: 1 2 0.25 bfdot v0.2s, v24.4h, v14.2h[2]
# CHECK-NEXT: 1 5 0.25 bfdot v0.2s, v0.4h, v0.4h
# CHECK-NEXT: 1 5 0.25 bfdot v0.4s, v0.8h, v0.8h
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-fptoint-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-fptoint-instructions.s
index d3864abbe9b9a..8903b043975d1 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-fptoint-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-fptoint-instructions.s
@@ -12,16 +12,16 @@
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
# CHECK-NEXT: 1 3 0.50 frint32x v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frint32x v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frint32x v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 frint32x v0.4s, v0.4s
# CHECK-NEXT: 1 3 0.50 frint32z v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frint32z v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frint32z v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 frint32z v0.4s, v0.4s
# CHECK-NEXT: 1 3 0.50 frint64x v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frint64x v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frint64x v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 frint64x v0.4s, v0.4s
# CHECK-NEXT: 1 3 0.50 frint64z v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frint64z v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frint64z v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 frint64z v0.4s, v0.4s
# CHECK: Resources:
# CHECK-NEXT: [0.0] - V2UnitB
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 ac25e6b79defc..2076ac1ba7581 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
@@ -192,112 +192,112 @@
# CHECK-NEXT: 1 2 0.25 fcmlt v8.4h, v2.4h, #0.0
# CHECK-NEXT: 1 2 0.25 fcmlt v7.2d, v16.2d, #0.0
# CHECK-NEXT: 1 3 0.50 fcvtas d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtas s12, s13
-# CHECK-NEXT: 4 6 2.00 fcvtas h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtas s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtas h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtas v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtas v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtas v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtas v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtas v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtas v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtas v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtas v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtau d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtau s12, s13
-# CHECK-NEXT: 4 6 2.00 fcvtau h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtau s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtau h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtau v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtau v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtau v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtau v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtau v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtau v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtau v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtau v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtl v0.2d, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtl v0.4s, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtl v0.4s, v0.4h
# CHECK-NEXT: 1 3 0.50 fcvtl2 v0.2d, v0.4s
-# CHECK-NEXT: 2 4 1.00 fcvtl2 v0.4s, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtl2 v0.4s, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtms d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtms s22, s13
-# CHECK-NEXT: 4 6 2.00 fcvtms h22, h13
+# CHECK-NEXT: 1 3 0.50 fcvtms s22, s13
+# CHECK-NEXT: 1 3 0.50 fcvtms h22, h13
# CHECK-NEXT: 1 3 0.50 fcvtms v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtms v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtms v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtms v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtms v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtms v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtms v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtms v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtmu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtmu s12, s13
-# CHECK-NEXT: 4 6 2.00 fcvtmu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtmu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtmu h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtmu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtmu v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtmu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtmu v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtmu v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtmu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtmu v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtmu v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtn v0.2s, v0.2d
-# CHECK-NEXT: 2 4 1.00 fcvtn v0.4h, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtn v0.4h, v0.4s
# CHECK-NEXT: 1 3 0.50 fcvtn2 v0.4s, v0.2d
-# CHECK-NEXT: 2 4 1.00 fcvtn2 v0.8h, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtn2 v0.8h, v0.4s
# CHECK-NEXT: 1 3 0.50 fcvtns d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtns s22, s13
-# CHECK-NEXT: 4 6 2.00 fcvtns h22, h13
+# CHECK-NEXT: 1 3 0.50 fcvtns s22, s13
+# CHECK-NEXT: 1 3 0.50 fcvtns h22, h13
# CHECK-NEXT: 1 3 0.50 fcvtns v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtns v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtns v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtns v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtns v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtns v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtns v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtns v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtnu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtnu s12, s13
-# CHECK-NEXT: 4 6 2.00 fcvtnu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtnu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtnu h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtnu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtnu v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtnu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtnu v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtnu v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtnu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtnu v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtnu v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtps d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtps s22, s13
-# CHECK-NEXT: 4 6 2.00 fcvtps h22, h13
+# CHECK-NEXT: 1 3 0.50 fcvtps s22, s13
+# CHECK-NEXT: 1 3 0.50 fcvtps h22, h13
# CHECK-NEXT: 1 3 0.50 fcvtps v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtps v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtps v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtps v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtps v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtps v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtps v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtps v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtpu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtpu s12, s13
-# CHECK-NEXT: 4 6 2.00 fcvtpu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtpu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtpu h12, h13
# CHECK-NEXT: 1 3 0.50 fcvtpu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtpu v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 fcvtpu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtpu v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 fcvtpu v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 fcvtpu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtpu v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 fcvtpu v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 fcvtxn s22, d13
# CHECK-NEXT: 1 3 0.50 fcvtxn v0.2s, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtxn2 v0.4s, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtzs d21, d12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzs d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtzs s12, s13
-# CHECK-NEXT: 2 4 1.00 fcvtzs s21, s12, #1
-# CHECK-NEXT: 4 6 2.00 fcvtzs h21, h14
-# CHECK-NEXT: 4 6 2.00 fcvtzs h21, h12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzs s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtzs s21, s12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzs h21, h14
+# CHECK-NEXT: 1 3 0.50 fcvtzs h21, h12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 fcvtzs v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 fcvtzs v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtzs v20.4h, v24.4h, #11
-# CHECK-NEXT: 2 4 1.00 fcvtzs v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 fcvtzs v0.4s, v0.4s, #3
-# CHECK-NEXT: 4 6 2.00 fcvtzs v0.8h, v0.8h
-# CHECK-NEXT: 4 6 2.00 fcvtzs v18.8h, v10.8h, #7
+# CHECK-NEXT: 1 4 1.00 fcvtzs v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtzs v20.4h, v24.4h, #11
+# CHECK-NEXT: 1 4 1.00 fcvtzs v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtzs v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 6 2.00 fcvtzs v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 fcvtzs v18.8h, v10.8h, #7
# CHECK-NEXT: 1 3 0.50 fcvtzu d21, d12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzu d21, d14
-# CHECK-NEXT: 2 4 1.00 fcvtzu s12, s13
-# CHECK-NEXT: 2 4 1.00 fcvtzu s21, s12, #1
-# CHECK-NEXT: 4 6 2.00 fcvtzu h12, h13
-# CHECK-NEXT: 4 6 2.00 fcvtzu h21, h12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzu s12, s13
+# CHECK-NEXT: 1 3 0.50 fcvtzu s21, s12, #1
+# CHECK-NEXT: 1 3 0.50 fcvtzu h12, h13
+# CHECK-NEXT: 1 3 0.50 fcvtzu h21, h12, #1
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 fcvtzu v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 fcvtzu v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 fcvtzu v19.4h, v26.4h, #9
-# CHECK-NEXT: 2 4 1.00 fcvtzu v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 fcvtzu v0.4s, v0.4s, #3
-# CHECK-NEXT: 4 6 2.00 fcvtzu v0.8h, v0.8h
-# CHECK-NEXT: 4 6 2.00 fcvtzu v27.8h, v6.8h, #11
+# CHECK-NEXT: 1 4 1.00 fcvtzu v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 fcvtzu v19.4h, v26.4h, #9
+# CHECK-NEXT: 1 4 1.00 fcvtzu v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 fcvtzu v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 6 2.00 fcvtzu v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 fcvtzu v27.8h, v6.8h, #11
# CHECK-NEXT: 1 15 7.00 fdiv v0.2d, v0.2d, v0.2d
# CHECK-NEXT: 1 10 2.50 fdiv v0.2s, v0.2s, v0.2s
# CHECK-NEXT: 1 7 3.50 fdiv v0.4h, v0.4h, v0.4h
@@ -414,39 +414,39 @@
# CHECK-NEXT: 1 3 0.50 frecpx s18, s10
# CHECK-NEXT: 1 3 0.50 frinta v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frinta v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frinta v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frinta v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frinta v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frinta v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frinta v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frinta v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frinti v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frinti v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frinti v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frinti v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frinti v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frinti v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frinti v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frinti v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintm v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintm v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintm v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintm v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frintm v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintm v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintm v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintm v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintn v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintn v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintn v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintn v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frintn v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintn v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintn v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintn v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintp v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintp v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintp v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintp v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frintp v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintp v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintp v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintp v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintx v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintx v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintx v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintx v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frintx v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintx v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintx v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintx v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frintz v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 frintz v0.2s, v0.2s
-# CHECK-NEXT: 2 4 1.00 frintz v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 frintz v0.4s, v0.4s
-# CHECK-NEXT: 4 6 2.00 frintz v0.8h, v0.8h
+# CHECK-NEXT: 1 4 1.00 frintz v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 frintz v0.4s, v0.4s
+# CHECK-NEXT: 1 6 2.00 frintz v0.8h, v0.8h
# CHECK-NEXT: 1 3 0.50 frsqrte h23, h26
# CHECK-NEXT: 1 3 0.50 frsqrte d21, d12
# CHECK-NEXT: 1 3 0.50 frsqrte s22, s13
@@ -751,22 +751,22 @@
# CHECK-NEXT: 1 2 0.25 saddw2 v0.2d, v0.2d, v0.4s
# CHECK-NEXT: 1 2 0.25 saddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: 1 2 0.25 saddw2 v0.8h, v0.8h, v0.16b
-# CHECK-NEXT: 4 6 2.00 scvtf h4, h8, #9
-# CHECK-NEXT: 4 6 2.00 scvtf h5, h14
+# CHECK-NEXT: 1 3 0.50 scvtf h4, h8, #9
+# CHECK-NEXT: 1 3 0.50 scvtf h5, h14
# CHECK-NEXT: 1 3 0.50 scvtf d21, d12
# CHECK-NEXT: 1 3 0.50 scvtf d21, d12, #64
-# CHECK-NEXT: 2 4 1.00 scvtf s22, s13
-# CHECK-NEXT: 2 4 1.00 scvtf s22, s13, #32
+# CHECK-NEXT: 1 3 0.50 scvtf s22, s13
+# CHECK-NEXT: 1 3 0.50 scvtf s22, s13, #32
# CHECK-NEXT: 1 3 0.50 scvtf v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 scvtf v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 scvtf v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 scvtf v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 scvtf v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 scvtf v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 scvtf v0.4s, v0.4s, #3
-# CHECK-NEXT: 2 4 1.00 scvtf v25.4h, v13.4h, #8
-# CHECK-NEXT: 4 6 2.00 scvtf v0.8h, v0.8h
-# CHECK-NEXT: 4 6 2.00 scvtf v4.8h, v8.8h, #10
+# CHECK-NEXT: 1 4 1.00 scvtf v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 scvtf v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 scvtf v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 4 1.00 scvtf v25.4h, v13.4h, #8
+# CHECK-NEXT: 1 6 2.00 scvtf v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 scvtf v4.8h, v8.8h, #10
# CHECK-NEXT: 1 3 0.25 sdot v0.2s, v0.8b, v0.4b[2]
# CHECK-NEXT: 1 3 0.25 sdot v0.2s, v0.8b, v0.8b
# CHECK-NEXT: 1 3 0.25 sdot v0.4s, v0.16b, v0.16b
@@ -1302,23 +1302,23 @@
# CHECK-NEXT: 1 2 0.25 uaddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: 1 2 0.25 uaddw2 v0.8h, v0.8h, v0.16b
# CHECK-NEXT: 1 3 1.00 ucvtf h17, x12
-# CHECK-NEXT: 4 6 2.00 ucvtf h22, h16, #11
-# CHECK-NEXT: 4 6 2.00 ucvtf h7, h21
+# CHECK-NEXT: 1 3 0.50 ucvtf h22, h16, #11
+# CHECK-NEXT: 1 3 0.50 ucvtf h7, h21
# CHECK-NEXT: 1 3 0.50 ucvtf d21, d14
# CHECK-NEXT: 1 3 0.50 ucvtf d21, d14, #64
# CHECK-NEXT: 1 3 1.00 ucvtf s8, x0
-# CHECK-NEXT: 2 4 1.00 ucvtf s22, s13
-# CHECK-NEXT: 2 4 1.00 ucvtf s22, s13, #32
+# CHECK-NEXT: 1 3 0.50 ucvtf s22, s13
+# CHECK-NEXT: 1 3 0.50 ucvtf s22, s13, #32
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2d, v0.2d
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2d, v0.2d, #3
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2s, v0.2s
# CHECK-NEXT: 1 3 0.50 ucvtf v0.2s, v0.2s, #3
-# CHECK-NEXT: 2 4 1.00 ucvtf v0.4h, v0.4h
-# CHECK-NEXT: 2 4 1.00 ucvtf v0.4s, v0.4s
-# CHECK-NEXT: 2 4 1.00 ucvtf v0.4s, v0.4s, #3
-# CHECK-NEXT: 2 4 1.00 ucvtf v18.4h, v11.4h, #7
-# CHECK-NEXT: 4 6 2.00 ucvtf v0.8h, v0.8h
-# CHECK-NEXT: 4 6 2.00 ucvtf v22.8h, v20.8h, #10
+# CHECK-NEXT: 1 4 1.00 ucvtf v0.4h, v0.4h
+# CHECK-NEXT: 1 4 1.00 ucvtf v0.4s, v0.4s
+# CHECK-NEXT: 1 4 1.00 ucvtf v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 4 1.00 ucvtf v18.4h, v11.4h, #7
+# CHECK-NEXT: 1 6 2.00 ucvtf v0.8h, v0.8h
+# CHECK-NEXT: 1 6 2.00 ucvtf v22.8h, v20.8h, #10
# CHECK-NEXT: 1 3 0.25 udot v0.2s, v0.8b, v0.4b[2]
# CHECK-NEXT: 1 3 0.25 udot v0.2s, v0.8b, v0.8b
# CHECK-NEXT: 1 3 0.25 udot v0.4s, v0.16b, v0.16b
@@ -1596,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 567.75 561.75 403.75
+# CHECK-NEXT: - - - - - - - 106.00 189.00 189.00 21.17 8.17 8.17 8.17 8.17 8.17 693.75 567.75 529.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:
@@ -1782,16 +1782,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fcmlt v8.4h, v2.4h, #0.0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 fcmlt v7.2d, v16.2d, #0.0
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtas h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtas v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtas v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtas v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtau h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtau v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtau v0.4h, v0.4h
@@ -1802,16 +1802,16 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtl2 v0.2d, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtl2 v0.4s, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtms h22, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms h22, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtms v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtms v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtms v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtmu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtmu v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtmu v0.4h, v0.4h
@@ -1822,32 +1822,32 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtn2 v0.4s, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtn2 v0.8h, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtns h22, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns h22, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtns v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtns v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtns v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtnu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtnu v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtnu v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtnu v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtps h22, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps h22, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtps v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps v0.4h, v0.4h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtps v0.4s, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtps v0.8h, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtpu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu h12, h13
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtpu v0.2s, v0.2s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtpu v0.4h, v0.4h
@@ -1858,10 +1858,10 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtxn2 v0.4s, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs d21, d12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzs s21, s12, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzs h21, h14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzs h21, h12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs s21, s12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs h21, h14
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs h21, h12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzs v0.2s, v0.2s
@@ -1874,10 +1874,10 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzs v18.8h, v10.8h, #7
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu d21, d12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu d21, d14
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu s12, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - fcvtzu s21, s12, #1
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzu h12, h13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - fcvtzu h21, h12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu s12, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu s21, s12, #1
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu h12, h13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu h21, h12, #1
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - fcvtzu v0.2s, v0.2s
@@ -2341,12 +2341,12 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 saddw2 v0.2d, v0.2d, v0.4s
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 saddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 saddw2 v0.8h, v0.8h, v0.16b
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - scvtf h4, h8, #9
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - scvtf h5, h14
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf h4, h8, #9
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf h5, h14
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf d21, d12
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf d21, d12, #64
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - scvtf s22, s13, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf s22, s13, #32
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - scvtf v0.2s, v0.2s
@@ -2892,13 +2892,13 @@
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 uaddw2 v0.4s, v0.4s, v0.8h
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 uaddw2 v0.8h, v0.8h, v0.16b
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - - - ucvtf h17, x12
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - ucvtf h22, h16, #11
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 2.00 - 2.00 - ucvtf h7, h21
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf h22, h16, #11
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf h7, h21
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf d21, d14
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf d21, d14, #64
# CHECK-NEXT: - - - - - - - - - - 1.00 - - - - - - - - - ucvtf s8, x0
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf s22, s13
-# CHECK-NEXT: - - - - - - - - - - - - - - - - 1.00 - 1.00 - ucvtf s22, s13, #32
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf s22, s13
+# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf s22, s13, #32
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf v0.2d, v0.2d
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf v0.2d, v0.2d, #3
# CHECK-NEXT: - - - - - - - - - - - - - - - - 0.50 - 0.50 - ucvtf v0.2s, v0.2s
More information about the llvm-commits
mailing list