[llvm] [AArch64] Add C1-Premium scheduling model (PR #185398)

Asher Dobrescu via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 31 08:28:55 PDT 2026


================
@@ -0,0 +1,6873 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=c1-premium -mattr=+sve2-aes,+sve2-sha3,+sve2-sm4 -instruction-tables < %p/../Inputs/sve-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	z0.b, p0/m, z0.b
+# CHECK-NEXT:  1      2     0.50                        abs	z0.d, p0/m, z0.d
+# CHECK-NEXT:  1      2     0.50                        abs	z0.h, p0/m, z0.h
+# CHECK-NEXT:  1      2     0.50                        abs	z0.s, p0/m, z0.s
+# CHECK-NEXT:  1      2     0.50                        abs	z31.b, p7/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        abs	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        abs	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        abs	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      2     0.50                        adclb	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        adclb	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        adclt	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        adclt	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        add	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        add	z0.b, z0.b, #0
+# CHECK-NEXT:  1      2     0.50                        add	z0.b, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        add	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        add	z0.d, z0.d, #0
+# CHECK-NEXT:  1      2     0.50                        add	z0.d, z0.d, #0, lsl #8
+# CHECK-NEXT:  1      2     0.50                        add	z0.d, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        add	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        add	z0.h, z0.h, #0
+# CHECK-NEXT:  1      2     0.50                        add	z0.h, z0.h, #0, lsl #8
+# CHECK-NEXT:  1      2     0.50                        add	z0.h, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        add	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        add	z0.s, z0.s, #0
+# CHECK-NEXT:  1      2     0.50                        add	z0.s, z0.s, #0, lsl #8
+# CHECK-NEXT:  1      2     0.50                        add	z0.s, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        add	z0.s, z1.s, z2.s
+# CHECK-NEXT:  1      2     0.50                        add	z21.b, p5/m, z21.b, z10.b
+# CHECK-NEXT:  1      2     0.50                        add	z21.b, z10.b, z21.b
+# CHECK-NEXT:  1      2     0.50                        add	z21.d, p5/m, z21.d, z10.d
+# CHECK-NEXT:  1      2     0.50                        add	z21.d, z10.d, z21.d
+# CHECK-NEXT:  1      2     0.50                        add	z21.h, p5/m, z21.h, z10.h
+# CHECK-NEXT:  1      2     0.50                        add	z21.h, z10.h, z21.h
+# CHECK-NEXT:  1      2     0.50                        add	z21.s, p5/m, z21.s, z10.s
+# CHECK-NEXT:  1      2     0.50                        add	z21.s, z10.s, z21.s
+# CHECK-NEXT:  1      2     0.50                        add	z23.b, p3/m, z23.b, z13.b
+# CHECK-NEXT:  1      2     0.50                        add	z23.b, z13.b, z8.b
+# CHECK-NEXT:  1      2     0.50                        add	z23.d, p3/m, z23.d, z13.d
+# CHECK-NEXT:  1      2     0.50                        add	z23.d, z13.d, z8.d
+# CHECK-NEXT:  1      2     0.50                        add	z23.h, p3/m, z23.h, z13.h
+# CHECK-NEXT:  1      2     0.50                        add	z23.h, z13.h, z8.h
+# CHECK-NEXT:  1      2     0.50                        add	z23.s, p3/m, z23.s, z13.s
+# CHECK-NEXT:  1      2     0.50                        add	z23.s, z13.s, z8.s
+# CHECK-NEXT:  1      2     0.50                        add	z31.b, p7/m, z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        add	z31.b, z31.b, #255
+# CHECK-NEXT:  1      2     0.50                        add	z31.b, z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        add	z31.d, p7/m, z31.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        add	z31.d, z31.d, #65280
+# CHECK-NEXT:  1      2     0.50                        add	z31.d, z31.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        add	z31.h, p7/m, z31.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        add	z31.h, z31.h, #65280
+# CHECK-NEXT:  1      2     0.50                        add	z31.h, z31.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        add	z31.s, p7/m, z31.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        add	z31.s, z31.s, #65280
+# CHECK-NEXT:  1      2     0.50                        add	z31.s, z31.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        addhnb	z0.b, z1.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        addhnb	z0.h, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        addhnb	z0.s, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        addhnt	z0.b, z1.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        addhnt	z0.h, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        addhnt	z0.s, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        addp	z0.b, p0/m, z0.b, z1.b
+# CHECK-NEXT:  1      2     0.50                        addp	z0.h, p0/m, z0.h, z1.h
+# CHECK-NEXT:  1      2     0.50                        addp	z29.s, p7/m, z29.s, z30.s
+# CHECK-NEXT:  1      2     0.50                        addp	z31.d, p7/m, z31.d, z30.d
+# CHECK-NEXT:  1      1     0.13                        addpl	sp, sp, #31
+# CHECK-NEXT:  1      1     0.13                        addpl	x0, x0, #-32
+# CHECK-NEXT:  1      1     0.13                        addpl	x21, x21, #0
+# CHECK-NEXT:  1      1     0.13                        addpl	x23, x8, #-1
+# CHECK-NEXT:  1      1     0.13                        addvl	sp, sp, #31
+# CHECK-NEXT:  1      1     0.13                        addvl	x0, x0, #-32
+# CHECK-NEXT:  1      1     0.13                        addvl	x21, x21, #0
+# CHECK-NEXT:  1      1     0.13                        addvl	x23, x8, #-1
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, lsl #1]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, lsl #2]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, lsl #3]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, sxtw #1]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, sxtw #2]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, sxtw #3]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, sxtw]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, uxtw #1]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, uxtw #2]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, uxtw #3]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d, uxtw]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.d, [z0.d, z0.d]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.s, [z0.s, z0.s, lsl #1]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.s, [z0.s, z0.s, lsl #2]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.s, [z0.s, z0.s, lsl #3]
+# CHECK-NEXT:  1      2     0.50                        adr	z0.s, [z0.s, z0.s]
+# CHECK-NEXT:  1      2     0.50                        aesd	z0.b, z0.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        aese	z0.b, z0.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        aesimc	z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        aesimc	z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        aesmc	z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        aesmc	z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        and	p0.b, p0/z, p0.b, p1.b
+# CHECK-NEXT:  1      2     0.50                        and	z0.d, z0.d, #0x6
+# CHECK-NEXT:  1      2     0.50                        and	z0.d, z0.d, #0xfffffffffffffff9
+# CHECK-NEXT:  1      2     0.50                        and	z0.d, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        and	z0.s, z0.s, #0x6
+# CHECK-NEXT:  1      2     0.50                        and	z0.s, z0.s, #0xfffffff9
+# CHECK-NEXT:  1      2     0.50                        and	z23.d, z13.d, z8.d
+# CHECK-NEXT:  1      2     0.50                        and	z23.h, z23.h, #0x6
+# CHECK-NEXT:  1      2     0.50                        and	z23.h, z23.h, #0xfff9
+# CHECK-NEXT:  1      2     0.50                        and	z31.b, p7/m, z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        and	z31.d, p7/m, z31.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        and	z31.h, p7/m, z31.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        and	z31.s, p7/m, z31.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        and	z5.b, z5.b, #0x6
+# CHECK-NEXT:  1      2     0.50                        and	z5.b, z5.b, #0xf9
+# CHECK-NEXT:  1      2     0.50                        ands	p0.b, p0/z, p0.b, p1.b
+# CHECK-NEXT:  1      4     1.00                        andv	b0, p7, z31.b
+# CHECK-NEXT:  1      4     1.00                        andv	d0, p7, z31.d
+# CHECK-NEXT:  1      4     1.00                        andv	h0, p7, z31.h
+# CHECK-NEXT:  1      4     1.00                        andv	s0, p7, z31.s
+# CHECK-NEXT:  1      2     0.50                        asr	z0.b, p0/m, z0.b, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        asr	z0.b, p0/m, z0.b, z1.d
+# CHECK-NEXT:  1      2     0.50                        asr	z0.b, z0.b, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.b, z1.b, z2.d
+# CHECK-NEXT:  1      2     0.50                        asr	z0.d, p0/m, z0.d, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        asr	z0.d, z0.d, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.h, p0/m, z0.h, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        asr	z0.h, p0/m, z0.h, z1.d
+# CHECK-NEXT:  1      2     0.50                        asr	z0.h, z0.h, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.h, z1.h, z2.d
+# CHECK-NEXT:  1      2     0.50                        asr	z0.s, p0/m, z0.s, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        asr	z0.s, p0/m, z0.s, z1.d
+# CHECK-NEXT:  1      2     0.50                        asr	z0.s, z0.s, #1
+# CHECK-NEXT:  1      2     0.50                        asr	z0.s, z1.s, z2.d
+# CHECK-NEXT:  1      2     0.50                        asr	z31.b, p0/m, z31.b, #8
+# CHECK-NEXT:  1      2     0.50                        asr	z31.b, z31.b, #8
+# CHECK-NEXT:  1      2     0.50                        asr	z31.d, p0/m, z31.d, #64
+# CHECK-NEXT:  1      2     0.50                        asr	z31.d, z31.d, #64
+# CHECK-NEXT:  1      2     0.50                        asr	z31.h, p0/m, z31.h, #16
+# CHECK-NEXT:  1      2     0.50                        asr	z31.h, z31.h, #16
+# CHECK-NEXT:  1      2     0.50                        asr	z31.s, p0/m, z31.s, #32
+# CHECK-NEXT:  1      2     0.50                        asr	z31.s, z31.s, #32
+# CHECK-NEXT:  1      4     0.50                        asrd	z0.b, p0/m, z0.b, #1
+# CHECK-NEXT:  1      4     0.50                        asrd	z0.d, p0/m, z0.d, #1
+# CHECK-NEXT:  1      4     0.50                        asrd	z0.h, p0/m, z0.h, #1
+# CHECK-NEXT:  1      4     0.50                        asrd	z0.s, p0/m, z0.s, #1
+# CHECK-NEXT:  1      4     0.50                        asrd	z31.b, p0/m, z31.b, #8
+# CHECK-NEXT:  1      4     0.50                        asrd	z31.d, p0/m, z31.d, #64
+# CHECK-NEXT:  1      4     0.50                        asrd	z31.h, p0/m, z31.h, #16
+# CHECK-NEXT:  1      4     0.50                        asrd	z31.s, p0/m, z31.s, #32
+# CHECK-NEXT:  1      2     0.50                        asrr	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        asrr	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        asrr	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        asrr	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        bcax	z29.d, z29.d, z30.d, z31.d
+# CHECK-NEXT:  2      6     2.00                        bdep	z0.b, z1.b, z31.b
+# CHECK-NEXT:  2      6     2.00                        bdep	z0.d, z1.d, z31.d
+# CHECK-NEXT:  2      6     2.00                        bdep	z0.h, z1.h, z31.h
+# CHECK-NEXT:  2      6     2.00                        bdep	z0.s, z1.s, z31.s
+# CHECK-NEXT:  2      6     2.00                        bext	z0.b, z1.b, z31.b
+# CHECK-NEXT:  2      6     2.00                        bext	z0.d, z1.d, z31.d
+# CHECK-NEXT:  2      6     2.00                        bext	z0.h, z1.h, z31.h
+# CHECK-NEXT:  2      6     2.00                        bext	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        bfcvt	z0.h, p0/m, z1.s
+# CHECK-NEXT:  1      3     0.50                        bfcvtnt	z0.h, p0/m, z1.s
+# CHECK-NEXT:  1      4     0.50                        bfdot	z0.s, z1.h, z2.h
+# CHECK-NEXT:  1      4     0.50                        bfdot	z0.s, z1.h, z2.h[0]
+# CHECK-NEXT:  1      4     0.50                        bfdot	z0.s, z1.h, z2.h[3]
+# CHECK-NEXT:  1      5     0.50                        bfmlalb	z0.s, z1.h, z2.h
+# CHECK-NEXT:  1      5     0.50                        bfmlalb	z0.s, z1.h, z2.h[0]
+# CHECK-NEXT:  1      5     0.50                        bfmlalb	z0.s, z1.h, z2.h[7]
+# CHECK-NEXT:  1      5     0.50                        bfmlalb	z10.s, z21.h, z14.h
+# CHECK-NEXT:  1      5     0.50                        bfmlalb	z21.s, z14.h, z3.h[2]
+# CHECK-NEXT:  1      5     0.50                        bfmlalt	z0.s, z1.h, z2.h
+# CHECK-NEXT:  1      5     0.50                        bfmlalt	z0.s, z1.h, z2.h[0]
+# CHECK-NEXT:  1      5     0.50                        bfmlalt	z0.s, z1.h, z2.h[7]
+# CHECK-NEXT:  1      5     0.50                        bfmlalt	z0.s, z1.h, z7.h[7]
+# CHECK-NEXT:  1      5     0.50                        bfmlalt	z14.s, z10.h, z21.h
+# CHECK-NEXT:  1      5     0.50                        bfmmla	z0.s, z1.h, z2.h
+# CHECK-NEXT:  2      6     2.00                        bgrp	z0.b, z1.b, z31.b
+# CHECK-NEXT:  2      6     2.00                        bgrp	z0.d, z1.d, z31.d
+# CHECK-NEXT:  2      6     2.00                        bgrp	z0.h, z1.h, z31.h
+# CHECK-NEXT:  2      6     2.00                        bgrp	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        bic	p0.b, p0/z, p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        bic	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        bic	z0.d, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        bic	z23.d, z13.d, z8.d
+# CHECK-NEXT:  1      2     0.50                        bic	z31.b, p7/m, z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        bic	z31.d, p7/m, z31.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        bic	z31.h, p7/m, z31.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        bic	z31.s, p7/m, z31.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        bics	p0.b, p0/z, p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        bics	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      1     0.50                        brka	p0.b, p15/m, p15.b
+# CHECK-NEXT:  1      1     0.50                        brka	p0.b, p15/z, p15.b
+# CHECK-NEXT:  1      1     0.50                        brkas	p0.b, p15/z, p15.b
+# CHECK-NEXT:  1      1     0.50                        brkb	p0.b, p15/m, p15.b
+# CHECK-NEXT:  1      1     0.50                        brkb	p0.b, p15/z, p15.b
+# CHECK-NEXT:  1      1     0.50                        brkbs	p0.b, p15/z, p15.b
+# CHECK-NEXT:  1      2     0.50                        brkn	p0.b, p15/z, p1.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        brkn	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        brkns	p0.b, p15/z, p1.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        brkns	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        brkpa	p0.b, p15/z, p1.b, p2.b
+# CHECK-NEXT:  1      2     0.50                        brkpa	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        brkpas	p0.b, p15/z, p1.b, p2.b
+# CHECK-NEXT:  1      2     0.50                        brkpas	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        brkpb	p0.b, p15/z, p1.b, p2.b
+# CHECK-NEXT:  1      2     0.50                        brkpb	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        brkpbs	p0.b, p15/z, p1.b, p2.b
+# CHECK-NEXT:  1      2     0.50                        brkpbs	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        bsl	z0.d, z0.d, z1.d, z2.d
+# CHECK-NEXT:  1      2     0.50                        bsl1n	z0.d, z0.d, z1.d, z2.d
+# CHECK-NEXT:  1      2     0.50                        bsl2n	z0.d, z0.d, z1.d, z2.d
+# CHECK-NEXT:  1      2     0.50                        cadd	z0.b, z0.b, z0.b, #90
+# CHECK-NEXT:  1      2     0.50                        cadd	z0.d, z0.d, z0.d, #90
+# CHECK-NEXT:  1      2     0.50                        cadd	z0.h, z0.h, z0.h, #90
+# CHECK-NEXT:  1      2     0.50                        cadd	z0.s, z0.s, z0.s, #90
+# CHECK-NEXT:  1      2     0.50                        cadd	z31.b, z31.b, z31.b, #270
+# CHECK-NEXT:  1      2     0.50                        cadd	z31.d, z31.d, z31.d, #270
+# CHECK-NEXT:  1      2     0.50                        cadd	z31.h, z31.h, z31.h, #270
+# CHECK-NEXT:  1      2     0.50                        cadd	z31.s, z31.s, z31.s, #270
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.d, z1.h, z15.h[1], #0
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.d, z1.h, z31.h, #0
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.d, z1.h, z31.h, #180
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.d, z1.h, z31.h, #270
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.d, z1.h, z31.h, #90
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.s, z1.b, z31.b, #0
+# CHECK-NEXT:  1      3     0.50                        cdot	z0.s, z1.b, z7.b[3], #0
+# CHECK-NEXT:  1      3     0.50                        cdot	z29.d, z30.h, z0.h[0], #180
+# CHECK-NEXT:  1      3     0.50                        cdot	z31.d, z30.h, z7.h[1], #270
+# CHECK-NEXT:  1      3     0.50                        cdot	z5.d, z6.h, z3.h[0], #90
+# CHECK-NEXT:  1      3     1.00                        clasta	b0, p7, b0, z31.b
+# CHECK-NEXT:  1      3     1.00                        clasta	d0, p7, d0, z31.d
+# CHECK-NEXT:  1      3     1.00                        clasta	h0, p7, h0, z31.h
+# CHECK-NEXT:  1      3     1.00                        clasta	s0, p7, s0, z31.s
+# CHECK-NEXT:  1      8     1.00                        clasta	w0, p7, w0, z31.b
+# CHECK-NEXT:  1      8     1.00                        clasta	w0, p7, w0, z31.h
+# CHECK-NEXT:  1      8     1.00                        clasta	w0, p7, w0, z31.s
+# CHECK-NEXT:  1      8     1.00                        clasta	x0, p7, x0, z31.d
+# CHECK-NEXT:  1      3     1.00                        clasta	z0.b, p7, z0.b, z31.b
+# CHECK-NEXT:  1      3     1.00                        clasta	z0.d, p7, z0.d, z31.d
+# CHECK-NEXT:  1      3     1.00                        clasta	z0.h, p7, z0.h, z31.h
+# CHECK-NEXT:  1      3     1.00                        clasta	z0.s, p7, z0.s, z31.s
+# CHECK-NEXT:  1      3     1.00                        clastb	b0, p7, b0, z31.b
+# CHECK-NEXT:  1      3     1.00                        clastb	d0, p7, d0, z31.d
+# CHECK-NEXT:  1      3     1.00                        clastb	h0, p7, h0, z31.h
+# CHECK-NEXT:  1      3     1.00                        clastb	s0, p7, s0, z31.s
+# CHECK-NEXT:  1      8     1.00                        clastb	w0, p7, w0, z31.b
+# CHECK-NEXT:  1      8     1.00                        clastb	w0, p7, w0, z31.h
+# CHECK-NEXT:  1      8     1.00                        clastb	w0, p7, w0, z31.s
+# CHECK-NEXT:  1      8     1.00                        clastb	x0, p7, x0, z31.d
+# CHECK-NEXT:  1      3     1.00                        clastb	z0.b, p7, z0.b, z31.b
+# CHECK-NEXT:  1      3     1.00                        clastb	z0.d, p7, z0.d, z31.d
+# CHECK-NEXT:  1      3     1.00                        clastb	z0.h, p7, z0.h, z31.h
+# CHECK-NEXT:  1      3     1.00                        clastb	z0.s, p7, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        cls	z31.b, p7/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        cls	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        cls	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        cls	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      2     0.50                        clz	z31.b, p7/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        clz	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        clz	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        clz	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      4     0.50                        cmla	z0.b, z1.b, z2.b, #0
+# CHECK-NEXT:  1      4     0.50                        cmla	z0.d, z1.d, z2.d, #0
+# CHECK-NEXT:  1      4     0.50                        cmla	z0.h, z1.h, z2.h, #0
+# CHECK-NEXT:  1      4     0.50                        cmla	z0.h, z1.h, z2.h[0], #0
+# CHECK-NEXT:  1      4     0.50                        cmla	z0.s, z1.s, z2.s, #0
+# CHECK-NEXT:  1      4     0.50                        cmla	z0.s, z1.s, z2.s[0], #0
+# CHECK-NEXT:  1      4     0.50                        cmla	z15.b, z16.b, z17.b, #270
+# CHECK-NEXT:  1      4     0.50                        cmla	z15.d, z16.d, z17.d, #270
+# CHECK-NEXT:  1      4     0.50                        cmla	z15.h, z16.h, z17.h, #270
+# CHECK-NEXT:  1      4     0.50                        cmla	z15.s, z16.s, z17.s, #270
+# CHECK-NEXT:  1      4     0.50                        cmla	z29.b, z30.b, z31.b, #90
+# CHECK-NEXT:  1      4     0.50                        cmla	z29.d, z30.d, z31.d, #90
+# CHECK-NEXT:  1      4     0.50                        cmla	z29.h, z30.h, z31.h, #90
+# CHECK-NEXT:  1      4     0.50                        cmla	z29.s, z30.s, z31.s, #90
+# CHECK-NEXT:  1      4     0.50                        cmla	z31.b, z31.b, z31.b, #180
+# CHECK-NEXT:  1      4     0.50                        cmla	z31.d, z31.d, z31.d, #180
+# CHECK-NEXT:  1      4     0.50                        cmla	z31.h, z30.h, z7.h[0], #180
+# CHECK-NEXT:  1      4     0.50                        cmla	z31.h, z31.h, z31.h, #180
+# CHECK-NEXT:  1      4     0.50                        cmla	z31.s, z30.s, z7.s[0], #180
+# CHECK-NEXT:  1      4     0.50                        cmla	z31.s, z31.s, z31.s, #180
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.b, p0/z, z0.b, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.b, p0/z, z0.b, #15
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.d, p0/z, z0.d, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.d, p0/z, z0.d, #15
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.d, p0/z, z0.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.h, p0/z, z0.h, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.h, p0/z, z0.h, #15
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.s, p0/z, z0.s, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.s, p0/z, z0.s, #15
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpeq	p0.s, p0/z, z0.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.b, p0/z, z0.b, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.b, p0/z, z0.b, #15
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.b, p0/z, z1.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.d, p0/z, z0.d, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.d, p0/z, z0.d, #15
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.d, p0/z, z0.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.h, p0/z, z0.h, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.h, p0/z, z0.h, #15
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.s, p0/z, z0.s, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.s, p0/z, z0.s, #15
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.s, p0/z, z0.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmpge	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.b, p0/z, z0.b, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.b, p0/z, z0.b, #15
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.b, p0/z, z1.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.d, p0/z, z0.d, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.d, p0/z, z0.d, #15
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.d, p0/z, z0.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.h, p0/z, z0.h, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.h, p0/z, z0.h, #15
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.s, p0/z, z0.s, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.s, p0/z, z0.s, #15
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.s, p0/z, z0.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmpgt	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.b, p0/z, z0.b, #0
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.b, p0/z, z0.b, #127
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.b, p0/z, z1.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.d, p0/z, z0.d, #0
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.d, p0/z, z0.d, #127
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.d, p0/z, z0.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.h, p0/z, z0.h, #0
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.h, p0/z, z0.h, #127
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.s, p0/z, z0.s, #0
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.s, p0/z, z0.s, #127
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.s, p0/z, z0.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmphi	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.b, p0/z, z0.b, #0
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.b, p0/z, z0.b, #127
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.b, p0/z, z1.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.d, p0/z, z0.d, #0
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.d, p0/z, z0.d, #127
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.d, p0/z, z0.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.h, p0/z, z0.h, #0
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.h, p0/z, z0.h, #127
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.s, p0/z, z0.s, #0
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.s, p0/z, z0.s, #127
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.s, p0/z, z0.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmphs	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.b, p0/z, z0.b, #-16
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.b, p0/z, z0.b, #15
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.d, p0/z, z0.d, #-16
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.d, p0/z, z0.d, #15
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.h, p0/z, z0.h, #-16
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.h, p0/z, z0.h, #15
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.s, p0/z, z0.s, #-16
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.s, p0/z, z0.s, #15
+# CHECK-NEXT:  1      3     1.00                        cmple	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.b, p0/z, z0.b, #0
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.b, p0/z, z0.b, #127
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.d, p0/z, z0.d, #0
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.d, p0/z, z0.d, #127
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.h, p0/z, z0.h, #0
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.h, p0/z, z0.h, #127
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.s, p0/z, z0.s, #0
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.s, p0/z, z0.s, #127
+# CHECK-NEXT:  1      3     1.00                        cmplo	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.b, p0/z, z0.b, #0
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.b, p0/z, z0.b, #127
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.d, p0/z, z0.d, #0
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.d, p0/z, z0.d, #127
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.h, p0/z, z0.h, #0
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.h, p0/z, z0.h, #127
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.s, p0/z, z0.s, #0
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.s, p0/z, z0.s, #127
+# CHECK-NEXT:  1      3     1.00                        cmpls	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.b, p0/z, z0.b, #-16
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.b, p0/z, z0.b, #15
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.d, p0/z, z0.d, #-16
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.d, p0/z, z0.d, #15
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.h, p0/z, z0.h, #-16
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.h, p0/z, z0.h, #15
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.s, p0/z, z0.s, #-16
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.s, p0/z, z0.s, #15
+# CHECK-NEXT:  1      3     1.00                        cmplt	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.b, p0/z, z0.b, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.b, p0/z, z0.b, #15
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.b, p0/z, z0.b, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.d, p0/z, z0.d, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.d, p0/z, z0.d, #15
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.d, p0/z, z0.d, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.h, p0/z, z0.h, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.h, p0/z, z0.h, #15
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.h, p0/z, z0.h, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.s, p0/z, z0.s, #-16
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.s, p0/z, z0.s, #15
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.s, p0/z, z0.s, z0.d
+# CHECK-NEXT:  1      3     1.00                        cmpne	p0.s, p0/z, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        cnot	z31.b, p7/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        cnot	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        cnot	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        cnot	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      2     0.50                        cnt	z31.b, p7/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        cnt	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        cnt	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        cnt	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      1     0.13                        cntb	x0
+# CHECK-NEXT:  1      1     0.13                        cntb	x0, #28
+# CHECK-NEXT:  1      1     0.13                        cntb	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        cntb	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        cntd	x0
+# CHECK-NEXT:  1      1     0.13                        cntd	x0, #28
+# CHECK-NEXT:  1      1     0.13                        cntd	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        cntd	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        cnth	x0
+# CHECK-NEXT:  1      1     0.13                        cnth	x0, #28
+# CHECK-NEXT:  1      1     0.13                        cnth	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        cnth	x0, pow2
+# CHECK-NEXT:  1      2     0.50                        cntp	x0, p15, p0.b
+# CHECK-NEXT:  1      2     0.50                        cntp	x0, p15, p0.d
+# CHECK-NEXT:  1      2     0.50                        cntp	x0, p15, p0.h
+# CHECK-NEXT:  1      2     0.50                        cntp	x0, p15, p0.s
+# CHECK-NEXT:  1      1     0.13                        cntw	x0
+# CHECK-NEXT:  1      1     0.13                        cntw	x0, #28
+# CHECK-NEXT:  1      1     0.13                        cntw	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        cntw	x0, pow2
+# CHECK-NEXT:  1      3     1.00                        compact	z31.d, p7, z31.d
+# CHECK-NEXT:  1      3     1.00                        compact	z31.s, p7, z31.s
+# CHECK-NEXT:  1      1     0.50                        ctermeq	w30, wzr
+# CHECK-NEXT:  1      1     0.50                        ctermeq	wzr, w30
+# CHECK-NEXT:  1      1     0.50                        ctermeq	x30, xzr
+# CHECK-NEXT:  1      1     0.50                        ctermeq	xzr, x30
+# CHECK-NEXT:  1      1     0.50                        ctermne	w30, wzr
+# CHECK-NEXT:  1      1     0.50                        ctermne	wzr, w30
+# CHECK-NEXT:  1      1     0.50                        ctermne	x30, xzr
+# CHECK-NEXT:  1      1     0.50                        ctermne	xzr, x30
+# CHECK-NEXT:  1      1     0.13                        decb	x0
+# CHECK-NEXT:  1      1     0.13                        decb	x0, #14
+# CHECK-NEXT:  1      1     0.13                        decb	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        decb	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        decb	x0, vl1
+# CHECK-NEXT:  1      1     0.13                        decd	x0
+# CHECK-NEXT:  1      1     0.13                        decd	x0, #14
+# CHECK-NEXT:  1      1     0.13                        decd	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        decd	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        decd	x0, vl1
+# CHECK-NEXT:  1      1     0.13                        dech	x0
+# CHECK-NEXT:  1      1     0.13                        dech	x0, #14
+# CHECK-NEXT:  1      1     0.13                        dech	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        dech	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        dech	x0, vl1
+# CHECK-NEXT:  1      2     0.50                        decp	x0, p0.b
+# CHECK-NEXT:  1      2     0.50                        decp	x0, p0.d
+# CHECK-NEXT:  1      2     0.50                        decp	x0, p0.h
+# CHECK-NEXT:  1      2     0.50                        decp	x0, p0.s
+# CHECK-NEXT:  1      2     0.50                        decp	xzr, p15.b
+# CHECK-NEXT:  1      2     0.50                        decp	xzr, p15.d
+# CHECK-NEXT:  1      2     0.50                        decp	xzr, p15.h
+# CHECK-NEXT:  1      2     0.50                        decp	xzr, p15.s
+# CHECK-NEXT:  1      7     1.00                        decp	z31.d, p15.d
+# CHECK-NEXT:  1      7     1.00                        decp	z31.h, p15.h
+# CHECK-NEXT:  1      7     1.00                        decp	z31.s, p15.s
+# CHECK-NEXT:  1      1     0.13                        decw	x0
+# CHECK-NEXT:  1      1     0.13                        decw	x0, #14
+# CHECK-NEXT:  1      1     0.13                        decw	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        decw	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        decw	x0, vl1
+# CHECK-NEXT:  1      2     0.50                        dupm	z0.d, #0xfffffffffffffff9
+# CHECK-NEXT:  1      2     0.50                        dupm	z0.s, #0xfffffff9
+# CHECK-NEXT:  1      2     0.50                        dupm	z23.h, #0xfff9
+# CHECK-NEXT:  1      2     0.50                        dupm	z5.b, #0xf9
+# CHECK-NEXT:  1      2     0.50                        eor	p0.b, p0/z, p0.b, p1.b
+# CHECK-NEXT:  1      2     0.50                        eor	z0.d, z0.d, #0x6
+# CHECK-NEXT:  1      2     0.50                        eor	z0.d, z0.d, #0xfffffffffffffff9
+# CHECK-NEXT:  1      2     0.50                        eor	z0.d, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        eor	z0.s, z0.s, #0x6
+# CHECK-NEXT:  1      2     0.50                        eor	z0.s, z0.s, #0xfffffff9
+# CHECK-NEXT:  1      2     0.50                        eor	z23.d, z13.d, z8.d
+# CHECK-NEXT:  1      2     0.50                        eor	z23.h, z23.h, #0x6
+# CHECK-NEXT:  1      2     0.50                        eor	z23.h, z23.h, #0xfff9
+# CHECK-NEXT:  1      2     0.50                        eor	z31.b, p7/m, z31.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        eor	z31.d, p7/m, z31.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        eor	z31.h, p7/m, z31.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        eor	z31.s, p7/m, z31.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        eor	z5.b, z5.b, #0x6
+# CHECK-NEXT:  1      2     0.50                        eor	z5.b, z5.b, #0xf9
+# CHECK-NEXT:  1      2     0.50                        eor3	z29.d, z29.d, z30.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        eorbt	z0.b, z1.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        eorbt	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        eorbt	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        eorbt	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        eors	p0.b, p0/z, p0.b, p1.b
+# CHECK-NEXT:  1      2     0.50                        eortb	z0.b, z1.b, z31.b
+# CHECK-NEXT:  1      2     0.50                        eortb	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        eortb	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        eortb	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      4     1.00                        eorv	b0, p7, z31.b
+# CHECK-NEXT:  1      4     1.00                        eorv	d0, p7, z31.d
+# CHECK-NEXT:  1      4     1.00                        eorv	h0, p7, z31.h
+# CHECK-NEXT:  1      4     1.00                        eorv	s0, p7, z31.s
+# CHECK-NEXT:  1      2     0.50                        ext	z0.b, { z1.b, z2.b }, #0
+# CHECK-NEXT:  1      2     0.50                        ext	z31.b, z31.b, z0.b, #0
+# CHECK-NEXT:  1      2     0.50                        ext	z31.b, z31.b, z0.b, #255
+# CHECK-NEXT:  1      2     0.50                        ext	z31.b, { z30.b, z31.b }, #255
+# CHECK-NEXT:  1      2     0.50                        fabd	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fabd	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fabd	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fabs	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        fabs	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        fabs	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      2     1.00                        facge	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        facge	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      2     1.00                        facge	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        facge	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      2     1.00                        facge	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      2     1.00                        facge	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      2     1.00                        facgt	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        facgt	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      2     1.00                        facgt	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        facgt	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      2     1.00                        facgt	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      2     1.00                        facgt	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.d, p0/m, z0.d, #0.5
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.h, p0/m, z0.h, #0.5
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.s, p0/m, z0.s, #0.5
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fadd	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fadd	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fadd	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fadd	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      4     0.50                        fadda	d0, p7, d0, z31.d
+# CHECK-NEXT:  1      10    1.00                        fadda	h0, p7, h0, z31.h
+# CHECK-NEXT:  1      6     1.00                        fadda	s0, p7, s0, z31.s
+# CHECK-NEXT:  1      2     0.50                        faddp	z0.h, p0/m, z0.h, z1.h
+# CHECK-NEXT:  1      2     0.50                        faddp	z29.s, p3/m, z29.s, z30.s
+# CHECK-NEXT:  1      2     0.50                        faddp	z31.d, p7/m, z31.d, z30.d
+# CHECK-NEXT:  1      4     0.50                        faddv	d0, p7, z31.d
+# CHECK-NEXT:  1      8     0.50                        faddv	h0, p7, z31.h
+# CHECK-NEXT:  1      6     0.50                        faddv	s0, p7, z31.s
+# CHECK-NEXT:  1      3     0.50                        fcadd	z0.d, p0/m, z0.d, z0.d, #90
+# CHECK-NEXT:  1      3     0.50                        fcadd	z0.h, p0/m, z0.h, z0.h, #90
+# CHECK-NEXT:  1      3     0.50                        fcadd	z0.s, p0/m, z0.s, z0.s, #90
+# CHECK-NEXT:  1      3     0.50                        fcadd	z31.d, p7/m, z31.d, z31.d, #270
+# CHECK-NEXT:  1      3     0.50                        fcadd	z31.h, p7/m, z31.h, z31.h, #270
+# CHECK-NEXT:  1      3     0.50                        fcadd	z31.s, p7/m, z31.s, z31.s, #270
+# CHECK-NEXT:  1      2     1.00                        fcmeq	p0.d, p0/z, z0.d, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmeq	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        fcmeq	p0.h, p0/z, z0.h, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmeq	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        fcmeq	p0.s, p0/z, z0.s, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmeq	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.d, p0/z, z0.d, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.h, p0/z, z0.h, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.s, p0/z, z0.s, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      2     1.00                        fcmge	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.d, p0/z, z0.d, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.d, p0/z, z1.d, z0.d
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.h, p0/z, z0.h, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.h, p0/z, z1.h, z0.h
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.s, p0/z, z0.s, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      2     1.00                        fcmgt	p0.s, p0/z, z1.s, z0.s
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.d, p0/m, z0.d, z0.d, #0
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.d, p0/m, z1.d, z2.d, #90
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.h, p0/m, z0.h, z0.h, #0
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.h, p0/m, z1.h, z2.h, #90
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.h, z0.h, z0.h[0], #0
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.s, p0/m, z0.s, z0.s, #0
+# CHECK-NEXT:  1      5     0.50                        fcmla	z0.s, p0/m, z1.s, z2.s, #90
+# CHECK-NEXT:  1      5     0.50                        fcmla	z21.s, z10.s, z5.s[1], #90
+# CHECK-NEXT:  1      5     0.50                        fcmla	z23.s, z13.s, z8.s[0], #270
+# CHECK-NEXT:  1      5     0.50                        fcmla	z29.d, p7/m, z30.d, z31.d, #180
+# CHECK-NEXT:  1      5     0.50                        fcmla	z29.h, p7/m, z30.h, z31.h, #180
+# CHECK-NEXT:  1      5     0.50                        fcmla	z29.s, p7/m, z30.s, z31.s, #180
+# CHECK-NEXT:  1      5     0.50                        fcmla	z31.d, p7/m, z31.d, z31.d, #270
+# CHECK-NEXT:  1      5     0.50                        fcmla	z31.h, p7/m, z31.h, z31.h, #270
+# CHECK-NEXT:  1      5     0.50                        fcmla	z31.h, z31.h, z7.h[3], #270
+# CHECK-NEXT:  1      5     0.50                        fcmla	z31.s, p7/m, z31.s, z31.s, #270
+# CHECK-NEXT:  1      2     1.00                        fcmle	p0.d, p0/z, z0.d, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmle	p0.h, p0/z, z0.h, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmle	p0.s, p0/z, z0.s, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmlt	p0.d, p0/z, z0.d, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmlt	p0.h, p0/z, z0.h, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmlt	p0.s, p0/z, z0.s, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmne	p0.d, p0/z, z0.d, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmne	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        fcmne	p0.h, p0/z, z0.h, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmne	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        fcmne	p0.s, p0/z, z0.s, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmne	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      2     1.00                        fcmuo	p0.d, p0/z, z0.d, z1.d
+# CHECK-NEXT:  1      2     1.00                        fcmuo	p0.h, p0/z, z0.h, z1.h
+# CHECK-NEXT:  1      2     1.00                        fcmuo	p0.s, p0/z, z0.s, z1.s
+# CHECK-NEXT:  1      3     0.50                        fcvt	z0.d, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvt	z0.d, p0/m, z0.s
+# CHECK-NEXT:  1      3     0.50                        fcvt	z0.h, p0/m, z0.d
+# CHECK-NEXT:  1      4     0.50                        fcvt	z0.h, p0/m, z0.s
+# CHECK-NEXT:  1      3     0.50                        fcvt	z0.s, p0/m, z0.d
+# CHECK-NEXT:  1      4     0.50                        fcvt	z0.s, p0/m, z0.h
+# CHECK-NEXT:  1      4     0.50                        fcvtlt	z0.s, p0/m, z1.h
+# CHECK-NEXT:  1      3     0.50                        fcvtlt	z30.d, p7/m, z31.s
+# CHECK-NEXT:  1      4     0.50                        fcvtnt	z0.h, p0/m, z1.s
+# CHECK-NEXT:  1      3     0.50                        fcvtnt	z30.s, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        fcvtx	z0.s, p0/m, z0.d
+# CHECK-NEXT:  1      3     0.50                        fcvtx	z30.s, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        fcvtxnt	z0.s, p0/m, z1.d
+# CHECK-NEXT:  1      3     0.50                        fcvtxnt	z30.s, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.d, p0/m, z0.d
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.d, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.d, p0/m, z0.s
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.h, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.s, p0/m, z0.d
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.s, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvtzs	z0.s, p0/m, z0.s
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.d, p0/m, z0.d
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.d, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.d, p0/m, z0.s
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.h, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.s, p0/m, z0.d
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.s, p0/m, z0.h
+# CHECK-NEXT:  1      3     0.50                        fcvtzu	z0.s, p0/m, z0.s
+# CHECK-NEXT:  1      13    2.00                        fdiv	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      12    8.00                        fdiv	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      11    4.00                        fdiv	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      13    2.00                        fdivr	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      12    8.00                        fdivr	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      11    4.00                        fdivr	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      3     1.00                        fexpa	z0.d, z31.d
+# CHECK-NEXT:  1      3     1.00                        fexpa	z0.h, z31.h
+# CHECK-NEXT:  1      3     1.00                        fexpa	z0.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        flogb	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        flogb	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        flogb	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      4     0.50                        fmad	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fmad	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fmad	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fmax	z0.d, p0/m, z0.d, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmax	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fmax	z0.h, p0/m, z0.h, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmax	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fmax	z0.s, p0/m, z0.s, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmax	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fmax	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmax	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmax	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z0.d, p0/m, z0.d, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z0.h, p0/m, z0.h, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z0.s, p0/m, z0.s, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmaxnmp	z0.h, p0/m, z0.h, z1.h
+# CHECK-NEXT:  1      2     0.50                        fmaxnmp	z29.s, p3/m, z29.s, z30.s
+# CHECK-NEXT:  1      2     0.50                        fmaxnmp	z31.d, p7/m, z31.d, z30.d
+# CHECK-NEXT:  1      4     0.50                        fmaxnmv	d0, p7, z31.d
+# CHECK-NEXT:  1      8     0.50                        fmaxnmv	h0, p7, z31.h
+# CHECK-NEXT:  1      6     0.50                        fmaxnmv	s0, p7, z31.s
+# CHECK-NEXT:  1      2     0.50                        fmaxp	z0.h, p0/m, z0.h, z1.h
+# CHECK-NEXT:  1      2     0.50                        fmaxp	z29.s, p3/m, z29.s, z30.s
+# CHECK-NEXT:  1      2     0.50                        fmaxp	z31.d, p7/m, z31.d, z30.d
+# CHECK-NEXT:  1      4     0.50                        fmaxv	d0, p7, z31.d
+# CHECK-NEXT:  1      8     0.50                        fmaxv	h0, p7, z31.h
+# CHECK-NEXT:  1      6     0.50                        fmaxv	s0, p7, z31.s
+# CHECK-NEXT:  1      2     0.50                        fmin	z0.d, p0/m, z0.d, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmin	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fmin	z0.h, p0/m, z0.h, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmin	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fmin	z0.s, p0/m, z0.s, #0.0
+# CHECK-NEXT:  1      2     0.50                        fmin	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fmin	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmin	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fmin	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      2     0.50                        fminnm	z0.d, p0/m, z0.d, #0.0
+# CHECK-NEXT:  1      2     0.50                        fminnm	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fminnm	z0.h, p0/m, z0.h, #0.0
+# CHECK-NEXT:  1      2     0.50                        fminnm	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fminnm	z0.s, p0/m, z0.s, #0.0
+# CHECK-NEXT:  1      2     0.50                        fminnm	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fminnm	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fminnm	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fminnm	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      2     0.50                        fminnmp	z0.h, p0/m, z0.h, z1.h
+# CHECK-NEXT:  1      2     0.50                        fminnmp	z29.s, p3/m, z29.s, z30.s
+# CHECK-NEXT:  1      2     0.50                        fminnmp	z31.d, p7/m, z31.d, z30.d
+# CHECK-NEXT:  1      4     0.50                        fminnmv	d0, p7, z31.d
+# CHECK-NEXT:  1      8     0.50                        fminnmv	h0, p7, z31.h
+# CHECK-NEXT:  1      6     0.50                        fminnmv	s0, p7, z31.s
+# CHECK-NEXT:  1      2     0.50                        fminp	z0.h, p0/m, z0.h, z1.h
+# CHECK-NEXT:  1      2     0.50                        fminp	z29.s, p3/m, z29.s, z30.s
+# CHECK-NEXT:  1      2     0.50                        fminp	z31.d, p7/m, z31.d, z30.d
+# CHECK-NEXT:  1      4     0.50                        fminv	d0, p7, z31.d
+# CHECK-NEXT:  1      8     0.50                        fminv	h0, p7, z31.h
+# CHECK-NEXT:  1      6     0.50                        fminv	s0, p7, z31.s
+# CHECK-NEXT:  1      4     0.50                        fmla	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fmla	z0.d, z1.d, z7.d[1]
+# CHECK-NEXT:  1      4     0.50                        fmla	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fmla	z0.h, z1.h, z7.h[7]
+# CHECK-NEXT:  1      4     0.50                        fmla	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        fmla	z0.s, z1.s, z7.s[3]
+# CHECK-NEXT:  1      5     0.50                        fmlalb	z0.s, z1.h, z7.h[0]
+# CHECK-NEXT:  1      5     0.50                        fmlalb	z29.s, z30.h, z31.h
+# CHECK-NEXT:  1      5     0.50                        fmlalb	z30.s, z31.h, z7.h[7]
+# CHECK-NEXT:  1      5     0.50                        fmlalt	z0.s, z1.h, z7.h[0]
+# CHECK-NEXT:  1      5     0.50                        fmlalt	z29.s, z30.h, z31.h
+# CHECK-NEXT:  1      5     0.50                        fmlalt	z30.s, z31.h, z7.h[7]
+# CHECK-NEXT:  1      4     0.50                        fmls	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fmls	z0.d, z1.d, z7.d[1]
+# CHECK-NEXT:  1      4     0.50                        fmls	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fmls	z0.h, z1.h, z7.h[7]
+# CHECK-NEXT:  1      4     0.50                        fmls	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        fmls	z0.s, z1.s, z7.s[3]
+# CHECK-NEXT:  1      5     0.50                        fmlslb	z0.s, z1.h, z7.h[0]
+# CHECK-NEXT:  1      5     0.50                        fmlslb	z29.s, z30.h, z31.h
+# CHECK-NEXT:  1      5     0.50                        fmlslb	z30.s, z31.h, z7.h[7]
+# CHECK-NEXT:  1      5     0.50                        fmlslt	z0.s, z1.h, z7.h[0]
+# CHECK-NEXT:  1      5     0.50                        fmlslt	z29.s, z30.h, z31.h
+# CHECK-NEXT:  1      5     0.50                        fmlslt	z30.s, z31.h, z7.h[7]
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.d, #-10.00000000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.d, #0.12500000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.d, p0/m, #-10.00000000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.d, p0/m, #0.12500000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.h, #-0.12500000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.h, p0/m, #-0.12500000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.s, #-0.12500000
+# CHECK-NEXT:  1      2     0.50                        fmov	z0.s, p0/m, #-0.12500000
+# CHECK-NEXT:  1      4     0.50                        fmsb	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fmsb	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fmsb	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.d, p0/m, z0.d, #0.5
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.d, z0.d, z0.d[0]
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.h, p0/m, z0.h, #0.5
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.h, z0.h, z0.h[0]
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.s, p0/m, z0.s, #0.5
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.s, z0.s, z0.s[0]
+# CHECK-NEXT:  1      3     0.50                        fmul	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        fmul	z31.d, p7/m, z31.d, #2.0
+# CHECK-NEXT:  1      3     0.50                        fmul	z31.d, z31.d, z15.d[1]
+# CHECK-NEXT:  1      3     0.50                        fmul	z31.h, p7/m, z31.h, #2.0
+# CHECK-NEXT:  1      3     0.50                        fmul	z31.h, z31.h, z7.h[7]
+# CHECK-NEXT:  1      3     0.50                        fmul	z31.s, p7/m, z31.s, #2.0
+# CHECK-NEXT:  1      3     0.50                        fmul	z31.s, z31.s, z7.s[3]
+# CHECK-NEXT:  1      3     0.50                        fmulx	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      3     0.50                        fmulx	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      3     0.50                        fmulx	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fneg	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        fneg	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        fneg	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      4     0.50                        fnmad	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fnmad	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fnmad	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        fnmla	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fnmla	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fnmla	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        fnmls	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fnmls	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fnmls	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        fnmsb	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        fnmsb	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        fnmsb	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        frecpe	z0.d, z31.d
+# CHECK-NEXT:  1      6     0.50                        frecpe	z0.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        frecpe	z0.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        frecps	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        frecps	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        frecps	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        frecpx	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      6     0.50                        frecpx	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      4     0.50                        frecpx	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frinta	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frinta	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frinta	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frinti	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frinti	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frinti	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frintm	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frintm	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frintm	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frintn	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frintn	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frintn	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frintp	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frintp	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frintp	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frintx	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frintx	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frintx	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frintz	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      3     0.50                        frintz	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      3     0.50                        frintz	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     0.50                        frsqrte	z0.d, z31.d
+# CHECK-NEXT:  1      6     0.50                        frsqrte	z0.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        frsqrte	z0.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        frsqrts	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        frsqrts	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        frsqrts	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        fscale	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      3     0.50                        fscale	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      3     0.50                        fscale	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      13    2.00                        fsqrt	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      12    8.00                        fsqrt	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      11    4.00                        fsqrt	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.d, p0/m, z0.d, #0.5
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.h, p0/m, z0.h, #0.5
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.s, p0/m, z0.s, #0.5
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fsub	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fsub	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fsub	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fsub	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      2     0.50                        fsubr	z0.d, p0/m, z0.d, #0.5
+# CHECK-NEXT:  1      2     0.50                        fsubr	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        fsubr	z0.h, p0/m, z0.h, #0.5
+# CHECK-NEXT:  1      2     0.50                        fsubr	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        fsubr	z0.s, p0/m, z0.s, #0.5
+# CHECK-NEXT:  1      2     0.50                        fsubr	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        fsubr	z31.d, p7/m, z31.d, #1.0
+# CHECK-NEXT:  1      2     0.50                        fsubr	z31.h, p7/m, z31.h, #1.0
+# CHECK-NEXT:  1      2     0.50                        fsubr	z31.s, p7/m, z31.s, #1.0
+# CHECK-NEXT:  1      4     0.50                        ftmad	z0.d, z0.d, z31.d, #7
+# CHECK-NEXT:  1      4     0.50                        ftmad	z0.h, z0.h, z31.h, #7
+# CHECK-NEXT:  1      4     0.50                        ftmad	z0.s, z0.s, z31.s, #7
+# CHECK-NEXT:  1      3     0.50                        ftsmul	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      3     0.50                        ftsmul	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      3     0.50                        ftsmul	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      3     0.50                        ftssel	z0.d, z1.d, z31.d
+# CHECK-NEXT:  1      3     0.50                        ftssel	z0.h, z1.h, z31.h
+# CHECK-NEXT:  1      3     0.50                        ftssel	z0.s, z1.s, z31.s
+# CHECK-NEXT:  1      2     0.50                        histcnt	z0.s, p0/z, z1.s, z2.s
+# CHECK-NEXT:  1      2     0.50                        histcnt	z29.d, p7/z, z30.d, z31.d
+# CHECK-NEXT:  1      2     0.50                        histseg	z0.b, z1.b, z31.b
+# CHECK-NEXT:  1      1     0.13                        incb	x0
+# CHECK-NEXT:  1      1     0.13                        incb	x0, #14
+# CHECK-NEXT:  1      1     0.13                        incb	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        incb	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        incb	x0, vl1
+# CHECK-NEXT:  1      1     0.13                        incd	x0
+# CHECK-NEXT:  1      1     0.13                        incd	x0, #14
+# CHECK-NEXT:  1      1     0.13                        incd	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        incd	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        incd	x0, vl1
+# CHECK-NEXT:  1      2     0.50                        incd	z0.d
+# CHECK-NEXT:  1      2     0.50                        incd	z0.d, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        inch	x0
+# CHECK-NEXT:  1      1     0.13                        inch	x0, #14
+# CHECK-NEXT:  1      1     0.13                        inch	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        inch	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        inch	x0, vl1
+# CHECK-NEXT:  1      2     0.50                        inch	z0.h
+# CHECK-NEXT:  1      2     0.50                        inch	z0.h, all, mul #16
+# CHECK-NEXT:  1      2     0.50                        incp	x0, p0.b
+# CHECK-NEXT:  1      2     0.50                        incp	x0, p0.d
+# CHECK-NEXT:  1      2     0.50                        incp	x0, p0.h
+# CHECK-NEXT:  1      2     0.50                        incp	x0, p0.s
+# CHECK-NEXT:  1      2     0.50                        incp	xzr, p15.b
+# CHECK-NEXT:  1      2     0.50                        incp	xzr, p15.d
+# CHECK-NEXT:  1      2     0.50                        incp	xzr, p15.h
+# CHECK-NEXT:  1      2     0.50                        incp	xzr, p15.s
+# CHECK-NEXT:  1      7     1.00                        incp	z31.d, p15.d
+# CHECK-NEXT:  1      7     1.00                        incp	z31.h, p15.h
+# CHECK-NEXT:  1      7     1.00                        incp	z31.s, p15.s
+# CHECK-NEXT:  1      1     0.13                        incw	x0
+# CHECK-NEXT:  1      1     0.13                        incw	x0, #14
+# CHECK-NEXT:  1      1     0.13                        incw	x0, all, mul #16
+# CHECK-NEXT:  1      1     0.13                        incw	x0, pow2
+# CHECK-NEXT:  1      1     0.13                        incw	x0, vl1
+# CHECK-NEXT:  1      2     0.50                        incw	z0.s
+# CHECK-NEXT:  1      2     0.50                        incw	z0.s, all, mul #16
+# CHECK-NEXT:  1      4     0.50                        index	z0.b, #0, #0
+# CHECK-NEXT:  1      4     0.50                        index	z0.d, #0, #0
+# CHECK-NEXT:  1      4     0.50                        index	z0.h, #0, #0
+# CHECK-NEXT:  1      7     1.00                        index	z0.h, w0, w0
+# CHECK-NEXT:  1      4     0.50                        index	z0.s, #0, #0
+# CHECK-NEXT:  1      7     1.00                        index	z21.b, w10, w21
+# CHECK-NEXT:  1      7     1.00                        index	z21.d, x10, x21
+# CHECK-NEXT:  1      7     1.00                        index	z21.s, w10, w21
+# CHECK-NEXT:  1      7     1.00                        index	z23.b, #13, w8
+# CHECK-NEXT:  1      7     1.00                        index	z23.b, w13, #8
+# CHECK-NEXT:  1      7     1.00                        index	z23.d, #13, x8
+# CHECK-NEXT:  1      7     1.00                        index	z23.d, x13, #8
+# CHECK-NEXT:  1      7     1.00                        index	z23.h, #13, w8
+# CHECK-NEXT:  1      7     1.00                        index	z23.h, w13, #8
+# CHECK-NEXT:  1      7     1.00                        index	z23.s, #13, w8
+# CHECK-NEXT:  1      7     1.00                        index	z23.s, w13, #8
+# CHECK-NEXT:  1      4     0.50                        index	z31.b, #-1, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.b, #-1, wzr
+# CHECK-NEXT:  1      7     1.00                        index	z31.b, wzr, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.b, wzr, wzr
+# CHECK-NEXT:  1      4     0.50                        index	z31.d, #-1, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.d, #-1, xzr
+# CHECK-NEXT:  1      7     1.00                        index	z31.d, xzr, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.d, xzr, xzr
+# CHECK-NEXT:  1      4     0.50                        index	z31.h, #-1, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.h, #-1, wzr
+# CHECK-NEXT:  1      7     1.00                        index	z31.h, wzr, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.h, wzr, wzr
+# CHECK-NEXT:  1      4     0.50                        index	z31.s, #-1, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.s, #-1, wzr
+# CHECK-NEXT:  1      7     1.00                        index	z31.s, wzr, #-1
+# CHECK-NEXT:  1      7     1.00                        index	z31.s, wzr, wzr
+# CHECK-NEXT:  1      5     1.00                        insr	z0.b, w0
+# CHECK-NEXT:  1      5     1.00                        insr	z0.d, x0
+# CHECK-NEXT:  1      5     1.00                        insr	z0.h, w0
+# CHECK-NEXT:  1      5     1.00                        insr	z0.s, w0
+# CHECK-NEXT:  1      2     0.50                        insr	z31.b, b31
+# CHECK-NEXT:  1      5     1.00                        insr	z31.b, wzr
+# CHECK-NEXT:  1      2     0.50                        insr	z31.d, d31
+# CHECK-NEXT:  1      5     1.00                        insr	z31.d, xzr
+# CHECK-NEXT:  1      2     0.50                        insr	z31.h, h31
+# CHECK-NEXT:  1      5     1.00                        insr	z31.h, wzr
+# CHECK-NEXT:  1      2     0.50                        insr	z31.s, s31
+# CHECK-NEXT:  1      5     1.00                        insr	z31.s, wzr
+# CHECK-NEXT:  1      3     1.00                        lasta	b0, p7, z31.b
+# CHECK-NEXT:  1      3     1.00                        lasta	d0, p7, z31.d
+# CHECK-NEXT:  1      3     1.00                        lasta	h0, p7, z31.h
+# CHECK-NEXT:  1      3     1.00                        lasta	s0, p7, z31.s
+# CHECK-NEXT:  1      5     1.00                        lasta	w0, p7, z31.b
+# CHECK-NEXT:  1      5     1.00                        lasta	w0, p7, z31.h
+# CHECK-NEXT:  1      5     1.00                        lasta	w0, p7, z31.s
+# CHECK-NEXT:  1      5     1.00                        lasta	x0, p7, z31.d
+# CHECK-NEXT:  1      3     1.00                        lastb	b0, p7, z31.b
+# CHECK-NEXT:  1      3     1.00                        lastb	d0, p7, z31.d
+# CHECK-NEXT:  1      3     1.00                        lastb	h0, p7, z31.h
+# CHECK-NEXT:  1      3     1.00                        lastb	s0, p7, z31.s
+# CHECK-NEXT:  1      5     1.00                        lastb	w0, p7, z31.b
+# CHECK-NEXT:  1      5     1.00                        lastb	w0, p7, z31.h
+# CHECK-NEXT:  1      5     1.00                        lastb	w0, p7, z31.s
+# CHECK-NEXT:  1      5     1.00                        lastb	x0, p7, z31.d
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z0.b }, p0/z, [sp, x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z0.b }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z0.b }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z21.b }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z21.h }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z21.s }, p5/z, [x10, x21]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z23.d }, p3/z, [x13, x8]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z31.b }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z31.d }, p7/z, [z31.d, #31]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z31.h }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1b	{ z31.s }, p7/z, [z31.s, #31]
+# CHECK-NEXT:  1      6     0.25    *                   ld1b	{ z5.h }, p3/z, [x17, x16]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z0.d }, p0/z, [x0, z0.d, sxtw #3]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z0.d }, p0/z, [x0, z0.d, uxtw #3]
+# CHECK-NEXT:  1      6     0.25    *                   ld1d	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *                   ld1d	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1d	{ z23.d }, p3/z, [sp, x8, lsl #3]
+# CHECK-NEXT:  1      6     0.25    *                   ld1d	{ z23.d }, p3/z, [x13, x8, lsl #3]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z23.d }, p3/z, [x13, z8.d, lsl #3]
+# CHECK-NEXT:  1      6     0.25    *                   ld1d	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1d	{ z31.d }, p7/z, [z31.d, #248]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z0.d }, p0/z, [x0, z0.d, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z0.d }, p0/z, [x0, z0.d, uxtw #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z21.h }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z21.s }, p5/z, [x10, x21, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z23.d }, p3/z, [x13, x8, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z23.d }, p3/z, [x13, z8.d, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z31.d }, p7/z, [z31.d, #62]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z31.h }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z31.s }, p7/z, [sp, z31.s, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z31.s }, p7/z, [sp, z31.s, uxtw #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1h	{ z31.s }, p7/z, [z31.s, #62]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z5.h }, p3/z, [sp, x16, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1h	{ z5.h }, p3/z, [x17, x16, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z0.b }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z31.b }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z31.d }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z31.h }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rb	{ z31.s }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rd	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rd	{ z31.d }, p7/z, [sp, #504]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rh	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rh	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rh	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rh	{ z31.d }, p7/z, [sp, #126]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rh	{ z31.h }, p7/z, [sp, #126]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rh	{ z31.s }, p7/z, [sp, #126]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqb	{ z0.b }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqb	{ z0.b }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqb	{ z21.b }, p5/z, [x10, #112]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqb	{ z23.b }, p3/z, [x13, #-128]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqb	{ z31.b }, p7/z, [sp, #-16]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqd	{ z0.d }, p0/z, [x0, x0, lsl #3]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqd	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqd	{ z23.d }, p3/z, [x13, #-128]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqd	{ z23.d }, p3/z, [x13, #112]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqd	{ z31.d }, p7/z, [sp, #-16]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqh	{ z0.h }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqh	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqh	{ z23.h }, p3/z, [x13, #-128]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqh	{ z23.h }, p3/z, [x13, #112]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqh	{ z31.h }, p7/z, [sp, #-16]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqw	{ z0.s }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqw	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqw	{ z23.s }, p3/z, [x13, #-128]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqw	{ z23.s }, p3/z, [x13, #112]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rqw	{ z31.s }, p7/z, [sp, #-16]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsb	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsb	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsb	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsb	{ z31.d }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsb	{ z31.h }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsb	{ z31.s }, p7/z, [sp, #63]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsh	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsh	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsh	{ z31.d }, p7/z, [sp, #126]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsh	{ z31.s }, p7/z, [sp, #126]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsw	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rsw	{ z31.d }, p7/z, [sp, #252]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rw	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rw	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rw	{ z31.d }, p7/z, [sp, #252]
+# CHECK-NEXT:  1      6     0.25    *                   ld1rw	{ z31.s }, p7/z, [sp, #252]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z0.h }, p0/z, [sp, x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z0.h }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z21.h }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z21.s }, p5/z, [x10, x21]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z23.d }, p3/z, [x13, x8]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z31.d }, p7/z, [z31.d, #31]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z31.h }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sb	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sb	{ z31.s }, p7/z, [z31.s, #31]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z0.d }, p0/z, [x0, z0.d, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z0.d }, p0/z, [x0, z0.d, uxtw #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z21.s }, p5/z, [sp, x21, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z21.s }, p5/z, [x10, x21, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z23.d }, p3/z, [x13, x8, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z23.d }, p3/z, [x13, z8.d, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z31.d }, p7/z, [z31.d, #62]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sh	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z31.s }, p7/z, [sp, z31.s, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z31.s }, p7/z, [sp, z31.s, uxtw #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sh	{ z31.s }, p7/z, [z31.s, #62]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z0.d }, p0/z, [x0, z0.d, sxtw #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z0.d }, p0/z, [x0, z0.d, uxtw #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sw	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sw	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sw	{ z23.d }, p3/z, [sp, x8, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sw	{ z23.d }, p3/z, [x13, x8, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z23.d }, p3/z, [x13, z8.d, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1sw	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1sw	{ z31.d }, p7/z, [z31.d, #124]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z0.d }, p0/z, [x0, z0.d, sxtw #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z0.d }, p0/z, [x0, z0.d, uxtw #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z21.s }, p5/z, [sp, x21, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z21.s }, p5/z, [x10, x21, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z23.d }, p3/z, [x13, x8, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z23.d }, p3/z, [x13, z8.d, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z31.d }, p7/z, [z31.d, #124]
+# CHECK-NEXT:  1      6     0.25    *                   ld1w	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z31.s }, p7/z, [sp, z31.s, sxtw #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z31.s }, p7/z, [sp, z31.s, uxtw #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld1w	{ z31.s }, p7/z, [z31.s, #124]
+# CHECK-NEXT:  1      9     0.50    *                   ld2b	{ z0.b, z1.b }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld2b	{ z0.b, z1.b }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld2b	{ z21.b, z22.b }, p5/z, [x10, #10, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld2b	{ z23.b, z24.b }, p3/z, [x13, #-16, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld2b	{ z5.b, z6.b }, p3/z, [x17, x16]
+# CHECK-NEXT:  1      9     0.50    *                   ld2d	{ z0.d, z1.d }, p0/z, [x0, x0, lsl #3]
+# CHECK-NEXT:  1      8     0.50    *                   ld2d	{ z0.d, z1.d }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld2d	{ z21.d, z22.d }, p5/z, [x10, #10, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld2d	{ z23.d, z24.d }, p3/z, [x13, #-16, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld2d	{ z5.d, z6.d }, p3/z, [x17, x16, lsl #3]
+# CHECK-NEXT:  1      9     0.50    *                   ld2h	{ z0.h, z1.h }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      8     0.50    *                   ld2h	{ z0.h, z1.h }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld2h	{ z21.h, z22.h }, p5/z, [x10, #10, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld2h	{ z23.h, z24.h }, p3/z, [x13, #-16, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld2h	{ z5.h, z6.h }, p3/z, [x17, x16, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld2w	{ z0.s, z1.s }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      8     0.50    *                   ld2w	{ z0.s, z1.s }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld2w	{ z21.s, z22.s }, p5/z, [x10, #10, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld2w	{ z23.s, z24.s }, p3/z, [x13, #-16, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld2w	{ z5.s, z6.s }, p3/z, [x17, x16, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *                   ld3b	{ z0.b - z2.b }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld3b	{ z0.b - z2.b }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld3b	{ z21.b - z23.b }, p5/z, [x10, #15, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld3b	{ z23.b - z25.b }, p3/z, [x13, #-24, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld3b	{ z5.b - z7.b }, p3/z, [x17, x16]
+# CHECK-NEXT:  1      9     0.50    *                   ld3d	{ z0.d - z2.d }, p0/z, [x0, x0, lsl #3]
+# CHECK-NEXT:  1      8     0.50    *                   ld3d	{ z0.d - z2.d }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld3d	{ z21.d - z23.d }, p5/z, [x10, #15, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld3d	{ z23.d - z25.d }, p3/z, [x13, #-24, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld3d	{ z5.d - z7.d }, p3/z, [x17, x16, lsl #3]
+# CHECK-NEXT:  1      9     0.50    *                   ld3h	{ z0.h - z2.h }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      8     0.50    *                   ld3h	{ z0.h - z2.h }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld3h	{ z21.h - z23.h }, p5/z, [x10, #15, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld3h	{ z23.h - z25.h }, p3/z, [x13, #-24, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld3h	{ z5.h - z7.h }, p3/z, [x17, x16, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *                   ld3w	{ z0.s - z2.s }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      8     0.50    *                   ld3w	{ z0.s - z2.s }, p0/z, [x0]
+# CHECK-NEXT:  1      8     0.50    *                   ld3w	{ z21.s - z23.s }, p5/z, [x10, #15, mul vl]
+# CHECK-NEXT:  1      8     0.50    *                   ld3w	{ z23.s - z25.s }, p3/z, [x13, #-24, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ld3w	{ z5.s - z7.s }, p3/z, [x17, x16, lsl #2]
+# CHECK-NEXT:  1      11    0.50    *                   ld4b	{ z0.b - z3.b }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      10    0.50    *                   ld4b	{ z0.b - z3.b }, p0/z, [x0]
+# CHECK-NEXT:  1      10    0.50    *                   ld4b	{ z21.b - z24.b }, p5/z, [x10, #20, mul vl]
+# CHECK-NEXT:  1      10    0.50    *                   ld4b	{ z23.b - z26.b }, p3/z, [x13, #-32, mul vl]
+# CHECK-NEXT:  1      11    0.50    *                   ld4b	{ z5.b - z8.b }, p3/z, [x17, x16]
+# CHECK-NEXT:  1      11    0.50    *                   ld4d	{ z0.d - z3.d }, p0/z, [x0, x0, lsl #3]
+# CHECK-NEXT:  1      10    0.50    *                   ld4d	{ z0.d - z3.d }, p0/z, [x0]
+# CHECK-NEXT:  1      10    0.50    *                   ld4d	{ z21.d - z24.d }, p5/z, [x10, #20, mul vl]
+# CHECK-NEXT:  1      10    0.50    *                   ld4d	{ z23.d - z26.d }, p3/z, [x13, #-32, mul vl]
+# CHECK-NEXT:  1      11    0.50    *                   ld4d	{ z5.d - z8.d }, p3/z, [x17, x16, lsl #3]
+# CHECK-NEXT:  1      11    0.50    *                   ld4h	{ z0.h - z3.h }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      10    0.50    *                   ld4h	{ z0.h - z3.h }, p0/z, [x0]
+# CHECK-NEXT:  1      10    0.50    *                   ld4h	{ z21.h - z24.h }, p5/z, [x10, #20, mul vl]
+# CHECK-NEXT:  1      10    0.50    *                   ld4h	{ z23.h - z26.h }, p3/z, [x13, #-32, mul vl]
+# CHECK-NEXT:  1      11    0.50    *                   ld4h	{ z5.h - z8.h }, p3/z, [x17, x16, lsl #1]
+# CHECK-NEXT:  1      11    0.50    *                   ld4w	{ z0.s - z3.s }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      10    0.50    *                   ld4w	{ z0.s - z3.s }, p0/z, [x0]
+# CHECK-NEXT:  1      10    0.50    *                   ld4w	{ z21.s - z24.s }, p5/z, [x10, #20, mul vl]
+# CHECK-NEXT:  1      10    0.50    *                   ld4w	{ z23.s - z26.s }, p3/z, [x13, #-32, mul vl]
+# CHECK-NEXT:  1      11    0.50    *                   ld4w	{ z5.s - z8.s }, p3/z, [x17, x16, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z0.d }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z0.h }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z0.s }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z31.b }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z31.d }, p7/z, [z31.d, #31]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z31.h }, p7/z, [sp]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1b	{ z31.s }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1b	{ z31.s }, p7/z, [z31.s, #31]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1d	{ z0.d }, p0/z, [x0, x0, lsl #3]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z0.d }, p0/z, [x0, z0.d, sxtw #3]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z0.d }, p0/z, [x0, z0.d, uxtw #3]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z23.d }, p3/z, [x13, z8.d, lsl #3]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1d	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1d	{ z31.d }, p7/z, [z31.d, #248]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1h	{ z0.d }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z0.d }, p0/z, [x0, z0.d, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z0.d }, p0/z, [x0, z0.d, uxtw #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1h	{ z0.h }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1h	{ z0.s }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z23.d }, p3/z, [x13, z8.d, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1h	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z31.d }, p7/z, [z31.d, #62]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1h	{ z31.h }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z31.s }, p7/z, [sp, z31.s, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z31.s }, p7/z, [sp, z31.s, uxtw #1]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1h	{ z31.s }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1h	{ z31.s }, p7/z, [z31.s, #62]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sb	{ z0.d }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sb	{ z0.h }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sb	{ z0.s }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sb	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z31.d }, p7/z, [z31.d, #31]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sb	{ z31.h }, p7/z, [sp]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sb	{ z31.s }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sb	{ z31.s }, p7/z, [z31.s, #31]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sh	{ z0.d }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z0.d }, p0/z, [x0, z0.d, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z0.d }, p0/z, [x0, z0.d, uxtw #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sh	{ z0.s }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z23.d }, p3/z, [x13, z8.d, lsl #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sh	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z31.d }, p7/z, [z31.d, #62]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z31.s }, p7/z, [sp, z31.s, sxtw #1]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z31.s }, p7/z, [sp, z31.s, uxtw #1]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sh	{ z31.s }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sh	{ z31.s }, p7/z, [z31.s, #62]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sw	{ z0.d }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z0.d }, p0/z, [x0, z0.d, sxtw #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z0.d }, p0/z, [x0, z0.d, uxtw #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z23.d }, p3/z, [x13, z8.d, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1sw	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1sw	{ z31.d }, p7/z, [z31.d, #124]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1w	{ z0.d }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z0.d }, p0/z, [x0, z0.d, sxtw #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z0.d }, p0/z, [x0, z0.d, uxtw #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z0.d }, p0/z, [z0.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1w	{ z0.s }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z0.s }, p0/z, [x0, z0.s, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z0.s }, p0/z, [x0, z0.s, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z0.s }, p0/z, [z0.s]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z21.d }, p5/z, [x10, z21.d, sxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z21.d }, p5/z, [x10, z21.d, uxtw]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z23.d }, p3/z, [x13, z8.d, lsl #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z31.d }, p7/z, [sp, z31.d]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1w	{ z31.d }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z31.d }, p7/z, [z31.d, #124]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z31.s }, p7/z, [sp, z31.s, sxtw #2]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z31.s }, p7/z, [sp, z31.s, uxtw #2]
+# CHECK-NEXT:  1      6     0.25    *             U     ldff1w	{ z31.s }, p7/z, [sp]
+# CHECK-NEXT:  1      9     0.50    *             U     ldff1w	{ z31.s }, p7/z, [z31.s, #124]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z0.b }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z21.b }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z21.h }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z31.b }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z31.h }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1b	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1d	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1d	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1d	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z21.h }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z31.h }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1h	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z21.h }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z31.h }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sb	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sh	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sh	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sh	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sh	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sh	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sh	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sw	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sw	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1sw	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1w	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1w	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1w	{ z21.d }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1w	{ z21.s }, p5/z, [x10, #5, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1w	{ z31.d }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *             U     ldnf1w	{ z31.s }, p7/z, [sp, #-1, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1b	{ z0.b }, p0/z, [x0, x0]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1b	{ z0.b }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1b	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1b	{ z0.s }, p0/z, [z1.s]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1b	{ z21.b }, p5/z, [x10, #7, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1b	{ z23.b }, p3/z, [x13, #-8, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1b	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1b	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1b	{ z31.s }, p7/z, [z31.s, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1b	{ z31.s }, p7/z, [z31.s]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1d	{ z0.d }, p0/z, [x0, x0, lsl #3]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1d	{ z0.d }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1d	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1d	{ z21.d }, p5/z, [x10, #7, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1d	{ z23.d }, p3/z, [x13, #-8, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1d	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1d	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1h	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1h	{ z0.h }, p0/z, [x0, x0, lsl #1]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1h	{ z0.h }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1h	{ z0.s }, p0/z, [z1.s]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1h	{ z21.h }, p5/z, [x10, #7, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1h	{ z23.h }, p3/z, [x13, #-8, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1h	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1h	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1h	{ z31.s }, p7/z, [z31.s, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1h	{ z31.s }, p7/z, [z31.s]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sb	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sb	{ z0.s }, p0/z, [z1.s]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sb	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sb	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sb	{ z31.s }, p7/z, [z31.s, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sb	{ z31.s }, p7/z, [z31.s]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sh	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sh	{ z0.s }, p0/z, [z1.s]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sh	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sh	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sh	{ z31.s }, p7/z, [z31.s, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sh	{ z31.s }, p7/z, [z31.s]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sw	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sw	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1sw	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1w	{ z0.d }, p0/z, [z1.d]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1w	{ z0.s }, p0/z, [x0, x0, lsl #2]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1w	{ z0.s }, p0/z, [x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1w	{ z0.s }, p0/z, [z1.s]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1w	{ z21.s }, p5/z, [x10, #7, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldnt1w	{ z23.s }, p3/z, [x13, #-8, mul vl]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1w	{ z31.d }, p7/z, [z31.d, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1w	{ z31.d }, p7/z, [z31.d]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1w	{ z31.s }, p7/z, [z31.s, x0]
+# CHECK-NEXT:  1      9     0.50    *                   ldnt1w	{ z31.s }, p7/z, [z31.s]
+# CHECK-NEXT:  1      6     0.50    *                   ldr	p0, [x0]
+# CHECK-NEXT:  1      6     0.50    *                   ldr	p5, [x10, #255, mul vl]
+# CHECK-NEXT:  1      6     0.50    *                   ldr	p7, [x13, #-256, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldr	z0, [x0]
+# CHECK-NEXT:  1      6     0.25    *                   ldr	z23, [x13, #255, mul vl]
+# CHECK-NEXT:  1      6     0.25    *                   ldr	z31, [sp, #-256, mul vl]
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.b, p0/m, z0.b, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.b, p0/m, z0.b, z1.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.b, z0.b, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.b, z1.b, z2.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.d, p0/m, z0.d, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.d, z0.d, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.h, p0/m, z0.h, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.h, p0/m, z0.h, z1.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.h, z0.h, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.h, z1.h, z2.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.s, p0/m, z0.s, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.s, p0/m, z0.s, z1.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.s, z0.s, #0
+# CHECK-NEXT:  1      2     0.50                        lsl	z0.s, z1.s, z2.d
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.b, p0/m, z31.b, #7
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.b, z31.b, #7
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.d, p0/m, z31.d, #63
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.d, z31.d, #63
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.h, p0/m, z31.h, #15
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.h, z31.h, #15
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.s, p0/m, z31.s, #31
+# CHECK-NEXT:  1      2     0.50                        lsl	z31.s, z31.s, #31
+# CHECK-NEXT:  1      2     0.50                        lslr	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        lslr	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        lslr	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        lslr	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.b, p0/m, z0.b, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.b, p0/m, z0.b, z1.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.b, z0.b, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.b, z1.b, z2.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.d, p0/m, z0.d, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.d, z0.d, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.h, p0/m, z0.h, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.h, p0/m, z0.h, z1.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.h, z0.h, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.h, z1.h, z2.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.s, p0/m, z0.s, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.s, p0/m, z0.s, z1.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.s, z0.s, #1
+# CHECK-NEXT:  1      2     0.50                        lsr	z0.s, z1.s, z2.d
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.b, p0/m, z31.b, #8
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.b, z31.b, #8
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.d, p0/m, z31.d, #64
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.d, z31.d, #64
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.h, p0/m, z31.h, #16
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.h, z31.h, #16
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.s, p0/m, z31.s, #32
+# CHECK-NEXT:  1      2     0.50                        lsr	z31.s, z31.s, #32
+# CHECK-NEXT:  1      2     0.50                        lsrr	z0.b, p0/m, z0.b, z0.b
+# CHECK-NEXT:  1      2     0.50                        lsrr	z0.d, p0/m, z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        lsrr	z0.h, p0/m, z0.h, z0.h
+# CHECK-NEXT:  1      2     0.50                        lsrr	z0.s, p0/m, z0.s, z0.s
+# CHECK-NEXT:  1      4     0.50                        mad	z0.b, p7/m, z1.b, z31.b
+# CHECK-NEXT:  1      4     0.50                        mad	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        mad	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        mad	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      3     1.00                        match	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        match	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      2     1.00                        match	p15.b, p7/z, z30.b, z31.b
+# CHECK-NEXT:  1      2     1.00                        match	p15.h, p7/z, z30.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        mla	z0.b, p7/m, z1.b, z31.b
+# CHECK-NEXT:  1      4     0.50                        mla	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        mla	z0.d, z1.d, z7.d[1]
+# CHECK-NEXT:  1      4     0.50                        mla	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        mla	z0.h, z1.h, z7.h[7]
+# CHECK-NEXT:  1      4     0.50                        mla	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        mla	z0.s, z1.s, z7.s[3]
+# CHECK-NEXT:  1      4     0.50                        mls	z0.b, p7/m, z1.b, z31.b
+# CHECK-NEXT:  1      4     0.50                        mls	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        mls	z0.d, z1.d, z7.d[1]
+# CHECK-NEXT:  1      4     0.50                        mls	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        mls	z0.h, z1.h, z7.h[7]
+# CHECK-NEXT:  1      4     0.50                        mls	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        mls	z0.s, z1.s, z7.s[3]
+# CHECK-NEXT:  1      2     0.50                        mov	p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        mov	p0.b, p0/m, p0.b
+# CHECK-NEXT:  1      2     0.50                        mov	p0.b, p0/z, p0.b
+# CHECK-NEXT:  1      2     0.50                        mov	p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        mov	p15.b, p15/m, p15.b
+# CHECK-NEXT:  1      2     0.50                        mov	p15.b, p15/z, p15.b
+# CHECK-NEXT:  1      2     0.50                        mov	z0.b, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z0.b, b0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.b, p0/m, b0
+# CHECK-NEXT:  1      5     1.00                        mov	z0.b, p0/m, w0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.b, p0/z, #127
+# CHECK-NEXT:  1      3     1.00                        mov	z0.b, w0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, #0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, #0xe0000000000003ff
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, #0xffffffffffff7fff
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, #32768
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, d0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, p0/m, d0
+# CHECK-NEXT:  1      5     1.00                        mov	z0.d, p0/m, x0
+# CHECK-NEXT:  1      3     1.00                        mov	z0.d, x0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, #-256
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, #0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, #32767
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, h0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, p0/m, h0
+# CHECK-NEXT:  1      5     1.00                        mov	z0.h, p0/m, w0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.h, p0/z, #32512
+# CHECK-NEXT:  1      3     1.00                        mov	z0.h, w0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.q, q0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.s, #0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.s, #0xffff7fff
+# CHECK-NEXT:  1      2     0.50                        mov	z0.s, #32768
+# CHECK-NEXT:  1      2     0.50                        mov	z0.s, p0/m, s0
+# CHECK-NEXT:  1      5     1.00                        mov	z0.s, p0/m, w0
+# CHECK-NEXT:  1      2     0.50                        mov	z0.s, s0
+# CHECK-NEXT:  1      3     1.00                        mov	z0.s, w0
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, p0/z, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, p0/z, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, p0/z, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, p0/z, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, p15/m, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.d, p15/m, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, p0/z, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, p0/z, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, p0/z, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, p0/z, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, p15/m, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.h, p15/m, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, p0/z, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, p0/z, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, p0/z, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, p0/z, #32512
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, p15/m, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z21.s, p15/m, #-32768
+# CHECK-NEXT:  1      2     0.50                        mov	z31.b, p15/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        mov	z31.b, p7/m, b31
+# CHECK-NEXT:  1      2     0.50                        movprfx	z31, z6
+# CHECK-NEXT:  1      5     1.00                        mov	z31.b, p7/m, wsp
+# CHECK-NEXT:  1      3     1.00                        mov	z31.b, wsp
+# CHECK-NEXT:  1      2     0.50                        mov	z31.b, z31.b[63]
+# CHECK-NEXT:  1      2     0.50                        mov	z31.d, p15/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        mov	z31.d, p7/m, d31
+# CHECK-NEXT:  1      2     0.50                        movprfx	z31.d, p7/z, z6.d
+# CHECK-NEXT:  1      5     1.00                        mov	z31.d, p7/m, sp
+# CHECK-NEXT:  1      3     1.00                        mov	z31.d, sp
+# CHECK-NEXT:  1      2     0.50                        mov	z31.d, z0.d
+# CHECK-NEXT:  1      2     0.50                        mov	z31.d, z31.d[7]
+# CHECK-NEXT:  1      2     0.50                        mov	z31.h, p15/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        mov	z31.h, p7/m, h31
+# CHECK-NEXT:  1      5     1.00                        mov	z31.h, p7/m, wsp
+# CHECK-NEXT:  1      3     1.00                        mov	z31.h, wsp
+# CHECK-NEXT:  1      2     0.50                        mov	z31.h, z31.h[31]
+# CHECK-NEXT:  1      2     0.50                        mov	z31.s, p15/m, z31.s
+# CHECK-NEXT:  1      2     0.50                        mov	z31.s, p7/m, s31
+# CHECK-NEXT:  1      5     1.00                        mov	z31.s, p7/m, wsp
+# CHECK-NEXT:  1      3     1.00                        mov	z31.s, wsp
+# CHECK-NEXT:  1      2     0.50                        mov	z31.s, z31.s[15]
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, #-1
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, p0/z, #-1
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, p0/z, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, p0/z, #127
+# CHECK-NEXT:  1      2     0.50                        mov	z5.b, p15/m, #-128
+# CHECK-NEXT:  1      2     0.50                        mov	z5.d, #-6
+# CHECK-NEXT:  1      2     0.50                        mov	z5.h, #-6
+# CHECK-NEXT:  1      2     0.50                        mov	z5.q, z17.q[3]
+# CHECK-NEXT:  1      2     0.50                        mov	z5.s, #-6
+# CHECK-NEXT:  1      2     0.50                        movs	p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        movs	p0.b, p0/z, p0.b
+# CHECK-NEXT:  1      2     0.50                        movs	p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        movs	p15.b, p15/z, p15.b
+# CHECK-NEXT:  1      1     0.13                  U     mrs	x3, ID_AA64ZFR0_EL1
+# CHECK-NEXT:  1      1     0.13                  U     mrs	x3, ZCR_EL1
+# CHECK-NEXT:  1      1     0.13                  U     mrs	x3, ZCR_EL12
+# CHECK-NEXT:  1      1     0.13                  U     mrs	x3, ZCR_EL2
+# CHECK-NEXT:  1      1     0.13                  U     mrs	x3, ZCR_EL3
+# CHECK-NEXT:  1      4     0.50                        msb	z0.b, p7/m, z1.b, z31.b
+# CHECK-NEXT:  1      4     0.50                        msb	z0.d, p7/m, z1.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        msb	z0.h, p7/m, z1.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        msb	z0.s, p7/m, z1.s, z31.s
+# CHECK-NEXT:  1      1     0.13                  U     msr	ZCR_EL1, x3
+# CHECK-NEXT:  1      1     0.13                  U     msr	ZCR_EL12, x3
+# CHECK-NEXT:  1      1     0.13                  U     msr	ZCR_EL2, x3
+# CHECK-NEXT:  1      1     0.13                  U     msr	ZCR_EL3, x3
+# CHECK-NEXT:  1      4     0.50                        mul	z0.b, p7/m, z0.b, z31.b
+# CHECK-NEXT:  1      4     0.50                        mul	z0.b, z1.b, z2.b
+# CHECK-NEXT:  1      4     0.50                        mul	z0.d, p7/m, z0.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        mul	z0.d, z1.d, z15.d[1]
+# CHECK-NEXT:  1      4     0.50                        mul	z0.h, p7/m, z0.h, z31.h
+# CHECK-NEXT:  1      4     0.50                        mul	z0.h, z1.h, z2.h
+# CHECK-NEXT:  1      4     0.50                        mul	z0.h, z1.h, z7.h[7]
+# CHECK-NEXT:  1      4     0.50                        mul	z0.s, p7/m, z0.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        mul	z0.s, z1.s, z7.s[3]
+# CHECK-NEXT:  1      4     0.50                        mul	z29.s, z30.s, z31.s
+# CHECK-NEXT:  1      4     0.50                        mul	z31.b, z31.b, #-128
+# CHECK-NEXT:  1      4     0.50                        mul	z31.b, z31.b, #127
+# CHECK-NEXT:  1      4     0.50                        mul	z31.d, z31.d, #-128
+# CHECK-NEXT:  1      4     0.50                        mul	z31.d, z31.d, #127
+# CHECK-NEXT:  1      4     0.50                        mul	z31.d, z31.d, z31.d
+# CHECK-NEXT:  1      4     0.50                        mul	z31.h, z31.h, #-128
+# CHECK-NEXT:  1      4     0.50                        mul	z31.h, z31.h, #127
+# CHECK-NEXT:  1      4     0.50                        mul	z31.s, z31.s, #-128
+# CHECK-NEXT:  1      4     0.50                        mul	z31.s, z31.s, #127
+# CHECK-NEXT:  1      2     0.50                        nand	p0.b, p0/z, p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        nand	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        nands	p0.b, p0/z, p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        nands	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        nbsl	z0.d, z0.d, z1.d, z2.d
+# CHECK-NEXT:  1      2     0.50                        neg	z0.b, p0/m, z0.b
+# CHECK-NEXT:  1      2     0.50                        neg	z0.d, p0/m, z0.d
+# CHECK-NEXT:  1      2     0.50                        neg	z0.h, p0/m, z0.h
+# CHECK-NEXT:  1      2     0.50                        neg	z0.s, p0/m, z0.s
+# CHECK-NEXT:  1      2     0.50                        neg	z31.b, p7/m, z31.b
+# CHECK-NEXT:  1      2     0.50                        neg	z31.d, p7/m, z31.d
+# CHECK-NEXT:  1      2     0.50                        neg	z31.h, p7/m, z31.h
+# CHECK-NEXT:  1      2     0.50                        neg	z31.s, p7/m, z31.s
+# CHECK-NEXT:  1      3     1.00                        nmatch	p0.b, p0/z, z0.b, z0.b
+# CHECK-NEXT:  1      3     1.00                        nmatch	p0.h, p0/z, z0.h, z0.h
+# CHECK-NEXT:  1      2     1.00                        nmatch	p15.b, p7/z, z30.b, z31.b
+# CHECK-NEXT:  1      2     1.00                        nmatch	p15.h, p7/z, z30.h, z31.h
+# CHECK-NEXT:  1      2     0.50                        nor	p0.b, p0/z, p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        nor	p15.b, p15/z, p15.b, p15.b
+# CHECK-NEXT:  1      2     0.50                        nors	p0.b, p0/z, p0.b, p0.b
+# CHECK-NEXT:  1      2     0.50                        nors	p15.b, p15/z, p15.b, p15.b
----------------
Asher8118 wrote:

Predicate logical and flag setting instruction groups should have throughput of 1.

https://github.com/llvm/llvm-project/pull/185398


More information about the llvm-commits mailing list