[llvm] [AArch64] Add C1-Premium scheduling model (PR #185398)
Nashe Mncube via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 15 07:48:46 PDT 2026
================
@@ -0,0 +1,3163 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=c1-premium -mattr=+aes -instruction-tables < %p/../Inputs/neon-instructions.s | FileCheck %s
+
+# 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 2 0.50 abs d29, d24
+# CHECK-NEXT: 1 2 0.50 abs v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 abs v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 abs v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 abs v0.4h, v0.4h
+# CHECK-NEXT: 1 2 0.50 abs v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 abs v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 abs v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 add d17, d31, d29
+# CHECK-NEXT: 1 2 0.50 add v0.8b, v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 addhn v0.2s, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 addhn v0.4h, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 addhn v0.8b, v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 addhn2 v0.16b, v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 addhn2 v0.4s, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 addhn2 v0.8h, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 addp v7.2s, v1.2s, v2.2s
+# CHECK-NEXT: 1 2 0.50 addp v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 addp v0.8b, v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 addp d1, v14.2d
+# CHECK-NEXT: 1 2 0.50 addv s0, v0.4s
+# CHECK-NEXT: 1 2 0.50 addv h0, v0.4h
+# CHECK-NEXT: 1 4 0.50 addv h0, v0.8h
+# CHECK-NEXT: 1 4 0.50 addv b0, v0.8b
+# CHECK-NEXT: 1 4 0.50 addv b0, v0.16b
+# CHECK-NEXT: 1 2 0.50 aesd v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 aese v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 aesimc v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 aesmc v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 and v0.8b, v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 bic v0.4h, #15, lsl #8
+# CHECK-NEXT: 1 2 0.50 bic v23.8h, #101
+# CHECK-NEXT: 1 2 0.50 bic v0.8b, v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 bic v25.16b, v10.16b, v9.16b
+# CHECK-NEXT: 1 2 0.50 bic v24.2s, #70
+# CHECK-NEXT: 1 2 0.50 bit v5.8b, v12.8b, v22.8b
+# CHECK-NEXT: 1 2 0.50 bif v0.8b, v25.8b, v4.8b
+# CHECK-NEXT: 1 2 0.50 bif v0.16b, v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 bit v0.16b, v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 bsl v0.8b, v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 bsl v27.16b, v13.16b, v21.16b
+# CHECK-NEXT: 1 2 0.50 cls v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 cls v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 cls v0.4h, v0.4h
+# CHECK-NEXT: 1 2 0.50 cls v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 cls v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 cls v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 clz v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 clz v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 clz v0.4h, v0.4h
+# CHECK-NEXT: 1 2 0.50 clz v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 clz v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 clz v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 cmeq v9.8h, v16.8h, v24.8h
+# CHECK-NEXT: 1 2 0.50 cmeq v14.4h, v18.4h, #0
+# CHECK-NEXT: 1 2 0.50 cmeq d20, d21, #0
+# CHECK-NEXT: 1 2 0.50 cmeq d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 cmeq v0.16b, v0.16b, #0
+# CHECK-NEXT: 1 2 0.50 cmeq v0.16b, v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 cmge v22.8h, v16.8h, v3.8h
+# CHECK-NEXT: 1 2 0.50 cmge v22.16b, v30.16b, #0
+# CHECK-NEXT: 1 2 0.50 cmge d20, d21, #0
+# CHECK-NEXT: 1 2 0.50 cmge d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 cmge v0.4h, v0.4h, v0.4h
+# CHECK-NEXT: 1 2 0.50 cmge v0.8b, v0.8b, #0
+# CHECK-NEXT: 1 2 0.50 cmgt v3.2d, v29.2d, v11.2d
+# CHECK-NEXT: 1 2 0.50 cmgt d20, d21, #0
+# CHECK-NEXT: 1 2 0.50 cmgt d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 cmgt v0.2s, v0.2s, #0
+# CHECK-NEXT: 1 2 0.50 cmgt v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 cmhi v28.4h, v25.4h, v21.4h
+# CHECK-NEXT: 1 2 0.50 cmhi d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 cmhi v0.8h, v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 cmhs d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 cmhs v0.8b, v0.8b, v0.8b
+# CHECK-NEXT: 1 2 0.50 cmle v21.2s, v19.2s, #0
+# CHECK-NEXT: 1 2 0.50 cmle d20, d21, #0
+# CHECK-NEXT: 1 2 0.50 cmle v0.2d, v0.2d, #0
+# CHECK-NEXT: 1 2 0.50 cmlt v26.4h, v12.4h, #0
+# CHECK-NEXT: 1 2 0.50 cmlt d20, d21, #0
+# CHECK-NEXT: 1 2 0.50 cmlt v0.8h, v0.8h, #0
+# CHECK-NEXT: 1 2 0.50 cmtst d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 cmtst v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 cmtst v13.2d, v13.2d, v13.2d
+# CHECK-NEXT: 1 2 0.50 cnt v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 cnt v0.8b, v0.8b
+# CHECK-NEXT: 1 3 1.00 dup v0.16b, w28
+# CHECK-NEXT: 1 3 1.00 dup v0.2d, x28
+# CHECK-NEXT: 1 3 1.00 dup v0.2s, w28
+# CHECK-NEXT: 1 3 1.00 dup v0.4h, w28
+# CHECK-NEXT: 1 3 1.00 dup v0.4s, w28
+# CHECK-NEXT: 1 3 1.00 dup v0.8b, w28
+# CHECK-NEXT: 1 3 1.00 dup v0.8h, w28
+# CHECK-NEXT: 1 2 0.50 mov b0, v0.b[1]
+# CHECK-NEXT: 1 2 0.50 mov d0, v0.d[1]
+# CHECK-NEXT: 1 2 0.50 mov h0, v0.h[1]
+# CHECK-NEXT: 1 2 0.50 mov s0, v0.s[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.16b, v0.b[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.2d, v0.d[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.2s, v0.s[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.4h, v0.h[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.4s, v0.s[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.8b, v0.b[1]
+# CHECK-NEXT: 1 2 0.50 dup v0.8h, v0.h[1]
+# CHECK-NEXT: 1 2 0.50 eor v0.16b, v0.16b, v0.16b
+# CHECK-NEXT: 1 2 0.50 ext v0.16b, v0.16b, v0.16b, #3
+# CHECK-NEXT: 1 2 0.50 ext v0.8b, v0.8b, v0.8b, #3
+# CHECK-NEXT: 1 2 0.50 fabd d29, d24, d20
+# CHECK-NEXT: 1 2 0.50 fabd s29, s24, s20
+# CHECK-NEXT: 1 2 0.50 fabd h27, h20, h17
+# CHECK-NEXT: 1 2 0.50 fabd v13.8h, v28.8h, v12.8h
+# CHECK-NEXT: 1 2 0.50 fabd v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fabs h25, h7
+# CHECK-NEXT: 1 2 0.50 fabs v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 fabs v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fabs v0.4h, v0.4h
+# CHECK-NEXT: 1 2 0.50 fabs v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fabs v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 facge d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 facge s10, s11, s12
+# CHECK-NEXT: 1 2 0.50 facge h24, h26, h29
+# CHECK-NEXT: 1 2 0.50 facge v25.4h, v16.4h, v11.4h
+# CHECK-NEXT: 1 2 0.50 facge v19.2s, v24.2s, v5.2s
+# CHECK-NEXT: 1 2 0.50 facge v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 facgt d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 facgt s10, s11, s12
+# CHECK-NEXT: 1 2 0.50 facgt h0, h4, h10
+# CHECK-NEXT: 1 2 0.50 facgt v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 facgt v22.8h, v14.8h, v31.8h
+# CHECK-NEXT: 1 2 0.50 facgt v22.4s, v8.4s, v2.4s
+# CHECK-NEXT: 1 2 0.50 fadd v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 faddp h10, v19.2h
+# CHECK-NEXT: 1 2 0.50 faddp d11, v28.2d
+# CHECK-NEXT: 1 2 0.50 faddp v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 faddp v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 faddp v16.2d, v11.2d, v5.2d
+# CHECK-NEXT: 1 2 0.50 fcmeq h30, h6, h1
+# CHECK-NEXT: 1 2 0.50 fcmeq h19, h23, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmeq d20, d21, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmeq d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 fcmeq s10, s11, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmeq s10, s11, s12
+# CHECK-NEXT: 1 2 0.50 fcmeq v0.2s, v0.2s, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmeq v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fcmeq v12.4s, v11.4s, v26.4s
+# CHECK-NEXT: 1 2 0.50 fcmeq v18.2d, v17.2d, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmge h10, h23, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmge h1, h16, h12
+# CHECK-NEXT: 1 2 0.50 fcmge d20, d21, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmge d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 fcmge s10, s11, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmge s10, s11, s12
+# CHECK-NEXT: 1 2 0.50 fcmge v0.2d, v0.2d, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmge v17.2d, v11.2d, v13.2d
+# CHECK-NEXT: 1 2 0.50 fcmge v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fcmge v18.4h, v27.4h, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmge v20.8h, v19.8h, v22.8h
+# CHECK-NEXT: 1 2 0.50 fcmge v17.2s, v11.2s, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmgt h4, h5, h0
+# CHECK-NEXT: 1 2 0.50 fcmgt h0, h18, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmgt d20, d21, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmgt d20, d21, d22
+# CHECK-NEXT: 1 2 0.50 fcmgt s10, s11, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmgt s10, s11, s12
+# CHECK-NEXT: 1 2 0.50 fcmgt v0.4s, v0.4s, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmgt v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fcmgt v24.8h, v24.8h, v28.8h
+# CHECK-NEXT: 1 2 0.50 fcmgt v0.8h, v11.8h, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmgt v19.2d, v31.2d, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmle v16.8h, v11.8h, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmle v22.4s, v30.4s, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmle d20, d21, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmle s10, s11, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmle v0.2d, v0.2d, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmle h18, h28, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmlt h23, h7, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmlt d20, d21, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmlt s10, s11, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmlt v0.4s, v0.4s, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmlt v8.4h, v2.4h, #0.0
+# CHECK-NEXT: 1 2 0.50 fcmlt v7.2d, v16.2d, #0.0
+# CHECK-NEXT: 1 3 0.50 fcvtas d21, d14
+# 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: 1 3 0.50 fcvtas v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtas v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtas v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtau d21, d14
+# 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: 1 3 0.50 fcvtau v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtau v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtau v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 fcvtl v0.2d, v0.2s
+# CHECK-NEXT: 1 3 0.50 fcvtl v0.4s, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtl2 v0.2d, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtl2 v0.4s, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtms d21, d14
+# 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: 1 3 0.50 fcvtms v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtms v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtms v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtmu d21, d14
+# 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: 1 3 0.50 fcvtmu v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtmu v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtmu v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtn v0.2s, v0.2d
+# CHECK-NEXT: 1 3 0.50 fcvtn v0.4h, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtn2 v0.4s, v0.2d
+# CHECK-NEXT: 1 3 0.50 fcvtn2 v0.8h, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtns d21, d14
+# 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: 1 3 0.50 fcvtns v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtns v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtns v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtnu d21, d14
+# 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: 1 3 0.50 fcvtnu v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtnu v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtnu v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtps d21, d14
+# 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: 1 3 0.50 fcvtps v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtps v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtps v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtpu d21, d14
+# 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: 1 3 0.50 fcvtpu v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtpu v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 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: 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: 1 3 0.50 fcvtzs v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtzs v20.4h, v24.4h, #11
+# CHECK-NEXT: 1 3 0.50 fcvtzs v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtzs v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 3 0.50 fcvtzs v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 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: 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: 1 3 0.50 fcvtzu v0.4h, v0.4h
+# CHECK-NEXT: 1 3 0.50 fcvtzu v19.4h, v26.4h, #9
+# CHECK-NEXT: 1 3 0.50 fcvtzu v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fcvtzu v0.4s, v0.4s, #3
+# CHECK-NEXT: 1 3 0.50 fcvtzu v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 fcvtzu v27.8h, v6.8h, #11
+# CHECK-NEXT: 1 13 2.00 fdiv v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 9 2.00 fdiv v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 8 4.00 fdiv v0.4h, v0.4h, v0.4h
+# CHECK-NEXT: 1 11 4.00 fdiv v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 12 8.00 fdiv v0.8h, v0.8h, v0.8h
+# CHECK-NEXT: 1 2 0.50 fmax v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 fmax v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fmax v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fmaxnm v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 fmaxnm v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fmaxnm v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fmaxnmp h25, v19.2h
+# CHECK-NEXT: 1 3 0.50 fmaxnmp d17, v29.2d
+# CHECK-NEXT: 1 3 0.50 fmaxnmp v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 3 0.50 fmaxnmp v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 3 0.50 fmaxnmp v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 4 0.50 fmaxnmv h0, v13.4h
+# CHECK-NEXT: 1 6 0.50 fmaxnmv h12, v11.8h
+# CHECK-NEXT: 1 4 0.50 fmaxnmv s28, v31.4s
+# CHECK-NEXT: 1 3 0.50 fmaxp v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 3 0.50 fmaxp v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 3 0.50 fmaxp v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fmaxp h15, v25.2h
+# CHECK-NEXT: 1 3 0.50 fmaxp s6, v2.2s
+# CHECK-NEXT: 1 4 0.50 fmaxv h0, v0.4h
+# CHECK-NEXT: 1 6 0.50 fmaxv h0, v0.8h
+# CHECK-NEXT: 1 4 0.50 fmaxv s0, v0.4s
+# CHECK-NEXT: 1 2 0.50 fmin v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 fmin v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fmin v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fminnm v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 fminnm v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fminnm v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fminnmp h20, v14.2h
+# CHECK-NEXT: 1 3 0.50 fminnmp d15, v8.2d
+# CHECK-NEXT: 1 3 0.50 fminnmp v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 3 0.50 fminnmp v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 3 0.50 fminnmp v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 4 0.50 fminnmv h19, v25.4h
+# CHECK-NEXT: 1 6 0.50 fminnmv h23, v17.8h
+# CHECK-NEXT: 1 4 0.50 fminnmv s29, v17.4s
+# CHECK-NEXT: 1 3 0.50 fminp v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 3 0.50 fminp v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 3 0.50 fminp v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fminp h7, v10.2h
+# CHECK-NEXT: 1 3 0.50 fminp s17, v7.2s
+# CHECK-NEXT: 1 4 0.50 fminv h3, v30.4h
+# CHECK-NEXT: 1 6 0.50 fminv h29, v12.8h
+# CHECK-NEXT: 1 4 0.50 fminv s16, v19.4s
+# CHECK-NEXT: 1 4 0.50 fmla d0, d1, v0.d[1]
+# CHECK-NEXT: 1 4 0.50 fmla h23, h24, v15.h[4]
+# CHECK-NEXT: 1 4 0.50 fmla s0, s1, v0.s[3]
+# CHECK-NEXT: 1 4 0.50 fmla v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 4 0.50 fmla v29.8h, v15.8h, v10.h[4]
+# CHECK-NEXT: 1 4 0.50 fmla v2.2s, v16.2s, v28.s[0]
+# CHECK-NEXT: 1 4 0.50 fmla v14.4s, v14.4s, v5.s[3]
+# CHECK-NEXT: 1 4 0.50 fmla v1.4s, v24.4s, v12.4s
+# CHECK-NEXT: 1 4 0.50 fmla v10.2d, v14.2d, v21.d[1]
+# CHECK-NEXT: 1 4 0.50 fmls d0, d4, v0.d[1]
+# CHECK-NEXT: 1 4 0.50 fmls h8, h14, v7.h[4]
+# CHECK-NEXT: 1 4 0.50 fmls s3, s5, v0.s[3]
+# CHECK-NEXT: 1 4 0.50 fmls v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 4 0.50 fmls v30.8h, v18.8h, v4.h[6]
+# CHECK-NEXT: 1 4 0.50 fmls v10.2s, v27.2s, v0.s[0]
+# CHECK-NEXT: 1 4 0.50 fmls v27.4s, v7.4s, v24.s[0]
+# CHECK-NEXT: 1 4 0.50 fmls v10.2d, v22.2d, v29.d[0]
+# CHECK-NEXT: 1 4 0.50 fmls v6.8h, v15.8h, v23.8h
+# CHECK-NEXT: 1 2 0.50 fmov v0.2d, #-1.25000000
+# CHECK-NEXT: 1 2 0.50 fmov v0.2s, #13.00000000
+# CHECK-NEXT: 1 2 0.50 fmov v0.4s, #1.00000000
+# CHECK-NEXT: 1 3 0.50 fmul h18, h4, v7.h[3]
+# CHECK-NEXT: 1 3 0.50 fmul v10.4h, v2.4h, v7.h[5]
+# CHECK-NEXT: 1 3 0.50 fmul v5.2s, v12.2s, v9.s[0]
+# CHECK-NEXT: 1 3 0.50 fmul v15.4s, v30.4s, v2.s[3]
+# CHECK-NEXT: 1 3 0.50 fmul v11.2d, v31.2d, v24.d[1]
+# CHECK-NEXT: 1 3 0.50 fmul h28, h14, h3
+# CHECK-NEXT: 1 3 0.50 fmul d0, d1, v0.d[1]
+# CHECK-NEXT: 1 3 0.50 fmul s0, s1, v0.s[3]
+# CHECK-NEXT: 1 3 0.50 fmul v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 3 0.50 fmulx d0, d4, v0.d[1]
+# CHECK-NEXT: 1 2 0.50 fmulx d23, d11, d1
+# CHECK-NEXT: 1 2 0.50 fmulx s20, s22, s15
+# CHECK-NEXT: 1 3 0.50 fmulx h18, h17, v7.h[1]
+# CHECK-NEXT: 1 2 0.50 fmulx h20, h25, h0
+# CHECK-NEXT: 1 3 0.50 fmulx s3, s5, v0.s[3]
+# CHECK-NEXT: 1 3 0.50 fmulx v0.2d, v0.2d, v0.2d
+# CHECK-NEXT: 1 3 0.50 fmulx v28.4h, v25.4h, v15.h[1]
+# CHECK-NEXT: 1 3 0.50 fmulx v3.2s, v22.2s, v23.s[3]
+# CHECK-NEXT: 1 3 0.50 fmulx v0.2s, v0.2s, v0.2s
+# CHECK-NEXT: 1 3 0.50 fmulx v0.4s, v0.4s, v0.4s
+# CHECK-NEXT: 1 3 0.50 fmulx v5.4s, v28.4s, v15.s[3]
+# CHECK-NEXT: 1 3 0.50 fmulx v22.2d, v18.2d, v25.d[1]
+# CHECK-NEXT: 1 2 0.50 fneg v0.2d, v0.2d
+# CHECK-NEXT: 1 2 0.50 fneg v0.2s, v0.2s
+# CHECK-NEXT: 1 2 0.50 fneg v0.4h, v0.4h
+# CHECK-NEXT: 1 2 0.50 fneg v0.4s, v0.4s
+# CHECK-NEXT: 1 2 0.50 fneg v0.8h, v0.8h
+# CHECK-NEXT: 1 3 0.50 frecpe h20, h8
+# CHECK-NEXT: 1 3 0.50 frecpe d13, d13
+# CHECK-NEXT: 1 3 0.50 frecpe s19, s14
+# CHECK-NEXT: 1 2 0.50 frecpe v0.2d, v0.2d
+# CHECK-NEXT: 1 3 0.50 frecpe v0.2s, v0.2s
+# CHECK-NEXT: 1 4 0.50 frecpe v0.4h, v0.4h
+# CHECK-NEXT: 1 4 0.50 frecpe v0.4s, v0.4s
+# CHECK-NEXT: 1 6 1.00 frecpe v0.8h, v0.8h
----------------
nasherm wrote:
Done
https://github.com/llvm/llvm-project/pull/185398
More information about the llvm-commits
mailing list