[llvm] [llvm-mca][AArch64] Refactor Neoverse tests to split out common inputs (NFC) (PR #170324)

Cullen Rhodes via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 2 08:39:49 PST 2025


https://github.com/c-rhodes created https://github.com/llvm/llvm-project/pull/170324

For many of these tests the inputs are very similiar with slight divergences, ideally we'd have common sources where we can to avoid subtle differences.

Changes:

- For basic tests there's a relatively large diff between V1 and all other cores because of 24f0901 (#128892) which makes it more complete. I've been thru the entire diff and 99% of the time V1 makes more sense, except for a couple of small changes (might post a separate patch for). Therefore I decided it's best to take V1-basic-instructions.s as the common source.
- Split out FEAT_RCPC_IMMO tests from basic since N1 doesnt have this feature.
- Split out FEAT_MTE tests. V2/V3 also have this feature but were missing tests, so I've added them.

The NEON and SVE tests are also quite substantial and could be made common, but there's also subtle differences that take time to go thru.

>From 4b486d99a69cc180eaa068064dbd7516ea0538b7 Mon Sep 17 00:00:00 2001
From: Cullen Rhodes <cullen.rhodes at arm.com>
Date: Tue, 2 Dec 2025 15:13:57 +0000
Subject: [PATCH] [llvm-mca][AArch64] Refactor Neoverse tests to split out
 common inputs (NFC)

For many of these tests the inputs are very similiar with slight
divergences, we should work to make common sources where we can to avoid
subtle differences.

Changes:

- For basic tests there's a relatively large diff between V1 and all
  other cores because of 24f0901 (#128892) which makes it more complete.
  I've been thru the entire diff and 99% of the time V1 makes more
  sense, except for a couple of small changes (might post a separate
  patch for). Therefore I decided it's best to take
  V1-basic-instructions.s as the common source.
- Split out FEAT_RCPC_IMMO tests from basic since N1 doesnt have this feature.
- Split out FEAT_MTE tests. V2/V3 also have this feature but were
  missing tests, so I've added them.

The NEON and SVE tests are also quite substantial and could be made
common, but there's also subtle differences that take time to go thru.
---
 .../Neoverse/Inputs/basic-instructions.s      | 1440 ++++++++++++++
 .../Neoverse/Inputs/mte-instructions.s        |  105 +
 .../Neoverse/Inputs/rcpc-immo-instructions.s  |   17 +
 .../AArch64/Neoverse/N1-basic-instructions.s  | 1677 +++-------------
 .../AArch64/Neoverse/N2-basic-instructions.s  | 1677 +++-------------
 .../AArch64/Neoverse/N2-mte-instructions.s    |  108 +-
 .../Neoverse/N2-rcpc-immo-instructions.s      |   60 +
 .../AArch64/Neoverse/N3-basic-instructions.s  | 1677 +++-------------
 .../AArch64/Neoverse/N3-mte-instructions.s    |  108 +-
 .../Neoverse/N3-rcpc-immo-instructions.s      |   60 +
 .../AArch64/Neoverse/V1-basic-instructions.s  | 1484 +-------------
 .../Neoverse/V1-rcpc-immo-instructions.s      |   65 +
 .../AArch64/Neoverse/V2-basic-instructions.s  | 1719 +++--------------
 .../AArch64/Neoverse/V2-mte-instructions.s    |  251 +++
 .../Neoverse/V2-rcpc-immo-instructions.s      |   67 +
 .../AArch64/Neoverse/V3-basic-instructions.s  | 1719 +++--------------
 .../AArch64/Neoverse/V3-mte-instructions.s    |  256 +++
 .../Neoverse/V3-rcpc-immo-instructions.s      |   72 +
 .../Neoverse/V3AE-basic-instructions.s        | 1719 +++--------------
 .../Neoverse/V3AE-rcpc-immo-instructions.s    |   70 +
 20 files changed, 3811 insertions(+), 10540 deletions(-)
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/basic-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/mte-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/rcpc-immo-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-rcpc-immo-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-rcpc-immo-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-rcpc-immo-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-mte-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-rcpc-immo-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-mte-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-rcpc-immo-instructions.s
 create mode 100644 llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-rcpc-immo-instructions.s

diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/basic-instructions.s
new file mode 100644
index 0000000000000..b4d4d4b6fd252
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/basic-instructions.s
@@ -0,0 +1,1440 @@
+#------------------------------------------------------------------------------
+# Add/sub (immediate)
+#------------------------------------------------------------------------------
+
+add      w2, w3, #4095
+add      w30, w29, #1, lsl #12
+add      w13, w5, #4095, lsl #12
+add      x5, x7, #1638
+add      w20, wsp, #801
+add      wsp, wsp, #1104
+add      wsp, w30, #4084
+add      x0, x24, #291
+add      x3, x24, #4095, lsl #12
+add      x8, sp, #1074
+add      sp, x29, #3816
+sub      w0, wsp, #4077
+sub      w4, w20, #546, lsl #12
+sub      sp, sp, #288
+sub      wsp, w19, #16
+adds     w13, w23, #291, lsl #12
+cmn      w2, #4095
+adds     w20, wsp, #0
+cmn      x3, #1, lsl #12
+cmp      wsp, #2342
+cmp      sp, #20, lsl #12
+cmp      x30, #4095
+subs     x4, sp, #3822
+cmn      w3, #291, lsl #12
+cmn      wsp, #1365
+cmn      sp, #1092, lsl #12
+mov      x10, #-63432
+
+#------------------------------------------------------------------------------
+# Add-subtract (shifted register)
+#------------------------------------------------------------------------------
+
+add      wsp, wsp, w10
+add      x25, x9, w25, uxtb
+add      w3, w5, w7
+add      wzr, w3, w5
+add      w20, wzr, w4
+add      w4, w6, wzr
+add      w11, w13, w15
+add      w9, w3, wzr, lsl #1
+add      w17, w29, w20, lsl #31
+add      w21, w22, w23, lsr #0
+add      w24, w25, w26, lsr #18
+add      w27, w28, w29, lsr #31
+add      w2, w3, w4, asr #0
+add      w5, w6, w7, asr #21
+add      w8, w9, w10, asr #31
+add      x3, x5, x7
+add      xzr, x3, x5
+add      x20, xzr, x4
+add      x4, x6, xzr
+add      x11, x13, x15
+add      x9, x3, xzr, lsl #10
+add      x17, x29, x20, lsl #3
+add      x21, x22, x23, lsr #0
+add      x24, x25, x26, lsr #18
+add      x27, x28, x29, lsr #63
+add      x2, x3, x4, asr #0
+add      x5, x6, x7, asr #21
+add      x8, x9, x10, asr #63
+adds     w3, w5, w7
+adds     w17, wsp, w25
+adds     x13, x23, w8, uxtb
+cmn      w3, w5
+adds     w20, wzr, w4
+adds     w4, w6, wzr
+adds     w11, w13, w15
+adds     w9, w3, wzr, lsl #1
+adds     w17, w29, w20, lsl #31
+adds     w21, w22, w23, lsr #0
+adds     w24, w25, w26, lsr #18
+adds     w27, w28, w29, lsr #31
+adds     w2, w3, w4, asr #0
+adds     w5, w6, w7, asr #21
+adds     w8, w9, w10, asr #31
+adds     x3, x5, x7
+cmn      x3, x5
+adds     x20, xzr, x4
+adds     x4, x6, xzr
+adds     x11, x13, x15
+adds     x9, x3, xzr, lsl #10
+adds     x17, x29, x20, lsl #3
+adds     x21, x22, x23, lsr #0
+adds     x24, x25, x26, lsr #18
+adds     x27, x28, x29, lsr #63
+adds     x2, x3, x4, asr #0
+adds     x5, x6, x7, asr #21
+adds     x8, x9, x10, asr #63
+sub      w3, w5, w7
+sub      wzr, w3, w5
+sub      w4, w6, wzr
+sub      w11, w13, w15
+sub      w9, w3, wzr, lsl #1
+sub      w17, w29, w20, lsl #31
+sub      w21, w22, w23, lsr #0
+sub      w24, w25, w26, lsr #18
+sub      w27, w28, w29, lsr #31
+sub      w2, w3, w4, asr #0
+sub      w5, w6, w7, asr #21
+sub      w8, w9, w10, asr #31
+sub      x3, x5, x7
+sub      xzr, x3, x5
+sub      x4, x6, xzr
+sub      x11, x13, x15
+sub      x9, x3, xzr, lsl #10
+sub      x17, x29, x20, lsl #3
+sub      x21, x22, x23, lsr #0
+sub      x24, x25, x26, lsr #18
+sub      x27, x28, x29, lsr #63
+sub      x2, x3, x4, asr #0
+sub      x5, x6, x7, asr #21
+sub      x8, x9, x10, asr #63
+sub      w13, wsp, w10
+sub      x16, x2, w19, uxtb
+subs     x13, x15, x14, sxtx #1
+subs     w3, w5, w7
+cmp      w3, w5
+subs     w4, w6, wzr
+subs     w11, w13, w15
+subs     w9, w3, wzr, lsl #1
+subs     w17, w29, w20, lsl #31
+subs     w21, w22, w23, lsr #0
+subs     w24, w25, w26, lsr #18
+subs     w27, w28, w29, lsr #31
+subs     w2, w3, w4, asr #0
+subs     w5, w6, w7, asr #21
+subs     w8, w9, w10, asr #31
+subs     x3, x5, x7
+cmp      x3, x5
+subs     x4, x6, xzr
+subs     x11, x13, x15
+subs     x9, x3, xzr, lsl #10
+subs     x17, x29, x20, lsl #3
+subs     x21, x22, x23, lsr #0
+subs     x24, x25, x26, lsr #18
+subs     x27, x28, x29, lsr #63
+subs     x2, x3, x4, asr #0
+subs     x5, x6, x7, asr #21
+subs     x8, x9, x10, asr #63
+cmn      wzr, w4
+cmn      w5, wzr
+cmn      w6, w7
+cmn      w8, w9, lsl #1
+cmn      w10, w11, lsl #31
+cmn      w12, w13, lsr #0
+cmn      w14, w15, lsr #21
+cmn      w16, w17, lsr #31
+cmn      w18, w19, asr #0
+cmn      w20, w21, asr #22
+cmn      w22, w23, asr #31
+cmn      x0, x3
+cmn      xzr, x4
+cmn      x5, xzr
+cmn      x6, x7
+cmn      x8, x9, lsl #15
+cmn      x10, x11, lsl #3
+cmn      x12, x13, lsr #0
+cmn      x14, x15, lsr #41
+cmn      x16, x17, lsr #63
+cmn      x18, x19, asr #0
+cmn      x20, x21, asr #55
+cmn      x22, x23, asr #63
+cmp      w0, w3
+cmp      wzr, w4
+cmp      w5, wzr
+cmp      w6, w7
+cmp      w8, w9, lsl #1
+cmp      w10, w11, lsl #31
+cmp      w12, w13, lsr #0
+cmp      w14, w15, lsr #21
+cmp      w18, w19, asr #0
+cmp      w20, w21, asr #22
+cmp      w22, w23, asr #31
+cmp      wsp, w26
+cmp      x16, w27, uxtb
+cmp      x0, x3
+cmp      xzr, x4
+cmp      x5, xzr
+cmp      x6, x7
+cmp      x8, x9, lsl #15
+cmp      x10, x11, lsl #3
+cmp      x12, x13, lsr #0
+cmp      x14, x15, lsr #41
+cmp      x16, x17, lsr #63
+cmp      x18, x19, asr #0
+cmp      x20, x21, asr #55
+cmp      x22, x23, asr #63
+cmp      wzr, w0
+cmp      xzr, x0
+mov      sp, x30
+mov      wsp, w20
+mov      x11, sp
+mov      w24, wsp
+
+#------------------------------------------------------------------------------
+# Add-subtract (shifted register)
+#------------------------------------------------------------------------------
+
+adc      w29, w27, w25
+adc      wzr, w3, w4
+adc      w9, wzr, w10
+adc      w20, w0, wzr
+adc      x29, x27, x25
+adc      xzr, x3, x4
+adc      x9, xzr, x10
+adc      x20, x0, xzr
+adcs     w29, w27, w25
+adcs     wzr, w3, w4
+adcs     w9, wzr, w10
+adcs     w20, w0, wzr
+adcs     x29, x27, x25
+adcs     xzr, x3, x4
+adcs     x9, xzr, x10
+adcs     x20, x0, xzr
+sbc      w29, w27, w25
+sbc      wzr, w3, w4
+ngc      w9, w10
+sbc      w20, w0, wzr
+sbc      x29, x27, x25
+sbc      xzr, x3, x4
+ngc      x9, x10
+sbc      x20, x0, xzr
+sbcs     w29, w27, w25
+sbcs     wzr, w3, w4
+ngcs     w9, w10
+sbcs     w20, w0, wzr
+sbcs     x29, x27, x25
+sbcs     xzr, x3, x4
+ngcs     x9, x10
+sbcs     x20, x0, xzr
+ngc      w3, w12
+ngc      wzr, w9
+ngc      w23, wzr
+ngc      x29, x30
+ngc      xzr, x0
+ngc      x0, xzr
+ngcs     w3, w12
+ngcs     wzr, w9
+ngcs     w23, wzr
+ngcs     x29, x30
+ngcs     xzr, x0
+ngcs     x0, xzr
+
+#------------------------------------------------------------------------------
+# Compare and branch (immediate)
+#------------------------------------------------------------------------------
+
+sbfx     x1, x2, #3, #2
+asr      x3, x4, #63
+asr      wzr, wzr, #31
+sbfx     w12, w9, #0, #1
+ubfiz    x4, x5, #52, #11
+ubfx     xzr, x4, #0, #1
+ubfiz    x4, xzr, #1, #6
+lsr      x5, x6, #12
+bfi      x4, x5, #52, #11
+bfxil    xzr, x4, #0, #1
+bfi      x4, xzr, #1, #6
+bfxil    x5, x6, #12, #52
+sxtb     w1, w2
+sxtb     xzr, w3
+sxth     w9, w10
+sxth     x0, w1
+sxtw     x3, w30
+uxtb     w1, w2
+uxth     w9, w10
+ubfx     x3, x30, #0, #32
+asr      w3, w2, #0
+asr      w9, w10, #31
+asr      x20, x21, #63
+asr      w1, wzr, #3
+lsr      w3, w2, #0
+lsr      w9, w10, #31
+lsr      x20, x21, #63
+lsr      wzr, wzr, #3
+lsl      w9, w10, #31
+lsl      x20, x21, #63
+lsl      w1, wzr, #3
+sbfiz    x2, x3, #63, #1
+sbfiz    x9, x10, #5, #59
+sbfiz    w11, w12, #31, #1
+sbfiz    w13, w14, #29, #3
+sbfiz    xzr, xzr, #10, #11
+sbfx     w9, w10, #0, #1
+asr      x2, x3, #63
+asr      x19, x20, #0
+asr      x9, x10, #5
+asr      w9, w10, #0
+asr      w11, w12, #31
+asr      w13, w14, #29
+sbfx     xzr, xzr, #10, #11
+bfi      x2, x3, #63, #1
+bfi      x9, x10, #5, #59
+bfi      w11, w12, #31, #1
+bfi      w13, w14, #29, #3
+bfi      xzr, xzr, #10, #11
+bfxil    w9, w10, #0, #1
+bfxil    x2, x3, #63, #1
+bfxil    x19, x20, #0, #64
+bfxil    x9, x10, #5, #59
+bfxil    w9, w10, #0, #32
+bfxil    w11, w12, #31, #1
+bfxil    w13, w14, #29, #3
+bfxil    xzr, xzr, #10, #11
+lsl      x2, x3, #63
+lsl      x9, x10, #5
+lsl      w11, w12, #31
+lsl      w13, w14, #29
+ubfiz    xzr, xzr, #10, #11
+ubfx     w9, w10, #0, #1
+lsr      x2, x3, #63
+lsr      x19, x20, #0
+lsr      x9, x10, #5
+lsr      w9, w10, #0
+lsr      w11, w12, #31
+lsr      w13, w14, #29
+ubfx     xzr, xzr, #10, #11
+
+#------------------------------------------------------------------------------
+# Compare and branch (immediate)
+#------------------------------------------------------------------------------
+
+cbz      w5, #4
+cbz      x5, #0
+cbnz     x2, #-4
+cbnz     x26, #1048572
+cbz      wzr, #0
+cbnz     xzr, #0
+cbnz     w21, test
+
+#------------------------------------------------------------------------------
+# Conditional branch (immediate)
+#------------------------------------------------------------------------------
+
+b.ne #4
+b.ge #1048572
+b.ge #-4
+
+#------------------------------------------------------------------------------
+# Conditional compare (immediate)
+#------------------------------------------------------------------------------
+
+ccmp w1, #31, #0, eq
+ccmp w3, #0, #15, hs
+ccmp wzr, #15, #13, hs
+ccmp x9, #31, #0, le
+ccmp x3, #0, #15, gt
+ccmp xzr, #5, #7, ne
+ccmn w1, #31, #0, eq
+ccmn w3, #0, #15, hs
+ccmn wzr, #15, #13, hs
+ccmn x9, #31, #0, le
+ccmn x3, #0, #15, gt
+ccmn xzr, #5, #7, ne
+
+#------------------------------------------------------------------------------
+# Conditional compare (register)
+#------------------------------------------------------------------------------
+
+ccmp w1, wzr, #0, eq
+ccmp w3, w0, #15, hs
+ccmp wzr, w15, #13, hs
+ccmp x9, xzr, #0, le
+ccmp x3, x0, #15, gt
+ccmp xzr, x5, #7, ne
+ccmn w1, wzr, #0, eq
+ccmn w3, w0, #15, hs
+ccmn wzr, w15, #13, hs
+ccmn x9, xzr, #0, le
+ccmn x3, x0, #15, gt
+ccmn xzr, x5, #7, ne
+
+#------------------------------------------------------------------------------
+# Conditional branch (immediate)
+#------------------------------------------------------------------------------
+
+csel     w1, w0, w19, ne
+csel     wzr, w5, w9, eq
+csel     w9, wzr, w30, gt
+csel     w1, w28, wzr, mi
+csel     x19, x23, x29, lt
+csel     xzr, x3, x4, ge
+csel     x5, xzr, x6, hs
+csel     x7, x8, xzr, lo
+csinc    w1, w0, w19, ne
+csinc    wzr, w5, w9, eq
+csinc    w9, wzr, w30, gt
+csinc    w1, w28, wzr, mi
+csinc    x19, x23, x29, lt
+csinc    xzr, x3, x4, ge
+csinc    x5, xzr, x6, hs
+csinc    x7, x8, xzr, lo
+csinv    w1, w0, w19, ne
+csinv    wzr, w5, w9, eq
+csinv    w9, wzr, w30, gt
+csinv    w1, w28, wzr, mi
+csinv    x19, x23, x29, lt
+csinv    xzr, x3, x4, ge
+csinv    x5, xzr, x6, hs
+csinv    x7, x8, xzr, lo
+csneg    w1, w0, w19, ne
+csneg    wzr, w5, w9, eq
+csneg    w9, wzr, w30, gt
+csneg    w1, w28, wzr, mi
+csneg    x19, x23, x29, lt
+csneg    xzr, x3, x4, ge
+csneg    x5, xzr, x6, hs
+csneg    x7, x8, xzr, lo
+cset    w3, eq
+cset    x9, pl
+csetm    w20, ne
+csetm    x30, ge
+csinc    w2, wzr, wzr, al
+csinv    x3, xzr, xzr, nv
+cinc    w3, w5, gt
+cinc    wzr, w4, le
+cset    w9, lt
+cinc    x3, x5, gt
+cinc    xzr, x4, le
+cset    x9, lt
+csinc   w5, w6, w6, nv
+csinc   x1, x2, x2, al
+cinv    w3, w5, gt
+cinv    wzr, w4, le
+csetm   w9, lt
+cinv    x3, x5, gt
+cinv    xzr, x4, le
+csetm   x9, lt
+csinv   x1, x0, x0, al
+csinv   w9, w8, w8, nv
+cneg     w3, w5, gt
+cneg     wzr, w4, le
+cneg     w9, wzr, lt
+cneg     x3, x5, gt
+cneg     xzr, x4, le
+cneg     x9, xzr, lt
+csneg    x4, x8, x8, al
+
+#------------------------------------------------------------------------------
+# Data-processing (1 source)
+#------------------------------------------------------------------------------
+
+rbit	w0, w7
+rbit   x18, x3
+rev16	w17, w1
+rev16	x5, x2
+rev	w18, w0
+rev32	x20, x1
+rev	x22, x2
+clz	w24, w3
+clz	x26, x4
+cls	w3, w5
+cls	x20, x5
+
+#------------------------------------------------------------------------------
+# Data-processing (2 source)
+#------------------------------------------------------------------------------
+
+udiv	w0, w7, w10
+udiv	x9, x22, x4
+sdiv	w12, w21, w0
+sdiv	x13, x2, x1
+lsl	w11, w12, w13
+lsl	x14, x15, x16
+lsr	w17, w18, w19
+lsr	x20, x21, x22
+asr	w23, w24, w25
+asr	x26, x27, x28
+ror	w0, w1, w2
+ror     x3, x4, x5
+lsl	w6, w7, w8
+lsl	x9, x10, x11
+lsr	w12, w13, w14
+lsr	x15, x16, x17
+asr	w18, w19, w20
+asr	x21, x22, x23
+ror	w24, w25, w26
+ror	x27, x28, x29
+
+#------------------------------------------------------------------------------
+# Data-processing (3 sources)
+#------------------------------------------------------------------------------
+
+crc32cb  w30, w23, w15
+crc32cb  w31, w12, w14
+crc32cb  w28, w10, w11
+crc32b   w27, w12, w15
+crc32h   w3, w15, w21
+crc32w   w9, w18, w24
+crc32x   w19, w6, x25
+crc32ch  w25, w26, w16
+crc32cw  w27, w12, w23
+crc32cx  w21, w28, x5
+smulh    x30, x29, x28
+smulh    xzr, x27, x26
+umulh    x30, x29, x28
+umulh    x23, x30, xzr
+madd     w1, w3, w7, w4
+madd     wzr, w0, w9, w11
+madd     w13, wzr, w4, w4
+madd     w19, w30, wzr, w29
+mul      w4, w5, w6
+madd     x1, x3, x7, x4
+madd     xzr, x0, x9, x11
+madd     x13, xzr, x4, x4
+madd     x19, x30, xzr, x29
+mul      x4, x5, x6
+msub     w1, w3, w7, w4
+msub     wzr, w0, w9, w11
+msub     w13, wzr, w4, w4
+msub     w19, w30, wzr, w29
+mneg     w4, w5, w6
+msub     x1, x3, x7, x4
+msub     xzr, x0, x9, x11
+msub     x13, xzr, x4, x4
+msub     x19, x30, xzr, x29
+mneg     x4, x5, x6
+smaddl   x3, w5, w2, x9
+smaddl   xzr, w10, w11, x12
+smaddl   x13, wzr, w14, x15
+smaddl   x16, w17, wzr, x18
+smull    x19, w20, w21
+smsubl   x3, w5, w2, x9
+smsubl   xzr, w10, w11, x12
+smsubl   x13, wzr, w14, x15
+smsubl   x16, w17, wzr, x18
+smnegl   x19, w20, w21
+umaddl   x3, w5, w2, x9
+umaddl   xzr, w10, w11, x12
+umaddl   x13, wzr, w14, x15
+umaddl   x16, w17, wzr, x18
+umull    x19, w20, w21
+umsubl   x3, w5, w2, x9
+umsubl   x16, w17, wzr, x18
+umnegl   x19, w20, w21
+smulh    x23, x22, xzr
+umulh    x23, x22, xzr
+mul      x19, x20, xzr
+mneg     w21, w22, w23
+smull    x11, w13, w17
+umull    x11, w13, w17
+smnegl   x11, w13, w17
+umnegl   x11, w13, w17
+
+#------------------------------------------------------------------------------
+# Extract (immediate)
+#------------------------------------------------------------------------------
+
+extr     w3, w5, w7, #0
+extr     w11, w13, w17, #31
+extr     x3, x5, x7, #15
+extr     x11, x13, x17, #63
+ror      x19, x23, #24
+ror      x29, xzr, #63
+ror      w9, w13, #31
+
+#------------------------------------------------------------------------------
+# Floating-point compare
+#------------------------------------------------------------------------------
+
+fcmp    h5, h21
+fcmp    h5, #0.0
+fcmpe   h22, h21
+fcmpe   h13, #0.0
+fcmp    s3, s5
+fcmp    s31, #0.0
+fcmpe   s29, s30
+fcmpe   s15, #0.0
+fcmp    d4, d12
+fcmp    d23, #0.0
+fcmpe   d26, d22
+fcmpe   d29, #0.0
+
+#------------------------------------------------------------------------------
+# Floating-point conditional compare
+#------------------------------------------------------------------------------
+
+fccmp s1, s31, #0, eq
+fccmp s3, s0, #15, hs
+fccmp s31, s15, #13, hs
+fccmp d9, d31, #0, le
+fccmp d3, d0, #15, gt
+fccmp d31, d5, #7, ne
+fccmp h31, h3, #11, hs
+fccmpe h6, h1, #12, ne
+fccmpe s1, s31, #0, eq
+fccmpe s3, s0, #15, hs
+fccmpe s31, s15, #13, hs
+fccmpe d9, d31, #0, le
+fccmpe d3, d0, #15, gt
+fccmpe d31, d5, #7, ne
+
+#-------------------------------------------------------------------------------
+# Floating-point conditional compare
+#-------------------------------------------------------------------------------
+
+fcsel s3, s20, s9, pl
+fcsel d9, d10, d11, mi
+fcsel h26, h2, h11, hs
+
+#------------------------------------------------------------------------------
+# Floating-point data-processing (1 source)
+#------------------------------------------------------------------------------
+
+fmov     h18, h28
+fmov     s0, s1
+fabs     s2, s3
+fneg     h2, h9
+fneg     s4, s5
+fsqrt    s6, s7
+fcvt     d8, s9
+fcvt     h10, s11
+frintn   h12, h3
+frintn   s12, s13
+frintp   h17, h31
+frintp   s14, s15
+frintm   h0, h21
+frintm   s16, s17
+frintz   h10, h29
+frintz   s18, s19
+frinta   h22, h10
+frinta   s20, s21
+frintx   h4, h5
+frintx   s22, s23
+frinti   s24, s25
+frinti   h31, h14
+fmov     d0, d1
+fabs     d2, d3
+fneg     d4, d5
+fsqrt    h13, h24
+fsqrt    d6, d7
+fcvt     s8, d9
+fcvt     h10, d11
+frintn   d12, d13
+frintp   d14, d15
+frintm   d16, d17
+frintz   d18, d19
+frinta   d20, d21
+frintx   d22, d23
+frinti   d24, d25
+fcvt     s26, h27
+fcvt     d28, h29
+
+#------------------------------------------------------------------------------
+# Floating-point data-processing (2 sources)
+#------------------------------------------------------------------------------
+
+fmul     s20, s19, s17
+fdiv     h1, h26, h23
+fdiv     s1, s2, s3
+fadd     h23, h27, h22
+fadd     s4, s5, s6
+fsub     h20, h11, h18
+fsub     s7, s8, s9
+fmax     s10, s11, s12
+fmax     h8, h7, h11
+fmin     s13, s14, s15
+fmaxnm   h29, h13, h14
+fmaxnm   s16, s17, s18
+fminnm   s19, s20, s21
+fnmul    h3, h15, h7
+fnmul    s22, s23, s2
+fmul     d20, d19, d17
+fdiv     d1, d2, d3
+fadd     d4, d5, d6
+fsub     d7, d8, d9
+fmax     d10, d11, d12
+fmin     d13, d14, d15
+fmin     h4, h13, h17
+fmaxnm   d16, d17, d18
+fminnm   d19, d20, d21
+fminnm   h29, h23, h17
+fnmul    d22, d23, d24
+
+#------------------------------------------------------------------------------
+# Floating-point data-processing (1 source)
+#------------------------------------------------------------------------------
+
+fmadd h27, h0, h6, h28
+fmadd s3, s5, s6, s31
+fmadd d3, d13, d0, d23
+fmsub h25, h28, h12, h24
+fmsub s3, s5, s6, s31
+fmsub d3, d13, d0, d23
+fnmadd h3, h18, h31, h24
+fnmadd s3, s5, s6, s31
+fnmadd d3, d13, d0, d23
+fnmsub s3, s5, s6, s31
+fnmsub d3, d13, d0, d23
+fnmsub h3, h29, h24, h17
+
+#------------------------------------------------------------------------------
+# Floating-point <-> fixed-point conversion
+#------------------------------------------------------------------------------
+
+fcvtzs  w3, h5, #1
+fcvtzs  wzr, h20, #13
+fcvtzs  w19, h0, #32
+fcvtzs  x3, h5, #1
+fcvtzs  x12, h30, #45
+fcvtzs  x19, h0, #64
+fcvtzs  w3, s5, #1
+fcvtzs  wzr, s20, #13
+fcvtzs  w19, s0, #32
+fcvtzs  x3, s5, #1
+fcvtzs  x12, s30, #45
+fcvtzs  x19, s0, #64
+fcvtzs  w3, d5, #1
+fcvtzs  wzr, d20, #13
+fcvtzs  w19, d0, #32
+fcvtzs  x3, d5, #1
+fcvtzs  x12, d30, #45
+fcvtzs  x19, d0, #64
+fcvtzu  w3, h5, #1
+fcvtzu  wzr, h20, #13
+fcvtzu  w19, h0, #32
+fcvtzu  x3, h5, #1
+fcvtzu  x12, h30, #45
+fcvtzu  x19, h0, #64
+fcvtzu  w3, s5, #1
+fcvtzu  wzr, s20, #13
+fcvtzu  w19, s0, #32
+fcvtzu  x3, s5, #1
+fcvtzu  x12, s30, #45
+fcvtzu  x19, s0, #64
+fcvtzu  w3, d5, #1
+fcvtzu  wzr, d20, #13
+fcvtzu  w19, d0, #32
+fcvtzu  x3, d5, #1
+fcvtzu  x12, d30, #45
+fcvtzu  x19, d0, #64
+scvtf   h23, w19, #1
+scvtf   h31, wzr, #20
+scvtf   h14, w0, #32
+scvtf   h23, x19, #1
+scvtf   h31, xzr, #20
+scvtf   h14, x0, #64
+scvtf   s23, w19, #1
+scvtf   s31, wzr, #20
+scvtf   s14, w0, #32
+scvtf   s23, x19, #1
+scvtf   s31, xzr, #20
+scvtf   s14, x0, #64
+scvtf   d23, w19, #1
+scvtf   d31, wzr, #20
+scvtf   d14, w0, #32
+scvtf   d23, x19, #1
+scvtf   d31, xzr, #20
+scvtf   d14, x0, #64
+ucvtf   h23, w19, #1
+ucvtf   h31, wzr, #20
+ucvtf   h14, w0, #32
+ucvtf   h23, x19, #1
+ucvtf   h31, xzr, #20
+ucvtf   h14, x0, #64
+ucvtf   s23, w19, #1
+ucvtf   s31, wzr, #20
+ucvtf   s14, w0, #32
+ucvtf   s23, x19, #1
+ucvtf   s31, xzr, #20
+ucvtf   s14, x0, #64
+ucvtf   d23, w19, #1
+ucvtf   d31, wzr, #20
+ucvtf   d14, w0, #32
+ucvtf   d23, x19, #1
+ucvtf   d31, xzr, #20
+ucvtf   d14, x0, #64
+
+#------------------------------------------------------------------------------
+# Floating-point <-> integer conversion
+#------------------------------------------------------------------------------
+
+fcvtns   w3, h31
+fcvtns   xzr, h12
+fcvtnu   wzr, h12
+fcvtnu   x0, h0
+fcvtps   wzr, h9
+fcvtps   x12, h20
+fcvtpu   w30, h23
+fcvtpu   x29, h3
+fcvtms   w2, h3
+fcvtms   x4, h5
+fcvtmu   w6, h7
+fcvtmu   x8, h9
+fcvtzs   w10, h11
+fcvtzs   x12, h13
+fcvtzu   w14, h15
+fcvtzu   x15, h16
+scvtf    h17, w18
+scvtf    h19, x20
+ucvtf    h21, w22
+scvtf    h23, x24
+fcvtas   w25, h26
+fcvtas   x27, h28
+fcvtau   w29, h30
+fcvtau   xzr, h0
+fcvtns   w3, s31
+fcvtns   xzr, s12
+fcvtnu   wzr, s12
+fcvtnu   x0, s0
+fcvtps   wzr, s9
+fcvtps   x12, s20
+fcvtpu   w30, s23
+fcvtpu   x29, s3
+fcvtms   w2, s3
+fcvtms   x4, s5
+fcvtmu   w6, s7
+fcvtmu   x8, s9
+fcvtzs   w10, s11
+fcvtzs   x12, s13
+fcvtzu   w14, s15
+fcvtzu   x15, s16
+scvtf    s17, w18
+scvtf    s19, x20
+ucvtf    s21, w22
+scvtf    s23, x24
+fcvtas   w25, s26
+fcvtas   x27, s28
+fcvtau   w29, s30
+fcvtau   xzr, s0
+fcvtns   w3, d31
+fcvtns   xzr, d12
+fcvtnu   wzr, d12
+fcvtnu   x0, d0
+fcvtps   wzr, d9
+fcvtps   x12, d20
+fcvtpu   w30, d23
+fcvtpu   x29, d3
+fcvtms   w2, d3
+fcvtms   x4, d5
+fcvtmu   w6, d7
+fcvtmu   x8, d9
+fcvtzs   w10, d11
+fcvtzs   x12, d13
+fcvtzu   w14, d15
+fcvtzu   x15, d16
+scvtf    d17, w18
+scvtf    d19, x20
+ucvtf    d21, w22
+ucvtf    d23, x24
+fcvtas   w25, d26
+fcvtas   x27, d28
+fcvtau   w29, d30
+fcvtau   xzr, d0
+fmov     h6, w5
+fmov     h16, x27
+fmov     w15, h31
+fmov     w3, s9
+fmov     s9, w3
+fmov     x21, h14
+fmov     x20, d31
+fmov     d1, x15
+fmov     x3, v12.d[1]
+fmov     v1.d[1], x19
+
+#------------------------------------------------------------------------------
+# Floating-point immediate
+#------------------------------------------------------------------------------
+
+fmov     h29, #0.50000000
+fmov     s2, #0.12500000
+fmov     s3, #1.00000000
+fmov     d30, #16.00000000
+fmov     s4, #1.06250000
+fmov     d10, #1.93750000
+fmov     s12, #-1.00000000
+fmov     d16, #8.50000000
+
+#------------------------------------------------------------------------------
+# Load-register (literal)
+#------------------------------------------------------------------------------
+
+ldr       w3, #0
+ldr       x29, #4
+ldrsw     xzr, #-4
+ldr       s0, #8
+ldr       d0, #1048572
+ldr       q0, #-1048576
+prfm      pldl1strm, #0
+prfm      #22, #0
+
+#------------------------------------------------------------------------------
+# Load/store exclusive
+#------------------------------------------------------------------------------
+
+stxrb      w18, w8, [sp]
+stxrh      w24, w15, [x16]
+stxr       w5, w6, [x17]
+stxr       w1, x10, [x21]
+ldxrb      w30, [x0]
+ldxrh      w17, [x4]
+ldxr       w22, [sp]
+ldxr       x11, [x29]
+stxp       w12, w11, w10, [sp]
+stxp       wzr, x27, x9, [x12]
+ldxp       w0, wzr, [sp]
+ldxp       x17, x0, [x18]
+stlxrb     w12, w22, [x0]
+stlxrh     w10, w1, [x1]
+stlxr      w9, w2, [x2]
+stlxr      w9, x3, [sp]
+ldaxrb     w8, [x4]
+ldaxrh     w7, [x5]
+ldaxr      w6, [sp]
+ldaxr      x5, [x6]
+stlxp      w4, w5, w6, [sp]
+stlxp      wzr, x6, x7, [x1]
+ldaxp      w5, w18, [sp]
+ldaxp      x6, x19, [x22]
+stlrb      w24, [sp]
+stlrh      w25, [x30]
+stlr       w26, [x29]
+stlr       x27, [x28]
+ldarb      w16, [x21]
+ldarb      w23, [sp]
+ldarh      w22, [x30]
+ldar       wzr, [x29]
+ldar       x21, [x28]
+
+#------------------------------------------------------------------------------
+# Load/store (unscaled  immediate)
+#------------------------------------------------------------------------------
+
+sturb    w9, [sp]
+sturh    wzr, [x12, #255]
+stur     w16, [x0, #-256]
+stur     x28, [x14, #1]
+ldurb    w1, [x20, #255]
+ldurh    w20, [x1, #255]
+ldur     w12, [sp, #255]
+ldur     xzr, [x12, #255]
+ldursb   x9, [x7, #-256]
+ldursh   x17, [x19, #-256]
+ldursw   x20, [x15, #-256]
+prfum    pldl2keep, [sp, #-256]
+ldursb   w19, [x1, #-256]
+ldursh   w15, [x21, #-256]
+stur     b0, [sp, #1]
+stur     h12, [x12, #-1]
+stur     s15, [x0, #255]
+stur     d31, [x5, #25]
+stur     q9, [x5]
+ldur     b3, [sp]
+ldur     h5, [x4, #-256]
+ldur     s7, [x12, #-1]
+ldur     d11, [x19, #4]
+ldur     q13, [x1, #2]
+
+#------------------------------------------------------------------------------
+# Load/store (immediate post-indexed)
+#------------------------------------------------------------------------------
+
+strb     w9, [x2], #255
+strb     w10, [x3], #1
+strb     w10, [x3], #-256
+strh     w9, [x2], #255
+strh     w9, [x2], #1
+strh     w10, [x3], #-256
+str      w19, [sp], #255
+str      w20, [x30], #1
+str      w21, [x12], #-256
+str      xzr, [x9], #255
+str      x2, [x3], #1
+str      x19, [x12], #-256
+ldrb     w9, [x2], #255
+ldrb     w10, [x3], #1
+ldrb     w10, [x3], #-256
+ldrh     w9, [x2], #255
+ldrh     w9, [x2], #1
+ldrh     w10, [x3], #-256
+ldr      w19, [sp], #255
+ldr      w20, [x30], #1
+ldr      w21, [x12], #-256
+ldr      xzr, [x9], #255
+ldr      x2, [x3], #1
+ldr      x19, [x12], #-256
+ldrsb    xzr, [x9], #255
+ldrsb    x2, [x3], #1
+ldrsb    x19, [x12], #-256
+ldrsh    xzr, [x9], #255
+ldrsh    x2, [x3], #1
+ldrsh    x19, [x12], #-256
+ldrsw    xzr, [x9], #255
+ldrsw    x2, [x3], #1
+ldrsw    x19, [x12], #-256
+ldrsb    wzr, [x9], #255
+ldrsb    w2, [x3], #1
+ldrsb    w19, [x12], #-256
+ldrsh    wzr, [x9], #255
+ldrsh    w2, [x3], #1
+ldrsh    w19, [x12], #-256
+str      b0, [x0], #255
+str      b3, [x3], #1
+str      b5, [sp], #-256
+str      h10, [x10], #255
+str      h13, [x23], #1
+str      h15, [sp], #-256
+str      s20, [x20], #255
+str      s23, [x23], #1
+str      s25, [x0], #-256
+str      d20, [x20], #255
+str      d23, [x23], #1
+str      d25, [x0], #-256
+ldr      b0, [x0], #255
+ldr      b3, [x3], #1
+ldr      b5, [sp], #-256
+ldr      h10, [x10], #255
+ldr      h13, [x23], #1
+ldr      h15, [sp], #-256
+ldr      s20, [x20], #255
+ldr      s23, [x23], #1
+ldr      s25, [x0], #-256
+ldr      d20, [x20], #255
+ldr      d23, [x23], #1
+ldr      d25, [x0], #-256
+ldr      q20, [x1], #255
+ldr      q23, [x9], #1
+ldr      q25, [x20], #-256
+str      q10, [x1], #255
+str      q22, [sp], #1
+str      q21, [x20], #-256
+
+#-------------------------------------------------------------------------------
+# Load-store register (immediate pre-indexed)
+#-------------------------------------------------------------------------------
+
+ldr      x3, [x4, #0]!
+strb     w9, [x2, #255]!
+strb     w10, [x3, #1]!
+strb     w10, [x3, #-256]!
+strh     w9, [x2, #255]!
+strh     w9, [x2, #1]!
+strh     w10, [x3, #-256]!
+str      w19, [sp, #255]!
+str      w20, [x30, #1]!
+str      w21, [x12, #-256]!
+str      xzr, [x9, #255]!
+str      x2, [x3, #1]!
+str      x19, [x12, #-256]!
+ldrb     w9, [x2, #255]!
+ldrb     w10, [x3, #1]!
+ldrb     w10, [x3, #-256]!
+ldrh     w9, [x2, #255]!
+ldrh     w9, [x2, #1]!
+ldrh     w10, [x3, #-256]!
+ldr      w19, [sp, #255]!
+ldr      w20, [x30, #1]!
+ldr      w21, [x12, #-256]!
+ldr      xzr, [x9, #255]!
+ldr      x2, [x3, #1]!
+ldr      x19, [x12, #-256]!
+ldrsb    xzr, [x9, #255]!
+ldrsb    x2, [x3, #1]!
+ldrsb    x19, [x12, #-256]!
+ldrsh    xzr, [x9, #255]!
+ldrsh    x2, [x3, #1]!
+ldrsh    x19, [x12, #-256]!
+ldrsw    xzr, [x9, #255]!
+ldrsw    x2, [x3, #1]!
+ldrsw    x19, [x12, #-256]!
+ldrsb    wzr, [x9, #255]!
+ldrsb    w2, [x3, #1]!
+ldrsb    w19, [x12, #-256]!
+ldrsh    wzr, [x9, #255]!
+ldrsh    w2, [x3, #1]!
+ldrsh    w19, [x12, #-256]!
+str      b0, [x0, #255]!
+str      b3, [x3, #1]!
+str      b5, [sp, #-256]!
+str      h10, [x10, #255]!
+str      h13, [x23, #1]!
+str      h15, [sp, #-256]!
+str      s20, [x20, #255]!
+str      s23, [x23, #1]!
+str      s25, [x0, #-256]!
+str      d20, [x20, #255]!
+str      d23, [x23, #1]!
+str      d25, [x0, #-256]!
+ldr      b0, [x0, #255]!
+ldr      b3, [x3, #1]!
+ldr      b5, [sp, #-256]!
+ldr      h10, [x10, #255]!
+ldr      h13, [x23, #1]!
+ldr      h15, [sp, #-256]!
+ldr      s20, [x20, #255]!
+ldr      s23, [x23, #1]!
+ldr      s25, [x0, #-256]!
+ldr      d20, [x20, #255]!
+ldr      d23, [x23, #1]!
+ldr      d25, [x0, #-256]!
+ldr      q20, [x1, #255]!
+ldr      q23, [x9, #1]!
+ldr      q25, [x20, #-256]!
+str      q10, [x1, #255]!
+str      q22, [sp, #1]!
+str      q21, [x20, #-256]!
+
+#------------------------------------------------------------------------------
+# Load/store (unprivileged)
+#------------------------------------------------------------------------------
+
+sttrb    w9, [sp]
+sttrh    wzr, [x12, #255]
+sttr     w16, [x0, #-256]
+sttr     x28, [x14, #1]
+ldtrb    w1, [x20, #255]
+ldtrh    w20, [x1, #255]
+ldtr     w12, [sp, #255]
+ldtr     xzr, [x12, #255]
+ldtrsb   x9, [x7, #-256]
+ldtrsh   x17, [x19, #-256]
+ldtrsw   x20, [x15, #-256]
+ldtrsb   w19, [x1, #-256]
+ldtrsh   w15, [x21, #-256]
+
+#------------------------------------------------------------------------------
+# Load/store (unsigned  immediate)
+#------------------------------------------------------------------------------
+
+ldr      x4, [x29]
+ldr      x30, [x12, #32760]
+ldr      x20, [sp, #8]
+ldr      xzr, [sp]
+ldr      w2, [sp]
+ldr      w17, [sp, #16380]
+ldr      w13, [x2, #4]
+ldrsw    x2, [x5, #4]
+ldrsw    x23, [sp, #16380]
+ldrsw    x21, [x25, x7]
+ldrh     w2, [x4]
+ldrsh    w23, [x6, #8190]
+ldrsh    wzr, [sp, #2]
+ldrsh    x29, [x2, #2]
+ldrsh    x25, [x8, w13, uxtw]
+ldrb     w26, [x3, #121]
+ldrb     w12, [x2]
+ldrsb    w27, [sp, #4095]
+ldrsb    xzr, [x15]
+ldrsb    x12, [x28, x27]
+str      x30, [sp]
+str      w20, [x4, #16380]
+str      b5, [x11]
+str      h23, [x15]
+str      s25, [x19]
+str      d15, [x2]
+strh     w17, [sp, #8190]
+strb     w23, [x3, #4095]
+strb     wzr, [x2]
+ldr      b31, [sp, #4095]
+ldr      h20, [x2, #8190]
+ldr      s10, [x19, #16380]
+ldr      d3, [x10, #32760]
+str      q12, [sp, #65520]
+ldr      q14, [x6, #4624]
+
+#------------------------------------------------------------------------------
+# Load/store (register offset)
+#------------------------------------------------------------------------------
+
+ldrb     w3, [sp, x5]
+ldrb     w9, [x27, x6]
+ldrsb    w10, [x30, x7]
+ldrb     w11, [x29, x3, sxtx]
+strb     w12, [x28, xzr, sxtx]
+strb     w5, [x26, w7, uxtw]
+ldrb     w14, [x26, w6, uxtw]
+ldrsb    w15, [x25, w7, uxtw]
+ldrb     w17, [x23, w9, sxtw]
+ldrsb    x18, [x22, w10, sxtw]
+ldrsh    w3, [sp, x5]
+ldrsh    w9, [x27, x6]
+ldrh     w10, [x30, x7, lsl #1]
+strh     w11, [x29, x3, sxtx]
+ldrh     w12, [x28, xzr, sxtx]
+ldrsh    x13, [x27, x5, sxtx #1]
+ldrh     w14, [x26, w6, uxtw]
+ldrh     w15, [x25, w7, uxtw]
+ldrsh    w16, [x24, w8, uxtw #1]
+ldrh     w17, [x23, w9, sxtw]
+ldrh     w18, [x22, w10, sxtw]
+strh     w19, [x21, wzr, sxtw #1]
+ldr      b25, [x21, w8, uxtw]
+ldr      b8, [x30, x10]
+str      b14, [x13, x25]
+str      b30, [x16, w26, uxtw]
+ldr      h6, [x4, w4, uxtw]
+ldr      h11, [x13, x9]
+str      h16, [x5, x24]
+str      h15, [x15, w15, uxtw]
+ldr      s12, [x30, w5, uxtw]
+ldr      d24, [x26, w7, uxtw]
+str      s20, [x24, w10, uxtw]
+str      d5, [x26, x6]
+ldr      w3, [sp, x5]
+ldr      s9, [x27, x6]
+ldr      w10, [x30, x7, lsl #2]
+ldr      w11, [x29, x3, sxtx]
+str      s12, [x28, xzr, sxtx]
+str      w13, [x27, x5, sxtx #2]
+str      w14, [x26, w6, uxtw]
+ldr      w15, [x25, w7, uxtw]
+ldr      w16, [x24, w8, uxtw #2]
+ldrsw    x17, [x23, w9, sxtw]
+ldr      w18, [x22, w10, sxtw]
+ldrsw    x19, [x21, wzr, sxtw #2]
+ldr      x3, [sp, x5]
+str      x9, [x27, x6]
+ldr      d10, [x30, x7, lsl #3]
+str      x11, [x29, x3, sxtx]
+ldr      x12, [x28, xzr, sxtx]
+ldr      x13, [x27, x5, sxtx #3]
+prfm     pldl1keep, [x26, w6, uxtw]
+ldr      x15, [x25, w7, uxtw]
+str      x27, [x26, w24, uxtw]
+ldr      x16, [x24, w8, uxtw #3]
+ldr      x17, [x23, w9, sxtw]
+ldr      x18, [x22, w10, sxtw]
+str      d19, [x21, wzr, sxtw #3]
+ldr      q3, [sp, x5]
+ldr      q9, [x27, x6]
+ldr      q10, [x30, x7, lsl #4]
+str      q11, [x29, x3, sxtx]
+str      q12, [x28, xzr, sxtx]
+str      q13, [x27, x5, sxtx #4]
+ldr      q14, [x26, w6, uxtw]
+ldr      q15, [x25, w7, uxtw]
+ldr      q16, [x24, w8, uxtw #4]
+ldr      q17, [x23, w9, sxtw]
+str      q18, [x22, w10, sxtw]
+ldr      q19, [x21, wzr, sxtw #4]
+
+#------------------------------------------------------------------------------
+# Load/store register pair (offset)
+#------------------------------------------------------------------------------
+
+ldp      w3, w5, [sp]
+stp      wzr, w9, [sp, #252]
+ldp      w2, wzr, [sp, #-256]
+ldp      w9, w10, [sp, #4]
+ldpsw    x9, x10, [sp, #4]
+ldpsw    x9, x10, [x2, #-256]
+ldpsw    x20, x30, [sp, #252]
+ldp      x21, x29, [x2, #504]
+ldp      x22, x23, [x3, #-512]
+ldp      x24, x25, [x4, #8]
+ldp      s29, s28, [sp, #252]
+stp      s27, s26, [sp, #-256]
+ldp      s1, s2, [x3, #44]
+stp      d3, d5, [x9, #504]
+stp      d7, d11, [x10, #-512]
+stnp     x20, x16, [x8]
+stp      x3, x6, [x16]
+ldp      d2, d3, [x30, #-8]
+stp      q3, q5, [sp]
+stp      q17, q19, [sp, #1008]
+ldp      q23, q29, [x1, #-1024]
+
+#------------------------------------------------------------------------------
+# Load/store register pair (post-indexed)
+#------------------------------------------------------------------------------
+
+ldp      w3, w5, [sp], #0
+stp      wzr, w9, [sp], #252
+ldp      w2, wzr, [sp], #-256
+ldp      w9, w10, [sp], #4
+ldpsw    x9, x10, [sp], #4
+ldpsw    x9, x10, [x2], #-256
+ldpsw    x20, x30, [sp], #252
+ldp      x21, x29, [x2], #504
+ldp      x22, x23, [x3], #-512
+ldp      x24, x25, [x4], #8
+ldp      s29, s28, [sp], #252
+stp      s27, s26, [sp], #-256
+ldp      s1, s2, [x3], #44
+stp      d3, d5, [x9], #504
+stp      d7, d11, [x10], #-512
+ldp      d2, d3, [x30], #-8
+stp      q3, q5, [sp], #0
+stp      q17, q19, [sp], #1008
+ldp      q23, q29, [x1], #-1024
+
+#------------------------------------------------------------------------------
+# Load/store register pair (pre-indexed)
+#------------------------------------------------------------------------------
+
+ldp      w3, w5, [sp, #0]!
+stp      wzr, w9, [sp, #252]!
+ldp      w2, wzr, [sp, #-256]!
+ldp      w9, w10, [sp, #4]!
+ldpsw    x9, x10, [sp, #4]!
+ldpsw    x9, x10, [x2, #-256]!
+ldpsw    x20, x30, [sp, #252]!
+ldp      x21, x29, [x2, #504]!
+ldp      x22, x23, [x3, #-512]!
+ldp      x24, x25, [x4, #8]!
+ldp      s29, s28, [sp, #252]!
+stp      s27, s26, [sp, #-256]!
+ldp      s1, s2, [x3, #44]!
+stp      d3, d5, [x9, #504]!
+stp      d7, d11, [x10, #-512]!
+ldp      d2, d3, [x30, #-8]!
+stp      q3, q5, [sp, #0]!
+stp      q17, q19, [sp, #1008]!
+ldp      q23, q29, [x1, #-1024]!
+
+#------------------------------------------------------------------------------
+# Load/store register pair (offset)
+#------------------------------------------------------------------------------
+
+ldnp      w3, w5, [sp]
+stnp      wzr, w9, [sp, #252]
+ldnp      w2, wzr, [sp, #-256]
+ldnp      w9, w10, [sp, #4]
+ldnp      x21, x29, [x2, #504]
+ldnp      x22, x23, [x3, #-512]
+ldnp      x24, x25, [x4, #8]
+ldnp      s29, s28, [sp, #252]
+stnp      s27, s26, [sp, #-256]
+ldnp      s1, s2, [x3, #44]
+stnp      d3, d5, [x9, #504]
+stnp      d7, d11, [x10, #-512]
+ldnp      d2, d3, [x30, #-8]
+stnp      q3, q5, [sp]
+stnp      q17, q19, [sp, #1008]
+ldnp      q23, q29, [x1, #-1024]
+
+#------------------------------------------------------------------------------
+# Logical (immediate)
+#------------------------------------------------------------------------------
+
+and      wsp, w16, #0xe00
+and      x2, x22, #0x1e00
+ands     w14, w8, #0x70
+ands     x4, x10, #0x60
+eor      wsp, w4, #0xe00
+eor      x27, x25, #0x1e00
+mov      w3, #983055
+mov      x10, #-6148914691236517206
+
+#------------------------------------------------------------------------------
+# Logical (shifted register)
+#------------------------------------------------------------------------------
+
+and      w12, w23, w21
+and      w16, w15, w1, lsl #1
+and      w9, w4, w10, lsl #31
+and      w3, w30, w11
+and      x3, x5, x7, lsl #63
+and      x5, x14, x19, asr #4
+and      w3, w17, w19, ror #31
+and      w0, w2, wzr, lsr #17
+and      w3, w30, w11, asr #2
+and      xzr, x4, x26
+and      w3, wzr, w20, ror #2
+and      x7, x20, xzr, asr #63
+bic      x13, x20, x14, lsl #47
+bic      w2, w7, w9
+eon      w29, w4, w19
+eon      x19, x12, x2
+eor      w8, w27, w2
+eor      x22, x16, x6
+orr      w2, w7, w0, asr #31
+orr      x8, x9, x10, lsl #12
+orn      x3, x5, x7, asr #2
+orn      w2, w5, w29
+ands     w7, wzr, w9, lsl #1
+ands     x3, x5, x20, ror #63
+bics     w3, w5, w7
+bics     x3, xzr, x3, lsl #1
+tst      w3, w7, lsl #31
+tst      x2, x20, asr #2
+mov      x3, x6
+mov      x3, xzr
+mov      wzr, w2
+mov      w3, w5
+
+#------------------------------------------------------------------------------
+# Move wide (immediate)
+#------------------------------------------------------------------------------
+
+movz     w2, #0, lsl #16
+mov     w2, #-1235
+mov     x2, #5299989643264
+mov      x2, #0
+movk     w3, #0
+movz     x4, #0, lsl #16
+movk     w5, #0, lsl #16
+movz     x6, #0, lsl #32
+movk     x7, #0, lsl #32
+movz     x8, #0, lsl #48
+movk     x9, #0, lsl #48
+
+#------------------------------------------------------------------------------
+# Move immediate to Special Register
+#------------------------------------------------------------------------------
+
+msr     DAIFSet, #0
+
+#------------------------------------------------------------------------------
+# PC-relative addressing
+#------------------------------------------------------------------------------
+
+adr      x2, #1600
+adrp     x21, #6553600
+adr      x0, #262144
+
+#------------------------------------------------------------------------------
+# Test and branch (immediate)
+#------------------------------------------------------------------------------
+
+tbz     x12, #62, #0
+tbz     x12, #62, #4
+tbz     x12, #62, #-32768
+tbz     w17, #16, test
+tbnz    x12, #60, #32764
+tbnz	w3, #28, test
+
+#------------------------------------------------------------------------------
+# Unconditional branch (immediate)
+#------------------------------------------------------------------------------
+
+b        #4
+b        #-4
+b        #134217724
+bl       test
+
+#------------------------------------------------------------------------------
+# Unconditional branch (register)
+#------------------------------------------------------------------------------
+
+br       x20
+blr      xzr
+ret      x10
+ret
+eret
+drps
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/mte-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/mte-instructions.s
new file mode 100644
index 0000000000000..d1cfada0c9607
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/mte-instructions.s
@@ -0,0 +1,105 @@
+irg	x0, x1
+irg	sp, x1
+irg	x0, sp
+irg	x0, x1, x2
+irg	sp, x1, x2
+addg	x0, x1, #0, #1
+addg	sp, x2, #32, #3
+addg	x0, sp, #64, #5
+addg	x3, x4, #1008, #6
+addg	x5, x6, #112, #15
+subg	x0, x1, #0, #1
+subg	sp, x2, #32, #3
+subg	x0, sp, #64, #5
+subg	x3, x4, #1008, #6
+subg	x5, x6, #112, #15
+gmi	x0, x1, x2
+gmi	x3, sp, x4
+gmi	xzr, x0, x30
+gmi	x30, x0, xzr
+subp	x0, x1, x2
+subps	x0, x1, x2
+subp	x0, sp, sp
+subps	x0, sp, sp
+subps	xzr, x0, x1
+subps	xzr, sp, sp
+stg	x0, [x1, #-4096]
+stg	x1, [x2, #4080]
+stg	x2, [sp, #16]
+stg	x3, [x1]
+stg	sp, [x1]
+stzg	x0, [x1, #-4096]
+stzg	x1, [x2, #4080]
+stzg	x2, [sp, #16]
+stzg	x3, [x1]
+stzg	sp, [x1]
+stg	x0, [x1, #-4096]!
+stg	x1, [x2, #4080]!
+stg	x2, [sp, #16]!
+stg	sp, [sp, #16]!
+stzg	x0, [x1, #-4096]!
+stzg	x1, [x2, #4080]!
+stzg	x2, [sp, #16]!
+stzg	sp, [sp, #16]!
+stg	x0, [x1], #-4096
+stg	x1, [x2], #4080
+stg	x2, [sp], #16
+stg	sp, [sp], #16
+stzg	x0, [x1], #-4096
+stzg	x1, [x2], #4080
+stzg	x2, [sp], #16
+stzg	sp, [sp], #16
+st2g	x0, [x1, #-4096]
+st2g	x1, [x2, #4080]
+st2g	x2, [sp, #16]
+st2g	x3, [x1]
+st2g	sp, [x1]
+stz2g	x0, [x1, #-4096]
+stz2g	x1, [x2, #4080]
+stz2g	x2, [sp, #16]
+stz2g	x3, [x1]
+stz2g	sp, [x1]
+st2g	x0, [x1, #-4096]!
+st2g	x1, [x2, #4080]!
+st2g	x2, [sp, #16]!
+st2g	sp, [sp, #16]!
+stz2g	x0, [x1, #-4096]!
+stz2g	x1, [x2, #4080]!
+stz2g	x2, [sp, #16]!
+stz2g	sp, [sp, #16]!
+st2g	x0, [x1], #-4096
+st2g	x1, [x2], #4080
+st2g	x2, [sp], #16
+st2g	sp, [sp], #16
+stz2g	x0, [x1], #-4096
+stz2g	x1, [x2], #4080
+stz2g	x2, [sp], #16
+stz2g	sp, [sp], #16
+stgp	x0, x1, [x2, #-1024]
+stgp	x0, x1, [x2, #1008]
+stgp	x0, x1, [sp, #16]
+stgp	xzr, x1, [x2, #16]
+stgp	x0, xzr, [x2, #16]
+stgp	x0, xzr, [x2]
+stgp	x0, x1, [x2, #-1024]!
+stgp	x0, x1, [x2, #1008]!
+stgp	x0, x1, [sp, #16]!
+stgp	xzr, x1, [x2, #16]!
+stgp	x0, xzr, [x2, #16]!
+stgp	x0, x1, [x2], #-1024
+stgp	x0, x1, [x2], #1008
+stgp	x0, x1, [sp], #16
+stgp	xzr, x1, [x2], #16
+stgp	x0, xzr, [x2], #16
+ldg	x0, [x1]
+ldg	x2, [sp, #-4096]
+ldg	x3, [x4, #4080]
+ldgm	x0, [x1]
+ldgm	x1, [sp]
+ldgm	xzr, [x2]
+stgm	x0, [x1]
+stgm	x1, [sp]
+stgm	xzr, [x2]
+stzgm	x0, [x1]
+stzgm	x1, [sp]
+stzgm	xzr, [x2]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..6deac5012b21d
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/Inputs/rcpc-immo-instructions.s
@@ -0,0 +1,17 @@
+#------------------------------------------------------------------------------
+# Load/store exclusive
+#------------------------------------------------------------------------------
+
+ldapur     w7, [x24]
+ldapur     x20, [x13]
+ldapurb    w13, [x17]
+ldapurh    w3, [x22]
+ldapursb   w7, [x8]
+ldapursb   x29, [x7]
+ldapursh   w17, [x19]
+ldapursh   x3, [x3]
+ldapursw   x3, [x18]
+stlur      w3, [x27]
+stlur      x23, [x25]
+stlurb     w30, [x17]
+stlurh     w9, [x29]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
index 72a88daafe8d7..7b6c6a31dce63 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
@@ -1,1372 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n1 -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #10
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #63
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #10
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #63
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #10
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #63
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #10
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #63
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #15
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #63
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #15
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #63
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsr      w3, w2, #0
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfx     w9, w10, #0, #1
-sbfiz    x2, x3, #63, #1
-asr      x19, x20, #0
-sbfiz    x9, x10, #5, #59
-asr      w9, w10, #0
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfi      x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfi      x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsl      x2, x3, #63
-lsr      x19, x20, #0
-lsl      x9, x10, #5
-lsr      w9, w10, #0
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-csinv    w9, w8, w8, nv
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror    x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x30, x29, x28
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror     x19, x23, #24
-ror     x29, xzr, #63
-ror     w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     s0, s1
-fabs     s2, s3
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   s12, s13
-frintp   s14, s15
-frintm   s16, s17
-frintz   s18, s19
-frinta   s20, s21
-frintx   s22, s23
-frinti   s24, s25
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     s1, s2, s3
-fadd     s4, s5, s6
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmin     s13, s14, s15
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     w3, s9
-fmov     s9, w3
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldaxp      x6, x19, [x22]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlr       x27, [x28]
-stlr       x27, [x28]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-ldar       x21, [x28]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-str      x30, [sp]
-str      w20, [x4, #16380]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbnz    x12, #60, #32764
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n1 -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -1396,22 +29,22 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmn	w2, #4095
 # CHECK-NEXT:  1      1     0.33                        adds	w20, wsp, #0
 # CHECK-NEXT:  1      1     0.33                        cmn	x3, #1, lsl #12
+# CHECK-NEXT:  1      1     0.33                        cmp	wsp, #2342
 # CHECK-NEXT:  1      1     0.33                        cmp	sp, #20, lsl #12
 # CHECK-NEXT:  1      1     0.33                        cmp	x30, #4095
 # CHECK-NEXT:  1      1     0.33                        subs	x4, sp, #3822
 # CHECK-NEXT:  1      1     0.33                        cmn	w3, #291, lsl #12
 # CHECK-NEXT:  1      1     0.33                        cmn	wsp, #1365
 # CHECK-NEXT:  1      1     0.33                        cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  1      1     0.33                        mov	sp, x30
-# CHECK-NEXT:  1      1     0.33                        mov	wsp, w20
-# CHECK-NEXT:  1      1     0.33                        mov	x11, sp
-# CHECK-NEXT:  1      1     0.33                        mov	w24, wsp
+# CHECK-NEXT:  1      1     0.33                        mov	x10, #-63432
+# CHECK-NEXT:  1      2     1.00                        add	wsp, wsp, w10
+# CHECK-NEXT:  1      2     1.00                        add	x25, x9, w25, uxtb
 # CHECK-NEXT:  1      1     0.33                        add	w3, w5, w7
 # CHECK-NEXT:  1      1     0.33                        add	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.33                        add	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.33                        add	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.33                        add	w11, w13, w15
-# CHECK-NEXT:  1      2     1.00                        add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.33                        add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     1.00                        add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     1.00                        add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        add	w24, w25, w26, lsr #18
@@ -1425,7 +58,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        add	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.33                        add	x11, x13, x15
 # CHECK-NEXT:  1      2     1.00                        add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     1.00                        add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.33                        add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     1.00                        add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     1.00                        add	x27, x28, x29, lsr #63
@@ -1433,11 +66,13 @@ drps
 # CHECK-NEXT:  1      2     1.00                        add	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     1.00                        add	x8, x9, x10, asr #63
 # CHECK-NEXT:  1      1     0.33                        adds	w3, w5, w7
+# CHECK-NEXT:  1      2     1.00                        adds	w17, wsp, w25
+# CHECK-NEXT:  1      2     1.00                        adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  1      1     0.33                        cmn	w3, w5
 # CHECK-NEXT:  1      1     0.33                        adds	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.33                        adds	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.33                        adds	w11, w13, w15
-# CHECK-NEXT:  1      2     1.00                        adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.33                        adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     1.00                        adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     1.00                        adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        adds	w24, w25, w26, lsr #18
@@ -1451,7 +86,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        adds	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.33                        adds	x11, x13, x15
 # CHECK-NEXT:  1      2     1.00                        adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     1.00                        adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.33                        adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     1.00                        adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     1.00                        adds	x27, x28, x29, lsr #63
@@ -1462,7 +97,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        sub	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.33                        sub	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.33                        sub	w11, w13, w15
-# CHECK-NEXT:  1      2     1.00                        sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.33                        sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     1.00                        sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     1.00                        sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        sub	w24, w25, w26, lsr #18
@@ -1475,18 +110,21 @@ drps
 # CHECK-NEXT:  1      1     0.33                        sub	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.33                        sub	x11, x13, x15
 # CHECK-NEXT:  1      2     1.00                        sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     1.00                        sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.33                        sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     1.00                        sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     1.00                        sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  1      2     1.00                        sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  1      2     1.00                        sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     1.00                        sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  1      2     1.00                        sub	w13, wsp, w10
+# CHECK-NEXT:  1      2     1.00                        sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  1      2     1.00                        subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  1      1     0.33                        subs	w3, w5, w7
 # CHECK-NEXT:  1      1     0.33                        cmp	w3, w5
 # CHECK-NEXT:  1      1     0.33                        subs	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.33                        subs	w11, w13, w15
-# CHECK-NEXT:  1      2     1.00                        subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.33                        subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     1.00                        subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     1.00                        subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        subs	w24, w25, w26, lsr #18
@@ -1499,7 +137,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        subs	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.33                        subs	x11, x13, x15
 # CHECK-NEXT:  1      2     1.00                        subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     1.00                        subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.33                        subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     1.00                        subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     1.00                        subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     1.00                        subs	x27, x28, x29, lsr #63
@@ -1509,7 +147,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmn	wzr, w4
 # CHECK-NEXT:  1      1     0.33                        cmn	w5, wzr
 # CHECK-NEXT:  1      1     0.33                        cmn	w6, w7
-# CHECK-NEXT:  1      2     1.00                        cmn	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.33                        cmn	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     1.00                        cmn	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     1.00                        cmn	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     1.00                        cmn	w14, w15, lsr #21
@@ -1522,7 +160,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmn	x5, xzr
 # CHECK-NEXT:  1      1     0.33                        cmn	x6, x7
 # CHECK-NEXT:  1      2     1.00                        cmn	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     1.00                        cmn	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.33                        cmn	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     1.00                        cmn	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     1.00                        cmn	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     1.00                        cmn	x16, x17, lsr #63
@@ -1533,19 +171,21 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmp	wzr, w4
 # CHECK-NEXT:  1      1     0.33                        cmp	w5, wzr
 # CHECK-NEXT:  1      1     0.33                        cmp	w6, w7
-# CHECK-NEXT:  1      2     1.00                        cmp	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.33                        cmp	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     1.00                        cmp	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     1.00                        cmp	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     1.00                        cmp	w14, w15, lsr #21
 # CHECK-NEXT:  1      2     1.00                        cmp	w18, w19, asr #0
 # CHECK-NEXT:  1      2     1.00                        cmp	w20, w21, asr #22
 # CHECK-NEXT:  1      2     1.00                        cmp	w22, w23, asr #31
+# CHECK-NEXT:  1      2     1.00                        cmp	wsp, w26
+# CHECK-NEXT:  1      2     1.00                        cmp	x16, w27, uxtb
 # CHECK-NEXT:  1      1     0.33                        cmp	x0, x3
 # CHECK-NEXT:  1      1     0.33                        cmp	xzr, x4
 # CHECK-NEXT:  1      1     0.33                        cmp	x5, xzr
 # CHECK-NEXT:  1      1     0.33                        cmp	x6, x7
 # CHECK-NEXT:  1      2     1.00                        cmp	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     1.00                        cmp	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.33                        cmp	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     1.00                        cmp	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     1.00                        cmp	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     1.00                        cmp	x16, x17, lsr #63
@@ -1554,6 +194,10 @@ drps
 # CHECK-NEXT:  1      2     1.00                        cmp	x22, x23, asr #63
 # CHECK-NEXT:  1      1     0.33                        cmp	wzr, w0
 # CHECK-NEXT:  1      1     0.33                        cmp	xzr, x0
+# CHECK-NEXT:  1      1     0.33                        mov	sp, x30
+# CHECK-NEXT:  1      1     0.33                        mov	wsp, w20
+# CHECK-NEXT:  1      1     0.33                        mov	x11, sp
+# CHECK-NEXT:  1      1     0.33                        mov	w24, wsp
 # CHECK-NEXT:  1      1     0.33                        adc	w29, w27, w25
 # CHECK-NEXT:  1      1     0.33                        adc	wzr, w3, w4
 # CHECK-NEXT:  1      1     0.33                        adc	w9, wzr, w10
@@ -1626,15 +270,11 @@ drps
 # CHECK-NEXT:  1      1     0.33                        lsr	w9, w10, #31
 # CHECK-NEXT:  1      1     0.33                        lsr	x20, x21, #63
 # CHECK-NEXT:  1      1     0.33                        lsr	wzr, wzr, #3
-# CHECK-NEXT:  1      1     0.33                        lsr	w3, w2, #0
 # CHECK-NEXT:  1      1     0.33                        lsl	w9, w10, #31
 # CHECK-NEXT:  1      1     0.33                        lsl	x20, x21, #63
 # CHECK-NEXT:  1      1     0.33                        lsl	w1, wzr, #3
-# CHECK-NEXT:  1      1     0.33                        sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.33                        sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.33                        asr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.33                        sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.33                        asr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.33                        sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.33                        sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.33                        sbfiz	xzr, xzr, #10, #11
@@ -1646,11 +286,8 @@ drps
 # CHECK-NEXT:  1      1     0.33                        asr	w11, w12, #31
 # CHECK-NEXT:  1      1     0.33                        asr	w13, w14, #29
 # CHECK-NEXT:  1      1     0.33                        sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      2     1.00                        bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  1      2     1.00                        bfi	x2, x3, #63, #1
-# CHECK-NEXT:  1      2     1.00                        bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  1      2     1.00                        bfi	x9, x10, #5, #59
-# CHECK-NEXT:  1      2     1.00                        bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  1      2     1.00                        bfi	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     1.00                        bfi	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     1.00                        bfc	xzr, #10, #11
@@ -1662,11 +299,8 @@ drps
 # CHECK-NEXT:  1      2     1.00                        bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     1.00                        bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     1.00                        bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.33                        ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.33                        lsl	x2, x3, #63
-# CHECK-NEXT:  1      1     0.33                        lsr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.33                        lsl	x9, x10, #5
-# CHECK-NEXT:  1      1     0.33                        lsr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.33                        lsl	w11, w12, #31
 # CHECK-NEXT:  1      1     0.33                        lsl	w13, w14, #29
 # CHECK-NEXT:  1      1     0.33                        ubfiz	xzr, xzr, #10, #11
@@ -1684,6 +318,7 @@ drps
 # CHECK-NEXT:  1      1     1.00                        cbnz	x26, #1048572
 # CHECK-NEXT:  1      1     1.00                        cbz	wzr, #0
 # CHECK-NEXT:  1      1     1.00                        cbnz	xzr, #0
+# CHECK-NEXT:  1      1     1.00                        cbnz	w21, test
 # CHECK-NEXT:  1      1     1.00                        b.ne	#4
 # CHECK-NEXT:  1      1     1.00                        b.ge	#1048572
 # CHECK-NEXT:  1      1     1.00                        b.ge	#-4
@@ -1772,7 +407,6 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cneg	xzr, x4, le
 # CHECK-NEXT:  1      1     0.33                        cneg	x9, xzr, lt
 # CHECK-NEXT:  1      1     0.33                        csneg	x4, x8, x8, al
-# CHECK-NEXT:  1      1     0.33                        csinv	w9, w8, w8, nv
 # CHECK-NEXT:  1      1     0.33                        rbit	w0, w7
 # CHECK-NEXT:  1      1     0.33                        rbit	x18, x3
 # CHECK-NEXT:  1      1     0.33                        rev16	w17, w1
@@ -1804,6 +438,16 @@ drps
 # CHECK-NEXT:  1      1     0.33                        asr	x21, x22, x23
 # CHECK-NEXT:  1      1     0.33                        ror	w24, w25, w26
 # CHECK-NEXT:  1      1     0.33                        ror	x27, x28, x29
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w30, w23, w15
+# CHECK-NEXT:  1      2     1.00                        crc32cb	wzr, w12, w14
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w28, w10, w11
+# CHECK-NEXT:  1      2     1.00                        crc32b	w27, w12, w15
+# CHECK-NEXT:  1      2     1.00                        crc32h	w3, w15, w21
+# CHECK-NEXT:  1      2     1.00                        crc32w	w9, w18, w24
+# CHECK-NEXT:  1      2     1.00                        crc32x	w19, w6, x25
+# CHECK-NEXT:  1      2     1.00                        crc32ch	w25, w26, w16
+# CHECK-NEXT:  1      2     1.00                        crc32cw	w27, w12, w23
+# CHECK-NEXT:  1      2     1.00                        crc32cx	w21, w28, x5
 # CHECK-NEXT:  1      5     3.00                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      5     3.00                        smulh	xzr, x27, x26
 # CHECK-NEXT:  1      5     3.00                        umulh	x30, x29, x28
@@ -1846,7 +490,6 @@ drps
 # CHECK-NEXT:  1      2     1.00                        umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  1      2     1.00                        umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  1      2     1.00                        umnegl	x19, w20, w21
-# CHECK-NEXT:  1      5     3.00                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      5     3.00                        smulh	x23, x22, xzr
 # CHECK-NEXT:  1      5     3.00                        umulh	x23, x22, xzr
 # CHECK-NEXT:  1      4     3.00                        mul	x19, x20, xzr
@@ -1862,24 +505,26 @@ drps
 # CHECK-NEXT:  1      1     0.33                        ror	x19, x23, #24
 # CHECK-NEXT:  1      1     0.33                        ror	x29, xzr, #63
 # CHECK-NEXT:  1      1     0.33                        ror	w9, w13, #31
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, h21
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h22, h21
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h13, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	s3, s5
 # CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s29, s30
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	d4, d12
 # CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d26, d22
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
 # CHECK-NEXT:  1      2     1.00                        fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	d9, d31, #0, le
 # CHECK-NEXT:  1      2     1.00                        fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  1      2     1.00                        fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  1      2     1.00                        fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  1      2     1.00                        fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s31, s15, #13, hs
@@ -1888,22 +533,33 @@ drps
 # CHECK-NEXT:  1      2     1.00                        fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  1      2     0.50                        fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  1      2     0.50                        fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  1      2     0.50                        fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  1      2     0.50                        fmov	h18, h28
 # CHECK-NEXT:  1      2     0.50                        fmov	s0, s1
 # CHECK-NEXT:  1      2     0.50                        fabs	s2, s3
+# CHECK-NEXT:  1      2     0.50                        fneg	h2, h9
 # CHECK-NEXT:  1      2     0.50                        fneg	s4, s5
 # CHECK-NEXT:  1      10    7.00                        fsqrt	s6, s7
 # CHECK-NEXT:  1      3     0.50                        fcvt	d8, s9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, s11
+# CHECK-NEXT:  1      3     1.00                        frintn	h12, h3
 # CHECK-NEXT:  1      3     1.00                        frintn	s12, s13
+# CHECK-NEXT:  1      3     1.00                        frintp	h17, h31
 # CHECK-NEXT:  1      3     1.00                        frintp	s14, s15
+# CHECK-NEXT:  1      3     1.00                        frintm	h0, h21
 # CHECK-NEXT:  1      3     1.00                        frintm	s16, s17
+# CHECK-NEXT:  1      3     1.00                        frintz	h10, h29
 # CHECK-NEXT:  1      3     1.00                        frintz	s18, s19
+# CHECK-NEXT:  1      3     1.00                        frinta	h22, h10
 # CHECK-NEXT:  1      3     1.00                        frinta	s20, s21
+# CHECK-NEXT:  1      3     1.00                        frintx	h4, h5
 # CHECK-NEXT:  1      3     1.00                        frintx	s22, s23
 # CHECK-NEXT:  1      3     1.00                        frinti	s24, s25
+# CHECK-NEXT:  1      3     1.00                        frinti	h31, h14
 # CHECK-NEXT:  1      2     0.50                        fmov	d0, d1
 # CHECK-NEXT:  1      2     0.50                        fabs	d2, d3
 # CHECK-NEXT:  1      2     0.50                        fneg	d4, d5
+# CHECK-NEXT:  1      7     7.00                        fsqrt	h13, h24
 # CHECK-NEXT:  1      17    7.00                        fsqrt	d6, d7
 # CHECK-NEXT:  1      3     0.50                        fcvt	s8, d9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, d11
@@ -1917,13 +573,19 @@ drps
 # CHECK-NEXT:  1      3     0.50                        fcvt	s26, h27
 # CHECK-NEXT:  1      3     0.50                        fcvt	d28, h29
 # CHECK-NEXT:  1      3     0.50                        fmul	s20, s19, s17
+# CHECK-NEXT:  1      7     7.00                        fdiv	h1, h26, h23
 # CHECK-NEXT:  1      10    7.00                        fdiv	s1, s2, s3
+# CHECK-NEXT:  1      2     0.50                        fadd	h23, h27, h22
 # CHECK-NEXT:  1      2     0.50                        fadd	s4, s5, s6
+# CHECK-NEXT:  1      2     0.50                        fsub	h20, h11, h18
 # CHECK-NEXT:  1      2     0.50                        fsub	s7, s8, s9
 # CHECK-NEXT:  1      2     0.50                        fmax	s10, s11, s12
+# CHECK-NEXT:  1      2     0.50                        fmax	h8, h7, h11
 # CHECK-NEXT:  1      2     0.50                        fmin	s13, s14, s15
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	h29, h13, h14
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	s16, s17, s18
 # CHECK-NEXT:  1      2     0.50                        fminnm	s19, s20, s21
+# CHECK-NEXT:  1      3     0.50                        fnmul	h3, h15, h7
 # CHECK-NEXT:  1      3     0.50                        fnmul	s22, s23, s2
 # CHECK-NEXT:  1      3     0.50                        fmul	d20, d19, d17
 # CHECK-NEXT:  1      15    7.00                        fdiv	d1, d2, d3
@@ -1931,17 +593,23 @@ drps
 # CHECK-NEXT:  1      2     0.50                        fsub	d7, d8, d9
 # CHECK-NEXT:  1      2     0.50                        fmax	d10, d11, d12
 # CHECK-NEXT:  1      2     0.50                        fmin	d13, d14, d15
+# CHECK-NEXT:  1      2     0.50                        fmin	h4, h13, h17
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	d16, d17, d18
 # CHECK-NEXT:  1      2     0.50                        fminnm	d19, d20, d21
+# CHECK-NEXT:  1      2     0.50                        fminnm	h29, h23, h17
 # CHECK-NEXT:  1      3     0.50                        fnmul	d22, d23, d24
+# CHECK-NEXT:  1      4     0.50                        fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  1      4     0.50                        fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  1      4     0.50                        fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  1      4     0.50                        fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  1      4     0.50                        fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  1      3     0.50                        fcvtzs	w3, h5, #1
 # CHECK-NEXT:  1      3     0.50                        fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  1      3     0.50                        fcvtzs	w19, h0, #32
@@ -2086,12 +754,17 @@ drps
 # CHECK-NEXT:  2      4     1.00                        fcvtas	x27, d28
 # CHECK-NEXT:  2      4     1.00                        fcvtau	w29, d30
 # CHECK-NEXT:  2      4     1.00                        fcvtau	xzr, d0
+# CHECK-NEXT:  1      3     1.00                        fmov	h6, w5
+# CHECK-NEXT:  1      3     1.00                        fmov	h16, x27
+# CHECK-NEXT:  1      2     1.00                        fmov	w15, h31
 # CHECK-NEXT:  1      2     1.00                        fmov	w3, s9
 # CHECK-NEXT:  1      3     1.00                        fmov	s9, w3
+# CHECK-NEXT:  1      2     1.00                        fmov	x21, h14
 # CHECK-NEXT:  1      2     1.00                        fmov	x20, d31
 # CHECK-NEXT:  1      3     1.00                        fmov	d1, x15
 # CHECK-NEXT:  1      2     1.00                        fmov	x3, v12.d[1]
 # CHECK-NEXT:  1      3     1.00                        fmov	v1.d[1], x19
+# CHECK-NEXT:  1      2     0.50                        fmov	h29, #0.50000000
 # CHECK-NEXT:  1      2     0.50                        fmov	s2, #0.12500000
 # CHECK-NEXT:  1      2     0.50                        fmov	s3, #1.00000000
 # CHECK-NEXT:  1      2     0.50                        fmov	d30, #16.00000000
@@ -2115,13 +788,10 @@ drps
 # CHECK-NEXT:  1      4     0.50    *      *      U     ldxrh	w17, [x4]
 # CHECK-NEXT:  1      4     0.50    *      *      U     ldxr	w22, [sp]
 # CHECK-NEXT:  1      4     0.50    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.50    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.50    *      *      U     ldxr	x11, [x29]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  2      4     1.00    *      *      U     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  2      4     1.00    *      *      U     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  2      4     1.00    *      *      U     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stlxr	w9, w2, [x2]
@@ -2130,25 +800,19 @@ drps
 # CHECK-NEXT:  1      4     0.50    *      *      U     ldaxrh	w7, [x5]
 # CHECK-NEXT:  1      4     0.50    *      *      U     ldaxr	w6, [sp]
 # CHECK-NEXT:  1      4     0.50    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.50    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.50    *      *      U     ldaxr	x5, [x6]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  3      5     1.00    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  2      4     1.00    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  2      4     1.00    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  2      4     1.00    *      *      U     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
+# CHECK-NEXT:  1      4     0.50    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.50    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.50    *             U     ldarh	w22, [x30]
 # CHECK-NEXT:  1      4     0.50    *             U     ldar	wzr, [x29]
 # CHECK-NEXT:  1      4     0.50    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.50    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.50    *             U     ldar	x21, [x28]
 # CHECK-NEXT:  2      1     0.50           *            sturb	w9, [sp]
 # CHECK-NEXT:  2      1     0.50           *            sturh	wzr, [x12, #255]
 # CHECK-NEXT:  2      1     0.50           *            stur	w16, [x0, #-256]
@@ -2334,16 +998,23 @@ drps
 # CHECK-NEXT:  1      4     0.50    *                   ldr	w13, [x2, #4]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  1      4     0.50    *                   ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  1      4     0.50    *                   ldrh	w2, [x4]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  1      4     0.50    *                   ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w26, [x3, #121]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w12, [x2]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsb	xzr, [x15]
+# CHECK-NEXT:  1      4     0.50    *                   ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  2      1     0.50           *            str	x30, [sp]
 # CHECK-NEXT:  2      1     0.50           *            str	w20, [x4, #16380]
+# CHECK-NEXT:  2      2     0.50           *            str	b5, [x11]
+# CHECK-NEXT:  2      2     0.50           *            str	h23, [x15]
+# CHECK-NEXT:  2      2     0.50           *            str	s25, [x19]
+# CHECK-NEXT:  2      2     0.50           *            str	d15, [x2]
 # CHECK-NEXT:  2      1     0.50           *            strh	w17, [sp, #8190]
 # CHECK-NEXT:  2      1     0.50           *            strb	w23, [x3, #4095]
 # CHECK-NEXT:  2      1     0.50           *            strb	wzr, [x2]
@@ -2352,11 +1023,13 @@ drps
 # CHECK-NEXT:  2      5     0.50    *                   ldr	s10, [x19, #16380]
 # CHECK-NEXT:  2      5     0.50    *                   ldr	d3, [x10, #32760]
 # CHECK-NEXT:  4      2     1.00           *            str	q12, [sp, #65520]
+# CHECK-NEXT:  2      5     0.50    *                   ldr	q14, [x6, #4624]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w3, [sp, x5]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w9, [x27, x6]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  2      1     0.50           *            strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  2      1     0.50           *            strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldrb	w17, [x23, w9, sxtw]
@@ -2373,6 +1046,18 @@ drps
 # CHECK-NEXT:  1      4     0.50    *                   ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  2      1     0.50           *            strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  2      5     0.50    *                   ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  2      5     0.50    *                   ldr	b8, [x30, x10]
+# CHECK-NEXT:  2      2     0.50           *            str	b14, [x13, x25]
+# CHECK-NEXT:  2      2     0.50           *            str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  2      6     0.50    *                   ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  2      6     0.50    *                   ldr	h11, [x13, x9]
+# CHECK-NEXT:  3      7     0.50           *            str	h16, [x5, x24]
+# CHECK-NEXT:  3      7     0.50           *            str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  2      5     0.50    *                   ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  2      5     0.50    *                   ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	d5, [x26, x6]
 # CHECK-NEXT:  1      4     0.50    *                   ldr	w3, [sp, x5]
 # CHECK-NEXT:  2      5     0.50    *                   ldr	s9, [x27, x6]
 # CHECK-NEXT:  1      4     0.50    *                   ldr	w10, [x30, x7, lsl #2]
@@ -2393,6 +1078,7 @@ drps
 # CHECK-NEXT:  1      4     0.50    *                   ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  1      4     0.50                  U     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  2      1     0.50           *            str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  1      4     0.50    *                   ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.50    *                   ldr	x18, [x22, w10, sxtw]
@@ -2424,6 +1110,8 @@ drps
 # CHECK-NEXT:  3      5     1.00    *                   ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  4      2     1.00           *            stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  4      2     1.00           *            stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  3      1     1.00           *            stnp	x20, x16, [x8]
+# CHECK-NEXT:  3      1     1.00           *            stp	x3, x6, [x16]
 # CHECK-NEXT:  3      5     1.00    *                   ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  6      3     2.00           *            stp	q3, q5, [sp]
 # CHECK-NEXT:  6      3     2.00           *            stp	q17, q19, [sp, #1008]
@@ -2482,6 +1170,12 @@ drps
 # CHECK-NEXT:  6      3     2.00           *            stnp	q3, q5, [sp]
 # CHECK-NEXT:  6      3     2.00           *            stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  2      4     1.00    *                   ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  1      1     0.33                        and	wsp, w16, #0xe00
+# CHECK-NEXT:  1      1     0.33                        and	x2, x22, #0x1e00
+# CHECK-NEXT:  1      1     0.33                        ands	w14, w8, #0x70
+# CHECK-NEXT:  1      1     0.33                        ands	x4, x10, #0x60
+# CHECK-NEXT:  1      1     0.33                        eor	wsp, w4, #0xe00
+# CHECK-NEXT:  1      1     0.33                        eor	x27, x25, #0x1e00
 # CHECK-NEXT:  1      1     0.33                        mov	w3, #983055
 # CHECK-NEXT:  1      1     0.33                        mov	x10, #-6148914691236517206
 # CHECK-NEXT:  1      1     0.33                        and	w12, w23, w21
@@ -2498,6 +1192,10 @@ drps
 # CHECK-NEXT:  1      1     0.33                        and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  1      1     0.33                        bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  1      1     0.33                        bic	w2, w7, w9
+# CHECK-NEXT:  1      1     0.33                        eon	w29, w4, w19
+# CHECK-NEXT:  1      1     0.33                        eon	x19, x12, x2
+# CHECK-NEXT:  1      1     0.33                        eor	w8, w27, w2
+# CHECK-NEXT:  1      1     0.33                        eor	x22, x16, x6
 # CHECK-NEXT:  1      1     0.33                        orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  1      1     0.33                        orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  1      1     0.33                        orn	x3, x5, x7, asr #2
@@ -2523,16 +1221,20 @@ drps
 # CHECK-NEXT:  1      1     0.33                        movk	x7, #0, lsl #32
 # CHECK-NEXT:  1      1     0.33                        movz	x8, #0, lsl #48
 # CHECK-NEXT:  1      1     0.33                        movk	x9, #0, lsl #48
+# CHECK-NEXT:  1      1     0.33                  U     msr	DAIFSet, #0
 # CHECK-NEXT:  1      1     0.33                        adr	x2, #1600
 # CHECK-NEXT:  1      1     0.33                        adrp	x21, #6553600
 # CHECK-NEXT:  1      1     0.33                        adr	x0, #262144
 # CHECK-NEXT:  1      1     1.00                        tbz	x12, #62, #0
 # CHECK-NEXT:  1      1     1.00                        tbz	x12, #62, #4
 # CHECK-NEXT:  1      1     1.00                        tbz	x12, #62, #-32768
+# CHECK-NEXT:  1      1     1.00                        tbz	w17, #16, test
 # CHECK-NEXT:  1      1     1.00                        tbnz	x12, #60, #32764
+# CHECK-NEXT:  1      1     1.00                        tbnz	w3, #28, test
 # CHECK-NEXT:  1      1     1.00                        b	#4
 # CHECK-NEXT:  1      1     1.00                        b	#-4
 # CHECK-NEXT:  1      1     1.00                        b	#134217724
+# CHECK-NEXT:  2      1     1.00                        bl	test
 # CHECK-NEXT:  1      1     1.00                        br	x20
 # CHECK-NEXT:  2      1     1.00                        blr	xzr
 # CHECK-NEXT:  1      1     1.00                  U     ret	x10
@@ -2554,7 +1256,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1.0]  [1.1]  [2.0]  [2.1]  [3]    [4.0]  [4.1]  [5]    [6]
-# CHECK-NEXT: 22.00  33.00  33.00  241.00 241.00 469.00 186.00 186.00 256.50 145.50
+# CHECK-NEXT: 26.00  34.00  34.00  248.50 248.50 480.67 194.67 194.67 292.00 160.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1.0]  [1.1]  [2.0]  [2.1]  [3]    [4.0]  [4.1]  [5]    [6]    Instructions:
@@ -2577,22 +1279,22 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	w2, #4095
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	w20, wsp, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	x3, #1, lsl #12
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	wsp, #2342
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	sp, #20, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	x30, #4095
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	x4, sp, #3822
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	w3, #291, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	wsp, #1365
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	sp, x30
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	wsp, w20
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	x11, sp
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	w24, wsp
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	x10, #-63432
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	wsp, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x25, x9, w25, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	w24, w25, w26, lsr #18
@@ -2606,7 +1308,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x27, x28, x29, lsr #63
@@ -2614,11 +1316,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     add	x8, x9, x10, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	w3, w5, w7
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	w17, wsp, w25
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	w24, w25, w26, lsr #18
@@ -2632,7 +1336,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     adds	x27, x28, x29, lsr #63
@@ -2643,7 +1347,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	w24, w25, w26, lsr #18
@@ -2656,18 +1360,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	w13, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	w24, w25, w26, lsr #18
@@ -2680,7 +1387,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     subs	x27, x28, x29, lsr #63
@@ -2690,7 +1397,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	w6, w7
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	w14, w15, lsr #21
@@ -2703,7 +1410,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	x6, x7
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmn	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmn	x16, x17, lsr #63
@@ -2714,19 +1421,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	w6, w7
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w14, w15, lsr #21
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w18, w19, asr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w20, w21, asr #22
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	w22, w23, asr #31
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	wsp, w26
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x16, w27, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	x0, x3
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	xzr, x4
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	x6, x7
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x16, x17, lsr #63
@@ -2735,6 +1444,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     cmp	x22, x23, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	wzr, w0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cmp	xzr, x0
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	sp, x30
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	wsp, w20
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	x11, sp
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	w24, wsp
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adc	w29, w27, w25
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adc	wzr, w3, w4
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adc	w9, wzr, w10
@@ -2807,15 +1520,11 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsr	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsr	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsr	wzr, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsr	w3, w2, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	w1, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     asr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     asr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfiz	xzr, xzr, #10, #11
@@ -2827,11 +1536,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     asr	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     asr	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfi	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfi	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfi	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfi	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfc	xzr, #10, #11
@@ -2843,11 +1549,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	x2, x3, #63
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	x9, x10, #5
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     lsl	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ubfiz	xzr, xzr, #10, #11
@@ -2865,6 +1568,7 @@ drps
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     cbnz	x26, #1048572
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     cbz	wzr, #0
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     cbnz	xzr, #0
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     cbnz	w21, test
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     b.ne	#4
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     b.ge	#1048572
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     b.ge	#-4
@@ -2953,7 +1657,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cneg	xzr, x4, le
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     cneg	x9, xzr, lt
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     csneg	x4, x8, x8, al
-# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     csinv	w9, w8, w8, nv
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     rbit	w0, w7
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     rbit	x18, x3
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     rev16	w17, w1
@@ -2985,6 +1688,16 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     asr	x21, x22, x23
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ror	w24, w25, w26
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ror	x27, x28, x29
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32cb	w30, w23, w15
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32cb	wzr, w12, w14
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32cb	w28, w10, w11
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32b	w27, w12, w15
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32h	w3, w15, w21
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32w	w9, w18, w24
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32x	w19, w6, x25
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32ch	w25, w26, w16
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32cw	w27, w12, w23
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     crc32cx	w21, w28, x5
 # CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     smulh	xzr, x27, x26
 # CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     umulh	x30, x29, x28
@@ -3027,7 +1740,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     umnegl	x19, w20, w21
-# CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     smulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     umulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -     3.00    -      -      -      -     mul	x19, x20, xzr
@@ -3043,24 +1755,26 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ror	x19, x23, #24
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ror	x29, xzr, #63
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ror	w9, w13, #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	h5, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	h5, #0.0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	h22, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	h13, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	s3, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	s31, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	s31, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	s29, s30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	s15, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	s15, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	d4, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	d23, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmp	d23, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	d26, d22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	d29, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fcmpe	d29, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	d9, d31, #0, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmpe	s31, s15, #13, hs
@@ -3069,22 +1783,33 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	h18, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	s0, s1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fabs	s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fneg	h2, h9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fneg	s4, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     7.00    -     fsqrt	s6, s7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvt	d8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvt	h10, s11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintn	h12, h3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintn	s12, s13
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintp	h17, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintp	s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintm	h0, h21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintm	s16, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintz	h10, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintz	s18, s19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frinta	h22, h10
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frinta	s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintx	h4, h5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frintx	s22, s23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frinti	s24, s25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -     frinti	h31, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	d0, d1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fabs	d2, d3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fneg	d4, d5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     7.00    -     fsqrt	h13, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     7.00    -     fsqrt	d6, d7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvt	s8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvt	h10, d11
@@ -3098,13 +1823,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvt	s26, h27
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvt	d28, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmul	s20, s19, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     7.00    -     fdiv	h1, h26, h23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     7.00    -     fdiv	s1, s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fadd	h23, h27, h22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fadd	s4, s5, s6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fsub	h20, h11, h18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fsub	s7, s8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmax	s10, s11, s12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmax	h8, h7, h11
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmin	s13, s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	h29, h13, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	s16, s17, s18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fminnm	s19, s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmul	h3, h15, h7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmul	s22, s23, s2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmul	d20, d19, d17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     7.00    -     fdiv	d1, d2, d3
@@ -3112,17 +1843,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fsub	d7, d8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmax	d10, d11, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmin	d13, d14, d15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmin	h4, h13, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	d16, d17, d18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fminnm	d19, d20, d21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fminnm	h29, h23, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmul	d22, d23, d24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvtzs	w3, h5, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fcvtzs	w19, h0, #32
@@ -3267,12 +2004,17 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00   fcvtas	x27, d28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00   fcvtau	w29, d30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00   fcvtau	xzr, d0
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     fmov	h6, w5
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     fmov	h16, x27
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00   fmov	w15, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00   fmov	w3, s9
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     fmov	s9, w3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00   fmov	x21, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00   fmov	x20, d31
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     fmov	d1, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00   fmov	x3, v12.d[1]
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -     fmov	v1.d[1], x19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	h29, #0.50000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	s2, #0.12500000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	s3, #1.00000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   fmov	d30, #16.00000000
@@ -3296,13 +2038,10 @@ drps
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldxrh	w17, [x4]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldxr	w22, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldxr	x11, [x29]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stlxr	w9, w2, [x2]
@@ -3311,25 +2050,19 @@ drps
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldaxrh	w7, [x5]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldaxr	w6, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldaxr	x5, [x6]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stlr	x27, [x28]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldarh	w22, [x30]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldar	wzr, [x29]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldar	x21, [x28]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     sturb	w9, [sp]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     sturh	wzr, [x12, #255]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     stur	w16, [x0, #-256]
@@ -3515,16 +2248,23 @@ drps
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	w13, [x2, #4]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrh	w2, [x4]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w26, [x3, #121]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w12, [x2]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsb	xzr, [x15]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     str	x30, [sp]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     str	w20, [x4, #16380]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	b5, [x11]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	h23, [x15]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	s25, [x19]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	d15, [x2]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     strh	w17, [sp, #8190]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     strb	w23, [x3, #4095]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     strb	wzr, [x2]
@@ -3533,11 +2273,13 @@ drps
 # CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	s10, [x19, #16380]
 # CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	d3, [x10, #32760]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -     1.00   1.00   str	q12, [sp, #65520]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	q14, [x6, #4624]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w9, [x27, x6]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrb	w17, [x23, w9, sxtw]
@@ -3554,6 +2296,18 @@ drps
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	b8, [x30, x10]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	b14, [x13, x25]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	h11, [x13, x9]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33   0.50   0.50   str	h16, [x5, x24]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33   0.50   0.50   str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -     0.50   0.50   str	d5, [x26, x6]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -     0.50   0.50   0.33   0.33   0.33    -      -     ldr	s9, [x27, x6]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	w10, [x30, x7, lsl #2]
@@ -3574,6 +2328,7 @@ drps
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  -     0.50   0.50   0.50   0.50    -      -      -      -      -     str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -     ldr	x18, [x22, w10, sxtw]
@@ -3605,6 +2360,8 @@ drps
 # CHECK-NEXT:  -      -      -     1.00   1.00   0.33   0.33   0.33    -      -     ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -     1.00   1.00   stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -     1.00   1.00   stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stnp	x20, x16, [x8]
+# CHECK-NEXT:  -     0.50   0.50   1.00   1.00    -      -      -      -      -     stp	x3, x6, [x16]
 # CHECK-NEXT:  -      -      -     1.00   1.00   0.33   0.33   0.33    -      -     ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  -      -      -     2.00   2.00    -      -      -     1.00   1.00   stp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -     2.00   2.00    -      -      -     1.00   1.00   stp	q17, q19, [sp, #1008]
@@ -3663,6 +2420,12 @@ drps
 # CHECK-NEXT:  -      -      -     2.00   2.00    -      -      -     1.00   1.00   stnp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -     2.00   2.00    -      -      -     1.00   1.00   stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  -      -      -     1.00   1.00    -      -      -      -      -     ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     and	wsp, w16, #0xe00
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     and	x2, x22, #0x1e00
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ands	w14, w8, #0x70
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     ands	x4, x10, #0x60
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     eor	wsp, w4, #0xe00
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     eor	x27, x25, #0x1e00
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	w3, #983055
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     mov	x10, #-6148914691236517206
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     and	w12, w23, w21
@@ -3679,6 +2442,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     bic	w2, w7, w9
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     eon	w29, w4, w19
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     eon	x19, x12, x2
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     eor	w8, w27, w2
+# CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     eor	x22, x16, x6
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     orn	x3, x5, x7, asr #2
@@ -3704,16 +2471,20 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     movk	x7, #0, lsl #32
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     movz	x8, #0, lsl #48
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     movk	x9, #0, lsl #48
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     msr	DAIFSet, #0
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adr	x2, #1600
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adrp	x21, #6553600
 # CHECK-NEXT:  -      -      -      -      -     0.33   0.33   0.33    -      -     adr	x0, #262144
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     tbz	x12, #62, #0
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     tbz	x12, #62, #4
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     tbz	x12, #62, #-32768
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     tbz	w17, #16, test
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     tbnz	x12, #60, #32764
+# CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     tbnz	w3, #28, test
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     b	#4
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     b	#-4
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     b	#134217724
+# CHECK-NEXT: 1.00    -      -      -      -     0.33   0.33   0.33    -      -     bl	test
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     br	x20
 # CHECK-NEXT: 1.00    -      -      -      -     0.33   0.33   0.33    -      -     blr	xzr
 # CHECK-NEXT: 1.00    -      -      -      -      -      -      -      -      -     ret	x10
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
index f6ea4c4769c0a..75f70a5ad20ed 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
@@ -1,1372 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n2 -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #10
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #63
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #10
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #63
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #10
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #63
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #10
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #63
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #15
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #63
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #15
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #63
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsr      w3, w2, #0
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfx     w9, w10, #0, #1
-sbfiz    x2, x3, #63, #1
-asr      x19, x20, #0
-sbfiz    x9, x10, #5, #59
-asr      w9, w10, #0
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfi      x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfi      x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsl      x2, x3, #63
-lsr      x19, x20, #0
-lsl      x9, x10, #5
-lsr      w9, w10, #0
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-csinv    w9, w8, w8, nv
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror    x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x30, x29, x28
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror     x19, x23, #24
-ror     x29, xzr, #63
-ror     w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     s0, s1
-fabs     s2, s3
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   s12, s13
-frintp   s14, s15
-frintm   s16, s17
-frintz   s18, s19
-frinta   s20, s21
-frintx   s22, s23
-frinti   s24, s25
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     s1, s2, s3
-fadd     s4, s5, s6
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmin     s13, s14, s15
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     w3, s9
-fmov     s9, w3
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldaxp      x6, x19, [x22]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlr       x27, [x28]
-stlr       x27, [x28]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-ldar       x21, [x28]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-str      x30, [sp]
-str      w20, [x4, #16380]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbnz    x12, #60, #32764
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n2 -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -1396,22 +29,22 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	w2, #4095
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wsp, #0
 # CHECK-NEXT:  1      1     0.25                        cmn	x3, #1, lsl #12
+# CHECK-NEXT:  1      1     0.25                        cmp	wsp, #2342
 # CHECK-NEXT:  1      1     0.25                        cmp	sp, #20, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmp	x30, #4095
 # CHECK-NEXT:  1      1     0.25                        subs	x4, sp, #3822
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, #291, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmn	wsp, #1365
 # CHECK-NEXT:  1      1     0.25                        cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  1      1     0.25                        mov	sp, x30
-# CHECK-NEXT:  1      1     0.25                        mov	wsp, w20
-# CHECK-NEXT:  1      1     0.25                        mov	x11, sp
-# CHECK-NEXT:  1      1     0.25                        mov	w24, wsp
+# CHECK-NEXT:  1      1     0.25                        mov	x10, #-63432
+# CHECK-NEXT:  1      2     0.50                        add	wsp, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        add	x25, x9, w25, uxtb
 # CHECK-NEXT:  1      1     0.25                        add	w3, w5, w7
 # CHECK-NEXT:  1      1     0.25                        add	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.25                        add	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.25                        add	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        add	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	w24, w25, w26, lsr #18
@@ -1425,7 +58,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        add	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        add	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        add	x27, x28, x29, lsr #63
@@ -1433,11 +66,13 @@ drps
 # CHECK-NEXT:  1      2     0.50                        add	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        add	x8, x9, x10, asr #63
 # CHECK-NEXT:  1      1     0.25                        adds	w3, w5, w7
+# CHECK-NEXT:  1      2     0.50                        adds	w17, wsp, w25
+# CHECK-NEXT:  1      2     0.50                        adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, w5
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.25                        adds	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        adds	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	w24, w25, w26, lsr #18
@@ -1451,7 +86,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        adds	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        adds	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        adds	x27, x28, x29, lsr #63
@@ -1462,7 +97,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        sub	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.25                        sub	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        sub	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	w24, w25, w26, lsr #18
@@ -1475,18 +110,21 @@ drps
 # CHECK-NEXT:  1      1     0.25                        sub	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        sub	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  1      2     0.50                        sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  1      2     0.50                        sub	w13, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  1      2     0.50                        subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  1      1     0.25                        subs	w3, w5, w7
 # CHECK-NEXT:  1      1     0.25                        cmp	w3, w5
 # CHECK-NEXT:  1      1     0.25                        subs	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        subs	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	w24, w25, w26, lsr #18
@@ -1499,7 +137,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        subs	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        subs	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        subs	x27, x28, x29, lsr #63
@@ -1509,7 +147,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmn	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmn	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmn	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmn	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmn	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmn	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	w14, w15, lsr #21
@@ -1522,7 +160,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmn	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmn	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmn	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmn	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmn	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmn	x16, x17, lsr #63
@@ -1533,19 +171,21 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmp	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmp	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmp	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmp	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmp	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmp	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w14, w15, lsr #21
 # CHECK-NEXT:  1      2     0.50                        cmp	w18, w19, asr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w20, w21, asr #22
 # CHECK-NEXT:  1      2     0.50                        cmp	w22, w23, asr #31
+# CHECK-NEXT:  1      2     0.50                        cmp	wsp, w26
+# CHECK-NEXT:  1      2     0.50                        cmp	x16, w27, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmp	x0, x3
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x4
 # CHECK-NEXT:  1      1     0.25                        cmp	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmp	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmp	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmp	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmp	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmp	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmp	x16, x17, lsr #63
@@ -1554,6 +194,10 @@ drps
 # CHECK-NEXT:  1      2     0.50                        cmp	x22, x23, asr #63
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w0
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x0
+# CHECK-NEXT:  1      1     0.25                        mov	sp, x30
+# CHECK-NEXT:  1      1     0.25                        mov	wsp, w20
+# CHECK-NEXT:  1      1     0.25                        mov	x11, sp
+# CHECK-NEXT:  1      1     0.25                        mov	w24, wsp
 # CHECK-NEXT:  1      1     0.25                        adc	w29, w27, w25
 # CHECK-NEXT:  1      1     0.25                        adc	wzr, w3, w4
 # CHECK-NEXT:  1      1     0.25                        adc	w9, wzr, w10
@@ -1626,15 +270,11 @@ drps
 # CHECK-NEXT:  1      1     0.25                        lsr	w9, w10, #31
 # CHECK-NEXT:  1      1     0.25                        lsr	x20, x21, #63
 # CHECK-NEXT:  1      1     0.25                        lsr	wzr, wzr, #3
-# CHECK-NEXT:  1      1     0.25                        lsr	w3, w2, #0
 # CHECK-NEXT:  1      1     0.25                        lsl	w9, w10, #31
 # CHECK-NEXT:  1      1     0.25                        lsl	x20, x21, #63
 # CHECK-NEXT:  1      1     0.25                        lsl	w1, wzr, #3
-# CHECK-NEXT:  1      1     0.25                        sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.25                        sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.25                        asr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.25                        sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.25                        asr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.25                        sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.25                        sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.25                        sbfiz	xzr, xzr, #10, #11
@@ -1646,11 +286,8 @@ drps
 # CHECK-NEXT:  1      1     0.25                        asr	w11, w12, #31
 # CHECK-NEXT:  1      1     0.25                        asr	w13, w14, #29
 # CHECK-NEXT:  1      1     0.25                        sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	x2, x3, #63, #1
-# CHECK-NEXT:  1      2     0.50                        bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  1      2     0.50                        bfi	x9, x10, #5, #59
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  1      2     0.50                        bfi	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfc	xzr, #10, #11
@@ -1662,11 +299,8 @@ drps
 # CHECK-NEXT:  1      2     0.50                        bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.25                        ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.25                        lsl	x2, x3, #63
-# CHECK-NEXT:  1      1     0.25                        lsr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.25                        lsl	x9, x10, #5
-# CHECK-NEXT:  1      1     0.25                        lsr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.25                        lsl	w11, w12, #31
 # CHECK-NEXT:  1      1     0.25                        lsl	w13, w14, #29
 # CHECK-NEXT:  1      1     0.25                        ubfiz	xzr, xzr, #10, #11
@@ -1684,6 +318,7 @@ drps
 # CHECK-NEXT:  1      1     0.50                        cbnz	x26, #1048572
 # CHECK-NEXT:  1      1     0.50                        cbz	wzr, #0
 # CHECK-NEXT:  1      1     0.50                        cbnz	xzr, #0
+# CHECK-NEXT:  1      1     0.50                        cbnz	w21, test
 # CHECK-NEXT:  1      1     0.50                        b.ne	#4
 # CHECK-NEXT:  1      1     0.50                        b.ge	#1048572
 # CHECK-NEXT:  1      1     0.50                        b.ge	#-4
@@ -1772,7 +407,6 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cneg	xzr, x4, le
 # CHECK-NEXT:  1      1     0.25                        cneg	x9, xzr, lt
 # CHECK-NEXT:  1      1     0.25                        csneg	x4, x8, x8, al
-# CHECK-NEXT:  1      1     0.25                        csinv	w9, w8, w8, nv
 # CHECK-NEXT:  1      1     0.25                        rbit	w0, w7
 # CHECK-NEXT:  1      1     0.25                        rbit	x18, x3
 # CHECK-NEXT:  1      1     0.25                        rev16	w17, w1
@@ -1804,6 +438,16 @@ drps
 # CHECK-NEXT:  1      1     0.25                        asr	x21, x22, x23
 # CHECK-NEXT:  1      1     0.25                        ror	w24, w25, w26
 # CHECK-NEXT:  1      1     0.25                        ror	x27, x28, x29
+# CHECK-NEXT:  1      2     2.00                        crc32cb	w30, w23, w15
+# CHECK-NEXT:  1      2     2.00                        crc32cb	wzr, w12, w14
+# CHECK-NEXT:  1      2     2.00                        crc32cb	w28, w10, w11
+# CHECK-NEXT:  1      2     2.00                        crc32b	w27, w12, w15
+# CHECK-NEXT:  1      2     2.00                        crc32h	w3, w15, w21
+# CHECK-NEXT:  1      2     2.00                        crc32w	w9, w18, w24
+# CHECK-NEXT:  1      2     2.00                        crc32x	w19, w6, x25
+# CHECK-NEXT:  1      2     2.00                        crc32ch	w25, w26, w16
+# CHECK-NEXT:  1      2     2.00                        crc32cw	w27, w12, w23
+# CHECK-NEXT:  1      2     2.00                        crc32cx	w21, w28, x5
 # CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	xzr, x27, x26
 # CHECK-NEXT:  1      3     0.50                        umulh	x30, x29, x28
@@ -1846,7 +490,6 @@ drps
 # CHECK-NEXT:  1      2     0.50                        umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  1      2     0.50                        umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  1      2     0.50                        umnegl	x19, w20, w21
-# CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	x23, x22, xzr
 # CHECK-NEXT:  1      3     0.50                        umulh	x23, x22, xzr
 # CHECK-NEXT:  1      2     0.50                        mul	x19, x20, xzr
@@ -1862,24 +505,26 @@ drps
 # CHECK-NEXT:  2      3     0.50                        ror	x19, x23, #24
 # CHECK-NEXT:  2      3     0.50                        ror	x29, xzr, #63
 # CHECK-NEXT:  2      3     0.50                        ror	w9, w13, #31
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, h21
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h22, h21
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h13, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	s3, s5
 # CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s29, s30
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	d4, d12
 # CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d26, d22
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
 # CHECK-NEXT:  1      2     1.00                        fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	d9, d31, #0, le
 # CHECK-NEXT:  1      2     1.00                        fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  1      2     1.00                        fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  1      2     1.00                        fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  1      2     1.00                        fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s31, s15, #13, hs
@@ -1888,22 +533,33 @@ drps
 # CHECK-NEXT:  1      2     1.00                        fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  1      2     0.50                        fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  1      2     0.50                        fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  1      2     0.50                        fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  1      2     0.50                        fmov	h18, h28
 # CHECK-NEXT:  1      2     0.50                        fmov	s0, s1
 # CHECK-NEXT:  1      2     0.50                        fabs	s2, s3
+# CHECK-NEXT:  1      2     0.50                        fneg	h2, h9
 # CHECK-NEXT:  1      2     0.50                        fneg	s4, s5
 # CHECK-NEXT:  9      9     9.00                        fsqrt	s6, s7
 # CHECK-NEXT:  1      3     1.00                        fcvt	d8, s9
 # CHECK-NEXT:  1      3     1.00                        fcvt	h10, s11
+# CHECK-NEXT:  1      3     1.00                        frintn	h12, h3
 # CHECK-NEXT:  1      3     1.00                        frintn	s12, s13
+# CHECK-NEXT:  1      3     1.00                        frintp	h17, h31
 # CHECK-NEXT:  1      3     1.00                        frintp	s14, s15
+# CHECK-NEXT:  1      3     1.00                        frintm	h0, h21
 # CHECK-NEXT:  1      3     1.00                        frintm	s16, s17
+# CHECK-NEXT:  1      3     1.00                        frintz	h10, h29
 # CHECK-NEXT:  1      3     1.00                        frintz	s18, s19
+# CHECK-NEXT:  1      3     1.00                        frinta	h22, h10
 # CHECK-NEXT:  1      3     1.00                        frinta	s20, s21
+# CHECK-NEXT:  1      3     1.00                        frintx	h4, h5
 # CHECK-NEXT:  1      3     1.00                        frintx	s22, s23
 # CHECK-NEXT:  1      3     1.00                        frinti	s24, s25
+# CHECK-NEXT:  1      3     1.00                        frinti	h31, h14
 # CHECK-NEXT:  1      2     0.50                        fmov	d0, d1
 # CHECK-NEXT:  1      2     0.50                        fabs	d2, d3
 # CHECK-NEXT:  1      2     0.50                        fneg	d4, d5
+# CHECK-NEXT:  7      7     7.00                        fsqrt	h13, h24
 # CHECK-NEXT:  16     16    16.00                       fsqrt	d6, d7
 # CHECK-NEXT:  1      3     1.00                        fcvt	s8, d9
 # CHECK-NEXT:  1      3     1.00                        fcvt	h10, d11
@@ -1917,13 +573,19 @@ drps
 # CHECK-NEXT:  1      3     1.00                        fcvt	s26, h27
 # CHECK-NEXT:  1      3     1.00                        fcvt	d28, h29
 # CHECK-NEXT:  1      3     0.50                        fmul	s20, s19, s17
+# CHECK-NEXT:  7      7     7.00                        fdiv	h1, h26, h23
 # CHECK-NEXT:  10     10    10.00                       fdiv	s1, s2, s3
+# CHECK-NEXT:  1      2     0.50                        fadd	h23, h27, h22
 # CHECK-NEXT:  1      2     0.50                        fadd	s4, s5, s6
+# CHECK-NEXT:  1      2     0.50                        fsub	h20, h11, h18
 # CHECK-NEXT:  1      2     0.50                        fsub	s7, s8, s9
 # CHECK-NEXT:  1      2     0.50                        fmax	s10, s11, s12
+# CHECK-NEXT:  1      2     0.50                        fmax	h8, h7, h11
 # CHECK-NEXT:  1      2     0.50                        fmin	s13, s14, s15
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	h29, h13, h14
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	s16, s17, s18
 # CHECK-NEXT:  1      2     0.50                        fminnm	s19, s20, s21
+# CHECK-NEXT:  1      3     0.50                        fnmul	h3, h15, h7
 # CHECK-NEXT:  1      3     0.50                        fnmul	s22, s23, s2
 # CHECK-NEXT:  1      3     0.50                        fmul	d20, d19, d17
 # CHECK-NEXT:  15     15    15.00                       fdiv	d1, d2, d3
@@ -1931,17 +593,23 @@ drps
 # CHECK-NEXT:  1      2     0.50                        fsub	d7, d8, d9
 # CHECK-NEXT:  1      2     0.50                        fmax	d10, d11, d12
 # CHECK-NEXT:  1      2     0.50                        fmin	d13, d14, d15
+# CHECK-NEXT:  1      2     0.50                        fmin	h4, h13, h17
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	d16, d17, d18
 # CHECK-NEXT:  1      2     0.50                        fminnm	d19, d20, d21
+# CHECK-NEXT:  1      2     0.50                        fminnm	h29, h23, h17
 # CHECK-NEXT:  1      3     0.50                        fnmul	d22, d23, d24
+# CHECK-NEXT:  1      4     0.50                        fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  1      4     0.50                        fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  1      4     0.50                        fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  1      4     0.50                        fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  1      4     0.50                        fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w3, h5, #1
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w19, h0, #32
@@ -2086,12 +754,17 @@ drps
 # CHECK-NEXT:  1      3     0.50                        fcvtas	x27, d28
 # CHECK-NEXT:  1      3     0.50                        fcvtau	w29, d30
 # CHECK-NEXT:  1      3     0.50                        fcvtau	xzr, d0
+# CHECK-NEXT:  1      3     3.00                        fmov	h6, w5
+# CHECK-NEXT:  1      3     3.00                        fmov	h16, x27
+# CHECK-NEXT:  1      2     0.50                        fmov	w15, h31
 # CHECK-NEXT:  1      2     0.50                        fmov	w3, s9
 # CHECK-NEXT:  1      3     3.00                        fmov	s9, w3
+# CHECK-NEXT:  1      2     0.50                        fmov	x21, h14
 # CHECK-NEXT:  1      2     0.50                        fmov	x20, d31
 # CHECK-NEXT:  1      3     3.00                        fmov	d1, x15
 # CHECK-NEXT:  1      2     0.50                        fmov	x3, v12.d[1]
 # CHECK-NEXT:  2      5     1.00                        fmov	v1.d[1], x19
+# CHECK-NEXT:  1      2     0.50                        fmov	h29, #0.50000000
 # CHECK-NEXT:  1      2     0.50                        fmov	s2, #0.12500000
 # CHECK-NEXT:  1      2     0.50                        fmov	s3, #1.00000000
 # CHECK-NEXT:  1      2     0.50                        fmov	d30, #16.00000000
@@ -2115,13 +788,10 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxrh	w17, [x4]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	w22, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxr	w9, w2, [x2]
@@ -2130,25 +800,19 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxrh	w7, [x5]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	w6, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
+# CHECK-NEXT:  1      4     0.33    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarh	w22, [x30]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	wzr, [x29]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
 # CHECK-NEXT:  2      1     0.50           *            sturb	w9, [sp]
 # CHECK-NEXT:  2      1     0.50           *            sturh	wzr, [x12, #255]
 # CHECK-NEXT:  2      1     0.50           *            stur	w16, [x0, #-256]
@@ -2334,16 +998,23 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w13, [x2, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  2      4     0.33    *                   ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w2, [x4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  2      4     0.33    *                   ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w26, [x3, #121]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w12, [x2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	xzr, [x15]
+# CHECK-NEXT:  2      4     0.33    *                   ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  2      1     0.50           *            str	x30, [sp]
 # CHECK-NEXT:  2      1     0.50           *            str	w20, [x4, #16380]
+# CHECK-NEXT:  2      2     0.50           *            str	b5, [x11]
+# CHECK-NEXT:  2      2     0.50           *            str	h23, [x15]
+# CHECK-NEXT:  2      2     0.50           *            str	s25, [x19]
+# CHECK-NEXT:  2      2     0.50           *            str	d15, [x2]
 # CHECK-NEXT:  2      1     0.50           *            strh	w17, [sp, #8190]
 # CHECK-NEXT:  2      1     0.50           *            strb	w23, [x3, #4095]
 # CHECK-NEXT:  2      1     0.50           *            strb	wzr, [x2]
@@ -2352,11 +1023,13 @@ drps
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s10, [x19, #16380]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	d3, [x10, #32760]
 # CHECK-NEXT:  2      2     0.50           *            str	q12, [sp, #65520]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	q14, [x6, #4624]
 # CHECK-NEXT:  2      4     0.33    *                   ldrb	w3, [sp, x5]
 # CHECK-NEXT:  2      4     0.33    *                   ldrb	w9, [x27, x6]
 # CHECK-NEXT:  2      4     0.33    *                   ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  2      4     0.33    *                   ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  3      1     0.50           *            strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  3      1     0.50           *            strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldrb	w17, [x23, w9, sxtw]
@@ -2373,6 +1046,18 @@ drps
 # CHECK-NEXT:  2      4     0.33    *                   ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  3      1     0.50           *            strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b8, [x30, x10]
+# CHECK-NEXT:  2      2     0.50           *            str	b14, [x13, x25]
+# CHECK-NEXT:  2      2     0.50           *            str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  2      7     0.33    *                   ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  2      7     0.33    *                   ldr	h11, [x13, x9]
+# CHECK-NEXT:  2      2     0.50           *            str	h16, [x5, x24]
+# CHECK-NEXT:  2      2     0.50           *            str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	d5, [x26, x6]
 # CHECK-NEXT:  2      4     0.33    *                   ldr	w3, [sp, x5]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s9, [x27, x6]
 # CHECK-NEXT:  2      4     0.33    *                   ldr	w10, [x30, x7, lsl #2]
@@ -2393,6 +1078,7 @@ drps
 # CHECK-NEXT:  2      4     0.33    *                   ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  1      4     0.33                  U     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  3      1     0.50           *            str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  2      4     0.33    *                   ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  2      4     0.33    *                   ldr	x18, [x22, w10, sxtw]
@@ -2424,6 +1110,8 @@ drps
 # CHECK-NEXT:  2      6     0.33    *                   ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  2      2     0.50           *            stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  2      2     0.50           *            stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  2      1     0.50           *            stnp	x20, x16, [x8]
+# CHECK-NEXT:  2      1     0.50           *            stp	x3, x6, [x16]
 # CHECK-NEXT:  2      6     0.33    *                   ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  3      2     1.00           *            stp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stp	q17, q19, [sp, #1008]
@@ -2482,6 +1170,12 @@ drps
 # CHECK-NEXT:  3      2     1.00           *            stnp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  3      6     0.67    *                   ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  1      1     0.25                        and	wsp, w16, #0xe00
+# CHECK-NEXT:  1      1     0.25                        and	x2, x22, #0x1e00
+# CHECK-NEXT:  1      1     0.25                        ands	w14, w8, #0x70
+# CHECK-NEXT:  1      1     0.25                        ands	x4, x10, #0x60
+# CHECK-NEXT:  1      1     0.25                        eor	wsp, w4, #0xe00
+# CHECK-NEXT:  1      1     0.25                        eor	x27, x25, #0x1e00
 # CHECK-NEXT:  1      1     0.25                        mov	w3, #983055
 # CHECK-NEXT:  1      1     0.25                        mov	x10, #-6148914691236517206
 # CHECK-NEXT:  1      1     0.25                        and	w12, w23, w21
@@ -2498,6 +1192,10 @@ drps
 # CHECK-NEXT:  1      1     0.25                        and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  1      1     0.25                        bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  1      1     0.25                        bic	w2, w7, w9
+# CHECK-NEXT:  1      1     0.25                        eon	w29, w4, w19
+# CHECK-NEXT:  1      1     0.25                        eon	x19, x12, x2
+# CHECK-NEXT:  1      1     0.25                        eor	w8, w27, w2
+# CHECK-NEXT:  1      1     0.25                        eor	x22, x16, x6
 # CHECK-NEXT:  1      1     0.25                        orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  1      1     0.25                        orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  1      1     0.25                        orn	x3, x5, x7, asr #2
@@ -2523,16 +1221,20 @@ drps
 # CHECK-NEXT:  1      1     0.25                        movk	x7, #0, lsl #32
 # CHECK-NEXT:  1      1     0.25                        movz	x8, #0, lsl #48
 # CHECK-NEXT:  1      1     0.25                        movk	x9, #0, lsl #48
+# CHECK-NEXT:  1      1     0.20                  U     msr	DAIFSet, #0
 # CHECK-NEXT:  1      1     0.25                        adr	x2, #1600
 # CHECK-NEXT:  1      1     0.25                        adrp	x21, #6553600
 # CHECK-NEXT:  1      1     0.25                        adr	x0, #262144
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #0
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #4
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #-32768
+# CHECK-NEXT:  1      1     0.50                        tbz	w17, #16, test
 # CHECK-NEXT:  1      1     0.50                        tbnz	x12, #60, #32764
+# CHECK-NEXT:  1      1     0.50                        tbnz	w3, #28, test
 # CHECK-NEXT:  1      1     0.50                        b	#4
 # CHECK-NEXT:  1      1     0.50                        b	#-4
 # CHECK-NEXT:  1      1     0.50                        b	#134217724
+# CHECK-NEXT:  2      1     0.50                        bl	test
 # CHECK-NEXT:  1      1     0.50                        br	x20
 # CHECK-NEXT:  2      1     0.50                        blr	xzr
 # CHECK-NEXT:  1      1     0.50                  U     ret	x10
@@ -2557,7 +1259,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]
-# CHECK-NEXT: 11.00  11.00  33.00  33.00  87.33  151.33 151.33 509.75 249.75 161.25 161.25 216.50 86.50
+# CHECK-NEXT: 13.00  13.00  34.00  34.00  88.33  158.33 158.33 538.00 252.00 167.50 167.50 253.00 100.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]    Instructions:
@@ -2580,22 +1282,22 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w2, #4095
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w20, wsp, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x3, #1, lsl #12
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	wsp, #2342
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	sp, #20, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x30, #4095
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x4, sp, #3822
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w3, #291, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	wsp, #1365
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	sp, x30
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	wsp, w20
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x11, sp
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	w24, wsp
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x10, #-63432
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	wsp, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x25, x9, w25, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w24, w25, w26, lsr #18
@@ -2609,7 +1311,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x27, x28, x29, lsr #63
@@ -2617,11 +1319,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x8, x9, x10, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w3, w5, w7
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w17, wsp, w25
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w24, w25, w26, lsr #18
@@ -2635,7 +1339,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x27, x28, x29, lsr #63
@@ -2646,7 +1350,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w24, w25, w26, lsr #18
@@ -2659,18 +1363,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w13, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w24, w25, w26, lsr #18
@@ -2683,7 +1390,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x27, x28, x29, lsr #63
@@ -2693,7 +1400,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w6, w7
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w14, w15, lsr #21
@@ -2706,7 +1413,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x6, x7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x16, x17, lsr #63
@@ -2717,19 +1424,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w6, w7
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w14, w15, lsr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w18, w19, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w20, w21, asr #22
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w22, w23, asr #31
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	wsp, w26
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x16, w27, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x0, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	xzr, x4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x6, x7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x16, x17, lsr #63
@@ -2738,6 +1447,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x22, x23, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	wzr, w0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	xzr, x0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	sp, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	wsp, w20
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x11, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	w24, wsp
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adc	w29, w27, w25
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adc	wzr, w3, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adc	w9, wzr, w10
@@ -2810,15 +1523,11 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	wzr, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	w3, w2, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w1, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	xzr, xzr, #10, #11
@@ -2830,11 +1539,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfi	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfi	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfi	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfi	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfc	xzr, #10, #11
@@ -2846,11 +1552,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	x2, x3, #63
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	x9, x10, #5
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ubfiz	xzr, xzr, #10, #11
@@ -2868,6 +1571,7 @@ drps
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbnz	x26, #1048572
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbz	wzr, #0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbnz	xzr, #0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbnz	w21, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b.ne	#4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b.ge	#1048572
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b.ge	#-4
@@ -2956,7 +1660,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cneg	xzr, x4, le
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cneg	x9, xzr, lt
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     csneg	x4, x8, x8, al
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     csinv	w9, w8, w8, nv
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     rbit	w0, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     rbit	x18, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     rev16	w17, w1
@@ -2988,6 +1691,16 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	x21, x22, x23
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	w24, w25, w26
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	x27, x28, x29
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32cb	w30, w23, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32cb	wzr, w12, w14
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32cb	w28, w10, w11
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32b	w27, w12, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32h	w3, w15, w21
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32w	w9, w18, w24
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32x	w19, w6, x25
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32ch	w25, w26, w16
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32cw	w27, w12, w23
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -      -     crc32cx	w21, w28, x5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	xzr, x27, x26
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umulh	x30, x29, x28
@@ -3030,7 +1743,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umnegl	x19, w20, w21
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     mul	x19, x20, xzr
@@ -3046,24 +1758,26 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.75   0.75   0.25   0.25    -      -     ror	x19, x23, #24
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.75   0.75   0.25   0.25    -      -     ror	x29, xzr, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.75   0.75   0.25   0.25    -      -     ror	w9, w13, #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	h5, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	h5, #0.0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	h22, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	h13, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	s3, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	s31, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	s31, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	s29, s30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	s15, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	s15, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	d4, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	d23, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	d23, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	d26, d22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	d29, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	d29, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	d9, d31, #0, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	s31, s15, #13, hs
@@ -3072,22 +1786,33 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	h18, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s0, s1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fabs	s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	h2, h9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	s4, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     9.00    -     fsqrt	s6, s7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	d8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	h10, s11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintn	h12, h3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintn	s12, s13
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintp	h17, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintp	s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintm	h0, h21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintm	s16, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintz	h10, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintz	s18, s19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinta	h22, h10
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinta	s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintx	h4, h5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintx	s22, s23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinti	s24, s25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinti	h31, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	d0, d1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fabs	d2, d3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	d4, d5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     7.00    -     fsqrt	h13, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     16.00   -     fsqrt	d6, d7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	s8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	h10, d11
@@ -3101,13 +1826,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	s26, h27
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	d28, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmul	s20, s19, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     7.00    -     fdiv	h1, h26, h23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     10.00   -     fdiv	s1, s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fadd	h23, h27, h22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fadd	s4, s5, s6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	h20, h11, h18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	s7, s8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	s10, s11, s12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	h8, h7, h11
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	s13, s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	h29, h13, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	s16, s17, s18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	s19, s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	h3, h15, h7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	s22, s23, s2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmul	d20, d19, d17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     15.00   -     fdiv	d1, d2, d3
@@ -3115,17 +1846,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	d7, d8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	d10, d11, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	d13, d14, d15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	h4, h13, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	d16, d17, d18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	d19, d20, d21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	h29, h23, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	d22, d23, d24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	w3, h5, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	w19, h0, #32
@@ -3270,12 +2007,17 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvtas	x27, d28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvtau	w29, d30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvtau	xzr, d0
+# CHECK-NEXT:  -      -      -      -      -      -      -     3.00    -      -      -      -      -     fmov	h6, w5
+# CHECK-NEXT:  -      -      -      -      -      -      -     3.00    -      -      -      -      -     fmov	h16, x27
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	w15, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	w3, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -     3.00    -      -      -      -      -     fmov	s9, w3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	x21, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	x20, d31
 # CHECK-NEXT:  -      -      -      -      -      -      -     3.00    -      -      -      -      -     fmov	d1, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	x3, v12.d[1]
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -     0.50   0.50   fmov	v1.d[1], x19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	h29, #0.50000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s2, #0.12500000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s3, #1.00000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	d30, #16.00000000
@@ -3299,13 +2041,10 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxrh	w17, [x4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	w22, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	x11, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxr	w9, w2, [x2]
@@ -3314,25 +2053,19 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxrh	w7, [x5]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	w6, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	x5, [x6]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	x27, [x28]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldarh	w22, [x30]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	wzr, [x29]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	x21, [x28]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     sturb	w9, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     sturh	wzr, [x12, #255]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stur	w16, [x0, #-256]
@@ -3518,16 +2251,23 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	w13, [x2, #4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrh	w2, [x4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w26, [x3, #121]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w12, [x2]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	xzr, [x15]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     str	x30, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     str	w20, [x4, #16380]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	b5, [x11]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	h23, [x15]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	s25, [x19]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	d15, [x2]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strh	w17, [sp, #8190]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strb	w23, [x3, #4095]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strb	wzr, [x2]
@@ -3536,11 +2276,13 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	s10, [x19, #16380]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	d3, [x10, #32760]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	q12, [sp, #65520]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	q14, [x6, #4624]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrb	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrb	w9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50   0.25   0.25   0.25   0.25    -      -     strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50   0.25   0.25   0.25   0.25    -      -     strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrb	w17, [x23, w9, sxtw]
@@ -3557,6 +2299,18 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50   0.25   0.25   0.25   0.25    -      -     strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	b8, [x30, x10]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	b14, [x13, x25]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	h11, [x13, x9]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	h16, [x5, x24]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	d5, [x26, x6]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	s9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	w10, [x30, x7, lsl #2]
@@ -3577,6 +2331,7 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50   0.25   0.25   0.25   0.25    -      -     str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33   0.25   0.25   0.25   0.25    -      -     ldr	x18, [x22, w10, sxtw]
@@ -3608,6 +2363,8 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stnp	x20, x16, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stp	x3, x6, [x16]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     1.00   1.00   stp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     1.00   1.00   stp	q17, q19, [sp, #1008]
@@ -3666,6 +2423,12 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     1.00   1.00   stnp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     1.00   1.00   stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -     ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	wsp, w16, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	x2, x22, #0x1e00
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ands	w14, w8, #0x70
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ands	x4, x10, #0x60
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	wsp, w4, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	x27, x25, #0x1e00
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	w3, #983055
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x10, #-6148914691236517206
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	w12, w23, w21
@@ -3682,6 +2445,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bic	w2, w7, w9
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eon	w29, w4, w19
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eon	x19, x12, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	w8, w27, w2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	x22, x16, x6
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     orn	x3, x5, x7, asr #2
@@ -3707,16 +2474,20 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     movk	x7, #0, lsl #32
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     movz	x8, #0, lsl #48
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     movk	x9, #0, lsl #48
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -     msr	DAIFSet, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adr	x2, #1600
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adrp	x21, #6553600
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adr	x0, #262144
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #-32768
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	w17, #16, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbnz	x12, #60, #32764
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbnz	w3, #28, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b	#4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b	#-4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b	#134217724
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     0.50   0.50    -      -     bl	test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     br	x20
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     0.50   0.50    -      -     blr	xzr
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     ret	x10
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-mte-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-mte-instructions.s
index c497eec223427..814a58d8de613 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-mte-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-mte-instructions.s
@@ -1,111 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n2 -instruction-tables < %s | FileCheck %s
-
-irg	x0, x1
-irg	sp, x1
-irg	x0, sp
-irg	x0, x1, x2
-irg	sp, x1, x2
-addg	x0, x1, #0, #1
-addg	sp, x2, #32, #3
-addg	x0, sp, #64, #5
-addg	x3, x4, #1008, #6
-addg	x5, x6, #112, #15
-subg	x0, x1, #0, #1
-subg	sp, x2, #32, #3
-subg	x0, sp, #64, #5
-subg	x3, x4, #1008, #6
-subg	x5, x6, #112, #15
-gmi	x0, x1, x2
-gmi	x3, sp, x4
-gmi	xzr, x0, x30
-gmi	x30, x0, xzr
-subp	x0, x1, x2
-subps	x0, x1, x2
-subp	x0, sp, sp
-subps	x0, sp, sp
-subps	xzr, x0, x1
-subps	xzr, sp, sp
-stg	x0, [x1, #-4096]
-stg	x1, [x2, #4080]
-stg	x2, [sp, #16]
-stg	x3, [x1]
-stg	sp, [x1]
-stzg	x0, [x1, #-4096]
-stzg	x1, [x2, #4080]
-stzg	x2, [sp, #16]
-stzg	x3, [x1]
-stzg	sp, [x1]
-stg	x0, [x1, #-4096]!
-stg	x1, [x2, #4080]!
-stg	x2, [sp, #16]!
-stg	sp, [sp, #16]!
-stzg	x0, [x1, #-4096]!
-stzg	x1, [x2, #4080]!
-stzg	x2, [sp, #16]!
-stzg	sp, [sp, #16]!
-stg	x0, [x1], #-4096
-stg	x1, [x2], #4080
-stg	x2, [sp], #16
-stg	sp, [sp], #16
-stzg	x0, [x1], #-4096
-stzg	x1, [x2], #4080
-stzg	x2, [sp], #16
-stzg	sp, [sp], #16
-st2g	x0, [x1, #-4096]
-st2g	x1, [x2, #4080]
-st2g	x2, [sp, #16]
-st2g	x3, [x1]
-st2g	sp, [x1]
-stz2g	x0, [x1, #-4096]
-stz2g	x1, [x2, #4080]
-stz2g	x2, [sp, #16]
-stz2g	x3, [x1]
-stz2g	sp, [x1]
-st2g	x0, [x1, #-4096]!
-st2g	x1, [x2, #4080]!
-st2g	x2, [sp, #16]!
-st2g	sp, [sp, #16]!
-stz2g	x0, [x1, #-4096]!
-stz2g	x1, [x2, #4080]!
-stz2g	x2, [sp, #16]!
-stz2g	sp, [sp, #16]!
-st2g	x0, [x1], #-4096
-st2g	x1, [x2], #4080
-st2g	x2, [sp], #16
-st2g	sp, [sp], #16
-stz2g	x0, [x1], #-4096
-stz2g	x1, [x2], #4080
-stz2g	x2, [sp], #16
-stz2g	sp, [sp], #16
-stgp	x0, x1, [x2, #-1024]
-stgp	x0, x1, [x2, #1008]
-stgp	x0, x1, [sp, #16]
-stgp	xzr, x1, [x2, #16]
-stgp	x0, xzr, [x2, #16]
-stgp	x0, xzr, [x2]
-stgp	x0, x1, [x2, #-1024]!
-stgp	x0, x1, [x2, #1008]!
-stgp	x0, x1, [sp, #16]!
-stgp	xzr, x1, [x2, #16]!
-stgp	x0, xzr, [x2, #16]!
-stgp	x0, x1, [x2], #-1024
-stgp	x0, x1, [x2], #1008
-stgp	x0, x1, [sp], #16
-stgp	xzr, x1, [x2], #16
-stgp	x0, xzr, [x2], #16
-ldg	x0, [x1]
-ldg	x2, [sp, #-4096]
-ldg	x3, [x4, #4080]
-ldgm	x0, [x1]
-ldgm	x1, [sp]
-ldgm	xzr, [x2]
-stgm	x0, [x1]
-stgm	x1, [sp]
-stgm	xzr, [x2]
-stzgm	x0, [x1]
-stzgm	x1, [sp]
-stzgm	xzr, [x2]
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n2 -instruction-tables < %p/Inputs/mte-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..cd3d7e0bf1b57
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-rcpc-immo-instructions.s
@@ -0,0 +1,60 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n2 -instruction-tables < %p/Inputs/rcpc-immo-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:  2      1     0.50    *                   ldapur	w7, [x24]
+# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
+# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
+# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
+# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
+# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - N2UnitB
+# CHECK-NEXT: [0.1] - N2UnitB
+# CHECK-NEXT: [1.0] - N2UnitD
+# CHECK-NEXT: [1.1] - N2UnitD
+# CHECK-NEXT: [2]   - N2UnitL2
+# CHECK-NEXT: [3.0] - N2UnitL01
+# CHECK-NEXT: [3.1] - N2UnitL01
+# CHECK-NEXT: [4]   - N2UnitM0
+# CHECK-NEXT: [5]   - N2UnitM1
+# CHECK-NEXT: [6.0] - N2UnitS
+# CHECK-NEXT: [6.1] - N2UnitS
+# CHECK-NEXT: [7]   - N2UnitV0
+# CHECK-NEXT: [8]   - N2UnitV1
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]
+# CHECK-NEXT:  -      -     6.50   6.50    -     6.50   6.50    -      -      -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]    Instructions:
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapur	w7, [x24]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapur	x20, [x13]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapurb	w13, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapurh	w3, [x22]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursb	w7, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursb	x29, [x7]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursh	w17, [x19]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursh	x3, [x3]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursw	x3, [x18]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlur	w3, [x27]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlur	x23, [x25]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlurb	w30, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlurh	w9, [x29]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s
index 5f48217f8fab9..bee2c9d684067 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-basic-instructions.s
@@ -1,1372 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n3 -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #10
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #63
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #10
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #63
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #10
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #63
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #10
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #63
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #15
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #63
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #15
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #63
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsr      w3, w2, #0
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfx     w9, w10, #0, #1
-sbfiz    x2, x3, #63, #1
-asr      x19, x20, #0
-sbfiz    x9, x10, #5, #59
-asr      w9, w10, #0
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfi      x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfi      x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsl      x2, x3, #63
-lsr      x19, x20, #0
-lsl      x9, x10, #5
-lsr      w9, w10, #0
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-csinv    w9, w8, w8, nv
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror    x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x30, x29, x28
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror     x19, x23, #24
-ror     x29, xzr, #63
-ror     w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     s0, s1
-fabs     s2, s3
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   s12, s13
-frintp   s14, s15
-frintm   s16, s17
-frintz   s18, s19
-frinta   s20, s21
-frintx   s22, s23
-frinti   s24, s25
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     s1, s2, s3
-fadd     s4, s5, s6
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmin     s13, s14, s15
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     w3, s9
-fmov     s9, w3
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldaxp      x6, x19, [x22]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlr       x27, [x28]
-stlr       x27, [x28]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-ldar       x21, [x28]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-str      x30, [sp]
-str      w20, [x4, #16380]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbnz    x12, #60, #32764
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n3 -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -1396,22 +29,22 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	w2, #4095
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wsp, #0
 # CHECK-NEXT:  1      1     0.25                        cmn	x3, #1, lsl #12
+# CHECK-NEXT:  1      1     0.25                        cmp	wsp, #2342
 # CHECK-NEXT:  1      1     0.25                        cmp	sp, #20, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmp	x30, #4095
 # CHECK-NEXT:  1      1     0.25                        subs	x4, sp, #3822
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, #291, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmn	wsp, #1365
 # CHECK-NEXT:  1      1     0.25                        cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  1      1     0.25                        mov	sp, x30
-# CHECK-NEXT:  1      1     0.25                        mov	wsp, w20
-# CHECK-NEXT:  1      1     0.25                        mov	x11, sp
-# CHECK-NEXT:  1      1     0.25                        mov	w24, wsp
+# CHECK-NEXT:  1      1     0.25                        mov	x10, #-63432
+# CHECK-NEXT:  1      2     0.50                        add	wsp, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        add	x25, x9, w25, uxtb
 # CHECK-NEXT:  1      1     0.25                        add	w3, w5, w7
 # CHECK-NEXT:  1      1     0.25                        add	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.25                        add	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.25                        add	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        add	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	w24, w25, w26, lsr #18
@@ -1425,7 +58,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        add	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        add	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        add	x27, x28, x29, lsr #63
@@ -1433,11 +66,13 @@ drps
 # CHECK-NEXT:  1      2     0.50                        add	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        add	x8, x9, x10, asr #63
 # CHECK-NEXT:  1      1     0.25                        adds	w3, w5, w7
+# CHECK-NEXT:  1      2     0.50                        adds	w17, wsp, w25
+# CHECK-NEXT:  1      2     0.50                        adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, w5
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.25                        adds	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        adds	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	w24, w25, w26, lsr #18
@@ -1451,7 +86,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        adds	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        adds	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        adds	x27, x28, x29, lsr #63
@@ -1462,7 +97,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        sub	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.25                        sub	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        sub	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	w24, w25, w26, lsr #18
@@ -1475,18 +110,21 @@ drps
 # CHECK-NEXT:  1      1     0.25                        sub	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        sub	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  1      2     0.50                        sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  1      2     0.50                        sub	w13, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  1      2     0.50                        subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  1      1     0.25                        subs	w3, w5, w7
 # CHECK-NEXT:  1      1     0.25                        cmp	w3, w5
 # CHECK-NEXT:  1      1     0.25                        subs	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        subs	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	w24, w25, w26, lsr #18
@@ -1499,7 +137,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        subs	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        subs	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        subs	x27, x28, x29, lsr #63
@@ -1509,7 +147,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmn	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmn	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmn	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmn	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmn	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmn	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	w14, w15, lsr #21
@@ -1522,7 +160,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmn	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmn	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmn	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmn	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmn	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmn	x16, x17, lsr #63
@@ -1533,19 +171,21 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmp	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmp	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmp	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmp	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmp	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmp	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w14, w15, lsr #21
 # CHECK-NEXT:  1      2     0.50                        cmp	w18, w19, asr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w20, w21, asr #22
 # CHECK-NEXT:  1      2     0.50                        cmp	w22, w23, asr #31
+# CHECK-NEXT:  1      2     0.50                        cmp	wsp, w26
+# CHECK-NEXT:  1      2     0.50                        cmp	x16, w27, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmp	x0, x3
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x4
 # CHECK-NEXT:  1      1     0.25                        cmp	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmp	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmp	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmp	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmp	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmp	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmp	x16, x17, lsr #63
@@ -1554,6 +194,10 @@ drps
 # CHECK-NEXT:  1      2     0.50                        cmp	x22, x23, asr #63
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w0
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x0
+# CHECK-NEXT:  1      1     0.25                        mov	sp, x30
+# CHECK-NEXT:  1      1     0.25                        mov	wsp, w20
+# CHECK-NEXT:  1      1     0.25                        mov	x11, sp
+# CHECK-NEXT:  1      1     0.25                        mov	w24, wsp
 # CHECK-NEXT:  1      1     0.25                        adc	w29, w27, w25
 # CHECK-NEXT:  1      1     0.25                        adc	wzr, w3, w4
 # CHECK-NEXT:  1      1     0.25                        adc	w9, wzr, w10
@@ -1626,15 +270,11 @@ drps
 # CHECK-NEXT:  1      1     0.25                        lsr	w9, w10, #31
 # CHECK-NEXT:  1      1     0.25                        lsr	x20, x21, #63
 # CHECK-NEXT:  1      1     0.25                        lsr	wzr, wzr, #3
-# CHECK-NEXT:  1      1     0.25                        lsr	w3, w2, #0
 # CHECK-NEXT:  1      1     0.25                        lsl	w9, w10, #31
 # CHECK-NEXT:  1      1     0.25                        lsl	x20, x21, #63
 # CHECK-NEXT:  1      1     0.25                        lsl	w1, wzr, #3
-# CHECK-NEXT:  1      1     0.25                        sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.25                        sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.25                        asr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.25                        sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.25                        asr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.25                        sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.25                        sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.25                        sbfiz	xzr, xzr, #10, #11
@@ -1646,11 +286,8 @@ drps
 # CHECK-NEXT:  1      1     0.25                        asr	w11, w12, #31
 # CHECK-NEXT:  1      1     0.25                        asr	w13, w14, #29
 # CHECK-NEXT:  1      1     0.25                        sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.25                        bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.25                        bfi	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.25                        bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  1      1     0.25                        bfi	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.25                        bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  1      1     0.25                        bfi	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.25                        bfi	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.25                        bfc	xzr, #10, #11
@@ -1662,11 +299,8 @@ drps
 # CHECK-NEXT:  1      1     0.25                        bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.25                        bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.25                        bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.25                        ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.25                        lsl	x2, x3, #63
-# CHECK-NEXT:  1      1     0.25                        lsr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.25                        lsl	x9, x10, #5
-# CHECK-NEXT:  1      1     0.25                        lsr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.25                        lsl	w11, w12, #31
 # CHECK-NEXT:  1      1     0.25                        lsl	w13, w14, #29
 # CHECK-NEXT:  1      1     0.25                        ubfiz	xzr, xzr, #10, #11
@@ -1684,6 +318,7 @@ drps
 # CHECK-NEXT:  1      1     0.50                        cbnz	x26, #1048572
 # CHECK-NEXT:  1      1     0.50                        cbz	wzr, #0
 # CHECK-NEXT:  1      1     0.50                        cbnz	xzr, #0
+# CHECK-NEXT:  1      1     0.50                        cbnz	w21, test
 # CHECK-NEXT:  1      1     0.50                        b.ne	#4
 # CHECK-NEXT:  1      1     0.50                        b.ge	#1048572
 # CHECK-NEXT:  1      1     0.50                        b.ge	#-4
@@ -1772,7 +407,6 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cneg	xzr, x4, le
 # CHECK-NEXT:  1      1     0.25                        cneg	x9, xzr, lt
 # CHECK-NEXT:  1      1     0.25                        csneg	x4, x8, x8, al
-# CHECK-NEXT:  1      1     0.25                        csinv	w9, w8, w8, nv
 # CHECK-NEXT:  1      1     0.25                        rbit	w0, w7
 # CHECK-NEXT:  1      1     0.25                        rbit	x18, x3
 # CHECK-NEXT:  1      1     0.25                        rev16	w17, w1
@@ -1804,6 +438,16 @@ drps
 # CHECK-NEXT:  1      1     0.25                        asr	x21, x22, x23
 # CHECK-NEXT:  1      1     0.25                        ror	w24, w25, w26
 # CHECK-NEXT:  1      1     0.25                        ror	x27, x28, x29
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w30, w23, w15
+# CHECK-NEXT:  1      2     1.00                        crc32cb	wzr, w12, w14
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w28, w10, w11
+# CHECK-NEXT:  1      2     1.00                        crc32b	w27, w12, w15
+# CHECK-NEXT:  1      2     1.00                        crc32h	w3, w15, w21
+# CHECK-NEXT:  1      2     1.00                        crc32w	w9, w18, w24
+# CHECK-NEXT:  1      2     1.00                        crc32x	w19, w6, x25
+# CHECK-NEXT:  1      2     1.00                        crc32ch	w25, w26, w16
+# CHECK-NEXT:  1      2     1.00                        crc32cw	w27, w12, w23
+# CHECK-NEXT:  1      2     1.00                        crc32cx	w21, w28, x5
 # CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	xzr, x27, x26
 # CHECK-NEXT:  1      3     0.50                        umulh	x30, x29, x28
@@ -1846,7 +490,6 @@ drps
 # CHECK-NEXT:  1      2     1.00                        umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  1      2     1.00                        umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  1      2     0.50                        umnegl	x19, w20, w21
-# CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	x23, x22, xzr
 # CHECK-NEXT:  1      3     0.50                        umulh	x23, x22, xzr
 # CHECK-NEXT:  1      2     0.50                        mul	x19, x20, xzr
@@ -1862,24 +505,26 @@ drps
 # CHECK-NEXT:  1      1     0.25                        ror	x19, x23, #24
 # CHECK-NEXT:  1      1     0.25                        ror	x29, xzr, #63
 # CHECK-NEXT:  1      1     0.25                        ror	w9, w13, #31
+# CHECK-NEXT:  1      2     0.50                        fcmp	h5, h21
+# CHECK-NEXT:  1      2     0.50                        fcmp	h5, #0.0
+# CHECK-NEXT:  1      2     0.50                        fcmpe	h22, h21
+# CHECK-NEXT:  1      2     0.50                        fcmpe	h13, #0.0
 # CHECK-NEXT:  1      2     0.50                        fcmp	s3, s5
 # CHECK-NEXT:  1      2     0.50                        fcmp	s31, #0.0
-# CHECK-NEXT:  1      2     0.50                        fcmp	s31, #0.0
 # CHECK-NEXT:  1      2     0.50                        fcmpe	s29, s30
 # CHECK-NEXT:  1      2     0.50                        fcmpe	s15, #0.0
-# CHECK-NEXT:  1      2     0.50                        fcmpe	s15, #0.0
 # CHECK-NEXT:  1      2     0.50                        fcmp	d4, d12
 # CHECK-NEXT:  1      2     0.50                        fcmp	d23, #0.0
-# CHECK-NEXT:  1      2     0.50                        fcmp	d23, #0.0
 # CHECK-NEXT:  1      2     0.50                        fcmpe	d26, d22
 # CHECK-NEXT:  1      2     0.50                        fcmpe	d29, #0.0
-# CHECK-NEXT:  1      2     0.50                        fcmpe	d29, #0.0
 # CHECK-NEXT:  1      2     0.50                        fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     0.50                        fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     0.50                        fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  1      2     0.50                        fccmp	d9, d31, #0, le
 # CHECK-NEXT:  1      2     0.50                        fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  1      2     0.50                        fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  1      2     0.50                        fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  1      2     0.50                        fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  1      2     0.50                        fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     0.50                        fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     0.50                        fccmpe	s31, s15, #13, hs
@@ -1888,22 +533,33 @@ drps
 # CHECK-NEXT:  1      2     0.50                        fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  1      2     0.50                        fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  1      2     0.50                        fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  1      2     0.50                        fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  1      2     0.50                        fmov	h18, h28
 # CHECK-NEXT:  1      0     0.20                        fmov	s0, s1
 # CHECK-NEXT:  1      2     0.50                        fabs	s2, s3
+# CHECK-NEXT:  1      2     0.50                        fneg	h2, h9
 # CHECK-NEXT:  1      2     0.50                        fneg	s4, s5
 # CHECK-NEXT:  1      7     1.00                        fsqrt	s6, s7
 # CHECK-NEXT:  1      3     1.00                        fcvt	d8, s9
 # CHECK-NEXT:  1      3     1.00                        fcvt	h10, s11
+# CHECK-NEXT:  1      3     1.00                        frintn	h12, h3
 # CHECK-NEXT:  1      3     1.00                        frintn	s12, s13
+# CHECK-NEXT:  1      3     1.00                        frintp	h17, h31
 # CHECK-NEXT:  1      3     1.00                        frintp	s14, s15
+# CHECK-NEXT:  1      3     1.00                        frintm	h0, h21
 # CHECK-NEXT:  1      3     1.00                        frintm	s16, s17
+# CHECK-NEXT:  1      3     1.00                        frintz	h10, h29
 # CHECK-NEXT:  1      3     1.00                        frintz	s18, s19
+# CHECK-NEXT:  1      3     1.00                        frinta	h22, h10
 # CHECK-NEXT:  1      3     1.00                        frinta	s20, s21
+# CHECK-NEXT:  1      3     1.00                        frintx	h4, h5
 # CHECK-NEXT:  1      3     1.00                        frintx	s22, s23
 # CHECK-NEXT:  1      3     1.00                        frinti	s24, s25
+# CHECK-NEXT:  1      3     1.00                        frinti	h31, h14
 # CHECK-NEXT:  1      0     0.20                        fmov	d0, d1
 # CHECK-NEXT:  1      2     0.50                        fabs	d2, d3
 # CHECK-NEXT:  1      2     0.50                        fneg	d4, d5
+# CHECK-NEXT:  1      5     1.00                        fsqrt	h13, h24
 # CHECK-NEXT:  1      12    1.00                        fsqrt	d6, d7
 # CHECK-NEXT:  1      3     1.00                        fcvt	s8, d9
 # CHECK-NEXT:  1      3     1.00                        fcvt	h10, d11
@@ -1917,13 +573,19 @@ drps
 # CHECK-NEXT:  1      3     1.00                        fcvt	s26, h27
 # CHECK-NEXT:  1      3     1.00                        fcvt	d28, h29
 # CHECK-NEXT:  1      3     0.50                        fmul	s20, s19, s17
+# CHECK-NEXT:  1      5     1.00                        fdiv	h1, h26, h23
 # CHECK-NEXT:  1      7     1.00                        fdiv	s1, s2, s3
+# CHECK-NEXT:  1      2     0.50                        fadd	h23, h27, h22
 # CHECK-NEXT:  1      2     0.50                        fadd	s4, s5, s6
+# CHECK-NEXT:  1      2     0.50                        fsub	h20, h11, h18
 # CHECK-NEXT:  1      2     0.50                        fsub	s7, s8, s9
 # CHECK-NEXT:  1      2     0.50                        fmax	s10, s11, s12
+# CHECK-NEXT:  1      2     0.50                        fmax	h8, h7, h11
 # CHECK-NEXT:  1      2     0.50                        fmin	s13, s14, s15
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	h29, h13, h14
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	s16, s17, s18
 # CHECK-NEXT:  1      2     0.50                        fminnm	s19, s20, s21
+# CHECK-NEXT:  1      3     0.50                        fnmul	h3, h15, h7
 # CHECK-NEXT:  1      3     0.50                        fnmul	s22, s23, s2
 # CHECK-NEXT:  1      3     0.50                        fmul	d20, d19, d17
 # CHECK-NEXT:  1      12    1.00                        fdiv	d1, d2, d3
@@ -1931,17 +593,23 @@ drps
 # CHECK-NEXT:  1      2     0.50                        fsub	d7, d8, d9
 # CHECK-NEXT:  1      2     0.50                        fmax	d10, d11, d12
 # CHECK-NEXT:  1      2     0.50                        fmin	d13, d14, d15
+# CHECK-NEXT:  1      2     0.50                        fmin	h4, h13, h17
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	d16, d17, d18
 # CHECK-NEXT:  1      2     0.50                        fminnm	d19, d20, d21
+# CHECK-NEXT:  1      2     0.50                        fminnm	h29, h23, h17
 # CHECK-NEXT:  1      3     0.50                        fnmul	d22, d23, d24
+# CHECK-NEXT:  1      4     0.50                        fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  1      4     0.50                        fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  1      4     0.50                        fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  1      4     0.50                        fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  1      4     0.50                        fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w3, h5, #1
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w19, h0, #32
@@ -2086,12 +754,17 @@ drps
 # CHECK-NEXT:  1      3     1.00                        fcvtas	x27, d28
 # CHECK-NEXT:  1      3     1.00                        fcvtau	w29, d30
 # CHECK-NEXT:  1      3     1.00                        fcvtau	xzr, d0
+# CHECK-NEXT:  1      3     1.00                        fmov	h6, w5
+# CHECK-NEXT:  1      3     1.00                        fmov	h16, x27
+# CHECK-NEXT:  1      3     0.50                        fmov	w15, h31
 # CHECK-NEXT:  1      3     0.50                        fmov	w3, s9
 # CHECK-NEXT:  1      3     1.00                        fmov	s9, w3
+# CHECK-NEXT:  1      3     0.50                        fmov	x21, h14
 # CHECK-NEXT:  1      3     0.50                        fmov	x20, d31
 # CHECK-NEXT:  1      3     1.00                        fmov	d1, x15
 # CHECK-NEXT:  1      3     0.50                        fmov	x3, v12.d[1]
 # CHECK-NEXT:  2      5     1.00                        fmov	v1.d[1], x19
+# CHECK-NEXT:  1      2     0.50                        fmov	h29, #0.50000000
 # CHECK-NEXT:  1      2     0.50                        fmov	s2, #0.12500000
 # CHECK-NEXT:  1      2     0.50                        fmov	s3, #1.00000000
 # CHECK-NEXT:  1      2     0.50                        fmov	d30, #16.00000000
@@ -2115,13 +788,10 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxrh	w17, [x4]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	w22, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxr	w9, w2, [x2]
@@ -2130,25 +800,19 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxrh	w7, [x5]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	w6, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
+# CHECK-NEXT:  1      4     0.33    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarh	w22, [x30]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	wzr, [x29]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
 # CHECK-NEXT:  2      1     0.50           *            sturb	w9, [sp]
 # CHECK-NEXT:  2      1     0.50           *            sturh	wzr, [x12, #255]
 # CHECK-NEXT:  2      1     0.50           *            stur	w16, [x0, #-256]
@@ -2334,16 +998,23 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w13, [x2, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w2, [x4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w26, [x3, #121]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w12, [x2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	xzr, [x15]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  2      1     0.50           *            str	x30, [sp]
 # CHECK-NEXT:  2      1     0.50           *            str	w20, [x4, #16380]
+# CHECK-NEXT:  2      2     0.50           *            str	b5, [x11]
+# CHECK-NEXT:  2      2     0.50           *            str	h23, [x15]
+# CHECK-NEXT:  2      2     0.50           *            str	s25, [x19]
+# CHECK-NEXT:  2      2     0.50           *            str	d15, [x2]
 # CHECK-NEXT:  2      1     0.50           *            strh	w17, [sp, #8190]
 # CHECK-NEXT:  2      1     0.50           *            strb	w23, [x3, #4095]
 # CHECK-NEXT:  2      1     0.50           *            strb	wzr, [x2]
@@ -2352,11 +1023,13 @@ drps
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s10, [x19, #16380]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	d3, [x10, #32760]
 # CHECK-NEXT:  2      2     0.50           *            str	q12, [sp, #65520]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	q14, [x6, #4624]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w3, [sp, x5]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  2      1     0.50           *            strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  2      1     0.50           *            strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w17, [x23, w9, sxtw]
@@ -2373,6 +1046,18 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  2      1     0.50           *            strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b8, [x30, x10]
+# CHECK-NEXT:  2      2     0.50           *            str	b14, [x13, x25]
+# CHECK-NEXT:  2      2     0.50           *            str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h11, [x13, x9]
+# CHECK-NEXT:  2      2     0.50           *            str	h16, [x5, x24]
+# CHECK-NEXT:  2      2     0.50           *            str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	d5, [x26, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w3, [sp, x5]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w10, [x30, x7, lsl #2]
@@ -2393,6 +1078,7 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  1      4     0.33                  U     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  2      1     0.50           *            str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x18, [x22, w10, sxtw]
@@ -2424,6 +1110,8 @@ drps
 # CHECK-NEXT:  1      6     0.33    *                   ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  2      2     0.50           *            stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  2      2     0.50           *            stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  2      1     0.50           *            stnp	x20, x16, [x8]
+# CHECK-NEXT:  2      1     0.50           *            stp	x3, x6, [x16]
 # CHECK-NEXT:  1      6     0.33    *                   ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  2      2     0.50           *            stp	q3, q5, [sp]
 # CHECK-NEXT:  2      2     0.50           *            stp	q17, q19, [sp, #1008]
@@ -2482,6 +1170,12 @@ drps
 # CHECK-NEXT:  2      2     0.50           *            stnp	q3, q5, [sp]
 # CHECK-NEXT:  2      2     0.50           *            stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  2      6     0.67    *                   ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  1      1     0.25                        and	wsp, w16, #0xe00
+# CHECK-NEXT:  1      1     0.25                        and	x2, x22, #0x1e00
+# CHECK-NEXT:  1      1     0.25                        ands	w14, w8, #0x70
+# CHECK-NEXT:  1      1     0.25                        ands	x4, x10, #0x60
+# CHECK-NEXT:  1      1     0.25                        eor	wsp, w4, #0xe00
+# CHECK-NEXT:  1      1     0.25                        eor	x27, x25, #0x1e00
 # CHECK-NEXT:  1      1     0.25                        mov	w3, #983055
 # CHECK-NEXT:  1      1     0.25                        mov	x10, #-6148914691236517206
 # CHECK-NEXT:  1      1     0.25                        and	w12, w23, w21
@@ -2498,6 +1192,10 @@ drps
 # CHECK-NEXT:  1      1     0.25                        and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  1      1     0.25                        bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  1      1     0.25                        bic	w2, w7, w9
+# CHECK-NEXT:  1      1     0.25                        eon	w29, w4, w19
+# CHECK-NEXT:  1      1     0.25                        eon	x19, x12, x2
+# CHECK-NEXT:  1      1     0.25                        eor	w8, w27, w2
+# CHECK-NEXT:  1      1     0.25                        eor	x22, x16, x6
 # CHECK-NEXT:  1      1     0.25                        orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  1      1     0.25                        orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  1      1     0.25                        orn	x3, x5, x7, asr #2
@@ -2523,16 +1221,20 @@ drps
 # CHECK-NEXT:  1      1     0.25                        movk	x7, #0, lsl #32
 # CHECK-NEXT:  1      1     0.25                        movz	x8, #0, lsl #48
 # CHECK-NEXT:  1      1     0.25                        movk	x9, #0, lsl #48
+# CHECK-NEXT:  1      1     0.25                  U     msr	DAIFSet, #0
 # CHECK-NEXT:  1      1     0.50                        adr	x2, #1600
 # CHECK-NEXT:  1      1     0.50                        adrp	x21, #6553600
 # CHECK-NEXT:  1      1     0.50                        adr	x0, #262144
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #0
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #4
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #-32768
+# CHECK-NEXT:  1      1     0.50                        tbz	w17, #16, test
 # CHECK-NEXT:  1      1     0.50                        tbnz	x12, #60, #32764
+# CHECK-NEXT:  1      1     0.50                        tbnz	w3, #28, test
 # CHECK-NEXT:  1      1     0.50                        b	#4
 # CHECK-NEXT:  1      1     0.50                        b	#-4
 # CHECK-NEXT:  1      1     0.50                        b	#134217724
+# CHECK-NEXT:  2      1     0.50                        bl	test
 # CHECK-NEXT:  1      1     0.50                        br	x20
 # CHECK-NEXT:  2      1     0.50                        blr	xzr
 # CHECK-NEXT:  1      1     0.50                  U     ret	x10
@@ -2557,7 +1259,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]
-# CHECK-NEXT: 11.00  11.00  33.00  33.00  99.33  163.33 163.33 356.50 211.50 155.00 155.00 183.50 63.50
+# CHECK-NEXT: 13.00  13.00  34.00  34.00  100.33 170.33 170.33 370.00 213.00 159.00 159.00 207.00 78.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]    Instructions:
@@ -2580,22 +1282,22 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w2, #4095
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w20, wsp, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x3, #1, lsl #12
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	wsp, #2342
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	sp, #20, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x30, #4095
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x4, sp, #3822
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w3, #291, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	wsp, #1365
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	sp, x30
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	wsp, w20
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x11, sp
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	w24, wsp
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x10, #-63432
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	wsp, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x25, x9, w25, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	w24, w25, w26, lsr #18
@@ -2609,7 +1311,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x27, x28, x29, lsr #63
@@ -2617,11 +1319,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     add	x8, x9, x10, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w3, w5, w7
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w17, wsp, w25
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	w24, w25, w26, lsr #18
@@ -2635,7 +1339,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     adds	x27, x28, x29, lsr #63
@@ -2646,7 +1350,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w24, w25, w26, lsr #18
@@ -2659,18 +1363,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	w13, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	w24, w25, w26, lsr #18
@@ -2683,7 +1390,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     subs	x27, x28, x29, lsr #63
@@ -2693,7 +1400,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w6, w7
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	w14, w15, lsr #21
@@ -2706,7 +1413,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x6, x7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmn	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmn	x16, x17, lsr #63
@@ -2717,19 +1424,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w6, w7
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w14, w15, lsr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w18, w19, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w20, w21, asr #22
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	w22, w23, asr #31
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	wsp, w26
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x16, w27, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x0, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	xzr, x4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x6, x7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x16, x17, lsr #63
@@ -2738,6 +1447,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     cmp	x22, x23, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	wzr, w0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cmp	xzr, x0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	sp, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	wsp, w20
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x11, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	w24, wsp
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adc	w29, w27, w25
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adc	wzr, w3, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     adc	w9, wzr, w10
@@ -2810,15 +1523,11 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	wzr, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	w3, w2, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w1, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfiz	xzr, xzr, #10, #11
@@ -2830,11 +1539,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfi	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfi	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfi	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfi	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfc	xzr, #10, #11
@@ -2846,11 +1552,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	x2, x3, #63
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	x9, x10, #5
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     lsl	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ubfiz	xzr, xzr, #10, #11
@@ -2868,6 +1571,7 @@ drps
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbnz	x26, #1048572
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbz	wzr, #0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbnz	xzr, #0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cbnz	w21, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b.ne	#4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b.ge	#1048572
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b.ge	#-4
@@ -2956,7 +1660,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cneg	xzr, x4, le
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     cneg	x9, xzr, lt
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     csneg	x4, x8, x8, al
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     csinv	w9, w8, w8, nv
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     rbit	w0, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     rbit	x18, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     rev16	w17, w1
@@ -2988,6 +1691,16 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     asr	x21, x22, x23
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	w24, w25, w26
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	x27, x28, x29
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32cb	w30, w23, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32cb	wzr, w12, w14
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32cb	w28, w10, w11
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32b	w27, w12, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32h	w3, w15, w21
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32w	w9, w18, w24
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32x	w19, w6, x25
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32ch	w25, w26, w16
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32cw	w27, w12, w23
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     crc32cx	w21, w28, x5
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	xzr, x27, x26
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umulh	x30, x29, x28
@@ -3030,7 +1743,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umnegl	x19, w20, w21
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     smulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     umulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     mul	x19, x20, xzr
@@ -3046,24 +1758,26 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	x19, x23, #24
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	x29, xzr, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ror	w9, w13, #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	h5, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	h5, #0.0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	h22, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	h13, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	s3, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	s31, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	s31, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	s29, s30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	s15, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	s15, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	d4, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	d23, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmp	d23, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	d26, d22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	d29, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcmpe	d29, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	d9, d31, #0, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmpe	s31, s15, #13, hs
@@ -3072,22 +1786,33 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	h18, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -     fmov	s0, s1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fabs	s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	h2, h9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	s4, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fsqrt	s6, s7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	d8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	h10, s11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintn	h12, h3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintn	s12, s13
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintp	h17, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintp	s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintm	h0, h21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintm	s16, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintz	h10, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintz	s18, s19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinta	h22, h10
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinta	s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintx	h4, h5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintx	s22, s23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinti	s24, s25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinti	h31, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -     fmov	d0, d1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fabs	d2, d3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	d4, d5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fsqrt	h13, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fsqrt	d6, d7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	s8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	h10, d11
@@ -3101,13 +1826,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	s26, h27
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvt	d28, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmul	s20, s19, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fdiv	h1, h26, h23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fdiv	s1, s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fadd	h23, h27, h22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fadd	s4, s5, s6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	h20, h11, h18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	s7, s8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	s10, s11, s12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	h8, h7, h11
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	s13, s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	h29, h13, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	s16, s17, s18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	s19, s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	h3, h15, h7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	s22, s23, s2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmul	d20, d19, d17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fdiv	d1, d2, d3
@@ -3115,17 +1846,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	d7, d8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	d10, d11, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	d13, d14, d15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	h4, h13, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	d16, d17, d18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	d19, d20, d21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	h29, h23, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	d22, d23, d24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	w3, h5, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	w19, h0, #32
@@ -3270,12 +2007,17 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtas	x27, d28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtau	w29, d30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtau	xzr, d0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     fmov	h6, w5
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     fmov	h16, x27
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	w15, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	w3, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     fmov	s9, w3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	x21, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	x20, d31
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     fmov	d1, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	x3, v12.d[1]
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -     0.50   0.50   fmov	v1.d[1], x19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	h29, #0.50000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s2, #0.12500000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s3, #1.00000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	d30, #16.00000000
@@ -3299,13 +2041,10 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxrh	w17, [x4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	w22, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxr	x11, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxr	w9, w2, [x2]
@@ -3314,25 +2053,19 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxrh	w7, [x5]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	w6, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxr	x5, [x6]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50   0.33   0.83   0.83    -      -      -      -      -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlr	x27, [x28]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldarh	w22, [x30]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	wzr, [x29]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldar	x21, [x28]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     sturb	w9, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     sturh	wzr, [x12, #255]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stur	w16, [x0, #-256]
@@ -3518,16 +2251,23 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	w13, [x2, #4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrh	w2, [x4]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w26, [x3, #121]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w12, [x2]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	xzr, [x15]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     str	x30, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     str	w20, [x4, #16380]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	b5, [x11]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	h23, [x15]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	s25, [x19]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	d15, [x2]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strh	w17, [sp, #8190]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strb	w23, [x3, #4095]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strb	wzr, [x2]
@@ -3536,11 +2276,13 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	s10, [x19, #16380]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	d3, [x10, #32760]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	q12, [sp, #65520]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	q14, [x6, #4624]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrb	w17, [x23, w9, sxtw]
@@ -3557,6 +2299,18 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	b8, [x30, x10]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	b14, [x13, x25]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	h11, [x13, x9]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	h16, [x5, x24]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   str	d5, [x26, x6]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	s9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	w10, [x30, x7, lsl #2]
@@ -3577,6 +2331,7 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldr	x18, [x22, w10, sxtw]
@@ -3608,6 +2363,8 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stnp	x20, x16, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stp	x3, x6, [x16]
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -     ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stp	q17, q19, [sp, #1008]
@@ -3666,6 +2423,12 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stnp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50   stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -     ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	wsp, w16, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	x2, x22, #0x1e00
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ands	w14, w8, #0x70
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     ands	x4, x10, #0x60
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	wsp, w4, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	x27, x25, #0x1e00
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	w3, #983055
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     mov	x10, #-6148914691236517206
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	w12, w23, w21
@@ -3682,6 +2445,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     bic	w2, w7, w9
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eon	w29, w4, w19
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eon	x19, x12, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	w8, w27, w2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     eor	x22, x16, x6
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     orn	x3, x5, x7, asr #2
@@ -3707,16 +2474,20 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     movk	x7, #0, lsl #32
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     movz	x8, #0, lsl #48
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     movk	x9, #0, lsl #48
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -     msr	DAIFSet, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     adr	x2, #1600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     adrp	x21, #6553600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     adr	x0, #262144
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #-32768
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbz	w17, #16, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbnz	x12, #60, #32764
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     tbnz	w3, #28, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b	#4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b	#-4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     b	#134217724
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     0.50   0.50    -      -     bl	test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     br	x20
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     0.50   0.50    -      -     blr	xzr
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     ret	x10
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-mte-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-mte-instructions.s
index 132dd8eb220d4..114e21549e326 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-mte-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-mte-instructions.s
@@ -1,111 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n3 -instruction-tables < %s | FileCheck %s
-
-irg	x0, x1
-irg	sp, x1
-irg	x0, sp
-irg	x0, x1, x2
-irg	sp, x1, x2
-addg	x0, x1, #0, #1
-addg	sp, x2, #32, #3
-addg	x0, sp, #64, #5
-addg	x3, x4, #1008, #6
-addg	x5, x6, #112, #15
-subg	x0, x1, #0, #1
-subg	sp, x2, #32, #3
-subg	x0, sp, #64, #5
-subg	x3, x4, #1008, #6
-subg	x5, x6, #112, #15
-gmi	x0, x1, x2
-gmi	x3, sp, x4
-gmi	xzr, x0, x30
-gmi	x30, x0, xzr
-subp	x0, x1, x2
-subps	x0, x1, x2
-subp	x0, sp, sp
-subps	x0, sp, sp
-subps	xzr, x0, x1
-subps	xzr, sp, sp
-stg	x0, [x1, #-4096]
-stg	x1, [x2, #4080]
-stg	x2, [sp, #16]
-stg	x3, [x1]
-stg	sp, [x1]
-stzg	x0, [x1, #-4096]
-stzg	x1, [x2, #4080]
-stzg	x2, [sp, #16]
-stzg	x3, [x1]
-stzg	sp, [x1]
-stg	x0, [x1, #-4096]!
-stg	x1, [x2, #4080]!
-stg	x2, [sp, #16]!
-stg	sp, [sp, #16]!
-stzg	x0, [x1, #-4096]!
-stzg	x1, [x2, #4080]!
-stzg	x2, [sp, #16]!
-stzg	sp, [sp, #16]!
-stg	x0, [x1], #-4096
-stg	x1, [x2], #4080
-stg	x2, [sp], #16
-stg	sp, [sp], #16
-stzg	x0, [x1], #-4096
-stzg	x1, [x2], #4080
-stzg	x2, [sp], #16
-stzg	sp, [sp], #16
-st2g	x0, [x1, #-4096]
-st2g	x1, [x2, #4080]
-st2g	x2, [sp, #16]
-st2g	x3, [x1]
-st2g	sp, [x1]
-stz2g	x0, [x1, #-4096]
-stz2g	x1, [x2, #4080]
-stz2g	x2, [sp, #16]
-stz2g	x3, [x1]
-stz2g	sp, [x1]
-st2g	x0, [x1, #-4096]!
-st2g	x1, [x2, #4080]!
-st2g	x2, [sp, #16]!
-st2g	sp, [sp, #16]!
-stz2g	x0, [x1, #-4096]!
-stz2g	x1, [x2, #4080]!
-stz2g	x2, [sp, #16]!
-stz2g	sp, [sp, #16]!
-st2g	x0, [x1], #-4096
-st2g	x1, [x2], #4080
-st2g	x2, [sp], #16
-st2g	sp, [sp], #16
-stz2g	x0, [x1], #-4096
-stz2g	x1, [x2], #4080
-stz2g	x2, [sp], #16
-stz2g	sp, [sp], #16
-stgp	x0, x1, [x2, #-1024]
-stgp	x0, x1, [x2, #1008]
-stgp	x0, x1, [sp, #16]
-stgp	xzr, x1, [x2, #16]
-stgp	x0, xzr, [x2, #16]
-stgp	x0, xzr, [x2]
-stgp	x0, x1, [x2, #-1024]!
-stgp	x0, x1, [x2, #1008]!
-stgp	x0, x1, [sp, #16]!
-stgp	xzr, x1, [x2, #16]!
-stgp	x0, xzr, [x2, #16]!
-stgp	x0, x1, [x2], #-1024
-stgp	x0, x1, [x2], #1008
-stgp	x0, x1, [sp], #16
-stgp	xzr, x1, [x2], #16
-stgp	x0, xzr, [x2], #16
-ldg	x0, [x1]
-ldg	x2, [sp, #-4096]
-ldg	x3, [x4, #4080]
-ldgm	x0, [x1]
-ldgm	x1, [sp]
-ldgm	xzr, [x2]
-stgm	x0, [x1]
-stgm	x1, [sp]
-stgm	xzr, [x2]
-stzgm	x0, [x1]
-stzgm	x1, [sp]
-stzgm	xzr, [x2]
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n3 -instruction-tables < %p/Inputs/mte-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..6faa5e1f4db1b
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-rcpc-immo-instructions.s
@@ -0,0 +1,60 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-n3 -instruction-tables < %p/Inputs/rcpc-immo-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:  2      1     0.50    *                   ldapur	w7, [x24]
+# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
+# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
+# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
+# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
+# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - N3UnitB
+# CHECK-NEXT: [0.1] - N3UnitB
+# CHECK-NEXT: [1.0] - N3UnitD
+# CHECK-NEXT: [1.1] - N3UnitD
+# CHECK-NEXT: [2]   - N3UnitL2
+# CHECK-NEXT: [3.0] - N3UnitL01
+# CHECK-NEXT: [3.1] - N3UnitL01
+# CHECK-NEXT: [4]   - N3UnitM0
+# CHECK-NEXT: [5]   - N3UnitM1
+# CHECK-NEXT: [6.0] - N3UnitS
+# CHECK-NEXT: [6.1] - N3UnitS
+# CHECK-NEXT: [7]   - N3UnitV0
+# CHECK-NEXT: [8]   - N3UnitV1
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]
+# CHECK-NEXT:  -      -     6.50   6.50    -     6.50   6.50    -      -      -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2]    [3.0]  [3.1]  [4]    [5]    [6.0]  [6.1]  [7]    [8]    Instructions:
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapur	w7, [x24]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapur	x20, [x13]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapurb	w13, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapurh	w3, [x22]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursb	w7, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursb	x29, [x7]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursh	w17, [x19]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursh	x3, [x3]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     ldapursw	x3, [x18]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlur	w3, [x27]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlur	x23, [x25]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlurb	w30, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -     0.50   0.50    -      -      -      -      -      -     stlurh	w9, [x29]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
index 787acbe91c057..b4def4e20ce78 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
@@ -1,1459 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v1 -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      wsp, #2342
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      x10, #-63432
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      wsp, wsp, w10
-add      x25, x9, w25, uxtb
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #1
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #3
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-adds     w17, wsp, w25
-adds     x13, x23, w8, uxtb
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #1
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #3
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #1
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #3
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-sub      w13, wsp, w10
-sub      x16, x2, w19, uxtb
-subs     x13, x15, x14, sxtx #1
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #1
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #3
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #1
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #3
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #1
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      wsp, w26
-cmp      x16, w27, uxtb
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #3
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfiz    x2, x3, #63, #1
-sbfiz    x9, x10, #5, #59
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfi      x2, x3, #63, #1
-bfi      x9, x10, #5, #59
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-lsl      x2, x3, #63
-lsl      x9, x10, #5
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-cbnz     w21, test
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror     x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-crc32cb  w30, w23, w15
-crc32cb  w31, w12, w14
-crc32cb  w28, w10, w11
-crc32b   w27, w12, w15
-crc32h   w3, w15, w21
-crc32w   w9, w18, w24
-crc32x   w19, w6, x25
-crc32ch  w25, w26, w16
-crc32cw  w27, w12, w23
-crc32cx  w21, w28, x5
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror      x19, x23, #24
-ror      x29, xzr, #63
-ror      w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    h5, h21
-fcmp    h5, #0.0
-fcmpe   h22, h21
-fcmpe   h13, #0.0
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmp h31, h3, #11, hs
-fccmpe h6, h1, #12, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-fcsel h26, h2, h11, hs
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     h18, h28
-fmov     s0, s1
-fabs     s2, s3
-fneg     h2, h9
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   h12, h3
-frintn   s12, s13
-frintp   h17, h31
-frintp   s14, s15
-frintm   h0, h21
-frintm   s16, s17
-frintz   h10, h29
-frintz   s18, s19
-frinta   h22, h10
-frinta   s20, s21
-frintx   h4, h5
-frintx   s22, s23
-frinti   s24, s25
-frinti   h31, h14
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    h13, h24
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     h1, h26, h23
-fdiv     s1, s2, s3
-fadd     h23, h27, h22
-fadd     s4, s5, s6
-fsub     h20, h11, h18
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmax     h8, h7, h11
-fmin     s13, s14, s15
-fmaxnm   h29, h13, h14
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    h3, h15, h7
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmin     h4, h13, h17
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fminnm   h29, h23, h17
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd h27, h0, h6, h28
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub h25, h28, h12, h24
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd h3, h18, h31, h24
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-fnmsub h3, h29, h24, h17
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     h6, w5
-fmov     h16, x27
-fmov     w15, h31
-fmov     w3, s9
-fmov     s9, w3
-fmov     x21, h14
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     h29, #0.50000000
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldapur     w7, [x24]
-ldapur     x20, [x13]
-ldapurb    w13, [x17]
-ldapurh    w3, [x22]
-ldapursb   w7, [x8]
-ldapursb   x29, [x7]
-ldapursh   w17, [x19]
-ldapursh   x3, [x3]
-ldapursw   x3, [x18]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlur      w3, [x27]
-stlur      x23, [x25]
-stlurb     w30, [x17]
-stlurh     w9, [x29]
-ldarb      w16, [x21]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrsw    x21, [x25, x7]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrsh    x25, [x8, w13, uxtw]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-ldrsb    x12, [x28, x27]
-str      x30, [sp]
-str      w20, [x4, #16380]
-str      b5, [x11]
-str      h23, [x15]
-str      s25, [x19]
-str      d15, [x2]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-ldr      q14, [x6, #4624]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-strb     w5, [x26, w7, uxtw]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      b25, [x21, w8, uxtw]
-ldr      b8, [x30, x10]
-str      b14, [x13, x25]
-str      b30, [x16, w26, uxtw]
-ldr      h6, [x4, w4, uxtw]
-ldr      h11, [x13, x9]
-str      h16, [x5, x24]
-str      h15, [x15, w15, uxtw]
-ldr      s12, [x30, w5, uxtw]
-ldr      d24, [x26, w7, uxtw]
-str      s20, [x24, w10, uxtw]
-str      d5, [x26, x6]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-str      x27, [x26, w24, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-stnp     x20, x16, [x8]
-stp      x3, x6, [x16]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-and      wsp, w16, #0xe00
-and      x2, x22, #0x1e00
-ands     w14, w8, #0x70
-ands     x4, x10, #0x60
-eor      wsp, w4, #0xe00
-eor      x27, x25, #0x1e00
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-eon      w29, w4, w19
-eon      x19, x12, x2
-eor      w8, w27, w2
-eor      x22, x16, x6
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# Move immediate to Special Register
-#------------------------------------------------------------------------------
-
-msr     DAIFSet, #0
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbz     w17, #16, test
-tbnz    x12, #60, #32764
-tbnz	w3, #28, test
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-bl       test
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v1 -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -2258,23 +804,10 @@ drps
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  2      4     0.67    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  2      4     0.67    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  2      1     0.50    *                   ldapur	w7, [x24]
-# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
-# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
-# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
-# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
-# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
-# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
-# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
-# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
-# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
-# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
-# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarh	w22, [x30]
@@ -2731,7 +1264,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7.0]  [7.1]  [8]    [9]    [10]   [11]
-# CHECK-NEXT: 13.00  13.00  40.50  40.50  48.00  48.00  48.00  96.67  175.17 175.17 321.25 208.25 140.75 140.75 189.00 55.50  65.50  13.00
+# CHECK-NEXT: 13.00  13.00  34.00  34.00  48.00  48.00  48.00  96.67  168.67 168.67 321.25 208.25 140.75 140.75 189.00 55.50  65.50  13.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7.0]  [7.1]  [8]    [9]    [10]   [11]   Instructions:
@@ -3529,23 +2062,10 @@ drps
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapur	w7, [x24]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapur	x20, [x13]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapurb	w13, [x17]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapurh	w3, [x22]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursb	w7, [x8]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursb	x29, [x7]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursh	w17, [x19]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursh	x3, [x3]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursw	x3, [x18]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlur	w3, [x27]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlur	x23, [x25]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlurb	w30, [x17]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlurh	w9, [x29]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -     ldarh	w22, [x30]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..5c9b43a0e5121
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-rcpc-immo-instructions.s
@@ -0,0 +1,65 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v1 -instruction-tables < %p/Inputs/rcpc-immo-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:  2      1     0.50    *                   ldapur	w7, [x24]
+# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
+# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
+# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
+# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
+# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - V1UnitB
+# CHECK-NEXT: [0.1] - V1UnitB
+# CHECK-NEXT: [1.0] - V1UnitD
+# CHECK-NEXT: [1.1] - V1UnitD
+# CHECK-NEXT: [2.0] - V1UnitFlg
+# CHECK-NEXT: [2.1] - V1UnitFlg
+# CHECK-NEXT: [2.2] - V1UnitFlg
+# CHECK-NEXT: [3]   - V1UnitL2
+# CHECK-NEXT: [4.0] - V1UnitL01
+# CHECK-NEXT: [4.1] - V1UnitL01
+# CHECK-NEXT: [5]   - V1UnitM0
+# CHECK-NEXT: [6]   - V1UnitM1
+# CHECK-NEXT: [7.0] - V1UnitS
+# CHECK-NEXT: [7.1] - V1UnitS
+# CHECK-NEXT: [8]   - V1UnitV0
+# CHECK-NEXT: [9]   - V1UnitV1
+# CHECK-NEXT: [10]  - V1UnitV2
+# CHECK-NEXT: [11]  - V1UnitV3
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7.0]  [7.1]  [8]    [9]    [10]   [11]
+# CHECK-NEXT:  -      -     6.50   6.50    -      -      -      -     6.50   6.50    -      -      -      -      -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7.0]  [7.1]  [8]    [9]    [10]   [11]   Instructions:
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapur	w7, [x24]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapur	x20, [x13]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapurb	w13, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapurh	w3, [x22]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursb	w7, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursb	x29, [x7]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursh	w17, [x19]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursh	x3, [x3]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     ldapursw	x3, [x18]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlur	w3, [x27]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlur	x23, [x25]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlurb	w30, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     stlurh	w9, [x29]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
index 54b5f1644be48..6d869ad4a845b 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-basic-instructions.s
@@ -1,1386 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v2 -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #10
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #63
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #10
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #63
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #10
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #63
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #10
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #63
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #15
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #63
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #15
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #63
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsr      w3, w2, #0
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfx     w9, w10, #0, #1
-sbfiz    x2, x3, #63, #1
-asr      x19, x20, #0
-sbfiz    x9, x10, #5, #59
-asr      w9, w10, #0
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfi      x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfi      x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsl      x2, x3, #63
-lsr      x19, x20, #0
-lsl      x9, x10, #5
-lsr      w9, w10, #0
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-csinv    w9, w8, w8, nv
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror    x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x30, x29, x28
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror     x19, x23, #24
-ror     x29, xzr, #63
-ror     w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     s0, s1
-fabs     s2, s3
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   s12, s13
-frintp   s14, s15
-frintm   s16, s17
-frintz   s18, s19
-frinta   s20, s21
-frintx   s22, s23
-frinti   s24, s25
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     s1, s2, s3
-fadd     s4, s5, s6
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmin     s13, s14, s15
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     w3, s9
-fmov     s9, w3
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldaxp      x6, x19, [x22]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlr       x27, [x28]
-stlr       x27, [x28]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-ldar       x21, [x28]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-str      x30, [sp]
-str      w20, [x4, #16380]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldr      h3, [sp, x5]
-ldr      h9, [x27, x6]
-ldr      h10, [x30, x7, lsl #1]
-str      h11, [x29, x3, sxtx]
-str      h12, [x28, xzr, sxtx]
-str      h13, [x27, x5, sxtx #1]
-ldr      h14, [x26, w6, uxtw]
-ldr      h15, [x25, w7, uxtw]
-ldr      h16, [x24, w8, uxtw #1]
-ldr      h17, [x23, w9, sxtw]
-str      h18, [x22, w10, sxtw]
-ldr      h19, [x21, wzr, sxtw #1]
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-ands     w4, w4, #983055
-ands     x11, x11, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbnz    x12, #60, #32764
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v2 -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -1410,22 +29,22 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmn	w2, #4095
 # CHECK-NEXT:  1      1     0.33                        adds	w20, wsp, #0
 # CHECK-NEXT:  1      1     0.33                        cmn	x3, #1, lsl #12
+# CHECK-NEXT:  1      1     0.33                        cmp	wsp, #2342
 # CHECK-NEXT:  1      1     0.33                        cmp	sp, #20, lsl #12
 # CHECK-NEXT:  1      1     0.33                        cmp	x30, #4095
 # CHECK-NEXT:  1      1     0.33                        subs	x4, sp, #3822
 # CHECK-NEXT:  1      1     0.33                        cmn	w3, #291, lsl #12
 # CHECK-NEXT:  1      1     0.33                        cmn	wsp, #1365
 # CHECK-NEXT:  1      1     0.33                        cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  1      1     0.17                        mov	sp, x30
-# CHECK-NEXT:  1      1     0.17                        mov	wsp, w20
-# CHECK-NEXT:  1      1     0.17                        mov	x11, sp
-# CHECK-NEXT:  1      1     0.17                        mov	w24, wsp
+# CHECK-NEXT:  1      1     0.17                        mov	x10, #-63432
+# CHECK-NEXT:  1      2     0.50                        add	wsp, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        add	x25, x9, w25, uxtb
 # CHECK-NEXT:  1      1     0.17                        add	w3, w5, w7
 # CHECK-NEXT:  1      1     0.17                        add	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.17                        add	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.17                        add	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.17                        add	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.17                        add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	w24, w25, w26, lsr #18
@@ -1439,7 +58,7 @@ drps
 # CHECK-NEXT:  1      1     0.17                        add	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.17                        add	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.17                        add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        add	x27, x28, x29, lsr #63
@@ -1447,11 +66,13 @@ drps
 # CHECK-NEXT:  1      2     0.50                        add	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        add	x8, x9, x10, asr #63
 # CHECK-NEXT:  1      1     0.33                        adds	w3, w5, w7
+# CHECK-NEXT:  1      2     0.50                        adds	w17, wsp, w25
+# CHECK-NEXT:  1      2     0.50                        adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  1      1     0.33                        cmn	w3, w5
 # CHECK-NEXT:  1      1     0.33                        adds	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.33                        adds	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.33                        adds	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.33                        adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	w24, w25, w26, lsr #18
@@ -1465,7 +86,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        adds	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.33                        adds	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.33                        adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        adds	x27, x28, x29, lsr #63
@@ -1476,7 +97,7 @@ drps
 # CHECK-NEXT:  1      1     0.17                        sub	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.17                        sub	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.17                        sub	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.17                        sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	w24, w25, w26, lsr #18
@@ -1489,18 +110,21 @@ drps
 # CHECK-NEXT:  1      1     0.17                        sub	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.17                        sub	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.17                        sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  1      2     0.50                        sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  1      2     0.50                        sub	w13, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  1      2     0.50                        subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  1      1     0.33                        subs	w3, w5, w7
 # CHECK-NEXT:  1      1     0.33                        cmp	w3, w5
 # CHECK-NEXT:  1      1     0.33                        subs	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.33                        subs	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.33                        subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	w24, w25, w26, lsr #18
@@ -1513,7 +137,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        subs	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.33                        subs	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.33                        subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        subs	x27, x28, x29, lsr #63
@@ -1523,7 +147,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmn	wzr, w4
 # CHECK-NEXT:  1      1     0.33                        cmn	w5, wzr
 # CHECK-NEXT:  1      1     0.33                        cmn	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmn	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.33                        cmn	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmn	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmn	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	w14, w15, lsr #21
@@ -1536,7 +160,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmn	x5, xzr
 # CHECK-NEXT:  1      1     0.33                        cmn	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmn	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmn	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.33                        cmn	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmn	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmn	x16, x17, lsr #63
@@ -1547,19 +171,21 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cmp	wzr, w4
 # CHECK-NEXT:  1      1     0.33                        cmp	w5, wzr
 # CHECK-NEXT:  1      1     0.33                        cmp	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmp	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.33                        cmp	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmp	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmp	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w14, w15, lsr #21
 # CHECK-NEXT:  1      2     0.50                        cmp	w18, w19, asr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w20, w21, asr #22
 # CHECK-NEXT:  1      2     0.50                        cmp	w22, w23, asr #31
+# CHECK-NEXT:  1      2     0.50                        cmp	wsp, w26
+# CHECK-NEXT:  1      2     0.50                        cmp	x16, w27, uxtb
 # CHECK-NEXT:  1      1     0.33                        cmp	x0, x3
 # CHECK-NEXT:  1      1     0.33                        cmp	xzr, x4
 # CHECK-NEXT:  1      1     0.33                        cmp	x5, xzr
 # CHECK-NEXT:  1      1     0.33                        cmp	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmp	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmp	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.33                        cmp	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmp	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmp	x16, x17, lsr #63
@@ -1568,6 +194,10 @@ drps
 # CHECK-NEXT:  1      2     0.50                        cmp	x22, x23, asr #63
 # CHECK-NEXT:  1      1     0.33                        cmp	wzr, w0
 # CHECK-NEXT:  1      1     0.33                        cmp	xzr, x0
+# CHECK-NEXT:  1      1     0.17                        mov	sp, x30
+# CHECK-NEXT:  1      1     0.17                        mov	wsp, w20
+# CHECK-NEXT:  1      1     0.17                        mov	x11, sp
+# CHECK-NEXT:  1      1     0.17                        mov	w24, wsp
 # CHECK-NEXT:  1      1     0.17                        adc	w29, w27, w25
 # CHECK-NEXT:  1      1     0.17                        adc	wzr, w3, w4
 # CHECK-NEXT:  1      1     0.17                        adc	w9, wzr, w10
@@ -1640,15 +270,11 @@ drps
 # CHECK-NEXT:  1      1     0.17                        lsr	w9, w10, #31
 # CHECK-NEXT:  1      1     0.17                        lsr	x20, x21, #63
 # CHECK-NEXT:  1      1     0.17                        lsr	wzr, wzr, #3
-# CHECK-NEXT:  1      1     0.17                        lsr	w3, w2, #0
 # CHECK-NEXT:  1      1     0.17                        lsl	w9, w10, #31
 # CHECK-NEXT:  1      1     0.17                        lsl	x20, x21, #63
 # CHECK-NEXT:  1      1     0.17                        lsl	w1, wzr, #3
-# CHECK-NEXT:  1      1     0.17                        sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.17                        sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.17                        asr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.17                        sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.17                        asr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.17                        sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.17                        sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.17                        sbfiz	xzr, xzr, #10, #11
@@ -1660,11 +286,8 @@ drps
 # CHECK-NEXT:  1      1     0.17                        asr	w11, w12, #31
 # CHECK-NEXT:  1      1     0.17                        asr	w13, w14, #29
 # CHECK-NEXT:  1      1     0.17                        sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	x2, x3, #63, #1
-# CHECK-NEXT:  1      2     0.50                        bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  1      2     0.50                        bfi	x9, x10, #5, #59
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  1      2     0.50                        bfi	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfc	xzr, #10, #11
@@ -1676,11 +299,8 @@ drps
 # CHECK-NEXT:  1      2     0.50                        bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.17                        ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.17                        lsl	x2, x3, #63
-# CHECK-NEXT:  1      1     0.17                        lsr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.17                        lsl	x9, x10, #5
-# CHECK-NEXT:  1      1     0.17                        lsr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.17                        lsl	w11, w12, #31
 # CHECK-NEXT:  1      1     0.17                        lsl	w13, w14, #29
 # CHECK-NEXT:  1      1     0.17                        ubfiz	xzr, xzr, #10, #11
@@ -1698,6 +318,7 @@ drps
 # CHECK-NEXT:  1      1     0.50                        cbnz	x26, #1048572
 # CHECK-NEXT:  1      1     0.50                        cbz	wzr, #0
 # CHECK-NEXT:  1      1     0.50                        cbnz	xzr, #0
+# CHECK-NEXT:  1      1     0.50                        cbnz	w21, test
 # CHECK-NEXT:  1      1     0.50                        b.ne	#4
 # CHECK-NEXT:  1      1     0.50                        b.ge	#1048572
 # CHECK-NEXT:  1      1     0.50                        b.ge	#-4
@@ -1786,7 +407,6 @@ drps
 # CHECK-NEXT:  1      1     0.17                        cneg	xzr, x4, le
 # CHECK-NEXT:  1      1     0.17                        cneg	x9, xzr, lt
 # CHECK-NEXT:  1      1     0.17                        csneg	x4, x8, x8, al
-# CHECK-NEXT:  1      1     0.17                        csinv	w9, w8, w8, nv
 # CHECK-NEXT:  1      1     0.17                        rbit	w0, w7
 # CHECK-NEXT:  1      1     0.17                        rbit	x18, x3
 # CHECK-NEXT:  1      1     0.17                        rev16	w17, w1
@@ -1818,6 +438,16 @@ drps
 # CHECK-NEXT:  1      1     0.17                        asr	x21, x22, x23
 # CHECK-NEXT:  1      1     0.17                        ror	w24, w25, w26
 # CHECK-NEXT:  1      1     0.17                        ror	x27, x28, x29
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w30, w23, w15
+# CHECK-NEXT:  1      2     1.00                        crc32cb	wzr, w12, w14
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w28, w10, w11
+# CHECK-NEXT:  1      2     1.00                        crc32b	w27, w12, w15
+# CHECK-NEXT:  1      2     1.00                        crc32h	w3, w15, w21
+# CHECK-NEXT:  1      2     1.00                        crc32w	w9, w18, w24
+# CHECK-NEXT:  1      2     1.00                        crc32x	w19, w6, x25
+# CHECK-NEXT:  1      2     1.00                        crc32ch	w25, w26, w16
+# CHECK-NEXT:  1      2     1.00                        crc32cw	w27, w12, w23
+# CHECK-NEXT:  1      2     1.00                        crc32cx	w21, w28, x5
 # CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	xzr, x27, x26
 # CHECK-NEXT:  1      3     0.50                        umulh	x30, x29, x28
@@ -1860,7 +490,6 @@ drps
 # CHECK-NEXT:  1      2     1.00                        umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  1      2     1.00                        umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  1      2     0.50                        umnegl	x19, w20, w21
-# CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	x23, x22, xzr
 # CHECK-NEXT:  1      3     0.50                        umulh	x23, x22, xzr
 # CHECK-NEXT:  1      2     0.50                        mul	x19, x20, xzr
@@ -1876,24 +505,26 @@ drps
 # CHECK-NEXT:  1      1     0.17                        ror	x19, x23, #24
 # CHECK-NEXT:  1      1     0.17                        ror	x29, xzr, #63
 # CHECK-NEXT:  1      1     0.17                        ror	w9, w13, #31
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, h21
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h22, h21
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h13, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	s3, s5
 # CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s29, s30
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	d4, d12
 # CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d26, d22
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
 # CHECK-NEXT:  1      2     1.00                        fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	d9, d31, #0, le
 # CHECK-NEXT:  1      2     1.00                        fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  1      2     1.00                        fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  1      2     1.00                        fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  1      2     1.00                        fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s31, s15, #13, hs
@@ -1902,22 +533,33 @@ drps
 # CHECK-NEXT:  1      2     1.00                        fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  1      2     0.25                        fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  1      2     0.25                        fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  1      2     0.25                        fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  1      2     0.25                        fmov	h18, h28
 # CHECK-NEXT:  1      2     0.25                        fmov	s0, s1
 # CHECK-NEXT:  1      2     0.25                        fabs	s2, s3
+# CHECK-NEXT:  1      2     0.25                        fneg	h2, h9
 # CHECK-NEXT:  1      2     0.25                        fneg	s4, s5
 # CHECK-NEXT:  1      9     1.00                        fsqrt	s6, s7
 # CHECK-NEXT:  1      3     0.50                        fcvt	d8, s9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, s11
+# CHECK-NEXT:  1      3     0.50                        frintn	h12, h3
 # CHECK-NEXT:  1      3     0.50                        frintn	s12, s13
+# CHECK-NEXT:  1      3     0.50                        frintp	h17, h31
 # CHECK-NEXT:  1      3     0.50                        frintp	s14, s15
+# CHECK-NEXT:  1      3     0.50                        frintm	h0, h21
 # CHECK-NEXT:  1      3     0.50                        frintm	s16, s17
+# CHECK-NEXT:  1      3     0.50                        frintz	h10, h29
 # CHECK-NEXT:  1      3     0.50                        frintz	s18, s19
+# CHECK-NEXT:  1      3     0.50                        frinta	h22, h10
 # CHECK-NEXT:  1      3     0.50                        frinta	s20, s21
+# CHECK-NEXT:  1      3     0.50                        frintx	h4, h5
 # CHECK-NEXT:  1      3     0.50                        frintx	s22, s23
 # CHECK-NEXT:  1      3     0.50                        frinti	s24, s25
+# CHECK-NEXT:  1      3     0.50                        frinti	h31, h14
 # CHECK-NEXT:  1      2     0.25                        fmov	d0, d1
 # CHECK-NEXT:  1      2     0.25                        fabs	d2, d3
 # CHECK-NEXT:  1      2     0.25                        fneg	d4, d5
+# CHECK-NEXT:  1      7     1.00                        fsqrt	h13, h24
 # CHECK-NEXT:  1      16    4.00                        fsqrt	d6, d7
 # CHECK-NEXT:  1      3     0.50                        fcvt	s8, d9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, d11
@@ -1931,13 +573,19 @@ drps
 # CHECK-NEXT:  1      3     0.50                        fcvt	s26, h27
 # CHECK-NEXT:  1      3     0.50                        fcvt	d28, h29
 # CHECK-NEXT:  1      3     0.25                        fmul	s20, s19, s17
+# CHECK-NEXT:  1      7     1.00                        fdiv	h1, h26, h23
 # CHECK-NEXT:  1      10    1.00                        fdiv	s1, s2, s3
+# CHECK-NEXT:  1      2     0.25                        fadd	h23, h27, h22
 # CHECK-NEXT:  1      2     0.25                        fadd	s4, s5, s6
+# CHECK-NEXT:  1      2     0.25                        fsub	h20, h11, h18
 # CHECK-NEXT:  1      2     0.25                        fsub	s7, s8, s9
 # CHECK-NEXT:  1      2     0.25                        fmax	s10, s11, s12
+# CHECK-NEXT:  1      2     0.25                        fmax	h8, h7, h11
 # CHECK-NEXT:  1      2     0.25                        fmin	s13, s14, s15
+# CHECK-NEXT:  1      2     0.25                        fmaxnm	h29, h13, h14
 # CHECK-NEXT:  1      2     0.25                        fmaxnm	s16, s17, s18
 # CHECK-NEXT:  1      2     0.25                        fminnm	s19, s20, s21
+# CHECK-NEXT:  1      3     0.25                        fnmul	h3, h15, h7
 # CHECK-NEXT:  1      3     0.25                        fnmul	s22, s23, s2
 # CHECK-NEXT:  1      3     0.25                        fmul	d20, d19, d17
 # CHECK-NEXT:  1      15    4.00                        fdiv	d1, d2, d3
@@ -1945,17 +593,23 @@ drps
 # CHECK-NEXT:  1      2     0.25                        fsub	d7, d8, d9
 # CHECK-NEXT:  1      2     0.25                        fmax	d10, d11, d12
 # CHECK-NEXT:  1      2     0.25                        fmin	d13, d14, d15
+# CHECK-NEXT:  1      2     0.25                        fmin	h4, h13, h17
 # CHECK-NEXT:  1      2     0.25                        fmaxnm	d16, d17, d18
 # CHECK-NEXT:  1      2     0.25                        fminnm	d19, d20, d21
+# CHECK-NEXT:  1      2     0.25                        fminnm	h29, h23, h17
 # CHECK-NEXT:  1      3     0.25                        fnmul	d22, d23, d24
+# CHECK-NEXT:  1      4     0.25                        fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  1      4     0.25                        fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.25                        fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  1      4     0.25                        fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.25                        fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  1      4     0.25                        fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  1      4     0.25                        fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.25                        fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w3, h5, #1
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w19, h0, #32
@@ -2100,12 +754,17 @@ drps
 # CHECK-NEXT:  1      3     1.00                        fcvtas	x27, d28
 # CHECK-NEXT:  1      3     1.00                        fcvtau	w29, d30
 # CHECK-NEXT:  1      3     1.00                        fcvtau	xzr, d0
+# CHECK-NEXT:  1      3     1.00                        fmov	h6, w5
+# CHECK-NEXT:  1      3     1.00                        fmov	h16, x27
+# CHECK-NEXT:  2      2     1.00                        fmov	w15, h31
 # CHECK-NEXT:  2      2     1.00                        fmov	w3, s9
 # CHECK-NEXT:  1      3     1.00                        fmov	s9, w3
+# CHECK-NEXT:  2      2     1.00                        fmov	x21, h14
 # CHECK-NEXT:  2      2     1.00                        fmov	x20, d31
 # CHECK-NEXT:  1      3     1.00                        fmov	d1, x15
 # CHECK-NEXT:  2      2     1.00                        fmov	x3, v12.d[1]
 # CHECK-NEXT:  2      5     1.00                        fmov	v1.d[1], x19
+# CHECK-NEXT:  1      2     0.25                        fmov	h29, #0.50000000
 # CHECK-NEXT:  1      2     0.25                        fmov	s2, #0.12500000
 # CHECK-NEXT:  1      2     0.25                        fmov	s3, #1.00000000
 # CHECK-NEXT:  1      2     0.25                        fmov	d30, #16.00000000
@@ -2129,13 +788,10 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxrh	w17, [x4]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	w22, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxr	w9, w2, [x2]
@@ -2144,25 +800,19 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxrh	w7, [x5]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	w6, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  3      5     0.67    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
+# CHECK-NEXT:  1      4     0.33    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarh	w22, [x30]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	wzr, [x29]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
 # CHECK-NEXT:  2      1     0.50           *            sturb	w9, [sp]
 # CHECK-NEXT:  2      1     0.50           *            sturh	wzr, [x12, #255]
 # CHECK-NEXT:  2      1     0.50           *            stur	w16, [x0, #-256]
@@ -2348,16 +998,23 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w13, [x2, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w2, [x4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w26, [x3, #121]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w12, [x2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	xzr, [x15]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  2      1     0.50           *            str	x30, [sp]
 # CHECK-NEXT:  2      1     0.50           *            str	w20, [x4, #16380]
+# CHECK-NEXT:  2      2     0.50           *            str	b5, [x11]
+# CHECK-NEXT:  2      2     0.50           *            str	h23, [x15]
+# CHECK-NEXT:  2      2     0.50           *            str	s25, [x19]
+# CHECK-NEXT:  2      2     0.50           *            str	d15, [x2]
 # CHECK-NEXT:  2      1     0.50           *            strh	w17, [sp, #8190]
 # CHECK-NEXT:  2      1     0.50           *            strb	w23, [x3, #4095]
 # CHECK-NEXT:  2      1     0.50           *            strb	wzr, [x2]
@@ -2366,23 +1023,13 @@ drps
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s10, [x19, #16380]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	d3, [x10, #32760]
 # CHECK-NEXT:  2      2     0.50           *            str	q12, [sp, #65520]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h3, [sp, x5]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h9, [x27, x6]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h10, [x30, x7, lsl #1]
-# CHECK-NEXT:  2      2     0.50           *            str	h11, [x29, x3, sxtx]
-# CHECK-NEXT:  2      2     0.50           *            str	h12, [x28, xzr, sxtx]
-# CHECK-NEXT:  3      2     0.50           *            str	h13, [x27, x5, sxtx #1]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h14, [x26, w6, uxtw]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h15, [x25, w7, uxtw]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h16, [x24, w8, uxtw #1]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h17, [x23, w9, sxtw]
-# CHECK-NEXT:  2      2     0.50           *            str	h18, [x22, w10, sxtw]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	q14, [x6, #4624]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w3, [sp, x5]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  2      1     0.50           *            strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  2      1     0.50           *            strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w17, [x23, w9, sxtw]
@@ -2399,6 +1046,18 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  2      1     0.50           *            strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b8, [x30, x10]
+# CHECK-NEXT:  2      2     0.50           *            str	b14, [x13, x25]
+# CHECK-NEXT:  2      2     0.50           *            str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h11, [x13, x9]
+# CHECK-NEXT:  2      2     0.50           *            str	h16, [x5, x24]
+# CHECK-NEXT:  2      2     0.50           *            str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	d5, [x26, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w3, [sp, x5]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w10, [x30, x7, lsl #2]
@@ -2419,6 +1078,7 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  1      4     0.33                  U     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  2      1     0.50           *            str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x18, [x22, w10, sxtw]
@@ -2450,6 +1110,8 @@ drps
 # CHECK-NEXT:  2      6     0.33    *                   ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  2      2     0.50           *            stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  2      2     0.50           *            stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  2      1     0.50           *            stnp	x20, x16, [x8]
+# CHECK-NEXT:  2      1     0.50           *            stp	x3, x6, [x16]
 # CHECK-NEXT:  2      6     0.33    *                   ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  3      2     1.00           *            stp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stp	q17, q19, [sp, #1008]
@@ -2508,10 +1170,14 @@ drps
 # CHECK-NEXT:  3      2     1.00           *            stnp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  3      6     0.67    *                   ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  1      1     0.17                        and	wsp, w16, #0xe00
+# CHECK-NEXT:  1      1     0.17                        and	x2, x22, #0x1e00
+# CHECK-NEXT:  1      1     0.33                        ands	w14, w8, #0x70
+# CHECK-NEXT:  1      1     0.33                        ands	x4, x10, #0x60
+# CHECK-NEXT:  1      1     0.17                        eor	wsp, w4, #0xe00
+# CHECK-NEXT:  1      1     0.17                        eor	x27, x25, #0x1e00
 # CHECK-NEXT:  1      1     0.17                        mov	w3, #983055
 # CHECK-NEXT:  1      1     0.17                        mov	x10, #-6148914691236517206
-# CHECK-NEXT:  1      1     0.33                        ands	w4, w4, #0xf000f
-# CHECK-NEXT:  1      1     0.33                        ands	x11, x11, #0xaaaaaaaaaaaaaaaa
 # CHECK-NEXT:  1      1     0.17                        and	w12, w23, w21
 # CHECK-NEXT:  1      1     0.17                        and	w16, w15, w1, lsl #1
 # CHECK-NEXT:  1      1     0.17                        and	w9, w4, w10, lsl #31
@@ -2526,6 +1192,10 @@ drps
 # CHECK-NEXT:  1      1     0.17                        and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  1      1     0.17                        bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  1      1     0.17                        bic	w2, w7, w9
+# CHECK-NEXT:  1      1     0.17                        eon	w29, w4, w19
+# CHECK-NEXT:  1      1     0.17                        eon	x19, x12, x2
+# CHECK-NEXT:  1      1     0.17                        eor	w8, w27, w2
+# CHECK-NEXT:  1      1     0.17                        eor	x22, x16, x6
 # CHECK-NEXT:  1      1     0.17                        orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  1      1     0.17                        orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  1      1     0.17                        orn	x3, x5, x7, asr #2
@@ -2551,16 +1221,20 @@ drps
 # CHECK-NEXT:  1      1     0.17                        movk	x7, #0, lsl #32
 # CHECK-NEXT:  1      1     0.17                        movz	x8, #0, lsl #48
 # CHECK-NEXT:  1      1     0.17                        movk	x9, #0, lsl #48
+# CHECK-NEXT:  1      1     0.17                  U     msr	DAIFSet, #0
 # CHECK-NEXT:  1      1     0.25                        adr	x2, #1600
 # CHECK-NEXT:  1      1     0.25                        adrp	x21, #6553600
 # CHECK-NEXT:  1      1     0.25                        adr	x0, #262144
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #0
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #4
 # CHECK-NEXT:  1      1     0.50                        tbz	x12, #62, #-32768
+# CHECK-NEXT:  1      1     0.50                        tbz	w17, #16, test
 # CHECK-NEXT:  1      1     0.50                        tbnz	x12, #60, #32764
+# CHECK-NEXT:  1      1     0.50                        tbnz	w3, #28, test
 # CHECK-NEXT:  1      1     0.50                        b	#4
 # CHECK-NEXT:  1      1     0.50                        b	#-4
 # CHECK-NEXT:  1      1     0.50                        b	#134217724
+# CHECK-NEXT:  2      1     0.50                        bl	test
 # CHECK-NEXT:  1      1     0.50                        br	x20
 # CHECK-NEXT:  2      1     0.50                        blr	xzr
 # CHECK-NEXT:  1      1     0.50                  U     ret	x10
@@ -2592,7 +1266,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]
-# CHECK-NEXT: 11.00  11.00  33.00  33.00  54.00  54.00  54.00  99.00  165.00 165.00 329.92 184.92 112.92 112.92 86.17  86.17  190.00 146.00 30.00  10.00
+# CHECK-NEXT: 13.00  13.00  34.00  34.00  54.33  54.33  54.33  97.33  167.33 167.33 340.83 183.83 115.83 115.83 86.33  86.33  206.25 154.75 39.25  13.75
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   Instructions:
@@ -2615,22 +1289,22 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	w2, #4095
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	w20, wsp, #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	x3, #1, lsl #12
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	wsp, #2342
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	sp, #20, lsl #12
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	x30, #4095
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	x4, sp, #3822
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	w3, #291, lsl #12
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	wsp, #1365
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	sp, x30
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	wsp, w20
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	x11, sp
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	w24, wsp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	x10, #-63432
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	wsp, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x25, x9, w25, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	w24, w25, w26, lsr #18
@@ -2644,7 +1318,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x27, x28, x29, lsr #63
@@ -2652,11 +1326,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     add	x8, x9, x10, asr #63
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	w3, w5, w7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	w17, wsp, w25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	w3, w5
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	w24, w25, w26, lsr #18
@@ -2670,7 +1346,7 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     adds	x27, x28, x29, lsr #63
@@ -2681,7 +1357,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	w24, w25, w26, lsr #18
@@ -2694,18 +1370,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	w13, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	w3, w5
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	w24, w25, w26, lsr #18
@@ -2718,7 +1397,7 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subs	x27, x28, x29, lsr #63
@@ -2728,7 +1407,7 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	wzr, w4
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	w5, wzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	w6, w7
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	w14, w15, lsr #21
@@ -2741,7 +1420,7 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	x5, xzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	x6, x7
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmn	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmn	x16, x17, lsr #63
@@ -2752,19 +1431,21 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	wzr, w4
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	w5, wzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	w6, w7
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w14, w15, lsr #21
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w18, w19, asr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w20, w21, asr #22
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	w22, w23, asr #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	wsp, w26
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x16, w27, uxtb
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	x0, x3
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	xzr, x4
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	x5, xzr
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	x6, x7
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x16, x17, lsr #63
@@ -2773,6 +1454,10 @@ drps
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     cmp	x22, x23, asr #63
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	wzr, w0
 # CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     cmp	xzr, x0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	sp, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	wsp, w20
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	x11, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	w24, wsp
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     adc	w29, w27, w25
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     adc	wzr, w3, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     adc	w9, wzr, w10
@@ -2845,15 +1530,11 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsr	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsr	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsr	wzr, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsr	w3, w2, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	w1, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     asr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     asr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfiz	xzr, xzr, #10, #11
@@ -2865,11 +1546,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     asr	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     asr	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfi	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfi	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfi	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfi	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfc	xzr, #10, #11
@@ -2881,11 +1559,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	x2, x3, #63
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	x9, x10, #5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     lsl	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ubfiz	xzr, xzr, #10, #11
@@ -2903,6 +1578,7 @@ drps
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	x26, #1048572
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbz	wzr, #0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	xzr, #0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	w21, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ne	#4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ge	#1048572
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ge	#-4
@@ -2991,7 +1667,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     cneg	xzr, x4, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     cneg	x9, xzr, lt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     csneg	x4, x8, x8, al
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     csinv	w9, w8, w8, nv
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     rbit	w0, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     rbit	x18, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     rev16	w17, w1
@@ -3023,6 +1698,16 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     asr	x21, x22, x23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ror	w24, w25, w26
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ror	x27, x28, x29
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32cb	w30, w23, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32cb	wzr, w12, w14
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32cb	w28, w10, w11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32b	w27, w12, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32h	w3, w15, w21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32w	w9, w18, w24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32x	w19, w6, x25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32ch	w25, w26, w16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32cw	w27, w12, w23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     crc32cx	w21, w28, x5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     smulh	xzr, x27, x26
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     umulh	x30, x29, x28
@@ -3065,7 +1750,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     umnegl	x19, w20, w21
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     smulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     umulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     mul	x19, x20, xzr
@@ -3081,24 +1765,26 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ror	x19, x23, #24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ror	x29, xzr, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ror	w9, w13, #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	h5, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	h5, #0.0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	h22, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	h13, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	s3, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	s31, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	s31, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	s29, s30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	s15, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	s15, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	d4, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	d23, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	d23, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	d26, d22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	d29, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	d29, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	d9, d31, #0, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	s31, s15, #13, hs
@@ -3107,22 +1793,33 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	h18, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	s0, s1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fabs	s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fneg	h2, h9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fneg	s4, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -     fsqrt	s6, s7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	d8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	h10, s11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintn	h12, h3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintn	s12, s13
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintp	h17, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintp	s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintm	h0, h21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintm	s16, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintz	h10, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintz	s18, s19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinta	h22, h10
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinta	s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintx	h4, h5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintx	s22, s23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinti	s24, s25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinti	h31, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	d0, d1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fabs	d2, d3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fneg	d4, d5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -     fsqrt	h13, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     4.00    -     4.00    -     fsqrt	d6, d7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	s8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	h10, d11
@@ -3136,13 +1833,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	s26, h27
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	d28, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmul	s20, s19, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -     fdiv	h1, h26, h23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -     fdiv	s1, s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fadd	h23, h27, h22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fadd	s4, s5, s6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fsub	h20, h11, h18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fsub	s7, s8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmax	s10, s11, s12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmax	h8, h7, h11
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmin	s13, s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmaxnm	h29, h13, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmaxnm	s16, s17, s18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fminnm	s19, s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmul	h3, h15, h7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmul	s22, s23, s2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmul	d20, d19, d17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     4.00    -     4.00    -     fdiv	d1, d2, d3
@@ -3150,17 +1853,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fsub	d7, d8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmax	d10, d11, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmin	d13, d14, d15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmin	h4, h13, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmaxnm	d16, d17, d18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fminnm	d19, d20, d21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fminnm	h29, h23, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmul	d22, d23, d24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtzs	w3, h5, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtzs	w19, h0, #32
@@ -3305,12 +2014,17 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtas	x27, d28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtau	w29, d30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtau	xzr, d0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     fmov	h6, w5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     fmov	h16, x27
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	w15, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	w3, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     fmov	s9, w3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	x21, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	x20, d31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -     fmov	d1, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	x3, v12.d[1]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	v1.d[1], x19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	h29, #0.50000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	s2, #0.12500000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	s3, #1.00000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	d30, #16.00000000
@@ -3334,13 +2048,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxrh	w17, [x4]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxr	w22, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stlxr	w9, w2, [x2]
@@ -3349,25 +2060,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxrh	w7, [x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxr	w6, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -     0.33   0.83   0.83    -      -      -      -      -      -      -      -      -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlr	x27, [x28]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldarh	w22, [x30]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldar	wzr, [x29]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     sturb	w9, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     sturh	wzr, [x12, #255]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stur	w16, [x0, #-256]
@@ -3553,16 +2258,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	w13, [x2, #4]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrh	w2, [x4]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w26, [x3, #121]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w12, [x2]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsb	xzr, [x15]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     str	x30, [sp]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     str	w20, [x4, #16380]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	b5, [x11]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	h23, [x15]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	s25, [x19]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	d15, [x2]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     strh	w17, [sp, #8190]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     strb	w23, [x3, #4095]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     strb	wzr, [x2]
@@ -3571,23 +2283,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	s10, [x19, #16380]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	d3, [x10, #32760]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	q12, [sp, #65520]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h3, [sp, x5]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h9, [x27, x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ldr	h10, [x30, x7, lsl #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	h11, [x29, x3, sxtx]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	h12, [x28, xzr, sxtx]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17   0.50   0.50    -      -     str	h13, [x27, x5, sxtx #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h14, [x26, w6, uxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h15, [x25, w7, uxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ldr	h16, [x24, w8, uxtw #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h17, [x23, w9, sxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	h18, [x22, w10, sxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     ldr	h19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	q14, [x6, #4624]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrb	w17, [x23, w9, sxtw]
@@ -3604,6 +2306,18 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	b8, [x30, x10]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	b14, [x13, x25]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	h11, [x13, x9]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	h16, [x5, x24]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     str	d5, [x26, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	s9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	w10, [x30, x7, lsl #2]
@@ -3624,6 +2338,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldr	x18, [x22, w10, sxtw]
@@ -3655,6 +2370,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stnp	x20, x16, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stp	x3, x6, [x16]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     stp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     stp	q17, q19, [sp, #1008]
@@ -3713,10 +2430,14 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     stnp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -      -      -      -      -     ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     and	wsp, w16, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     and	x2, x22, #0x1e00
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     ands	w14, w8, #0x70
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     ands	x4, x10, #0x60
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     eor	wsp, w4, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     eor	x27, x25, #0x1e00
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	w3, #983055
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     mov	x10, #-6148914691236517206
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     ands	w4, w4, #0xf000f
-# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     ands	x11, x11, #0xaaaaaaaaaaaaaaaa
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     and	w12, w23, w21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     and	w16, w15, w1, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     and	w9, w4, w10, lsl #31
@@ -3731,6 +2452,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     bic	w2, w7, w9
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     eon	w29, w4, w19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     eon	x19, x12, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     eor	w8, w27, w2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     eor	x22, x16, x6
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     orn	x3, x5, x7, asr #2
@@ -3756,16 +2481,20 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     movk	x7, #0, lsl #32
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     movz	x8, #0, lsl #48
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     movk	x9, #0, lsl #48
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     msr	DAIFSet, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adr	x2, #1600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adrp	x21, #6553600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adr	x0, #262144
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #-32768
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	w17, #16, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbnz	x12, #60, #32764
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbnz	w3, #28, test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#-4
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#134217724
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     bl	test
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     br	x20
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -     blr	xzr
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     ret	x10
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-mte-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-mte-instructions.s
new file mode 100644
index 0000000000000..6b9f9d4e45642
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-mte-instructions.s
@@ -0,0 +1,251 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v2 -instruction-tables < %p/Inputs/mte-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                  U     irg	x0, x1
+# CHECK-NEXT:  1      2     0.50                  U     irg	sp, x1
+# CHECK-NEXT:  1      2     0.50                  U     irg	x0, sp
+# CHECK-NEXT:  1      2     0.50                  U     irg	x0, x1, x2
+# CHECK-NEXT:  1      2     0.50                  U     irg	sp, x1, x2
+# CHECK-NEXT:  1      2     0.50                        addg	x0, x1, #0, #1
+# CHECK-NEXT:  1      2     0.50                        addg	sp, x2, #32, #3
+# CHECK-NEXT:  1      2     0.50                        addg	x0, sp, #64, #5
+# CHECK-NEXT:  1      2     0.50                        addg	x3, x4, #1008, #6
+# CHECK-NEXT:  1      2     0.50                        addg	x5, x6, #112, #15
+# CHECK-NEXT:  1      2     0.50                  U     subg	x0, x1, #0, #1
+# CHECK-NEXT:  1      2     0.50                  U     subg	sp, x2, #32, #3
+# CHECK-NEXT:  1      2     0.50                  U     subg	x0, sp, #64, #5
+# CHECK-NEXT:  1      2     0.50                  U     subg	x3, x4, #1008, #6
+# CHECK-NEXT:  1      2     0.50                  U     subg	x5, x6, #112, #15
+# CHECK-NEXT:  1      1     0.17                        gmi	x0, x1, x2
+# CHECK-NEXT:  1      1     0.17                        gmi	x3, sp, x4
+# CHECK-NEXT:  1      1     0.17                        gmi	xzr, x0, x30
+# CHECK-NEXT:  1      1     0.17                        gmi	x30, x0, xzr
+# CHECK-NEXT:  1      1     0.17                        subp	x0, x1, x2
+# CHECK-NEXT:  1      1     0.33                  U     subps	x0, x1, x2
+# CHECK-NEXT:  1      1     0.17                        subp	x0, sp, sp
+# CHECK-NEXT:  1      1     0.33                  U     subps	x0, sp, sp
+# CHECK-NEXT:  1      1     0.33                  U     subps	xzr, x0, x1
+# CHECK-NEXT:  1      1     0.33                  U     subps	xzr, sp, sp
+# CHECK-NEXT:  2      1     0.50           *            stg	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            stg	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            stg	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stg	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stg	sp, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stzg	sp, [x1]
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stg	sp, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	sp, [sp], #16
+# CHECK-NEXT:  2      1     0.50           *            st2g	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            st2g	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            st2g	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            st2g	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            st2g	sp, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	sp, [x1]
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	sp, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	sp, [sp], #16
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, x1, [x2, #-1024]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, x1, [x2, #1008]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, x1, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stgp	xzr, x1, [x2, #16]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, xzr, [x2, #16]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, xzr, [x2]
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2, #-1024]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2, #1008]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	xzr, x1, [x2, #16]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, xzr, [x2, #16]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2], #-1024
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2], #1008
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *            stgp	xzr, x1, [x2], #16
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, xzr, [x2], #16
+# CHECK-NEXT:  1      4     0.33    *                   ldg	x0, [x1]
+# CHECK-NEXT:  1      4     0.33    *                   ldg	x2, [sp, #-4096]
+# CHECK-NEXT:  1      4     0.33    *                   ldg	x3, [x4, #4080]
+# CHECK-NEXT:  1      4     0.33    *             U     ldgm	x0, [x1]
+# CHECK-NEXT:  1      4     0.33    *             U     ldgm	x1, [sp]
+# CHECK-NEXT:  1      4     0.33    *             U     ldgm	xzr, [x2]
+# CHECK-NEXT:  2      1     0.50           *      U     stgm	x0, [x1]
+# CHECK-NEXT:  2      1     0.50           *      U     stgm	x1, [sp]
+# CHECK-NEXT:  2      1     0.50           *      U     stgm	xzr, [x2]
+# CHECK-NEXT:  2      1     0.50           *      U     stzgm	x0, [x1]
+# CHECK-NEXT:  2      1     0.50           *      U     stzgm	x1, [sp]
+# CHECK-NEXT:  2      1     0.50           *      U     stzgm	xzr, [x2]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - V2UnitB
+# CHECK-NEXT: [0.1] - V2UnitB
+# CHECK-NEXT: [1.0] - V2UnitD
+# CHECK-NEXT: [1.1] - V2UnitD
+# CHECK-NEXT: [2.0] - V2UnitFlg
+# CHECK-NEXT: [2.1] - V2UnitFlg
+# CHECK-NEXT: [2.2] - V2UnitFlg
+# CHECK-NEXT: [3]   - V2UnitL2
+# CHECK-NEXT: [4.0] - V2UnitL01
+# CHECK-NEXT: [4.1] - V2UnitL01
+# CHECK-NEXT: [5]   - V2UnitM0
+# CHECK-NEXT: [6]   - V2UnitM1
+# CHECK-NEXT: [7]   - V2UnitS0
+# CHECK-NEXT: [8]   - V2UnitS1
+# CHECK-NEXT: [9]   - V2UnitS2
+# CHECK-NEXT: [10]  - V2UnitS3
+# CHECK-NEXT: [11]  - V2UnitV0
+# CHECK-NEXT: [12]  - V2UnitV1
+# CHECK-NEXT: [13]  - V2UnitV2
+# CHECK-NEXT: [14]  - V2UnitV3
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]
+# CHECK-NEXT:  -      -     37.00  37.00  1.33   1.33   1.33   2.00   39.00  39.00  16.50  16.50  9.00   9.00   8.00   8.00    -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   Instructions:
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     irg	x0, x1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     irg	sp, x1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     irg	x0, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     irg	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     irg	sp, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     addg	x0, x1, #0, #1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     addg	sp, x2, #32, #3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     addg	x0, sp, #64, #5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     addg	x3, x4, #1008, #6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     addg	x5, x6, #112, #15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subg	x0, x1, #0, #1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subg	sp, x2, #32, #3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subg	x0, sp, #64, #5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subg	x3, x4, #1008, #6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -     subg	x5, x6, #112, #15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     gmi	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     gmi	x3, sp, x4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     gmi	xzr, x0, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     gmi	x30, x0, xzr
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     subp	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subps	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     subp	x0, sp, sp
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subps	x0, sp, sp
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subps	xzr, x0, x1
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   0.33    -      -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     subps	xzr, sp, sp
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stg	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stg	x1, [x2, #4080]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stg	x2, [sp, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stg	x3, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stg	sp, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzg	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzg	x1, [x2, #4080]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzg	x2, [sp, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzg	x3, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzg	sp, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	x2, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	sp, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	x2, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	sp, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	x0, [x1], #-4096
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	x1, [x2], #4080
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	x2, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stg	sp, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	x0, [x1], #-4096
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	x1, [x2], #4080
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	x2, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stzg	sp, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     st2g	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     st2g	x1, [x2, #4080]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     st2g	x2, [sp, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     st2g	x3, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     st2g	sp, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stz2g	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stz2g	x1, [x2, #4080]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stz2g	x2, [sp, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stz2g	x3, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stz2g	sp, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	x2, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	sp, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	x2, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	sp, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	x0, [x1], #-4096
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	x1, [x2], #4080
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	x2, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     st2g	sp, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	x0, [x1], #-4096
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	x1, [x2], #4080
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	x2, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stz2g	sp, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgp	x0, x1, [x2, #-1024]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgp	x0, x1, [x2, #1008]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgp	x0, x1, [sp, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgp	xzr, x1, [x2, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgp	x0, xzr, [x2, #16]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgp	x0, xzr, [x2]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, x1, [x2, #-1024]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, x1, [x2, #1008]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, x1, [sp, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	xzr, x1, [x2, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, xzr, [x2, #16]!
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, x1, [x2], #-1024
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, x1, [x2], #1008
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, x1, [sp], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	xzr, x1, [x2], #16
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50   0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -     stgp	x0, xzr, [x2], #16
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldg	x0, [x1]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldg	x2, [sp, #-4096]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldg	x3, [x4, #4080]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldgm	x0, [x1]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldgm	x1, [sp]
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -     ldgm	xzr, [x2]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgm	x0, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgm	x1, [sp]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stgm	xzr, [x2]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzgm	x0, [x1]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzgm	x1, [sp]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stzgm	xzr, [x2]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..71fd689522215
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-rcpc-immo-instructions.s
@@ -0,0 +1,67 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v2 -instruction-tables < %p/Inputs/rcpc-immo-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:  2      1     0.50    *                   ldapur	w7, [x24]
+# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
+# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
+# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
+# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
+# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - V2UnitB
+# CHECK-NEXT: [0.1] - V2UnitB
+# CHECK-NEXT: [1.0] - V2UnitD
+# CHECK-NEXT: [1.1] - V2UnitD
+# CHECK-NEXT: [2.0] - V2UnitFlg
+# CHECK-NEXT: [2.1] - V2UnitFlg
+# CHECK-NEXT: [2.2] - V2UnitFlg
+# CHECK-NEXT: [3]   - V2UnitL2
+# CHECK-NEXT: [4.0] - V2UnitL01
+# CHECK-NEXT: [4.1] - V2UnitL01
+# CHECK-NEXT: [5]   - V2UnitM0
+# CHECK-NEXT: [6]   - V2UnitM1
+# CHECK-NEXT: [7]   - V2UnitS0
+# CHECK-NEXT: [8]   - V2UnitS1
+# CHECK-NEXT: [9]   - V2UnitS2
+# CHECK-NEXT: [10]  - V2UnitS3
+# CHECK-NEXT: [11]  - V2UnitV0
+# CHECK-NEXT: [12]  - V2UnitV1
+# CHECK-NEXT: [13]  - V2UnitV2
+# CHECK-NEXT: [14]  - V2UnitV3
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]
+# CHECK-NEXT:  -      -     6.50   6.50    -      -      -      -     6.50   6.50    -      -      -      -      -      -      -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [3]    [4.0]  [4.1]  [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   Instructions:
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapur	w7, [x24]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapur	x20, [x13]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapurb	w13, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapurh	w3, [x22]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapursb	w7, [x8]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapursb	x29, [x7]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapursh	w17, [x19]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapursh	x3, [x3]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     ldapursw	x3, [x18]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlur	w3, [x27]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlur	x23, [x25]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlurb	w30, [x17]
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -     stlurh	w9, [x29]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s
index 73fd95d6e4a5b..52d3a78277068 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-basic-instructions.s
@@ -1,1386 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3 -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #10
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #63
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #10
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #63
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #10
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #63
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #10
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #63
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #15
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #63
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #15
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #63
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsr      w3, w2, #0
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfx     w9, w10, #0, #1
-sbfiz    x2, x3, #63, #1
-asr      x19, x20, #0
-sbfiz    x9, x10, #5, #59
-asr      w9, w10, #0
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfi      x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfi      x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsl      x2, x3, #63
-lsr      x19, x20, #0
-lsl      x9, x10, #5
-lsr      w9, w10, #0
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-csinv    w9, w8, w8, nv
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror    x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x30, x29, x28
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror     x19, x23, #24
-ror     x29, xzr, #63
-ror     w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     s0, s1
-fabs     s2, s3
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   s12, s13
-frintp   s14, s15
-frintm   s16, s17
-frintz   s18, s19
-frinta   s20, s21
-frintx   s22, s23
-frinti   s24, s25
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     s1, s2, s3
-fadd     s4, s5, s6
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmin     s13, s14, s15
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     w3, s9
-fmov     s9, w3
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldaxp      x6, x19, [x22]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlr       x27, [x28]
-stlr       x27, [x28]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-ldar       x21, [x28]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-str      x30, [sp]
-str      w20, [x4, #16380]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldr      h3, [sp, x5]
-ldr      h9, [x27, x6]
-ldr      h10, [x30, x7, lsl #1]
-str      h11, [x29, x3, sxtx]
-str      h12, [x28, xzr, sxtx]
-str      h13, [x27, x5, sxtx #1]
-ldr      h14, [x26, w6, uxtw]
-ldr      h15, [x25, w7, uxtw]
-ldr      h16, [x24, w8, uxtw #1]
-ldr      h17, [x23, w9, sxtw]
-str      h18, [x22, w10, sxtw]
-ldr      h19, [x21, wzr, sxtw #1]
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-ands     w4, w4, #983055
-ands     x11, x11, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbnz    x12, #60, #32764
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3 -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -1410,22 +29,22 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	w2, #4095
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wsp, #0
 # CHECK-NEXT:  1      1     0.25                        cmn	x3, #1, lsl #12
+# CHECK-NEXT:  1      1     0.25                        cmp	wsp, #2342
 # CHECK-NEXT:  1      1     0.25                        cmp	sp, #20, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmp	x30, #4095
 # CHECK-NEXT:  1      1     0.25                        subs	x4, sp, #3822
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, #291, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmn	wsp, #1365
 # CHECK-NEXT:  1      1     0.25                        cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  1      1     0.13                        mov	sp, x30
-# CHECK-NEXT:  1      1     0.13                        mov	wsp, w20
-# CHECK-NEXT:  1      1     0.13                        mov	x11, sp
-# CHECK-NEXT:  1      1     0.13                        mov	w24, wsp
+# CHECK-NEXT:  1      1     0.13                        mov	x10, #-63432
+# CHECK-NEXT:  1      2     0.50                        add	wsp, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        add	x25, x9, w25, uxtb
 # CHECK-NEXT:  1      1     0.13                        add	w3, w5, w7
 # CHECK-NEXT:  1      1     0.13                        add	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.13                        add	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.13                        add	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.13                        add	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.13                        add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	w24, w25, w26, lsr #18
@@ -1439,7 +58,7 @@ drps
 # CHECK-NEXT:  1      1     0.13                        add	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.13                        add	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.13                        add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        add	x27, x28, x29, lsr #63
@@ -1447,11 +66,13 @@ drps
 # CHECK-NEXT:  1      2     0.50                        add	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        add	x8, x9, x10, asr #63
 # CHECK-NEXT:  1      1     0.25                        adds	w3, w5, w7
+# CHECK-NEXT:  1      2     0.50                        adds	w17, wsp, w25
+# CHECK-NEXT:  1      2     0.50                        adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, w5
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.25                        adds	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        adds	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	w24, w25, w26, lsr #18
@@ -1465,7 +86,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        adds	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        adds	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        adds	x27, x28, x29, lsr #63
@@ -1476,7 +97,7 @@ drps
 # CHECK-NEXT:  1      1     0.13                        sub	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.13                        sub	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.13                        sub	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.13                        sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	w24, w25, w26, lsr #18
@@ -1489,18 +110,21 @@ drps
 # CHECK-NEXT:  1      1     0.13                        sub	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.13                        sub	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.13                        sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  1      2     0.50                        sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  1      2     0.50                        sub	w13, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  1      2     0.50                        subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  1      1     0.25                        subs	w3, w5, w7
 # CHECK-NEXT:  1      1     0.25                        cmp	w3, w5
 # CHECK-NEXT:  1      1     0.25                        subs	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        subs	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	w24, w25, w26, lsr #18
@@ -1513,7 +137,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        subs	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        subs	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        subs	x27, x28, x29, lsr #63
@@ -1523,7 +147,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmn	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmn	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmn	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmn	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmn	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmn	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	w14, w15, lsr #21
@@ -1536,7 +160,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmn	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmn	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmn	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmn	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmn	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmn	x16, x17, lsr #63
@@ -1547,19 +171,21 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmp	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmp	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmp	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmp	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmp	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmp	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w14, w15, lsr #21
 # CHECK-NEXT:  1      2     0.50                        cmp	w18, w19, asr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w20, w21, asr #22
 # CHECK-NEXT:  1      2     0.50                        cmp	w22, w23, asr #31
+# CHECK-NEXT:  1      2     0.50                        cmp	wsp, w26
+# CHECK-NEXT:  1      2     0.50                        cmp	x16, w27, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmp	x0, x3
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x4
 # CHECK-NEXT:  1      1     0.25                        cmp	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmp	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmp	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmp	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmp	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmp	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmp	x16, x17, lsr #63
@@ -1568,6 +194,10 @@ drps
 # CHECK-NEXT:  1      2     0.50                        cmp	x22, x23, asr #63
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w0
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x0
+# CHECK-NEXT:  1      1     0.13                        mov	sp, x30
+# CHECK-NEXT:  1      1     0.13                        mov	wsp, w20
+# CHECK-NEXT:  1      1     0.13                        mov	x11, sp
+# CHECK-NEXT:  1      1     0.13                        mov	w24, wsp
 # CHECK-NEXT:  1      1     0.13                        adc	w29, w27, w25
 # CHECK-NEXT:  1      1     0.13                        adc	wzr, w3, w4
 # CHECK-NEXT:  1      1     0.13                        adc	w9, wzr, w10
@@ -1640,15 +270,11 @@ drps
 # CHECK-NEXT:  1      1     0.13                        lsr	w9, w10, #31
 # CHECK-NEXT:  1      1     0.13                        lsr	x20, x21, #63
 # CHECK-NEXT:  1      1     0.13                        lsr	wzr, wzr, #3
-# CHECK-NEXT:  1      1     0.13                        lsr	w3, w2, #0
 # CHECK-NEXT:  1      1     0.13                        lsl	w9, w10, #31
 # CHECK-NEXT:  1      1     0.13                        lsl	x20, x21, #63
 # CHECK-NEXT:  1      1     0.13                        lsl	w1, wzr, #3
-# CHECK-NEXT:  1      1     0.13                        sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.13                        sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.13                        asr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.13                        sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.13                        asr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.13                        sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.13                        sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.13                        sbfiz	xzr, xzr, #10, #11
@@ -1660,11 +286,8 @@ drps
 # CHECK-NEXT:  1      1     0.13                        asr	w11, w12, #31
 # CHECK-NEXT:  1      1     0.13                        asr	w13, w14, #29
 # CHECK-NEXT:  1      1     0.13                        sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	x2, x3, #63, #1
-# CHECK-NEXT:  1      2     0.50                        bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  1      2     0.50                        bfi	x9, x10, #5, #59
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  1      2     0.50                        bfi	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfc	xzr, #10, #11
@@ -1676,11 +299,8 @@ drps
 # CHECK-NEXT:  1      2     0.50                        bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.13                        ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.13                        lsl	x2, x3, #63
-# CHECK-NEXT:  1      1     0.13                        lsr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.13                        lsl	x9, x10, #5
-# CHECK-NEXT:  1      1     0.13                        lsr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.13                        lsl	w11, w12, #31
 # CHECK-NEXT:  1      1     0.13                        lsl	w13, w14, #29
 # CHECK-NEXT:  1      1     0.13                        ubfiz	xzr, xzr, #10, #11
@@ -1698,6 +318,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cbnz	x26, #1048572
 # CHECK-NEXT:  1      1     0.33                        cbz	wzr, #0
 # CHECK-NEXT:  1      1     0.33                        cbnz	xzr, #0
+# CHECK-NEXT:  1      1     0.33                        cbnz	w21, test
 # CHECK-NEXT:  1      1     0.33                        b.ne	#4
 # CHECK-NEXT:  1      1     0.33                        b.ge	#1048572
 # CHECK-NEXT:  1      1     0.33                        b.ge	#-4
@@ -1786,7 +407,6 @@ drps
 # CHECK-NEXT:  1      1     0.13                        cneg	xzr, x4, le
 # CHECK-NEXT:  1      1     0.13                        cneg	x9, xzr, lt
 # CHECK-NEXT:  1      1     0.13                        csneg	x4, x8, x8, al
-# CHECK-NEXT:  1      1     0.13                        csinv	w9, w8, w8, nv
 # CHECK-NEXT:  1      1     0.13                        rbit	w0, w7
 # CHECK-NEXT:  1      1     0.13                        rbit	x18, x3
 # CHECK-NEXT:  1      1     0.13                        rev16	w17, w1
@@ -1818,6 +438,16 @@ drps
 # CHECK-NEXT:  1      1     0.13                        asr	x21, x22, x23
 # CHECK-NEXT:  1      1     0.13                        ror	w24, w25, w26
 # CHECK-NEXT:  1      1     0.13                        ror	x27, x28, x29
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w30, w23, w15
+# CHECK-NEXT:  1      2     1.00                        crc32cb	wzr, w12, w14
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w28, w10, w11
+# CHECK-NEXT:  1      2     1.00                        crc32b	w27, w12, w15
+# CHECK-NEXT:  1      2     1.00                        crc32h	w3, w15, w21
+# CHECK-NEXT:  1      2     1.00                        crc32w	w9, w18, w24
+# CHECK-NEXT:  1      2     1.00                        crc32x	w19, w6, x25
+# CHECK-NEXT:  1      2     1.00                        crc32ch	w25, w26, w16
+# CHECK-NEXT:  1      2     1.00                        crc32cw	w27, w12, w23
+# CHECK-NEXT:  1      2     1.00                        crc32cx	w21, w28, x5
 # CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	xzr, x27, x26
 # CHECK-NEXT:  1      3     0.50                        umulh	x30, x29, x28
@@ -1860,7 +490,6 @@ drps
 # CHECK-NEXT:  1      2     0.50                        umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  1      2     0.50                        umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  1      2     0.50                        umnegl	x19, w20, w21
-# CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	x23, x22, xzr
 # CHECK-NEXT:  1      3     0.50                        umulh	x23, x22, xzr
 # CHECK-NEXT:  1      2     0.50                        mul	x19, x20, xzr
@@ -1876,24 +505,26 @@ drps
 # CHECK-NEXT:  1      1     0.13                        ror	x19, x23, #24
 # CHECK-NEXT:  1      1     0.13                        ror	x29, xzr, #63
 # CHECK-NEXT:  1      1     0.13                        ror	w9, w13, #31
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, h21
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h22, h21
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h13, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	s3, s5
 # CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s29, s30
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	d4, d12
 # CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d26, d22
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
 # CHECK-NEXT:  1      2     1.00                        fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	d9, d31, #0, le
 # CHECK-NEXT:  1      2     1.00                        fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  1      2     1.00                        fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  1      2     1.00                        fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  1      2     1.00                        fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s31, s15, #13, hs
@@ -1902,22 +533,33 @@ drps
 # CHECK-NEXT:  1      2     1.00                        fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  1      2     0.25                        fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  1      2     0.25                        fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  1      2     0.25                        fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  1      2     0.25                        fmov	h18, h28
 # CHECK-NEXT:  1      2     0.25                        fmov	s0, s1
 # CHECK-NEXT:  1      2     0.25                        fabs	s2, s3
+# CHECK-NEXT:  1      2     0.25                        fneg	h2, h9
 # CHECK-NEXT:  1      2     0.25                        fneg	s4, s5
 # CHECK-NEXT:  1      8     1.00                        fsqrt	s6, s7
 # CHECK-NEXT:  1      3     0.50                        fcvt	d8, s9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, s11
+# CHECK-NEXT:  1      3     0.50                        frintn	h12, h3
 # CHECK-NEXT:  1      3     0.50                        frintn	s12, s13
+# CHECK-NEXT:  1      3     0.50                        frintp	h17, h31
 # CHECK-NEXT:  1      3     0.50                        frintp	s14, s15
+# CHECK-NEXT:  1      3     0.50                        frintm	h0, h21
 # CHECK-NEXT:  1      3     0.50                        frintm	s16, s17
+# CHECK-NEXT:  1      3     0.50                        frintz	h10, h29
 # CHECK-NEXT:  1      3     0.50                        frintz	s18, s19
+# CHECK-NEXT:  1      3     0.50                        frinta	h22, h10
 # CHECK-NEXT:  1      3     0.50                        frinta	s20, s21
+# CHECK-NEXT:  1      3     0.50                        frintx	h4, h5
 # CHECK-NEXT:  1      3     0.50                        frintx	s22, s23
 # CHECK-NEXT:  1      3     0.50                        frinti	s24, s25
+# CHECK-NEXT:  1      3     0.50                        frinti	h31, h14
 # CHECK-NEXT:  1      2     0.25                        fmov	d0, d1
 # CHECK-NEXT:  1      2     0.25                        fabs	d2, d3
 # CHECK-NEXT:  1      2     0.25                        fneg	d4, d5
+# CHECK-NEXT:  1      6     1.00                        fsqrt	h13, h24
 # CHECK-NEXT:  1      13    1.00                        fsqrt	d6, d7
 # CHECK-NEXT:  1      3     0.50                        fcvt	s8, d9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, d11
@@ -1931,13 +573,19 @@ drps
 # CHECK-NEXT:  1      3     0.50                        fcvt	s26, h27
 # CHECK-NEXT:  1      3     0.50                        fcvt	d28, h29
 # CHECK-NEXT:  1      3     0.25                        fmul	s20, s19, s17
+# CHECK-NEXT:  1      6     1.00                        fdiv	h1, h26, h23
 # CHECK-NEXT:  1      8     1.00                        fdiv	s1, s2, s3
+# CHECK-NEXT:  1      2     0.25                        fadd	h23, h27, h22
 # CHECK-NEXT:  1      2     0.25                        fadd	s4, s5, s6
+# CHECK-NEXT:  1      2     0.25                        fsub	h20, h11, h18
 # CHECK-NEXT:  1      2     0.25                        fsub	s7, s8, s9
 # CHECK-NEXT:  1      2     0.25                        fmax	s10, s11, s12
+# CHECK-NEXT:  1      2     0.25                        fmax	h8, h7, h11
 # CHECK-NEXT:  1      2     0.25                        fmin	s13, s14, s15
+# CHECK-NEXT:  1      2     0.25                        fmaxnm	h29, h13, h14
 # CHECK-NEXT:  1      2     0.25                        fmaxnm	s16, s17, s18
 # CHECK-NEXT:  1      2     0.25                        fminnm	s19, s20, s21
+# CHECK-NEXT:  1      3     0.25                        fnmul	h3, h15, h7
 # CHECK-NEXT:  1      3     0.25                        fnmul	s22, s23, s2
 # CHECK-NEXT:  1      3     0.25                        fmul	d20, d19, d17
 # CHECK-NEXT:  1      13    1.00                        fdiv	d1, d2, d3
@@ -1945,17 +593,23 @@ drps
 # CHECK-NEXT:  1      2     0.25                        fsub	d7, d8, d9
 # CHECK-NEXT:  1      2     0.25                        fmax	d10, d11, d12
 # CHECK-NEXT:  1      2     0.25                        fmin	d13, d14, d15
+# CHECK-NEXT:  1      2     0.25                        fmin	h4, h13, h17
 # CHECK-NEXT:  1      2     0.25                        fmaxnm	d16, d17, d18
 # CHECK-NEXT:  1      2     0.25                        fminnm	d19, d20, d21
+# CHECK-NEXT:  1      2     0.25                        fminnm	h29, h23, h17
 # CHECK-NEXT:  1      3     0.25                        fnmul	d22, d23, d24
+# CHECK-NEXT:  1      4     0.25                        fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  1      4     0.25                        fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.25                        fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  1      4     0.25                        fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.25                        fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  1      4     0.25                        fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  1      4     0.25                        fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.25                        fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.25                        fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w3, h5, #1
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w19, h0, #32
@@ -2100,12 +754,17 @@ drps
 # CHECK-NEXT:  1      3     1.00                        fcvtas	x27, d28
 # CHECK-NEXT:  1      3     1.00                        fcvtau	w29, d30
 # CHECK-NEXT:  1      3     1.00                        fcvtau	xzr, d0
+# CHECK-NEXT:  1      3     1.00                        fmov	h6, w5
+# CHECK-NEXT:  1      3     1.00                        fmov	h16, x27
+# CHECK-NEXT:  2      2     1.00                        fmov	w15, h31
 # CHECK-NEXT:  2      2     1.00                        fmov	w3, s9
 # CHECK-NEXT:  1      3     1.00                        fmov	s9, w3
+# CHECK-NEXT:  2      2     1.00                        fmov	x21, h14
 # CHECK-NEXT:  2      2     1.00                        fmov	x20, d31
 # CHECK-NEXT:  1      3     1.00                        fmov	d1, x15
 # CHECK-NEXT:  2      2     1.00                        fmov	x3, v12.d[1]
 # CHECK-NEXT:  2      5     1.00                        fmov	v1.d[1], x19
+# CHECK-NEXT:  1      2     0.25                        fmov	h29, #0.50000000
 # CHECK-NEXT:  1      2     0.25                        fmov	s2, #0.12500000
 # CHECK-NEXT:  1      2     0.25                        fmov	s3, #1.00000000
 # CHECK-NEXT:  1      2     0.25                        fmov	d30, #16.00000000
@@ -2129,13 +788,10 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxrh	w17, [x4]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	w22, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxr	w9, w2, [x2]
@@ -2144,25 +800,19 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxrh	w7, [x5]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	w6, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
+# CHECK-NEXT:  1      4     0.33    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarh	w22, [x30]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	wzr, [x29]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
 # CHECK-NEXT:  2      1     0.50           *            sturb	w9, [sp]
 # CHECK-NEXT:  2      1     0.50           *            sturh	wzr, [x12, #255]
 # CHECK-NEXT:  2      1     0.50           *            stur	w16, [x0, #-256]
@@ -2348,16 +998,23 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w13, [x2, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w2, [x4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w26, [x3, #121]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w12, [x2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	xzr, [x15]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  2      1     0.50           *            str	x30, [sp]
 # CHECK-NEXT:  2      1     0.50           *            str	w20, [x4, #16380]
+# CHECK-NEXT:  2      2     0.50           *            str	b5, [x11]
+# CHECK-NEXT:  2      2     0.50           *            str	h23, [x15]
+# CHECK-NEXT:  2      2     0.50           *            str	s25, [x19]
+# CHECK-NEXT:  2      2     0.50           *            str	d15, [x2]
 # CHECK-NEXT:  2      1     0.50           *            strh	w17, [sp, #8190]
 # CHECK-NEXT:  2      1     0.50           *            strb	w23, [x3, #4095]
 # CHECK-NEXT:  2      1     0.50           *            strb	wzr, [x2]
@@ -2366,23 +1023,13 @@ drps
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s10, [x19, #16380]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	d3, [x10, #32760]
 # CHECK-NEXT:  2      2     0.50           *            str	q12, [sp, #65520]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h3, [sp, x5]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h9, [x27, x6]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h10, [x30, x7, lsl #1]
-# CHECK-NEXT:  2      2     0.50           *            str	h11, [x29, x3, sxtx]
-# CHECK-NEXT:  2      2     0.50           *            str	h12, [x28, xzr, sxtx]
-# CHECK-NEXT:  3      2     0.50           *            str	h13, [x27, x5, sxtx #1]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h14, [x26, w6, uxtw]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h15, [x25, w7, uxtw]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h16, [x24, w8, uxtw #1]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h17, [x23, w9, sxtw]
-# CHECK-NEXT:  2      2     0.50           *            str	h18, [x22, w10, sxtw]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	q14, [x6, #4624]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w3, [sp, x5]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  2      1     0.50           *            strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  2      1     0.50           *            strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w17, [x23, w9, sxtw]
@@ -2399,6 +1046,18 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  2      1     0.50           *            strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b8, [x30, x10]
+# CHECK-NEXT:  2      2     0.50           *            str	b14, [x13, x25]
+# CHECK-NEXT:  2      2     0.50           *            str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h11, [x13, x9]
+# CHECK-NEXT:  2      2     0.50           *            str	h16, [x5, x24]
+# CHECK-NEXT:  2      2     0.50           *            str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	d5, [x26, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w3, [sp, x5]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w10, [x30, x7, lsl #2]
@@ -2419,6 +1078,7 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  1      4     0.33                  U     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  2      1     0.50           *            str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x18, [x22, w10, sxtw]
@@ -2450,6 +1110,8 @@ drps
 # CHECK-NEXT:  2      6     0.33    *                   ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  2      2     0.50           *            stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  2      2     0.50           *            stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  2      1     0.50           *            stnp	x20, x16, [x8]
+# CHECK-NEXT:  2      1     0.50           *            stp	x3, x6, [x16]
 # CHECK-NEXT:  2      6     0.33    *                   ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  3      2     1.00           *            stp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stp	q17, q19, [sp, #1008]
@@ -2508,10 +1170,14 @@ drps
 # CHECK-NEXT:  3      2     1.00           *            stnp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  3      6     0.67    *                   ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  1      1     0.13                        and	wsp, w16, #0xe00
+# CHECK-NEXT:  1      1     0.13                        and	x2, x22, #0x1e00
+# CHECK-NEXT:  1      1     0.25                        ands	w14, w8, #0x70
+# CHECK-NEXT:  1      1     0.25                        ands	x4, x10, #0x60
+# CHECK-NEXT:  1      1     0.13                        eor	wsp, w4, #0xe00
+# CHECK-NEXT:  1      1     0.13                        eor	x27, x25, #0x1e00
 # CHECK-NEXT:  1      1     0.13                        mov	w3, #983055
 # CHECK-NEXT:  1      1     0.13                        mov	x10, #-6148914691236517206
-# CHECK-NEXT:  1      1     0.25                        ands	w4, w4, #0xf000f
-# CHECK-NEXT:  1      1     0.25                        ands	x11, x11, #0xaaaaaaaaaaaaaaaa
 # CHECK-NEXT:  1      1     0.13                        and	w12, w23, w21
 # CHECK-NEXT:  1      1     0.13                        and	w16, w15, w1, lsl #1
 # CHECK-NEXT:  1      1     0.13                        and	w9, w4, w10, lsl #31
@@ -2526,6 +1192,10 @@ drps
 # CHECK-NEXT:  1      1     0.13                        and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  1      1     0.13                        bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  1      1     0.13                        bic	w2, w7, w9
+# CHECK-NEXT:  1      1     0.13                        eon	w29, w4, w19
+# CHECK-NEXT:  1      1     0.13                        eon	x19, x12, x2
+# CHECK-NEXT:  1      1     0.13                        eor	w8, w27, w2
+# CHECK-NEXT:  1      1     0.13                        eor	x22, x16, x6
 # CHECK-NEXT:  1      1     0.13                        orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  1      1     0.13                        orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  1      1     0.13                        orn	x3, x5, x7, asr #2
@@ -2551,16 +1221,20 @@ drps
 # CHECK-NEXT:  1      1     0.13                        movk	x7, #0, lsl #32
 # CHECK-NEXT:  1      1     0.13                        movz	x8, #0, lsl #48
 # CHECK-NEXT:  1      1     0.13                        movk	x9, #0, lsl #48
+# CHECK-NEXT:  1      1     0.10                  U     msr	DAIFSet, #0
 # CHECK-NEXT:  1      1     0.13                        adr	x2, #1600
 # CHECK-NEXT:  1      1     0.13                        adrp	x21, #6553600
 # CHECK-NEXT:  1      1     0.13                        adr	x0, #262144
 # CHECK-NEXT:  1      1     0.33                        tbz	x12, #62, #0
 # CHECK-NEXT:  1      1     0.33                        tbz	x12, #62, #4
 # CHECK-NEXT:  1      1     0.33                        tbz	x12, #62, #-32768
+# CHECK-NEXT:  1      1     0.33                        tbz	w17, #16, test
 # CHECK-NEXT:  1      1     0.33                        tbnz	x12, #60, #32764
+# CHECK-NEXT:  1      1     0.33                        tbnz	w3, #28, test
 # CHECK-NEXT:  1      1     0.33                        b	#4
 # CHECK-NEXT:  1      1     0.33                        b	#-4
 # CHECK-NEXT:  1      1     0.33                        b	#134217724
+# CHECK-NEXT:  2      1     0.33                        bl	test
 # CHECK-NEXT:  1      1     0.33                        br	x20
 # CHECK-NEXT:  2      1     0.33                        blr	xzr
 # CHECK-NEXT:  1      1     0.33                  U     ret	x10
@@ -2597,7 +1271,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16]   [17]
-# CHECK-NEXT: 7.33   7.33   7.33   33.00  33.00  40.50  40.50  40.50  40.50  99.00  99.00  165.00 280.25 165.25 77.92  77.92  77.92  77.92  77.92  77.92  66.00  180.00 150.00 20.00  10.00
+# CHECK-NEXT: 8.67   8.67   8.67   34.00  34.00  40.75  40.75  40.75  40.75  97.33  97.33  167.33 290.00 163.00 79.33  79.33  79.33  79.33  79.33  79.33  70.00  194.25 160.75 27.25  13.75
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16]   [17]   Instructions:
@@ -2620,22 +1294,22 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	w2, #4095
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	w20, wsp, #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	x3, #1, lsl #12
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	wsp, #2342
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	sp, #20, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	x30, #4095
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	x4, sp, #3822
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	w3, #291, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	wsp, #1365
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	sp, x30
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	wsp, w20
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	x11, sp
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	w24, wsp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	x10, #-63432
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	wsp, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x25, x9, w25, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	w24, w25, w26, lsr #18
@@ -2649,7 +1323,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x27, x28, x29, lsr #63
@@ -2657,11 +1331,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     add	x8, x9, x10, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	w3, w5, w7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	w17, wsp, w25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	w24, w25, w26, lsr #18
@@ -2675,7 +1351,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     adds	x27, x28, x29, lsr #63
@@ -2686,7 +1362,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	w24, w25, w26, lsr #18
@@ -2699,18 +1375,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	w13, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	w24, w25, w26, lsr #18
@@ -2723,7 +1402,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subs	x27, x28, x29, lsr #63
@@ -2733,7 +1412,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	w6, w7
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	w14, w15, lsr #21
@@ -2746,7 +1425,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	x6, x7
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmn	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmn	x16, x17, lsr #63
@@ -2757,19 +1436,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	w6, w7
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w14, w15, lsr #21
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w18, w19, asr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w20, w21, asr #22
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	w22, w23, asr #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	wsp, w26
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x16, w27, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	x0, x3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	xzr, x4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	x6, x7
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x16, x17, lsr #63
@@ -2778,6 +1459,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     cmp	x22, x23, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	wzr, w0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cmp	xzr, x0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	sp, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	wsp, w20
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	x11, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	w24, wsp
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adc	w29, w27, w25
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adc	wzr, w3, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adc	w9, wzr, w10
@@ -2850,15 +1535,11 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsr	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsr	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsr	wzr, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsr	w3, w2, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	w1, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     asr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     asr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfiz	xzr, xzr, #10, #11
@@ -2870,11 +1551,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     asr	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     asr	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfi	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfi	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfi	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfi	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfc	xzr, #10, #11
@@ -2886,11 +1564,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	x2, x3, #63
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	x9, x10, #5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     lsl	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ubfiz	xzr, xzr, #10, #11
@@ -2908,6 +1583,7 @@ drps
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	x26, #1048572
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbz	wzr, #0
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	xzr, #0
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	w21, test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ne	#4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ge	#1048572
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ge	#-4
@@ -2996,7 +1672,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cneg	xzr, x4, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     cneg	x9, xzr, lt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     csneg	x4, x8, x8, al
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     csinv	w9, w8, w8, nv
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     rbit	w0, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     rbit	x18, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     rev16	w17, w1
@@ -3028,6 +1703,16 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     asr	x21, x22, x23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ror	w24, w25, w26
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ror	x27, x28, x29
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32cb	w30, w23, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32cb	wzr, w12, w14
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32cb	w28, w10, w11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32b	w27, w12, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32h	w3, w15, w21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32w	w9, w18, w24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32x	w19, w6, x25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32ch	w25, w26, w16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32cw	w27, w12, w23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     crc32cx	w21, w28, x5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     smulh	xzr, x27, x26
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     umulh	x30, x29, x28
@@ -3070,7 +1755,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     umnegl	x19, w20, w21
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     smulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     umulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     mul	x19, x20, xzr
@@ -3086,24 +1770,26 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ror	x19, x23, #24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ror	x29, xzr, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ror	w9, w13, #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	h5, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	h5, #0.0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	h22, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	h13, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	s3, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	s31, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	s31, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	s29, s30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	s15, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	s15, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	d4, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	d23, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmp	d23, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	d26, d22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	d29, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fcmpe	d29, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	d9, d31, #0, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	s31, s15, #13, hs
@@ -3112,22 +1798,33 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	h18, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	s0, s1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fabs	s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fneg	h2, h9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fneg	s4, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     fsqrt	s6, s7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	d8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	h10, s11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintn	h12, h3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintn	s12, s13
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintp	h17, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintp	s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintm	h0, h21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintm	s16, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintz	h10, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintz	s18, s19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinta	h22, h10
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinta	s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintx	h4, h5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frintx	s22, s23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinti	s24, s25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     frinti	h31, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	d0, d1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fabs	d2, d3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fneg	d4, d5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     fsqrt	h13, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     fsqrt	d6, d7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	s8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	h10, d11
@@ -3141,13 +1838,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	s26, h27
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50    -     0.50    -     fcvt	d28, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmul	s20, s19, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     fdiv	h1, h26, h23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     fdiv	s1, s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fadd	h23, h27, h22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fadd	s4, s5, s6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fsub	h20, h11, h18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fsub	s7, s8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmax	s10, s11, s12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmax	h8, h7, h11
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmin	s13, s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmaxnm	h29, h13, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmaxnm	s16, s17, s18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fminnm	s19, s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmul	h3, h15, h7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmul	s22, s23, s2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmul	d20, d19, d17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     fdiv	d1, d2, d3
@@ -3155,17 +1858,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fsub	d7, d8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmax	d10, d11, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmin	d13, d14, d15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmin	h4, h13, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmaxnm	d16, d17, d18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fminnm	d19, d20, d21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fminnm	h29, h23, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmul	d22, d23, d24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtzs	w3, h5, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtzs	w19, h0, #32
@@ -3310,12 +2019,17 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtas	x27, d28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtau	w29, d30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fcvtau	xzr, d0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     fmov	h6, w5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     fmov	h16, x27
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	w15, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	w3, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     fmov	s9, w3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	x21, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	x20, d31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     fmov	d1, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     fmov	x3, v12.d[1]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	v1.d[1], x19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	h29, #0.50000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	s2, #0.12500000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	s3, #1.00000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.25   0.25   0.25   0.25   fmov	d30, #16.00000000
@@ -3339,13 +2053,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxrh	w17, [x4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxr	w22, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlxr	w9, w2, [x2]
@@ -3354,25 +2065,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxrh	w7, [x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxr	w6, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlr	x27, [x28]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldarh	w22, [x30]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldar	wzr, [x29]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     sturb	w9, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     sturh	wzr, [x12, #255]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stur	w16, [x0, #-256]
@@ -3558,16 +2263,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	w13, [x2, #4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrh	w2, [x4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w26, [x3, #121]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w12, [x2]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsb	xzr, [x15]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     str	x30, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     str	w20, [x4, #16380]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	b5, [x11]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	h23, [x15]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	s25, [x19]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	d15, [x2]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     strh	w17, [sp, #8190]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     strb	w23, [x3, #4095]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     strb	wzr, [x2]
@@ -3576,23 +2288,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	s10, [x19, #16380]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	d3, [x10, #32760]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	q12, [sp, #65520]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h3, [sp, x5]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h9, [x27, x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ldr	h10, [x30, x7, lsl #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	h11, [x29, x3, sxtx]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	h12, [x28, xzr, sxtx]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50   0.50   0.50    -      -     str	h13, [x27, x5, sxtx #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h14, [x26, w6, uxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h15, [x25, w7, uxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ldr	h16, [x24, w8, uxtw #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h17, [x23, w9, sxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	h18, [x22, w10, sxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ldr	h19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	q14, [x6, #4624]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrb	w17, [x23, w9, sxtw]
@@ -3609,6 +2311,18 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	b8, [x30, x10]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	b14, [x13, x25]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	h11, [x13, x9]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	h16, [x5, x24]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     str	d5, [x26, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	s9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	w10, [x30, x7, lsl #2]
@@ -3629,6 +2343,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldr	x18, [x22, w10, sxtw]
@@ -3660,6 +2375,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50    -      -     stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stnp	x20, x16, [x8]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stp	x3, x6, [x16]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00    -      -     stp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00    -      -     stp	q17, q19, [sp, #1008]
@@ -3718,10 +2435,14 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00    -      -     stnp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00    -      -     stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -      -      -      -      -      -      -      -     ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     and	wsp, w16, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     and	x2, x22, #0x1e00
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ands	w14, w8, #0x70
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ands	x4, x10, #0x60
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     eor	wsp, w4, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     eor	x27, x25, #0x1e00
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	w3, #983055
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     mov	x10, #-6148914691236517206
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ands	w4, w4, #0xf000f
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     ands	x11, x11, #0xaaaaaaaaaaaaaaaa
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     and	w12, w23, w21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     and	w16, w15, w1, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     and	w9, w4, w10, lsl #31
@@ -3736,6 +2457,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     bic	w2, w7, w9
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     eon	w29, w4, w19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     eon	x19, x12, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     eor	w8, w27, w2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     eor	x22, x16, x6
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     orn	x3, x5, x7, asr #2
@@ -3761,16 +2486,20 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     movk	x7, #0, lsl #32
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     movz	x8, #0, lsl #48
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     movk	x9, #0, lsl #48
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     msr	DAIFSet, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adr	x2, #1600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adrp	x21, #6553600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     adr	x0, #262144
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #0
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #-32768
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	w17, #16, test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbnz	x12, #60, #32764
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbnz	w3, #28, test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#-4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#134217724
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -      -     bl	test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     br	x20
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -      -      -     blr	xzr
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     ret	x10
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-mte-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-mte-instructions.s
new file mode 100644
index 0000000000000..4b40a1ca7dc8b
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-mte-instructions.s
@@ -0,0 +1,256 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3 -instruction-tables < %p/Inputs/mte-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                  U     irg	x0, x1
+# CHECK-NEXT:  1      2     0.50                  U     irg	sp, x1
+# CHECK-NEXT:  1      2     0.50                  U     irg	x0, sp
+# CHECK-NEXT:  1      2     0.50                  U     irg	x0, x1, x2
+# CHECK-NEXT:  1      2     0.50                  U     irg	sp, x1, x2
+# CHECK-NEXT:  1      2     0.50                        addg	x0, x1, #0, #1
+# CHECK-NEXT:  1      2     0.50                        addg	sp, x2, #32, #3
+# CHECK-NEXT:  1      2     0.50                        addg	x0, sp, #64, #5
+# CHECK-NEXT:  1      2     0.50                        addg	x3, x4, #1008, #6
+# CHECK-NEXT:  1      2     0.50                        addg	x5, x6, #112, #15
+# CHECK-NEXT:  1      2     0.50                  U     subg	x0, x1, #0, #1
+# CHECK-NEXT:  1      2     0.50                  U     subg	sp, x2, #32, #3
+# CHECK-NEXT:  1      2     0.50                  U     subg	x0, sp, #64, #5
+# CHECK-NEXT:  1      2     0.50                  U     subg	x3, x4, #1008, #6
+# CHECK-NEXT:  1      2     0.50                  U     subg	x5, x6, #112, #15
+# CHECK-NEXT:  1      1     0.13                        gmi	x0, x1, x2
+# CHECK-NEXT:  1      1     0.13                        gmi	x3, sp, x4
+# CHECK-NEXT:  1      1     0.13                        gmi	xzr, x0, x30
+# CHECK-NEXT:  1      1     0.13                        gmi	x30, x0, xzr
+# CHECK-NEXT:  1      1     0.13                        subp	x0, x1, x2
+# CHECK-NEXT:  1      1     0.25                  U     subps	x0, x1, x2
+# CHECK-NEXT:  1      1     0.13                        subp	x0, sp, sp
+# CHECK-NEXT:  1      1     0.25                  U     subps	x0, sp, sp
+# CHECK-NEXT:  1      1     0.25                  U     subps	xzr, x0, x1
+# CHECK-NEXT:  1      1     0.25                  U     subps	xzr, sp, sp
+# CHECK-NEXT:  2      1     0.50           *            stg	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            stg	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            stg	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stg	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stg	sp, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stzg	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stzg	sp, [x1]
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     stg	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stg	sp, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stzg	sp, [sp], #16
+# CHECK-NEXT:  2      1     0.50           *            st2g	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            st2g	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            st2g	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            st2g	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            st2g	sp, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x0, [x1, #-4096]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x1, [x2, #4080]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x2, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	x3, [x1]
+# CHECK-NEXT:  2      1     0.50           *            stz2g	sp, [x1]
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x1, [x2, #4080]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x2, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	sp, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     st2g	sp, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x0, [x1], #-4096
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x1, [x2], #4080
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	x2, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *      U     stz2g	sp, [sp], #16
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, x1, [x2, #-1024]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, x1, [x2, #1008]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, x1, [sp, #16]
+# CHECK-NEXT:  2      1     0.50           *            stgp	xzr, x1, [x2, #16]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, xzr, [x2, #16]
+# CHECK-NEXT:  2      1     0.50           *            stgp	x0, xzr, [x2]
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2, #-1024]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2, #1008]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [sp, #16]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	xzr, x1, [x2, #16]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, xzr, [x2, #16]!
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2], #-1024
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [x2], #1008
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, x1, [sp], #16
+# CHECK-NEXT:  3      1     0.50           *            stgp	xzr, x1, [x2], #16
+# CHECK-NEXT:  3      1     0.50           *            stgp	x0, xzr, [x2], #16
+# CHECK-NEXT:  1      4     0.33    *                   ldg	x0, [x1]
+# CHECK-NEXT:  1      4     0.33    *                   ldg	x2, [sp, #-4096]
+# CHECK-NEXT:  1      4     0.33    *                   ldg	x3, [x4, #4080]
+# CHECK-NEXT:  1      4     0.33    *             U     ldgm	x0, [x1]
+# CHECK-NEXT:  1      4     0.33    *             U     ldgm	x1, [sp]
+# CHECK-NEXT:  1      4     0.33    *             U     ldgm	xzr, [x2]
+# CHECK-NEXT:  2      1     0.50           *      U     stgm	x0, [x1]
+# CHECK-NEXT:  2      1     0.50           *      U     stgm	x1, [sp]
+# CHECK-NEXT:  2      1     0.50           *      U     stgm	xzr, [x2]
+# CHECK-NEXT:  2      1     0.50           *      U     stzgm	x0, [x1]
+# CHECK-NEXT:  2      1     0.50           *      U     stzgm	x1, [sp]
+# CHECK-NEXT:  2      1     0.50           *      U     stzgm	xzr, [x2]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - V3UnitB
+# CHECK-NEXT: [0.1] - V3UnitB
+# CHECK-NEXT: [0.2] - V3UnitB
+# CHECK-NEXT: [1.0] - V3UnitD
+# CHECK-NEXT: [1.1] - V3UnitD
+# CHECK-NEXT: [2.0] - V3UnitFlg
+# CHECK-NEXT: [2.1] - V3UnitFlg
+# CHECK-NEXT: [2.2] - V3UnitFlg
+# CHECK-NEXT: [2.3] - V3UnitFlg
+# CHECK-NEXT: [3.0] - V3UnitL12
+# CHECK-NEXT: [3.1] - V3UnitL12
+# CHECK-NEXT: [4]   - V3UnitLS0
+# CHECK-NEXT: [5]   - V3UnitM0
+# CHECK-NEXT: [6]   - V3UnitM1
+# CHECK-NEXT: [7]   - V3UnitS0
+# CHECK-NEXT: [8]   - V3UnitS1
+# CHECK-NEXT: [9]   - V3UnitS2
+# CHECK-NEXT: [10]  - V3UnitS3
+# CHECK-NEXT: [11]  - V3UnitS4
+# CHECK-NEXT: [12]  - V3UnitS5
+# CHECK-NEXT: [13]  - V3UnitST1
+# CHECK-NEXT: [14]  - V3UnitV0
+# CHECK-NEXT: [15]  - V3UnitV1
+# CHECK-NEXT: [16]  - V3UnitV2
+# CHECK-NEXT: [17]  - V3UnitV3
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16]   [17]
+# CHECK-NEXT:  -      -      -     37.00  37.00  1.00   1.00   1.00   1.00   2.00   2.00   39.00  14.00  14.00  6.50   6.50   6.50   6.50   6.50   6.50   37.00   -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16]   [17]   Instructions:
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     irg	x0, x1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     irg	sp, x1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     irg	x0, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     irg	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     irg	sp, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     addg	x0, x1, #0, #1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     addg	sp, x2, #32, #3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     addg	x0, sp, #64, #5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     addg	x3, x4, #1008, #6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     addg	x5, x6, #112, #15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subg	x0, x1, #0, #1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subg	sp, x2, #32, #3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subg	x0, sp, #64, #5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subg	x3, x4, #1008, #6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     subg	x5, x6, #112, #15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     gmi	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     gmi	x3, sp, x4
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     gmi	xzr, x0, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     gmi	x30, x0, xzr
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subp	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subps	x0, x1, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subp	x0, sp, sp
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subps	x0, sp, sp
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subps	xzr, x0, x1
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -      -      -     subps	xzr, sp, sp
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stg	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stg	x1, [x2, #4080]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stg	x2, [sp, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stg	x3, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stg	sp, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzg	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzg	x1, [x2, #4080]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzg	x2, [sp, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzg	x3, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzg	sp, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	x2, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	sp, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	x2, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	sp, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	x0, [x1], #-4096
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	x1, [x2], #4080
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	x2, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stg	sp, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	x0, [x1], #-4096
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	x1, [x2], #4080
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	x2, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stzg	sp, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     st2g	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     st2g	x1, [x2, #4080]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     st2g	x2, [sp, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     st2g	x3, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     st2g	sp, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stz2g	x0, [x1, #-4096]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stz2g	x1, [x2, #4080]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stz2g	x2, [sp, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stz2g	x3, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stz2g	sp, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	x2, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	sp, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	x0, [x1, #-4096]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	x1, [x2, #4080]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	x2, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	sp, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	x0, [x1], #-4096
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	x1, [x2], #4080
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	x2, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     st2g	sp, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	x0, [x1], #-4096
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	x1, [x2], #4080
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	x2, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stz2g	sp, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgp	x0, x1, [x2, #-1024]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgp	x0, x1, [x2, #1008]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgp	x0, x1, [sp, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgp	xzr, x1, [x2, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgp	x0, xzr, [x2, #16]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgp	x0, xzr, [x2]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, x1, [x2, #-1024]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, x1, [x2, #1008]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, x1, [sp, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	xzr, x1, [x2, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, xzr, [x2, #16]!
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, x1, [x2], #-1024
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, x1, [x2], #1008
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, x1, [sp], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	xzr, x1, [x2], #16
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50    -      -      -      -     stgp	x0, xzr, [x2], #16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldg	x0, [x1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldg	x2, [sp, #-4096]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldg	x3, [x4, #4080]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldgm	x0, [x1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldgm	x1, [sp]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -     ldgm	xzr, [x2]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgm	x0, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgm	x1, [sp]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stgm	xzr, [x2]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzgm	x0, [x1]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzgm	x1, [sp]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stzgm	xzr, [x2]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..a48978ce8b94d
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-rcpc-immo-instructions.s
@@ -0,0 +1,72 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3 -instruction-tables < %p/Inputs/rcpc-immo-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:  2      1     0.50    *                   ldapur	w7, [x24]
+# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
+# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
+# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
+# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
+# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - V3UnitB
+# CHECK-NEXT: [0.1] - V3UnitB
+# CHECK-NEXT: [0.2] - V3UnitB
+# CHECK-NEXT: [1.0] - V3UnitD
+# CHECK-NEXT: [1.1] - V3UnitD
+# CHECK-NEXT: [2.0] - V3UnitFlg
+# CHECK-NEXT: [2.1] - V3UnitFlg
+# CHECK-NEXT: [2.2] - V3UnitFlg
+# CHECK-NEXT: [2.3] - V3UnitFlg
+# CHECK-NEXT: [3.0] - V3UnitL12
+# CHECK-NEXT: [3.1] - V3UnitL12
+# CHECK-NEXT: [4]   - V3UnitLS0
+# CHECK-NEXT: [5]   - V3UnitM0
+# CHECK-NEXT: [6]   - V3UnitM1
+# CHECK-NEXT: [7]   - V3UnitS0
+# CHECK-NEXT: [8]   - V3UnitS1
+# CHECK-NEXT: [9]   - V3UnitS2
+# CHECK-NEXT: [10]  - V3UnitS3
+# CHECK-NEXT: [11]  - V3UnitS4
+# CHECK-NEXT: [12]  - V3UnitS5
+# CHECK-NEXT: [13]  - V3UnitST1
+# CHECK-NEXT: [14]  - V3UnitV0
+# CHECK-NEXT: [15]  - V3UnitV1
+# CHECK-NEXT: [16]  - V3UnitV2
+# CHECK-NEXT: [17]  - V3UnitV3
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16]   [17]
+# CHECK-NEXT:  -      -      -     6.50   6.50    -      -      -      -      -      -     6.50    -      -      -      -      -      -      -      -     6.50    -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16]   [17]   Instructions:
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapur	w7, [x24]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapur	x20, [x13]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapurb	w13, [x17]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapurh	w3, [x22]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapursb	w7, [x8]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapursb	x29, [x7]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapursh	w17, [x19]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapursh	x3, [x3]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     ldapursw	x3, [x18]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlur	w3, [x27]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlur	x23, [x25]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlurb	w30, [x17]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -      -      -     stlurh	w9, [x29]
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s
index 7ab2be5eaa365..800d16a8ae925 100644
--- a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-basic-instructions.s
@@ -1,1386 +1,5 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
-# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3ae -instruction-tables < %s | FileCheck %s
-
-#------------------------------------------------------------------------------
-# Add/sub (immediate)
-#------------------------------------------------------------------------------
-
-add      w2, w3, #4095
-add      w30, w29, #1, lsl #12
-add      w13, w5, #4095, lsl #12
-add      x5, x7, #1638
-add      w20, wsp, #801
-add      wsp, wsp, #1104
-add      wsp, w30, #4084
-add      x0, x24, #291
-add      x3, x24, #4095, lsl #12
-add      x8, sp, #1074
-add      sp, x29, #3816
-sub      w0, wsp, #4077
-sub      w4, w20, #546, lsl #12
-sub      sp, sp, #288
-sub      wsp, w19, #16
-adds     w13, w23, #291, lsl #12
-cmn      w2, #4095
-adds     w20, wsp, #0
-cmn      x3, #1, lsl #12
-cmp      sp, #20, lsl #12
-cmp      x30, #4095
-subs     x4, sp, #3822
-cmn      w3, #291, lsl #12
-cmn      wsp, #1365
-cmn      sp, #1092, lsl #12
-mov      sp, x30
-mov      wsp, w20
-mov      x11, sp
-mov      w24, wsp
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-add      w3, w5, w7
-add      wzr, w3, w5
-add      w20, wzr, w4
-add      w4, w6, wzr
-add      w11, w13, w15
-add      w9, w3, wzr, lsl #10
-add      w17, w29, w20, lsl #31
-add      w21, w22, w23, lsr #0
-add      w24, w25, w26, lsr #18
-add      w27, w28, w29, lsr #31
-add      w2, w3, w4, asr #0
-add      w5, w6, w7, asr #21
-add      w8, w9, w10, asr #31
-add      x3, x5, x7
-add      xzr, x3, x5
-add      x20, xzr, x4
-add      x4, x6, xzr
-add      x11, x13, x15
-add      x9, x3, xzr, lsl #10
-add      x17, x29, x20, lsl #63
-add      x21, x22, x23, lsr #0
-add      x24, x25, x26, lsr #18
-add      x27, x28, x29, lsr #63
-add      x2, x3, x4, asr #0
-add      x5, x6, x7, asr #21
-add      x8, x9, x10, asr #63
-adds     w3, w5, w7
-cmn      w3, w5
-adds     w20, wzr, w4
-adds     w4, w6, wzr
-adds     w11, w13, w15
-adds     w9, w3, wzr, lsl #10
-adds     w17, w29, w20, lsl #31
-adds     w21, w22, w23, lsr #0
-adds     w24, w25, w26, lsr #18
-adds     w27, w28, w29, lsr #31
-adds     w2, w3, w4, asr #0
-adds     w5, w6, w7, asr #21
-adds     w8, w9, w10, asr #31
-adds     x3, x5, x7
-cmn      x3, x5
-adds     x20, xzr, x4
-adds     x4, x6, xzr
-adds     x11, x13, x15
-adds     x9, x3, xzr, lsl #10
-adds     x17, x29, x20, lsl #63
-adds     x21, x22, x23, lsr #0
-adds     x24, x25, x26, lsr #18
-adds     x27, x28, x29, lsr #63
-adds     x2, x3, x4, asr #0
-adds     x5, x6, x7, asr #21
-adds     x8, x9, x10, asr #63
-sub      w3, w5, w7
-sub      wzr, w3, w5
-sub      w4, w6, wzr
-sub      w11, w13, w15
-sub      w9, w3, wzr, lsl #10
-sub      w17, w29, w20, lsl #31
-sub      w21, w22, w23, lsr #0
-sub      w24, w25, w26, lsr #18
-sub      w27, w28, w29, lsr #31
-sub      w2, w3, w4, asr #0
-sub      w5, w6, w7, asr #21
-sub      w8, w9, w10, asr #31
-sub      x3, x5, x7
-sub      xzr, x3, x5
-sub      x4, x6, xzr
-sub      x11, x13, x15
-sub      x9, x3, xzr, lsl #10
-sub      x17, x29, x20, lsl #63
-sub      x21, x22, x23, lsr #0
-sub      x24, x25, x26, lsr #18
-sub      x27, x28, x29, lsr #63
-sub      x2, x3, x4, asr #0
-sub      x5, x6, x7, asr #21
-sub      x8, x9, x10, asr #63
-subs     w3, w5, w7
-cmp      w3, w5
-subs     w4, w6, wzr
-subs     w11, w13, w15
-subs     w9, w3, wzr, lsl #10
-subs     w17, w29, w20, lsl #31
-subs     w21, w22, w23, lsr #0
-subs     w24, w25, w26, lsr #18
-subs     w27, w28, w29, lsr #31
-subs     w2, w3, w4, asr #0
-subs     w5, w6, w7, asr #21
-subs     w8, w9, w10, asr #31
-subs     x3, x5, x7
-cmp      x3, x5
-subs     x4, x6, xzr
-subs     x11, x13, x15
-subs     x9, x3, xzr, lsl #10
-subs     x17, x29, x20, lsl #63
-subs     x21, x22, x23, lsr #0
-subs     x24, x25, x26, lsr #18
-subs     x27, x28, x29, lsr #63
-subs     x2, x3, x4, asr #0
-subs     x5, x6, x7, asr #21
-subs     x8, x9, x10, asr #63
-cmn      wzr, w4
-cmn      w5, wzr
-cmn      w6, w7
-cmn      w8, w9, lsl #15
-cmn      w10, w11, lsl #31
-cmn      w12, w13, lsr #0
-cmn      w14, w15, lsr #21
-cmn      w16, w17, lsr #31
-cmn      w18, w19, asr #0
-cmn      w20, w21, asr #22
-cmn      w22, w23, asr #31
-cmn      x0, x3
-cmn      xzr, x4
-cmn      x5, xzr
-cmn      x6, x7
-cmn      x8, x9, lsl #15
-cmn      x10, x11, lsl #63
-cmn      x12, x13, lsr #0
-cmn      x14, x15, lsr #41
-cmn      x16, x17, lsr #63
-cmn      x18, x19, asr #0
-cmn      x20, x21, asr #55
-cmn      x22, x23, asr #63
-cmp      w0, w3
-cmp      wzr, w4
-cmp      w5, wzr
-cmp      w6, w7
-cmp      w8, w9, lsl #15
-cmp      w10, w11, lsl #31
-cmp      w12, w13, lsr #0
-cmp      w14, w15, lsr #21
-cmp      w18, w19, asr #0
-cmp      w20, w21, asr #22
-cmp      w22, w23, asr #31
-cmp      x0, x3
-cmp      xzr, x4
-cmp      x5, xzr
-cmp      x6, x7
-cmp      x8, x9, lsl #15
-cmp      x10, x11, lsl #63
-cmp      x12, x13, lsr #0
-cmp      x14, x15, lsr #41
-cmp      x16, x17, lsr #63
-cmp      x18, x19, asr #0
-cmp      x20, x21, asr #55
-cmp      x22, x23, asr #63
-cmp      wzr, w0
-cmp      xzr, x0
-
-#------------------------------------------------------------------------------
-# Add-subtract (shifted register)
-#------------------------------------------------------------------------------
-
-adc      w29, w27, w25
-adc      wzr, w3, w4
-adc      w9, wzr, w10
-adc      w20, w0, wzr
-adc      x29, x27, x25
-adc      xzr, x3, x4
-adc      x9, xzr, x10
-adc      x20, x0, xzr
-adcs     w29, w27, w25
-adcs     wzr, w3, w4
-adcs     w9, wzr, w10
-adcs     w20, w0, wzr
-adcs     x29, x27, x25
-adcs     xzr, x3, x4
-adcs     x9, xzr, x10
-adcs     x20, x0, xzr
-sbc      w29, w27, w25
-sbc      wzr, w3, w4
-ngc      w9, w10
-sbc      w20, w0, wzr
-sbc      x29, x27, x25
-sbc      xzr, x3, x4
-ngc      x9, x10
-sbc      x20, x0, xzr
-sbcs     w29, w27, w25
-sbcs     wzr, w3, w4
-ngcs     w9, w10
-sbcs     w20, w0, wzr
-sbcs     x29, x27, x25
-sbcs     xzr, x3, x4
-ngcs     x9, x10
-sbcs     x20, x0, xzr
-ngc      w3, w12
-ngc      wzr, w9
-ngc      w23, wzr
-ngc      x29, x30
-ngc      xzr, x0
-ngc      x0, xzr
-ngcs     w3, w12
-ngcs     wzr, w9
-ngcs     w23, wzr
-ngcs     x29, x30
-ngcs     xzr, x0
-ngcs     x0, xzr
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-sbfx     x1, x2, #3, #2
-asr      x3, x4, #63
-asr      wzr, wzr, #31
-sbfx     w12, w9, #0, #1
-ubfiz    x4, x5, #52, #11
-ubfx     xzr, x4, #0, #1
-ubfiz    x4, xzr, #1, #6
-lsr      x5, x6, #12
-bfi      x4, x5, #52, #11
-bfxil    xzr, x4, #0, #1
-bfi      x4, xzr, #1, #6
-bfxil    x5, x6, #12, #52
-sxtb     w1, w2
-sxtb     xzr, w3
-sxth     w9, w10
-sxth     x0, w1
-sxtw     x3, w30
-uxtb     w1, w2
-uxth     w9, w10
-ubfx     x3, x30, #0, #32
-asr      w3, w2, #0
-asr      w9, w10, #31
-asr      x20, x21, #63
-asr      w1, wzr, #3
-lsr      w3, w2, #0
-lsr      w9, w10, #31
-lsr      x20, x21, #63
-lsr      wzr, wzr, #3
-lsr      w3, w2, #0
-lsl      w9, w10, #31
-lsl      x20, x21, #63
-lsl      w1, wzr, #3
-sbfx     w9, w10, #0, #1
-sbfiz    x2, x3, #63, #1
-asr      x19, x20, #0
-sbfiz    x9, x10, #5, #59
-asr      w9, w10, #0
-sbfiz    w11, w12, #31, #1
-sbfiz    w13, w14, #29, #3
-sbfiz    xzr, xzr, #10, #11
-sbfx     w9, w10, #0, #1
-asr      x2, x3, #63
-asr      x19, x20, #0
-asr      x9, x10, #5
-asr      w9, w10, #0
-asr      w11, w12, #31
-asr      w13, w14, #29
-sbfx     xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfi      x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfi      x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfi      w11, w12, #31, #1
-bfi      w13, w14, #29, #3
-bfi      xzr, xzr, #10, #11
-bfxil    w9, w10, #0, #1
-bfxil    x2, x3, #63, #1
-bfxil    x19, x20, #0, #64
-bfxil    x9, x10, #5, #59
-bfxil    w9, w10, #0, #32
-bfxil    w11, w12, #31, #1
-bfxil    w13, w14, #29, #3
-bfxil    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsl      x2, x3, #63
-lsr      x19, x20, #0
-lsl      x9, x10, #5
-lsr      w9, w10, #0
-lsl      w11, w12, #31
-lsl      w13, w14, #29
-ubfiz    xzr, xzr, #10, #11
-ubfx     w9, w10, #0, #1
-lsr      x2, x3, #63
-lsr      x19, x20, #0
-lsr      x9, x10, #5
-lsr      w9, w10, #0
-lsr      w11, w12, #31
-lsr      w13, w14, #29
-ubfx     xzr, xzr, #10, #11
-
-#------------------------------------------------------------------------------
-# Compare and branch (immediate)
-#------------------------------------------------------------------------------
-
-cbz      w5, #4
-cbz      x5, #0
-cbnz     x2, #-4
-cbnz     x26, #1048572
-cbz      wzr, #0
-cbnz     xzr, #0
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b.ne #4
-b.ge #1048572
-b.ge #-4
-
-#------------------------------------------------------------------------------
-# Conditional compare (immediate)
-#------------------------------------------------------------------------------
-
-ccmp w1, #31, #0, eq
-ccmp w3, #0, #15, hs
-ccmp wzr, #15, #13, hs
-ccmp x9, #31, #0, le
-ccmp x3, #0, #15, gt
-ccmp xzr, #5, #7, ne
-ccmn w1, #31, #0, eq
-ccmn w3, #0, #15, hs
-ccmn wzr, #15, #13, hs
-ccmn x9, #31, #0, le
-ccmn x3, #0, #15, gt
-ccmn xzr, #5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional compare (register)
-#------------------------------------------------------------------------------
-
-ccmp w1, wzr, #0, eq
-ccmp w3, w0, #15, hs
-ccmp wzr, w15, #13, hs
-ccmp x9, xzr, #0, le
-ccmp x3, x0, #15, gt
-ccmp xzr, x5, #7, ne
-ccmn w1, wzr, #0, eq
-ccmn w3, w0, #15, hs
-ccmn wzr, w15, #13, hs
-ccmn x9, xzr, #0, le
-ccmn x3, x0, #15, gt
-ccmn xzr, x5, #7, ne
-
-#------------------------------------------------------------------------------
-# Conditional branch (immediate)
-#------------------------------------------------------------------------------
-
-csel     w1, w0, w19, ne
-csel     wzr, w5, w9, eq
-csel     w9, wzr, w30, gt
-csel     w1, w28, wzr, mi
-csel     x19, x23, x29, lt
-csel     xzr, x3, x4, ge
-csel     x5, xzr, x6, hs
-csel     x7, x8, xzr, lo
-csinc    w1, w0, w19, ne
-csinc    wzr, w5, w9, eq
-csinc    w9, wzr, w30, gt
-csinc    w1, w28, wzr, mi
-csinc    x19, x23, x29, lt
-csinc    xzr, x3, x4, ge
-csinc    x5, xzr, x6, hs
-csinc    x7, x8, xzr, lo
-csinv    w1, w0, w19, ne
-csinv    wzr, w5, w9, eq
-csinv    w9, wzr, w30, gt
-csinv    w1, w28, wzr, mi
-csinv    x19, x23, x29, lt
-csinv    xzr, x3, x4, ge
-csinv    x5, xzr, x6, hs
-csinv    x7, x8, xzr, lo
-csneg    w1, w0, w19, ne
-csneg    wzr, w5, w9, eq
-csneg    w9, wzr, w30, gt
-csneg    w1, w28, wzr, mi
-csneg    x19, x23, x29, lt
-csneg    xzr, x3, x4, ge
-csneg    x5, xzr, x6, hs
-csneg    x7, x8, xzr, lo
-cset    w3, eq
-cset    x9, pl
-csetm    w20, ne
-csetm    x30, ge
-csinc    w2, wzr, wzr, al
-csinv    x3, xzr, xzr, nv
-cinc    w3, w5, gt
-cinc    wzr, w4, le
-cset    w9, lt
-cinc    x3, x5, gt
-cinc    xzr, x4, le
-cset    x9, lt
-csinc   w5, w6, w6, nv
-csinc   x1, x2, x2, al
-cinv    w3, w5, gt
-cinv    wzr, w4, le
-csetm   w9, lt
-cinv    x3, x5, gt
-cinv    xzr, x4, le
-csetm   x9, lt
-csinv   x1, x0, x0, al
-csinv   w9, w8, w8, nv
-cneg     w3, w5, gt
-cneg     wzr, w4, le
-cneg     w9, wzr, lt
-cneg     x3, x5, gt
-cneg     xzr, x4, le
-cneg     x9, xzr, lt
-csneg    x4, x8, x8, al
-csinv    w9, w8, w8, nv
-
-#------------------------------------------------------------------------------
-# Data-processing (1 source)
-#------------------------------------------------------------------------------
-
-rbit	w0, w7
-rbit   x18, x3
-rev16	w17, w1
-rev16	x5, x2
-rev	w18, w0
-rev32	x20, x1
-rev	x22, x2
-clz	w24, w3
-clz	x26, x4
-cls	w3, w5
-cls	x20, x5
-
-#------------------------------------------------------------------------------
-# Data-processing (2 source)
-#------------------------------------------------------------------------------
-
-udiv	w0, w7, w10
-udiv	x9, x22, x4
-sdiv	w12, w21, w0
-sdiv	x13, x2, x1
-lsl	w11, w12, w13
-lsl	x14, x15, x16
-lsr	w17, w18, w19
-lsr	x20, x21, x22
-asr	w23, w24, w25
-asr	x26, x27, x28
-ror	w0, w1, w2
-ror    x3, x4, x5
-lsl	w6, w7, w8
-lsl	x9, x10, x11
-lsr	w12, w13, w14
-lsr	x15, x16, x17
-asr	w18, w19, w20
-asr	x21, x22, x23
-ror	w24, w25, w26
-ror	x27, x28, x29
-
-#------------------------------------------------------------------------------
-# Data-processing (3 sources)
-#------------------------------------------------------------------------------
-
-smulh    x30, x29, x28
-smulh    xzr, x27, x26
-umulh    x30, x29, x28
-umulh    x23, x30, xzr
-madd     w1, w3, w7, w4
-madd     wzr, w0, w9, w11
-madd     w13, wzr, w4, w4
-madd     w19, w30, wzr, w29
-mul      w4, w5, w6
-madd     x1, x3, x7, x4
-madd     xzr, x0, x9, x11
-madd     x13, xzr, x4, x4
-madd     x19, x30, xzr, x29
-mul      x4, x5, x6
-msub     w1, w3, w7, w4
-msub     wzr, w0, w9, w11
-msub     w13, wzr, w4, w4
-msub     w19, w30, wzr, w29
-mneg     w4, w5, w6
-msub     x1, x3, x7, x4
-msub     xzr, x0, x9, x11
-msub     x13, xzr, x4, x4
-msub     x19, x30, xzr, x29
-mneg     x4, x5, x6
-smaddl   x3, w5, w2, x9
-smaddl   xzr, w10, w11, x12
-smaddl   x13, wzr, w14, x15
-smaddl   x16, w17, wzr, x18
-smull    x19, w20, w21
-smsubl   x3, w5, w2, x9
-smsubl   xzr, w10, w11, x12
-smsubl   x13, wzr, w14, x15
-smsubl   x16, w17, wzr, x18
-smnegl   x19, w20, w21
-umaddl   x3, w5, w2, x9
-umaddl   xzr, w10, w11, x12
-umaddl   x13, wzr, w14, x15
-umaddl   x16, w17, wzr, x18
-umull    x19, w20, w21
-umsubl   x3, w5, w2, x9
-umsubl   x16, w17, wzr, x18
-umnegl   x19, w20, w21
-smulh    x30, x29, x28
-smulh    x23, x22, xzr
-umulh    x23, x22, xzr
-mul      x19, x20, xzr
-mneg     w21, w22, w23
-smull    x11, w13, w17
-umull    x11, w13, w17
-smnegl   x11, w13, w17
-umnegl   x11, w13, w17
-
-#------------------------------------------------------------------------------
-# Extract (immediate)
-#------------------------------------------------------------------------------
-
-extr     w3, w5, w7, #0
-extr     w11, w13, w17, #31
-extr     x3, x5, x7, #15
-extr     x11, x13, x17, #63
-ror     x19, x23, #24
-ror     x29, xzr, #63
-ror     w9, w13, #31
-
-#------------------------------------------------------------------------------
-# Floating-point compare
-#------------------------------------------------------------------------------
-
-fcmp    s3, s5
-fcmp    s31, #0.0
-fcmp    s31, #0.0
-fcmpe   s29, s30
-fcmpe   s15, #0.0
-fcmpe   s15, #0.0
-fcmp    d4, d12
-fcmp    d23, #0.0
-fcmp    d23, #0.0
-fcmpe   d26, d22
-fcmpe   d29, #0.0
-fcmpe   d29, #0.0
-
-#------------------------------------------------------------------------------
-# Floating-point conditional compare
-#------------------------------------------------------------------------------
-
-fccmp s1, s31, #0, eq
-fccmp s3, s0, #15, hs
-fccmp s31, s15, #13, hs
-fccmp d9, d31, #0, le
-fccmp d3, d0, #15, gt
-fccmp d31, d5, #7, ne
-fccmpe s1, s31, #0, eq
-fccmpe s3, s0, #15, hs
-fccmpe s31, s15, #13, hs
-fccmpe d9, d31, #0, le
-fccmpe d3, d0, #15, gt
-fccmpe d31, d5, #7, ne
-
-#-------------------------------------------------------------------------------
-# Floating-point conditional compare
-#-------------------------------------------------------------------------------
-
-fcsel s3, s20, s9, pl
-fcsel d9, d10, d11, mi
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmov     s0, s1
-fabs     s2, s3
-fneg     s4, s5
-fsqrt    s6, s7
-fcvt     d8, s9
-fcvt     h10, s11
-frintn   s12, s13
-frintp   s14, s15
-frintm   s16, s17
-frintz   s18, s19
-frinta   s20, s21
-frintx   s22, s23
-frinti   s24, s25
-fmov     d0, d1
-fabs     d2, d3
-fneg     d4, d5
-fsqrt    d6, d7
-fcvt     s8, d9
-fcvt     h10, d11
-frintn   d12, d13
-frintp   d14, d15
-frintm   d16, d17
-frintz   d18, d19
-frinta   d20, d21
-frintx   d22, d23
-frinti   d24, d25
-fcvt     s26, h27
-fcvt     d28, h29
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (2 sources)
-#------------------------------------------------------------------------------
-
-fmul     s20, s19, s17
-fdiv     s1, s2, s3
-fadd     s4, s5, s6
-fsub     s7, s8, s9
-fmax     s10, s11, s12
-fmin     s13, s14, s15
-fmaxnm   s16, s17, s18
-fminnm   s19, s20, s21
-fnmul    s22, s23, s2
-fmul     d20, d19, d17
-fdiv     d1, d2, d3
-fadd     d4, d5, d6
-fsub     d7, d8, d9
-fmax     d10, d11, d12
-fmin     d13, d14, d15
-fmaxnm   d16, d17, d18
-fminnm   d19, d20, d21
-fnmul    d22, d23, d24
-
-#------------------------------------------------------------------------------
-# Floating-point data-processing (1 source)
-#------------------------------------------------------------------------------
-
-fmadd s3, s5, s6, s31
-fmadd d3, d13, d0, d23
-fmsub s3, s5, s6, s31
-fmsub d3, d13, d0, d23
-fnmadd s3, s5, s6, s31
-fnmadd d3, d13, d0, d23
-fnmsub s3, s5, s6, s31
-fnmsub d3, d13, d0, d23
-
-#------------------------------------------------------------------------------
-# Floating-point <-> fixed-point conversion
-#------------------------------------------------------------------------------
-
-fcvtzs  w3, h5, #1
-fcvtzs  wzr, h20, #13
-fcvtzs  w19, h0, #32
-fcvtzs  x3, h5, #1
-fcvtzs  x12, h30, #45
-fcvtzs  x19, h0, #64
-fcvtzs  w3, s5, #1
-fcvtzs  wzr, s20, #13
-fcvtzs  w19, s0, #32
-fcvtzs  x3, s5, #1
-fcvtzs  x12, s30, #45
-fcvtzs  x19, s0, #64
-fcvtzs  w3, d5, #1
-fcvtzs  wzr, d20, #13
-fcvtzs  w19, d0, #32
-fcvtzs  x3, d5, #1
-fcvtzs  x12, d30, #45
-fcvtzs  x19, d0, #64
-fcvtzu  w3, h5, #1
-fcvtzu  wzr, h20, #13
-fcvtzu  w19, h0, #32
-fcvtzu  x3, h5, #1
-fcvtzu  x12, h30, #45
-fcvtzu  x19, h0, #64
-fcvtzu  w3, s5, #1
-fcvtzu  wzr, s20, #13
-fcvtzu  w19, s0, #32
-fcvtzu  x3, s5, #1
-fcvtzu  x12, s30, #45
-fcvtzu  x19, s0, #64
-fcvtzu  w3, d5, #1
-fcvtzu  wzr, d20, #13
-fcvtzu  w19, d0, #32
-fcvtzu  x3, d5, #1
-fcvtzu  x12, d30, #45
-fcvtzu  x19, d0, #64
-scvtf   h23, w19, #1
-scvtf   h31, wzr, #20
-scvtf   h14, w0, #32
-scvtf   h23, x19, #1
-scvtf   h31, xzr, #20
-scvtf   h14, x0, #64
-scvtf   s23, w19, #1
-scvtf   s31, wzr, #20
-scvtf   s14, w0, #32
-scvtf   s23, x19, #1
-scvtf   s31, xzr, #20
-scvtf   s14, x0, #64
-scvtf   d23, w19, #1
-scvtf   d31, wzr, #20
-scvtf   d14, w0, #32
-scvtf   d23, x19, #1
-scvtf   d31, xzr, #20
-scvtf   d14, x0, #64
-ucvtf   h23, w19, #1
-ucvtf   h31, wzr, #20
-ucvtf   h14, w0, #32
-ucvtf   h23, x19, #1
-ucvtf   h31, xzr, #20
-ucvtf   h14, x0, #64
-ucvtf   s23, w19, #1
-ucvtf   s31, wzr, #20
-ucvtf   s14, w0, #32
-ucvtf   s23, x19, #1
-ucvtf   s31, xzr, #20
-ucvtf   s14, x0, #64
-ucvtf   d23, w19, #1
-ucvtf   d31, wzr, #20
-ucvtf   d14, w0, #32
-ucvtf   d23, x19, #1
-ucvtf   d31, xzr, #20
-ucvtf   d14, x0, #64
-
-#------------------------------------------------------------------------------
-# Floating-point <-> integer conversion
-#------------------------------------------------------------------------------
-
-fcvtns   w3, h31
-fcvtns   xzr, h12
-fcvtnu   wzr, h12
-fcvtnu   x0, h0
-fcvtps   wzr, h9
-fcvtps   x12, h20
-fcvtpu   w30, h23
-fcvtpu   x29, h3
-fcvtms   w2, h3
-fcvtms   x4, h5
-fcvtmu   w6, h7
-fcvtmu   x8, h9
-fcvtzs   w10, h11
-fcvtzs   x12, h13
-fcvtzu   w14, h15
-fcvtzu   x15, h16
-scvtf    h17, w18
-scvtf    h19, x20
-ucvtf    h21, w22
-scvtf    h23, x24
-fcvtas   w25, h26
-fcvtas   x27, h28
-fcvtau   w29, h30
-fcvtau   xzr, h0
-fcvtns   w3, s31
-fcvtns   xzr, s12
-fcvtnu   wzr, s12
-fcvtnu   x0, s0
-fcvtps   wzr, s9
-fcvtps   x12, s20
-fcvtpu   w30, s23
-fcvtpu   x29, s3
-fcvtms   w2, s3
-fcvtms   x4, s5
-fcvtmu   w6, s7
-fcvtmu   x8, s9
-fcvtzs   w10, s11
-fcvtzs   x12, s13
-fcvtzu   w14, s15
-fcvtzu   x15, s16
-scvtf    s17, w18
-scvtf    s19, x20
-ucvtf    s21, w22
-scvtf    s23, x24
-fcvtas   w25, s26
-fcvtas   x27, s28
-fcvtau   w29, s30
-fcvtau   xzr, s0
-fcvtns   w3, d31
-fcvtns   xzr, d12
-fcvtnu   wzr, d12
-fcvtnu   x0, d0
-fcvtps   wzr, d9
-fcvtps   x12, d20
-fcvtpu   w30, d23
-fcvtpu   x29, d3
-fcvtms   w2, d3
-fcvtms   x4, d5
-fcvtmu   w6, d7
-fcvtmu   x8, d9
-fcvtzs   w10, d11
-fcvtzs   x12, d13
-fcvtzu   w14, d15
-fcvtzu   x15, d16
-scvtf    d17, w18
-scvtf    d19, x20
-ucvtf    d21, w22
-ucvtf    d23, x24
-fcvtas   w25, d26
-fcvtas   x27, d28
-fcvtau   w29, d30
-fcvtau   xzr, d0
-fmov     w3, s9
-fmov     s9, w3
-fmov     x20, d31
-fmov     d1, x15
-fmov     x3, v12.d[1]
-fmov     v1.d[1], x19
-
-#------------------------------------------------------------------------------
-# Floating-point immediate
-#------------------------------------------------------------------------------
-
-fmov     s2, #0.12500000
-fmov     s3, #1.00000000
-fmov     d30, #16.00000000
-fmov     s4, #1.06250000
-fmov     d10, #1.93750000
-fmov     s12, #-1.00000000
-fmov     d16, #8.50000000
-
-#------------------------------------------------------------------------------
-# Load-register (literal)
-#------------------------------------------------------------------------------
-
-ldr       w3, #0
-ldr       x29, #4
-ldrsw     xzr, #-4
-ldr       s0, #8
-ldr       d0, #1048572
-ldr       q0, #-1048576
-prfm      pldl1strm, #0
-prfm      #22, #0
-
-#------------------------------------------------------------------------------
-# Load/store exclusive
-#------------------------------------------------------------------------------
-
-stxrb      w18, w8, [sp]
-stxrh      w24, w15, [x16]
-stxr       w5, w6, [x17]
-stxr       w1, x10, [x21]
-ldxrb      w30, [x0]
-ldxrh      w17, [x4]
-ldxr       w22, [sp]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-ldxr       x11, [x29]
-stxp       w12, w11, w10, [sp]
-stxp       wzr, x27, x9, [x12]
-ldxp       w0, wzr, [sp]
-ldxp       x17, x0, [x18]
-ldxp       x17, x0, [x18]
-stlxrb     w12, w22, [x0]
-stlxrh     w10, w1, [x1]
-stlxr      w9, w2, [x2]
-stlxr      w9, x3, [sp]
-ldaxrb     w8, [x4]
-ldaxrh     w7, [x5]
-ldaxr      w6, [sp]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-ldaxr      x5, [x6]
-stlxp      w4, w5, w6, [sp]
-stlxp      wzr, x6, x7, [x1]
-ldaxp      w5, w18, [sp]
-ldaxp      x6, x19, [x22]
-ldaxp      x6, x19, [x22]
-stlrb      w24, [sp]
-stlrh      w25, [x30]
-stlr       w26, [x29]
-stlr       x27, [x28]
-stlr       x27, [x28]
-stlr       x27, [x28]
-ldarb      w23, [sp]
-ldarh      w22, [x30]
-ldar       wzr, [x29]
-ldar       x21, [x28]
-ldar       x21, [x28]
-ldar       x21, [x28]
-
-#------------------------------------------------------------------------------
-# Load/store (unscaled  immediate)
-#------------------------------------------------------------------------------
-
-sturb    w9, [sp]
-sturh    wzr, [x12, #255]
-stur     w16, [x0, #-256]
-stur     x28, [x14, #1]
-ldurb    w1, [x20, #255]
-ldurh    w20, [x1, #255]
-ldur     w12, [sp, #255]
-ldur     xzr, [x12, #255]
-ldursb   x9, [x7, #-256]
-ldursh   x17, [x19, #-256]
-ldursw   x20, [x15, #-256]
-prfum    pldl2keep, [sp, #-256]
-ldursb   w19, [x1, #-256]
-ldursh   w15, [x21, #-256]
-stur     b0, [sp, #1]
-stur     h12, [x12, #-1]
-stur     s15, [x0, #255]
-stur     d31, [x5, #25]
-stur     q9, [x5]
-ldur     b3, [sp]
-ldur     h5, [x4, #-256]
-ldur     s7, [x12, #-1]
-ldur     d11, [x19, #4]
-ldur     q13, [x1, #2]
-
-#------------------------------------------------------------------------------
-# Load/store (immediate post-indexed)
-#------------------------------------------------------------------------------
-
-strb     w9, [x2], #255
-strb     w10, [x3], #1
-strb     w10, [x3], #-256
-strh     w9, [x2], #255
-strh     w9, [x2], #1
-strh     w10, [x3], #-256
-str      w19, [sp], #255
-str      w20, [x30], #1
-str      w21, [x12], #-256
-str      xzr, [x9], #255
-str      x2, [x3], #1
-str      x19, [x12], #-256
-ldrb     w9, [x2], #255
-ldrb     w10, [x3], #1
-ldrb     w10, [x3], #-256
-ldrh     w9, [x2], #255
-ldrh     w9, [x2], #1
-ldrh     w10, [x3], #-256
-ldr      w19, [sp], #255
-ldr      w20, [x30], #1
-ldr      w21, [x12], #-256
-ldr      xzr, [x9], #255
-ldr      x2, [x3], #1
-ldr      x19, [x12], #-256
-ldrsb    xzr, [x9], #255
-ldrsb    x2, [x3], #1
-ldrsb    x19, [x12], #-256
-ldrsh    xzr, [x9], #255
-ldrsh    x2, [x3], #1
-ldrsh    x19, [x12], #-256
-ldrsw    xzr, [x9], #255
-ldrsw    x2, [x3], #1
-ldrsw    x19, [x12], #-256
-ldrsb    wzr, [x9], #255
-ldrsb    w2, [x3], #1
-ldrsb    w19, [x12], #-256
-ldrsh    wzr, [x9], #255
-ldrsh    w2, [x3], #1
-ldrsh    w19, [x12], #-256
-str      b0, [x0], #255
-str      b3, [x3], #1
-str      b5, [sp], #-256
-str      h10, [x10], #255
-str      h13, [x23], #1
-str      h15, [sp], #-256
-str      s20, [x20], #255
-str      s23, [x23], #1
-str      s25, [x0], #-256
-str      d20, [x20], #255
-str      d23, [x23], #1
-str      d25, [x0], #-256
-ldr      b0, [x0], #255
-ldr      b3, [x3], #1
-ldr      b5, [sp], #-256
-ldr      h10, [x10], #255
-ldr      h13, [x23], #1
-ldr      h15, [sp], #-256
-ldr      s20, [x20], #255
-ldr      s23, [x23], #1
-ldr      s25, [x0], #-256
-ldr      d20, [x20], #255
-ldr      d23, [x23], #1
-ldr      d25, [x0], #-256
-ldr      q20, [x1], #255
-ldr      q23, [x9], #1
-ldr      q25, [x20], #-256
-str      q10, [x1], #255
-str      q22, [sp], #1
-str      q21, [x20], #-256
-
-#-------------------------------------------------------------------------------
-# Load-store register (immediate pre-indexed)
-#-------------------------------------------------------------------------------
-
-ldr      x3, [x4, #0]!
-strb     w9, [x2, #255]!
-strb     w10, [x3, #1]!
-strb     w10, [x3, #-256]!
-strh     w9, [x2, #255]!
-strh     w9, [x2, #1]!
-strh     w10, [x3, #-256]!
-str      w19, [sp, #255]!
-str      w20, [x30, #1]!
-str      w21, [x12, #-256]!
-str      xzr, [x9, #255]!
-str      x2, [x3, #1]!
-str      x19, [x12, #-256]!
-ldrb     w9, [x2, #255]!
-ldrb     w10, [x3, #1]!
-ldrb     w10, [x3, #-256]!
-ldrh     w9, [x2, #255]!
-ldrh     w9, [x2, #1]!
-ldrh     w10, [x3, #-256]!
-ldr      w19, [sp, #255]!
-ldr      w20, [x30, #1]!
-ldr      w21, [x12, #-256]!
-ldr      xzr, [x9, #255]!
-ldr      x2, [x3, #1]!
-ldr      x19, [x12, #-256]!
-ldrsb    xzr, [x9, #255]!
-ldrsb    x2, [x3, #1]!
-ldrsb    x19, [x12, #-256]!
-ldrsh    xzr, [x9, #255]!
-ldrsh    x2, [x3, #1]!
-ldrsh    x19, [x12, #-256]!
-ldrsw    xzr, [x9, #255]!
-ldrsw    x2, [x3, #1]!
-ldrsw    x19, [x12, #-256]!
-ldrsb    wzr, [x9, #255]!
-ldrsb    w2, [x3, #1]!
-ldrsb    w19, [x12, #-256]!
-ldrsh    wzr, [x9, #255]!
-ldrsh    w2, [x3, #1]!
-ldrsh    w19, [x12, #-256]!
-str      b0, [x0, #255]!
-str      b3, [x3, #1]!
-str      b5, [sp, #-256]!
-str      h10, [x10, #255]!
-str      h13, [x23, #1]!
-str      h15, [sp, #-256]!
-str      s20, [x20, #255]!
-str      s23, [x23, #1]!
-str      s25, [x0, #-256]!
-str      d20, [x20, #255]!
-str      d23, [x23, #1]!
-str      d25, [x0, #-256]!
-ldr      b0, [x0, #255]!
-ldr      b3, [x3, #1]!
-ldr      b5, [sp, #-256]!
-ldr      h10, [x10, #255]!
-ldr      h13, [x23, #1]!
-ldr      h15, [sp, #-256]!
-ldr      s20, [x20, #255]!
-ldr      s23, [x23, #1]!
-ldr      s25, [x0, #-256]!
-ldr      d20, [x20, #255]!
-ldr      d23, [x23, #1]!
-ldr      d25, [x0, #-256]!
-ldr      q20, [x1, #255]!
-ldr      q23, [x9, #1]!
-ldr      q25, [x20, #-256]!
-str      q10, [x1, #255]!
-str      q22, [sp, #1]!
-str      q21, [x20, #-256]!
-
-#------------------------------------------------------------------------------
-# Load/store (unprivileged)
-#------------------------------------------------------------------------------
-
-sttrb    w9, [sp]
-sttrh    wzr, [x12, #255]
-sttr     w16, [x0, #-256]
-sttr     x28, [x14, #1]
-ldtrb    w1, [x20, #255]
-ldtrh    w20, [x1, #255]
-ldtr     w12, [sp, #255]
-ldtr     xzr, [x12, #255]
-ldtrsb   x9, [x7, #-256]
-ldtrsh   x17, [x19, #-256]
-ldtrsw   x20, [x15, #-256]
-ldtrsb   w19, [x1, #-256]
-ldtrsh   w15, [x21, #-256]
-
-#------------------------------------------------------------------------------
-# Load/store (unsigned  immediate)
-#------------------------------------------------------------------------------
-
-ldr      x4, [x29]
-ldr      x30, [x12, #32760]
-ldr      x20, [sp, #8]
-ldr      xzr, [sp]
-ldr      w2, [sp]
-ldr      w17, [sp, #16380]
-ldr      w13, [x2, #4]
-ldrsw    x2, [x5, #4]
-ldrsw    x23, [sp, #16380]
-ldrh     w2, [x4]
-ldrsh    w23, [x6, #8190]
-ldrsh    wzr, [sp, #2]
-ldrsh    x29, [x2, #2]
-ldrb     w26, [x3, #121]
-ldrb     w12, [x2]
-ldrsb    w27, [sp, #4095]
-ldrsb    xzr, [x15]
-str      x30, [sp]
-str      w20, [x4, #16380]
-strh     w17, [sp, #8190]
-strb     w23, [x3, #4095]
-strb     wzr, [x2]
-ldr      b31, [sp, #4095]
-ldr      h20, [x2, #8190]
-ldr      s10, [x19, #16380]
-ldr      d3, [x10, #32760]
-str      q12, [sp, #65520]
-
-#------------------------------------------------------------------------------
-# Load/store (register offset)
-#------------------------------------------------------------------------------
-
-ldr      h3, [sp, x5]
-ldr      h9, [x27, x6]
-ldr      h10, [x30, x7, lsl #1]
-str      h11, [x29, x3, sxtx]
-str      h12, [x28, xzr, sxtx]
-str      h13, [x27, x5, sxtx #1]
-ldr      h14, [x26, w6, uxtw]
-ldr      h15, [x25, w7, uxtw]
-ldr      h16, [x24, w8, uxtw #1]
-ldr      h17, [x23, w9, sxtw]
-str      h18, [x22, w10, sxtw]
-ldr      h19, [x21, wzr, sxtw #1]
-ldrb     w3, [sp, x5]
-ldrb     w9, [x27, x6]
-ldrsb    w10, [x30, x7]
-ldrb     w11, [x29, x3, sxtx]
-strb     w12, [x28, xzr, sxtx]
-ldrb     w14, [x26, w6, uxtw]
-ldrsb    w15, [x25, w7, uxtw]
-ldrb     w17, [x23, w9, sxtw]
-ldrsb    x18, [x22, w10, sxtw]
-ldrsh    w3, [sp, x5]
-ldrsh    w9, [x27, x6]
-ldrh     w10, [x30, x7, lsl #1]
-strh     w11, [x29, x3, sxtx]
-ldrh     w12, [x28, xzr, sxtx]
-ldrsh    x13, [x27, x5, sxtx #1]
-ldrh     w14, [x26, w6, uxtw]
-ldrh     w15, [x25, w7, uxtw]
-ldrsh    w16, [x24, w8, uxtw #1]
-ldrh     w17, [x23, w9, sxtw]
-ldrh     w18, [x22, w10, sxtw]
-strh     w19, [x21, wzr, sxtw #1]
-ldr      w3, [sp, x5]
-ldr      s9, [x27, x6]
-ldr      w10, [x30, x7, lsl #2]
-ldr      w11, [x29, x3, sxtx]
-str      s12, [x28, xzr, sxtx]
-str      w13, [x27, x5, sxtx #2]
-str      w14, [x26, w6, uxtw]
-ldr      w15, [x25, w7, uxtw]
-ldr      w16, [x24, w8, uxtw #2]
-ldrsw    x17, [x23, w9, sxtw]
-ldr      w18, [x22, w10, sxtw]
-ldrsw    x19, [x21, wzr, sxtw #2]
-ldr      x3, [sp, x5]
-str      x9, [x27, x6]
-ldr      d10, [x30, x7, lsl #3]
-str      x11, [x29, x3, sxtx]
-ldr      x12, [x28, xzr, sxtx]
-ldr      x13, [x27, x5, sxtx #3]
-prfm     pldl1keep, [x26, w6, uxtw]
-ldr      x15, [x25, w7, uxtw]
-ldr      x16, [x24, w8, uxtw #3]
-ldr      x17, [x23, w9, sxtw]
-ldr      x18, [x22, w10, sxtw]
-str      d19, [x21, wzr, sxtw #3]
-ldr      q3, [sp, x5]
-ldr      q9, [x27, x6]
-ldr      q10, [x30, x7, lsl #4]
-str      q11, [x29, x3, sxtx]
-str      q12, [x28, xzr, sxtx]
-str      q13, [x27, x5, sxtx #4]
-ldr      q14, [x26, w6, uxtw]
-ldr      q15, [x25, w7, uxtw]
-ldr      q16, [x24, w8, uxtw #4]
-ldr      q17, [x23, w9, sxtw]
-str      q18, [x22, w10, sxtw]
-ldr      q19, [x21, wzr, sxtw #4]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp]
-stp      wzr, w9, [sp, #252]
-ldp      w2, wzr, [sp, #-256]
-ldp      w9, w10, [sp, #4]
-ldpsw    x9, x10, [sp, #4]
-ldpsw    x9, x10, [x2, #-256]
-ldpsw    x20, x30, [sp, #252]
-ldp      x21, x29, [x2, #504]
-ldp      x22, x23, [x3, #-512]
-ldp      x24, x25, [x4, #8]
-ldp      s29, s28, [sp, #252]
-stp      s27, s26, [sp, #-256]
-ldp      s1, s2, [x3, #44]
-stp      d3, d5, [x9, #504]
-stp      d7, d11, [x10, #-512]
-ldp      d2, d3, [x30, #-8]
-stp      q3, q5, [sp]
-stp      q17, q19, [sp, #1008]
-ldp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Load/store register pair (post-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp], #0
-stp      wzr, w9, [sp], #252
-ldp      w2, wzr, [sp], #-256
-ldp      w9, w10, [sp], #4
-ldpsw    x9, x10, [sp], #4
-ldpsw    x9, x10, [x2], #-256
-ldpsw    x20, x30, [sp], #252
-ldp      x21, x29, [x2], #504
-ldp      x22, x23, [x3], #-512
-ldp      x24, x25, [x4], #8
-ldp      s29, s28, [sp], #252
-stp      s27, s26, [sp], #-256
-ldp      s1, s2, [x3], #44
-stp      d3, d5, [x9], #504
-stp      d7, d11, [x10], #-512
-ldp      d2, d3, [x30], #-8
-stp      q3, q5, [sp], #0
-stp      q17, q19, [sp], #1008
-ldp      q23, q29, [x1], #-1024
-
-#------------------------------------------------------------------------------
-# Load/store register pair (pre-indexed)
-#------------------------------------------------------------------------------
-
-ldp      w3, w5, [sp, #0]!
-stp      wzr, w9, [sp, #252]!
-ldp      w2, wzr, [sp, #-256]!
-ldp      w9, w10, [sp, #4]!
-ldpsw    x9, x10, [sp, #4]!
-ldpsw    x9, x10, [x2, #-256]!
-ldpsw    x20, x30, [sp, #252]!
-ldp      x21, x29, [x2, #504]!
-ldp      x22, x23, [x3, #-512]!
-ldp      x24, x25, [x4, #8]!
-ldp      s29, s28, [sp, #252]!
-stp      s27, s26, [sp, #-256]!
-ldp      s1, s2, [x3, #44]!
-stp      d3, d5, [x9, #504]!
-stp      d7, d11, [x10, #-512]!
-ldp      d2, d3, [x30, #-8]!
-stp      q3, q5, [sp, #0]!
-stp      q17, q19, [sp, #1008]!
-ldp      q23, q29, [x1, #-1024]!
-
-#------------------------------------------------------------------------------
-# Load/store register pair (offset)
-#------------------------------------------------------------------------------
-
-ldnp      w3, w5, [sp]
-stnp      wzr, w9, [sp, #252]
-ldnp      w2, wzr, [sp, #-256]
-ldnp      w9, w10, [sp, #4]
-ldnp      x21, x29, [x2, #504]
-ldnp      x22, x23, [x3, #-512]
-ldnp      x24, x25, [x4, #8]
-ldnp      s29, s28, [sp, #252]
-stnp      s27, s26, [sp, #-256]
-ldnp      s1, s2, [x3, #44]
-stnp      d3, d5, [x9, #504]
-stnp      d7, d11, [x10, #-512]
-ldnp      d2, d3, [x30, #-8]
-stnp      q3, q5, [sp]
-stnp      q17, q19, [sp, #1008]
-ldnp      q23, q29, [x1, #-1024]
-
-#------------------------------------------------------------------------------
-# Logical (immediate)
-#------------------------------------------------------------------------------
-
-mov      w3, #983055
-mov      x10, #-6148914691236517206
-ands     w4, w4, #983055
-ands     x11, x11, #-6148914691236517206
-
-#------------------------------------------------------------------------------
-# Logical (shifted register)
-#------------------------------------------------------------------------------
-
-and      w12, w23, w21
-and      w16, w15, w1, lsl #1
-and      w9, w4, w10, lsl #31
-and      w3, w30, w11
-and      x3, x5, x7, lsl #63
-and      x5, x14, x19, asr #4
-and      w3, w17, w19, ror #31
-and      w0, w2, wzr, lsr #17
-and      w3, w30, w11, asr #2
-and      xzr, x4, x26
-and      w3, wzr, w20, ror #2
-and      x7, x20, xzr, asr #63
-bic      x13, x20, x14, lsl #47
-bic      w2, w7, w9
-orr      w2, w7, w0, asr #31
-orr      x8, x9, x10, lsl #12
-orn      x3, x5, x7, asr #2
-orn      w2, w5, w29
-ands     w7, wzr, w9, lsl #1
-ands     x3, x5, x20, ror #63
-bics     w3, w5, w7
-bics     x3, xzr, x3, lsl #1
-tst      w3, w7, lsl #31
-tst      x2, x20, asr #2
-mov      x3, x6
-mov      x3, xzr
-mov      wzr, w2
-mov      w3, w5
-
-#------------------------------------------------------------------------------
-# Move wide (immediate)
-#------------------------------------------------------------------------------
-
-movz     w2, #0, lsl #16
-mov     w2, #-1235
-mov     x2, #5299989643264
-mov      x2, #0
-movk     w3, #0
-movz     x4, #0, lsl #16
-movk     w5, #0, lsl #16
-movz     x6, #0, lsl #32
-movk     x7, #0, lsl #32
-movz     x8, #0, lsl #48
-movk     x9, #0, lsl #48
-
-#------------------------------------------------------------------------------
-# PC-relative addressing
-#------------------------------------------------------------------------------
-
-adr      x2, #1600
-adrp     x21, #6553600
-adr      x0, #262144
-
-#------------------------------------------------------------------------------
-# Test and branch (immediate)
-#------------------------------------------------------------------------------
-
-tbz     x12, #62, #0
-tbz     x12, #62, #4
-tbz     x12, #62, #-32768
-tbnz    x12, #60, #32764
-
-#------------------------------------------------------------------------------
-# Unconditional branch (immediate)
-#------------------------------------------------------------------------------
-
-b        #4
-b        #-4
-b        #134217724
-
-#------------------------------------------------------------------------------
-# Unconditional branch (register)
-#------------------------------------------------------------------------------
-
-br       x20
-blr      xzr
-ret      x10
-ret
-eret
-drps
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3ae -instruction-tables < %p/Inputs/basic-instructions.s | FileCheck %s
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -1410,22 +29,22 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	w2, #4095
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wsp, #0
 # CHECK-NEXT:  1      1     0.25                        cmn	x3, #1, lsl #12
+# CHECK-NEXT:  1      1     0.25                        cmp	wsp, #2342
 # CHECK-NEXT:  1      1     0.25                        cmp	sp, #20, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmp	x30, #4095
 # CHECK-NEXT:  1      1     0.25                        subs	x4, sp, #3822
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, #291, lsl #12
 # CHECK-NEXT:  1      1     0.25                        cmn	wsp, #1365
 # CHECK-NEXT:  1      1     0.25                        cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  1      1     0.13                        mov	sp, x30
-# CHECK-NEXT:  1      1     0.13                        mov	wsp, w20
-# CHECK-NEXT:  1      1     0.13                        mov	x11, sp
-# CHECK-NEXT:  1      1     0.13                        mov	w24, wsp
+# CHECK-NEXT:  1      1     0.13                        mov	x10, #-63432
+# CHECK-NEXT:  1      2     0.50                        add	wsp, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        add	x25, x9, w25, uxtb
 # CHECK-NEXT:  1      1     0.13                        add	w3, w5, w7
 # CHECK-NEXT:  1      1     0.13                        add	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.13                        add	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.13                        add	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.13                        add	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.13                        add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	w24, w25, w26, lsr #18
@@ -1439,7 +58,7 @@ drps
 # CHECK-NEXT:  1      1     0.13                        add	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.13                        add	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.13                        add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        add	x27, x28, x29, lsr #63
@@ -1447,11 +66,13 @@ drps
 # CHECK-NEXT:  1      2     0.50                        add	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        add	x8, x9, x10, asr #63
 # CHECK-NEXT:  1      1     0.25                        adds	w3, w5, w7
+# CHECK-NEXT:  1      2     0.50                        adds	w17, wsp, w25
+# CHECK-NEXT:  1      2     0.50                        adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmn	w3, w5
 # CHECK-NEXT:  1      1     0.25                        adds	w20, wzr, w4
 # CHECK-NEXT:  1      1     0.25                        adds	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        adds	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	w24, w25, w26, lsr #18
@@ -1465,7 +86,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        adds	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        adds	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        adds	x27, x28, x29, lsr #63
@@ -1476,7 +97,7 @@ drps
 # CHECK-NEXT:  1      1     0.13                        sub	wzr, w3, w5
 # CHECK-NEXT:  1      1     0.13                        sub	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.13                        sub	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.13                        sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	w24, w25, w26, lsr #18
@@ -1489,18 +110,21 @@ drps
 # CHECK-NEXT:  1      1     0.13                        sub	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.13                        sub	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.13                        sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  1      2     0.50                        sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  1      2     0.50                        sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  1      2     0.50                        sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  1      2     0.50                        sub	w13, wsp, w10
+# CHECK-NEXT:  1      2     0.50                        sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  1      2     0.50                        subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  1      1     0.25                        subs	w3, w5, w7
 # CHECK-NEXT:  1      1     0.25                        cmp	w3, w5
 # CHECK-NEXT:  1      1     0.25                        subs	w4, w6, wzr
 # CHECK-NEXT:  1      1     0.25                        subs	w11, w13, w15
-# CHECK-NEXT:  1      2     0.50                        subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  1      1     0.25                        subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  1      2     0.50                        subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  1      2     0.50                        subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	w24, w25, w26, lsr #18
@@ -1513,7 +137,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        subs	x4, x6, xzr
 # CHECK-NEXT:  1      1     0.25                        subs	x11, x13, x15
 # CHECK-NEXT:  1      2     0.50                        subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  1      2     0.50                        subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  1      1     0.25                        subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  1      2     0.50                        subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  1      2     0.50                        subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  1      2     0.50                        subs	x27, x28, x29, lsr #63
@@ -1523,7 +147,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmn	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmn	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmn	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmn	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmn	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmn	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	w14, w15, lsr #21
@@ -1536,7 +160,7 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmn	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmn	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmn	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmn	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmn	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmn	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmn	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmn	x16, x17, lsr #63
@@ -1547,19 +171,21 @@ drps
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w4
 # CHECK-NEXT:  1      1     0.25                        cmp	w5, wzr
 # CHECK-NEXT:  1      1     0.25                        cmp	w6, w7
-# CHECK-NEXT:  1      2     0.50                        cmp	w8, w9, lsl #15
+# CHECK-NEXT:  1      1     0.25                        cmp	w8, w9, lsl #1
 # CHECK-NEXT:  1      2     0.50                        cmp	w10, w11, lsl #31
 # CHECK-NEXT:  1      2     0.50                        cmp	w12, w13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w14, w15, lsr #21
 # CHECK-NEXT:  1      2     0.50                        cmp	w18, w19, asr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	w20, w21, asr #22
 # CHECK-NEXT:  1      2     0.50                        cmp	w22, w23, asr #31
+# CHECK-NEXT:  1      2     0.50                        cmp	wsp, w26
+# CHECK-NEXT:  1      2     0.50                        cmp	x16, w27, uxtb
 # CHECK-NEXT:  1      1     0.25                        cmp	x0, x3
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x4
 # CHECK-NEXT:  1      1     0.25                        cmp	x5, xzr
 # CHECK-NEXT:  1      1     0.25                        cmp	x6, x7
 # CHECK-NEXT:  1      2     0.50                        cmp	x8, x9, lsl #15
-# CHECK-NEXT:  1      2     0.50                        cmp	x10, x11, lsl #63
+# CHECK-NEXT:  1      1     0.25                        cmp	x10, x11, lsl #3
 # CHECK-NEXT:  1      2     0.50                        cmp	x12, x13, lsr #0
 # CHECK-NEXT:  1      2     0.50                        cmp	x14, x15, lsr #41
 # CHECK-NEXT:  1      2     0.50                        cmp	x16, x17, lsr #63
@@ -1568,6 +194,10 @@ drps
 # CHECK-NEXT:  1      2     0.50                        cmp	x22, x23, asr #63
 # CHECK-NEXT:  1      1     0.25                        cmp	wzr, w0
 # CHECK-NEXT:  1      1     0.25                        cmp	xzr, x0
+# CHECK-NEXT:  1      1     0.13                        mov	sp, x30
+# CHECK-NEXT:  1      1     0.13                        mov	wsp, w20
+# CHECK-NEXT:  1      1     0.13                        mov	x11, sp
+# CHECK-NEXT:  1      1     0.13                        mov	w24, wsp
 # CHECK-NEXT:  1      1     0.13                        adc	w29, w27, w25
 # CHECK-NEXT:  1      1     0.13                        adc	wzr, w3, w4
 # CHECK-NEXT:  1      1     0.13                        adc	w9, wzr, w10
@@ -1640,15 +270,11 @@ drps
 # CHECK-NEXT:  1      1     0.13                        lsr	w9, w10, #31
 # CHECK-NEXT:  1      1     0.13                        lsr	x20, x21, #63
 # CHECK-NEXT:  1      1     0.13                        lsr	wzr, wzr, #3
-# CHECK-NEXT:  1      1     0.13                        lsr	w3, w2, #0
 # CHECK-NEXT:  1      1     0.13                        lsl	w9, w10, #31
 # CHECK-NEXT:  1      1     0.13                        lsl	x20, x21, #63
 # CHECK-NEXT:  1      1     0.13                        lsl	w1, wzr, #3
-# CHECK-NEXT:  1      1     0.13                        sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.13                        sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  1      1     0.13                        asr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.13                        sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  1      1     0.13                        asr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.13                        sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  1      1     0.13                        sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  1      1     0.13                        sbfiz	xzr, xzr, #10, #11
@@ -1660,11 +286,8 @@ drps
 # CHECK-NEXT:  1      1     0.13                        asr	w11, w12, #31
 # CHECK-NEXT:  1      1     0.13                        asr	w13, w14, #29
 # CHECK-NEXT:  1      1     0.13                        sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	x2, x3, #63, #1
-# CHECK-NEXT:  1      2     0.50                        bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  1      2     0.50                        bfi	x9, x10, #5, #59
-# CHECK-NEXT:  1      2     0.50                        bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  1      2     0.50                        bfi	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfi	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfc	xzr, #10, #11
@@ -1676,11 +299,8 @@ drps
 # CHECK-NEXT:  1      2     0.50                        bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  1      2     0.50                        bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  1      2     0.50                        bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  1      1     0.13                        ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  1      1     0.13                        lsl	x2, x3, #63
-# CHECK-NEXT:  1      1     0.13                        lsr	x19, x20, #0
 # CHECK-NEXT:  1      1     0.13                        lsl	x9, x10, #5
-# CHECK-NEXT:  1      1     0.13                        lsr	w9, w10, #0
 # CHECK-NEXT:  1      1     0.13                        lsl	w11, w12, #31
 # CHECK-NEXT:  1      1     0.13                        lsl	w13, w14, #29
 # CHECK-NEXT:  1      1     0.13                        ubfiz	xzr, xzr, #10, #11
@@ -1698,6 +318,7 @@ drps
 # CHECK-NEXT:  1      1     0.33                        cbnz	x26, #1048572
 # CHECK-NEXT:  1      1     0.33                        cbz	wzr, #0
 # CHECK-NEXT:  1      1     0.33                        cbnz	xzr, #0
+# CHECK-NEXT:  1      1     0.33                        cbnz	w21, test
 # CHECK-NEXT:  1      1     0.33                        b.ne	#4
 # CHECK-NEXT:  1      1     0.33                        b.ge	#1048572
 # CHECK-NEXT:  1      1     0.33                        b.ge	#-4
@@ -1786,7 +407,6 @@ drps
 # CHECK-NEXT:  1      1     0.13                        cneg	xzr, x4, le
 # CHECK-NEXT:  1      1     0.13                        cneg	x9, xzr, lt
 # CHECK-NEXT:  1      1     0.13                        csneg	x4, x8, x8, al
-# CHECK-NEXT:  1      1     0.13                        csinv	w9, w8, w8, nv
 # CHECK-NEXT:  1      1     0.13                        rbit	w0, w7
 # CHECK-NEXT:  1      1     0.13                        rbit	x18, x3
 # CHECK-NEXT:  1      1     0.13                        rev16	w17, w1
@@ -1818,6 +438,16 @@ drps
 # CHECK-NEXT:  1      1     0.13                        asr	x21, x22, x23
 # CHECK-NEXT:  1      1     0.13                        ror	w24, w25, w26
 # CHECK-NEXT:  1      1     0.13                        ror	x27, x28, x29
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w30, w23, w15
+# CHECK-NEXT:  1      2     1.00                        crc32cb	wzr, w12, w14
+# CHECK-NEXT:  1      2     1.00                        crc32cb	w28, w10, w11
+# CHECK-NEXT:  1      2     1.00                        crc32b	w27, w12, w15
+# CHECK-NEXT:  1      2     1.00                        crc32h	w3, w15, w21
+# CHECK-NEXT:  1      2     1.00                        crc32w	w9, w18, w24
+# CHECK-NEXT:  1      2     1.00                        crc32x	w19, w6, x25
+# CHECK-NEXT:  1      2     1.00                        crc32ch	w25, w26, w16
+# CHECK-NEXT:  1      2     1.00                        crc32cw	w27, w12, w23
+# CHECK-NEXT:  1      2     1.00                        crc32cx	w21, w28, x5
 # CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	xzr, x27, x26
 # CHECK-NEXT:  1      3     0.50                        umulh	x30, x29, x28
@@ -1860,7 +490,6 @@ drps
 # CHECK-NEXT:  1      2     0.50                        umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  1      2     0.50                        umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  1      2     0.50                        umnegl	x19, w20, w21
-# CHECK-NEXT:  1      3     0.50                        smulh	x30, x29, x28
 # CHECK-NEXT:  1      3     0.50                        smulh	x23, x22, xzr
 # CHECK-NEXT:  1      3     0.50                        umulh	x23, x22, xzr
 # CHECK-NEXT:  1      2     0.50                        mul	x19, x20, xzr
@@ -1876,24 +505,26 @@ drps
 # CHECK-NEXT:  1      1     0.13                        ror	x19, x23, #24
 # CHECK-NEXT:  1      1     0.13                        ror	x29, xzr, #63
 # CHECK-NEXT:  1      1     0.13                        ror	w9, w13, #31
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, h21
+# CHECK-NEXT:  1      2     1.00                        fcmp	h5, #0.0
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h22, h21
+# CHECK-NEXT:  1      2     1.00                        fcmpe	h13, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	s3, s5
 # CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	s31, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s29, s30
 # CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	s15, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmp	d4, d12
 # CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmp	d23, #0.0
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d26, d22
 # CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
-# CHECK-NEXT:  1      2     1.00                        fcmpe	d29, #0.0
 # CHECK-NEXT:  1      2     1.00                        fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  1      2     1.00                        fccmp	d9, d31, #0, le
 # CHECK-NEXT:  1      2     1.00                        fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  1      2     1.00                        fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  1      2     1.00                        fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  1      2     1.00                        fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  1      2     1.00                        fccmpe	s31, s15, #13, hs
@@ -1902,22 +533,33 @@ drps
 # CHECK-NEXT:  1      2     1.00                        fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  1      2     0.50                        fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  1      2     0.50                        fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  1      2     0.50                        fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  1      2     0.50                        fmov	h18, h28
 # CHECK-NEXT:  1      2     0.50                        fmov	s0, s1
 # CHECK-NEXT:  1      2     0.50                        fabs	s2, s3
+# CHECK-NEXT:  1      2     0.50                        fneg	h2, h9
 # CHECK-NEXT:  1      2     0.50                        fneg	s4, s5
 # CHECK-NEXT:  1      8     1.00                        fsqrt	s6, s7
 # CHECK-NEXT:  1      3     0.50                        fcvt	d8, s9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, s11
+# CHECK-NEXT:  1      3     1.00                        frintn	h12, h3
 # CHECK-NEXT:  1      3     1.00                        frintn	s12, s13
+# CHECK-NEXT:  1      3     1.00                        frintp	h17, h31
 # CHECK-NEXT:  1      3     1.00                        frintp	s14, s15
+# CHECK-NEXT:  1      3     1.00                        frintm	h0, h21
 # CHECK-NEXT:  1      3     1.00                        frintm	s16, s17
+# CHECK-NEXT:  1      3     1.00                        frintz	h10, h29
 # CHECK-NEXT:  1      3     1.00                        frintz	s18, s19
+# CHECK-NEXT:  1      3     1.00                        frinta	h22, h10
 # CHECK-NEXT:  1      3     1.00                        frinta	s20, s21
+# CHECK-NEXT:  1      3     1.00                        frintx	h4, h5
 # CHECK-NEXT:  1      3     1.00                        frintx	s22, s23
 # CHECK-NEXT:  1      3     1.00                        frinti	s24, s25
+# CHECK-NEXT:  1      3     1.00                        frinti	h31, h14
 # CHECK-NEXT:  1      2     0.50                        fmov	d0, d1
 # CHECK-NEXT:  1      2     0.50                        fabs	d2, d3
 # CHECK-NEXT:  1      2     0.50                        fneg	d4, d5
+# CHECK-NEXT:  1      6     1.00                        fsqrt	h13, h24
 # CHECK-NEXT:  1      13    8.00                        fsqrt	d6, d7
 # CHECK-NEXT:  1      3     0.50                        fcvt	s8, d9
 # CHECK-NEXT:  1      3     0.50                        fcvt	h10, d11
@@ -1931,13 +573,19 @@ drps
 # CHECK-NEXT:  1      3     0.50                        fcvt	s26, h27
 # CHECK-NEXT:  1      3     0.50                        fcvt	d28, h29
 # CHECK-NEXT:  1      3     0.50                        fmul	s20, s19, s17
+# CHECK-NEXT:  1      6     1.00                        fdiv	h1, h26, h23
 # CHECK-NEXT:  1      8     1.00                        fdiv	s1, s2, s3
+# CHECK-NEXT:  1      2     0.50                        fadd	h23, h27, h22
 # CHECK-NEXT:  1      2     0.50                        fadd	s4, s5, s6
+# CHECK-NEXT:  1      2     0.50                        fsub	h20, h11, h18
 # CHECK-NEXT:  1      2     0.50                        fsub	s7, s8, s9
 # CHECK-NEXT:  1      2     0.50                        fmax	s10, s11, s12
+# CHECK-NEXT:  1      2     0.50                        fmax	h8, h7, h11
 # CHECK-NEXT:  1      2     0.50                        fmin	s13, s14, s15
+# CHECK-NEXT:  1      2     0.50                        fmaxnm	h29, h13, h14
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	s16, s17, s18
 # CHECK-NEXT:  1      2     0.50                        fminnm	s19, s20, s21
+# CHECK-NEXT:  1      3     0.50                        fnmul	h3, h15, h7
 # CHECK-NEXT:  1      3     0.50                        fnmul	s22, s23, s2
 # CHECK-NEXT:  1      3     0.50                        fmul	d20, d19, d17
 # CHECK-NEXT:  1      13    8.00                        fdiv	d1, d2, d3
@@ -1945,17 +593,23 @@ drps
 # CHECK-NEXT:  1      2     0.50                        fsub	d7, d8, d9
 # CHECK-NEXT:  1      2     0.50                        fmax	d10, d11, d12
 # CHECK-NEXT:  1      2     0.50                        fmin	d13, d14, d15
+# CHECK-NEXT:  1      2     0.50                        fmin	h4, h13, h17
 # CHECK-NEXT:  1      2     0.50                        fmaxnm	d16, d17, d18
 # CHECK-NEXT:  1      2     0.50                        fminnm	d19, d20, d21
+# CHECK-NEXT:  1      2     0.50                        fminnm	h29, h23, h17
 # CHECK-NEXT:  1      3     0.50                        fnmul	d22, d23, d24
+# CHECK-NEXT:  1      4     0.50                        fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  1      4     0.50                        fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  1      4     0.50                        fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  1      4     0.50                        fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  1      4     0.50                        fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  1      4     0.50                        fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  1      4     0.50                        fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w3, h5, #1
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  1      3     1.00                        fcvtzs	w19, h0, #32
@@ -2100,12 +754,17 @@ drps
 # CHECK-NEXT:  1      3     1.00                        fcvtas	x27, d28
 # CHECK-NEXT:  1      3     1.00                        fcvtau	w29, d30
 # CHECK-NEXT:  1      3     1.00                        fcvtau	xzr, d0
+# CHECK-NEXT:  1      3     1.00                        fmov	h6, w5
+# CHECK-NEXT:  1      3     1.00                        fmov	h16, x27
+# CHECK-NEXT:  2      2     1.00                        fmov	w15, h31
 # CHECK-NEXT:  2      2     1.00                        fmov	w3, s9
 # CHECK-NEXT:  1      3     1.00                        fmov	s9, w3
+# CHECK-NEXT:  2      2     1.00                        fmov	x21, h14
 # CHECK-NEXT:  2      2     1.00                        fmov	x20, d31
 # CHECK-NEXT:  1      3     1.00                        fmov	d1, x15
 # CHECK-NEXT:  2      2     1.00                        fmov	x3, v12.d[1]
 # CHECK-NEXT:  2      5     1.00                        fmov	v1.d[1], x19
+# CHECK-NEXT:  1      2     0.50                        fmov	h29, #0.50000000
 # CHECK-NEXT:  1      2     0.50                        fmov	s2, #0.12500000
 # CHECK-NEXT:  1      2     0.50                        fmov	s3, #1.00000000
 # CHECK-NEXT:  1      2     0.50                        fmov	d30, #16.00000000
@@ -2129,13 +788,10 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxrh	w17, [x4]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	w22, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldxr	x11, [x29]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxr	w9, w2, [x2]
@@ -2144,25 +800,19 @@ drps
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxrh	w7, [x5]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	w6, [sp]
 # CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
-# CHECK-NEXT:  1      4     0.33    *      *      U     ldaxr	x5, [x6]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  3      5     0.50    *      *      U     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  2      4     0.33    *      *      U     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrb	w24, [sp]
 # CHECK-NEXT:  2      1     0.50           *      U     stlrh	w25, [x30]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	w26, [x29]
 # CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
-# CHECK-NEXT:  2      1     0.50           *      U     stlr	x27, [x28]
+# CHECK-NEXT:  1      4     0.33    *             U     ldarb	w16, [x21]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarb	w23, [sp]
 # CHECK-NEXT:  1      4     0.33    *             U     ldarh	w22, [x30]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	wzr, [x29]
 # CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
-# CHECK-NEXT:  1      4     0.33    *             U     ldar	x21, [x28]
 # CHECK-NEXT:  2      1     0.50           *            sturb	w9, [sp]
 # CHECK-NEXT:  2      1     0.50           *            sturh	wzr, [x12, #255]
 # CHECK-NEXT:  2      1     0.50           *            stur	w16, [x0, #-256]
@@ -2348,16 +998,23 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w13, [x2, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w2, [x4]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w26, [x3, #121]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w12, [x2]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	xzr, [x15]
+# CHECK-NEXT:  1      4     0.33    *                   ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  2      1     0.50           *            str	x30, [sp]
 # CHECK-NEXT:  2      1     0.50           *            str	w20, [x4, #16380]
+# CHECK-NEXT:  2      2     0.50           *            str	b5, [x11]
+# CHECK-NEXT:  2      2     0.50           *            str	h23, [x15]
+# CHECK-NEXT:  2      2     0.50           *            str	s25, [x19]
+# CHECK-NEXT:  2      2     0.50           *            str	d15, [x2]
 # CHECK-NEXT:  2      1     0.50           *            strh	w17, [sp, #8190]
 # CHECK-NEXT:  2      1     0.50           *            strb	w23, [x3, #4095]
 # CHECK-NEXT:  2      1     0.50           *            strb	wzr, [x2]
@@ -2366,23 +1023,13 @@ drps
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s10, [x19, #16380]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	d3, [x10, #32760]
 # CHECK-NEXT:  2      2     0.50           *            str	q12, [sp, #65520]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h3, [sp, x5]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h9, [x27, x6]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h10, [x30, x7, lsl #1]
-# CHECK-NEXT:  2      2     0.50           *            str	h11, [x29, x3, sxtx]
-# CHECK-NEXT:  2      2     0.50           *            str	h12, [x28, xzr, sxtx]
-# CHECK-NEXT:  3      2     0.50           *            str	h13, [x27, x5, sxtx #1]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h14, [x26, w6, uxtw]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h15, [x25, w7, uxtw]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h16, [x24, w8, uxtw #1]
-# CHECK-NEXT:  1      6     0.33    *                   ldr	h17, [x23, w9, sxtw]
-# CHECK-NEXT:  2      2     0.50           *            str	h18, [x22, w10, sxtw]
-# CHECK-NEXT:  2      7     0.33    *                   ldr	h19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	q14, [x6, #4624]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w3, [sp, x5]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  2      1     0.50           *            strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  2      1     0.50           *            strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrb	w17, [x23, w9, sxtw]
@@ -2399,6 +1046,18 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  2      1     0.50           *            strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	b8, [x30, x10]
+# CHECK-NEXT:  2      2     0.50           *            str	b14, [x13, x25]
+# CHECK-NEXT:  2      2     0.50           *            str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	h11, [x13, x9]
+# CHECK-NEXT:  2      2     0.50           *            str	h16, [x5, x24]
+# CHECK-NEXT:  2      2     0.50           *            str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  1      6     0.33    *                   ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  2      2     0.50           *            str	d5, [x26, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w3, [sp, x5]
 # CHECK-NEXT:  1      6     0.33    *                   ldr	s9, [x27, x6]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	w10, [x30, x7, lsl #2]
@@ -2419,6 +1078,7 @@ drps
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  1      4     0.33                  U     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  2      1     0.50           *            str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  1      4     0.33    *                   ldr	x18, [x22, w10, sxtw]
@@ -2450,6 +1110,8 @@ drps
 # CHECK-NEXT:  2      6     0.33    *                   ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  2      2     0.50           *            stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  2      2     0.50           *            stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  2      1     0.50           *            stnp	x20, x16, [x8]
+# CHECK-NEXT:  2      1     0.50           *            stp	x3, x6, [x16]
 # CHECK-NEXT:  2      6     0.33    *                   ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  3      2     1.00           *            stp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stp	q17, q19, [sp, #1008]
@@ -2508,10 +1170,14 @@ drps
 # CHECK-NEXT:  3      2     1.00           *            stnp	q3, q5, [sp]
 # CHECK-NEXT:  3      2     1.00           *            stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  3      6     0.67    *                   ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  1      1     0.13                        and	wsp, w16, #0xe00
+# CHECK-NEXT:  1      1     0.13                        and	x2, x22, #0x1e00
+# CHECK-NEXT:  1      1     0.25                        ands	w14, w8, #0x70
+# CHECK-NEXT:  1      1     0.25                        ands	x4, x10, #0x60
+# CHECK-NEXT:  1      1     0.13                        eor	wsp, w4, #0xe00
+# CHECK-NEXT:  1      1     0.13                        eor	x27, x25, #0x1e00
 # CHECK-NEXT:  1      1     0.13                        mov	w3, #983055
 # CHECK-NEXT:  1      1     0.13                        mov	x10, #-6148914691236517206
-# CHECK-NEXT:  1      1     0.25                        ands	w4, w4, #0xf000f
-# CHECK-NEXT:  1      1     0.25                        ands	x11, x11, #0xaaaaaaaaaaaaaaaa
 # CHECK-NEXT:  1      1     0.13                        and	w12, w23, w21
 # CHECK-NEXT:  1      1     0.13                        and	w16, w15, w1, lsl #1
 # CHECK-NEXT:  1      1     0.13                        and	w9, w4, w10, lsl #31
@@ -2526,6 +1192,10 @@ drps
 # CHECK-NEXT:  1      1     0.13                        and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  1      1     0.13                        bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  1      1     0.13                        bic	w2, w7, w9
+# CHECK-NEXT:  1      1     0.13                        eon	w29, w4, w19
+# CHECK-NEXT:  1      1     0.13                        eon	x19, x12, x2
+# CHECK-NEXT:  1      1     0.13                        eor	w8, w27, w2
+# CHECK-NEXT:  1      1     0.13                        eor	x22, x16, x6
 # CHECK-NEXT:  1      1     0.13                        orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  1      1     0.13                        orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  1      1     0.13                        orn	x3, x5, x7, asr #2
@@ -2551,16 +1221,20 @@ drps
 # CHECK-NEXT:  1      1     0.13                        movk	x7, #0, lsl #32
 # CHECK-NEXT:  1      1     0.13                        movz	x8, #0, lsl #48
 # CHECK-NEXT:  1      1     0.13                        movk	x9, #0, lsl #48
+# CHECK-NEXT:  1      1     0.10                  U     msr	DAIFSet, #0
 # CHECK-NEXT:  1      1     0.13                        adr	x2, #1600
 # CHECK-NEXT:  1      1     0.13                        adrp	x21, #6553600
 # CHECK-NEXT:  1      1     0.13                        adr	x0, #262144
 # CHECK-NEXT:  1      1     0.33                        tbz	x12, #62, #0
 # CHECK-NEXT:  1      1     0.33                        tbz	x12, #62, #4
 # CHECK-NEXT:  1      1     0.33                        tbz	x12, #62, #-32768
+# CHECK-NEXT:  1      1     0.33                        tbz	w17, #16, test
 # CHECK-NEXT:  1      1     0.33                        tbnz	x12, #60, #32764
+# CHECK-NEXT:  1      1     0.33                        tbnz	w3, #28, test
 # CHECK-NEXT:  1      1     0.33                        b	#4
 # CHECK-NEXT:  1      1     0.33                        b	#-4
 # CHECK-NEXT:  1      1     0.33                        b	#134217724
+# CHECK-NEXT:  2      1     0.33                        bl	test
 # CHECK-NEXT:  1      1     0.33                        br	x20
 # CHECK-NEXT:  2      1     0.33                        blr	xzr
 # CHECK-NEXT:  1      1     0.33                  U     ret	x10
@@ -2595,7 +1269,7 @@ drps
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]
-# CHECK-NEXT: 7.33   7.33   7.33   33.00  33.00  40.50  40.50  40.50  40.50  99.00  99.00  165.00 280.25 165.25 77.92  77.92  77.92  77.92  77.92  77.92  66.00  197.00 81.00
+# CHECK-NEXT: 8.67   8.67   8.67   34.00  34.00  40.75  40.75  40.75  40.75  97.33  97.33  167.33 290.00 163.00 79.33  79.33  79.33  79.33  79.33  79.33  70.00  218.50 95.50
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   Instructions:
@@ -2618,22 +1292,22 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	w2, #4095
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	w20, wsp, #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	x3, #1, lsl #12
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	wsp, #2342
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	sp, #20, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	x30, #4095
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	x4, sp, #3822
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	w3, #291, lsl #12
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	wsp, #1365
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	sp, #1092, lsl #12
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	sp, x30
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	wsp, w20
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	x11, sp
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	w24, wsp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	x10, #-63432
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	wsp, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x25, x9, w25, uxtb
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	w24, w25, w26, lsr #18
@@ -2647,7 +1321,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     add	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x27, x28, x29, lsr #63
@@ -2655,11 +1329,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     add	x8, x9, x10, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	w3, w5, w7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	w17, wsp, w25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	x13, x23, w8, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	w20, wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	w24, w25, w26, lsr #18
@@ -2673,7 +1349,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adds	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     adds	x27, x28, x29, lsr #63
@@ -2684,7 +1360,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	wzr, w3, w5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	w24, w25, w26, lsr #18
@@ -2697,18 +1373,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sub	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x27, x28, x29, lsr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x2, x3, x4, asr #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x5, x6, x7, asr #21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x8, x9, x10, asr #63
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	w13, wsp, w10
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     sub	x16, x2, w19, uxtb
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	x13, x15, x14, sxtx #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	w3, w5, w7
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	w3, w5
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	w4, w6, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	w11, w13, w15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	w9, w3, wzr, lsl #10
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	w9, w3, wzr, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	w17, w29, w20, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	w21, w22, w23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	w24, w25, w26, lsr #18
@@ -2721,7 +1400,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	x4, x6, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	x11, x13, x15
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	x9, x3, xzr, lsl #10
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	x17, x29, x20, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     subs	x17, x29, x20, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	x21, x22, x23, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	x24, x25, x26, lsr #18
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     subs	x27, x28, x29, lsr #63
@@ -2731,7 +1410,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	w6, w7
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	w14, w15, lsr #21
@@ -2744,7 +1423,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	x6, x7
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmn	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmn	x16, x17, lsr #63
@@ -2755,19 +1434,21 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	wzr, w4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	w5, wzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	w6, w7
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w8, w9, lsl #15
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	w8, w9, lsl #1
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w10, w11, lsl #31
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w12, w13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w14, w15, lsr #21
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w18, w19, asr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w20, w21, asr #22
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	w22, w23, asr #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	wsp, w26
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x16, w27, uxtb
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	x0, x3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	xzr, x4
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	x5, xzr
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	x6, x7
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x8, x9, lsl #15
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x10, x11, lsl #63
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	x10, x11, lsl #3
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x12, x13, lsr #0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x14, x15, lsr #41
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x16, x17, lsr #63
@@ -2776,6 +1457,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     cmp	x22, x23, asr #63
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	wzr, w0
 # CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cmp	xzr, x0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	sp, x30
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	wsp, w20
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	x11, sp
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	w24, wsp
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adc	w29, w27, w25
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adc	wzr, w3, w4
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adc	w9, wzr, w10
@@ -2848,15 +1533,11 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsr	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsr	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsr	wzr, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsr	w3, w2, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	w9, w10, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	x20, x21, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	w1, wzr, #3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfiz	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     asr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfiz	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     asr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfiz	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfiz	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfiz	xzr, xzr, #10, #11
@@ -2868,11 +1549,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     asr	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     asr	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     sbfx	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfxil	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfi	x2, x3, #63, #1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfxil	x19, x20, #0, #64
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfi	x9, x10, #5, #59
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfxil	w9, w10, #0, #32
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfi	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfi	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfc	xzr, #10, #11
@@ -2884,11 +1562,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfxil	w11, w12, #31, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfxil	w13, w14, #29, #3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     bfxil	xzr, xzr, #10, #11
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ubfx	w9, w10, #0, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	x2, x3, #63
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsr	x19, x20, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	x9, x10, #5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsr	w9, w10, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	w11, w12, #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     lsl	w13, w14, #29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ubfiz	xzr, xzr, #10, #11
@@ -2906,6 +1581,7 @@ drps
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	x26, #1048572
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbz	wzr, #0
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	xzr, #0
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     cbnz	w21, test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ne	#4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ge	#1048572
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b.ge	#-4
@@ -2994,7 +1670,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cneg	xzr, x4, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     cneg	x9, xzr, lt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     csneg	x4, x8, x8, al
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     csinv	w9, w8, w8, nv
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     rbit	w0, w7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     rbit	x18, x3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     rev16	w17, w1
@@ -3026,6 +1701,16 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     asr	x21, x22, x23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ror	w24, w25, w26
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ror	x27, x28, x29
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32cb	w30, w23, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32cb	wzr, w12, w14
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32cb	w28, w10, w11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32b	w27, w12, w15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32h	w3, w15, w21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32w	w9, w18, w24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32x	w19, w6, x25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32ch	w25, w26, w16
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32cw	w27, w12, w23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     crc32cx	w21, w28, x5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     smulh	xzr, x27, x26
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     umulh	x30, x29, x28
@@ -3068,7 +1753,6 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     umsubl	x3, w5, w2, x9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     umsubl	x16, w17, wzr, x18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     umnegl	x19, w20, w21
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     smulh	x30, x29, x28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     smulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     umulh	x23, x22, xzr
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -     mul	x19, x20, xzr
@@ -3084,24 +1768,26 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ror	x19, x23, #24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ror	x29, xzr, #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ror	w9, w13, #31
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	h5, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	h5, #0.0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	h22, h21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	h13, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	s3, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	s31, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	s31, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	s29, s30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	s15, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	s15, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	d4, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	d23, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmp	d23, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	d26, d22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	d29, #0.0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcmpe	d29, #0.0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	s31, s15, #13, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	d9, d31, #0, le
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	d3, d0, #15, gt
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	d31, d5, #7, ne
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmp	h31, h3, #11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	h6, h1, #12, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	s1, s31, #0, eq
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	s3, s0, #15, hs
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	s31, s15, #13, hs
@@ -3110,22 +1796,33 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fccmpe	d31, d5, #7, ne
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	s3, s20, s9, pl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	d9, d10, d11, mi
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcsel	h26, h2, h11, hs
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	h18, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s0, s1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fabs	s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	h2, h9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	s4, s5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   fsqrt	s6, s7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvt	d8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvt	h10, s11
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintn	h12, h3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintn	s12, s13
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintp	h17, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintp	s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintm	h0, h21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintm	s16, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintz	h10, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintz	s18, s19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinta	h22, h10
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinta	s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintx	h4, h5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frintx	s22, s23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinti	s24, s25
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     frinti	h31, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	d0, d1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fabs	d2, d3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fneg	d4, d5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   fsqrt	h13, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     8.00   fsqrt	d6, d7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvt	s8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvt	h10, d11
@@ -3139,13 +1836,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvt	s26, h27
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fcvt	d28, h29
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmul	s20, s19, s17
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   fdiv	h1, h26, h23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   fdiv	s1, s2, s3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fadd	h23, h27, h22
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fadd	s4, s5, s6
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	h20, h11, h18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	s7, s8, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	s10, s11, s12
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	h8, h7, h11
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	s13, s14, s15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	h29, h13, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	s16, s17, s18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	s19, s20, s21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	h3, h15, h7
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	s22, s23, s2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmul	d20, d19, d17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     8.00   fdiv	d1, d2, d3
@@ -3153,17 +1856,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fsub	d7, d8, d9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmax	d10, d11, d12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	d13, d14, d15
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmin	h4, h13, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmaxnm	d16, d17, d18
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	d19, d20, d21
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fminnm	h29, h23, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmul	d22, d23, d24
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	h27, h0, h6, h28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmadd	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	h25, h28, h12, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	h3, h18, h31, h24
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmadd	d3, d13, d0, d23
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	s3, s5, s6, s31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	d3, d13, d0, d23
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fnmsub	h3, h29, h24, h17
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	w3, h5, #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	wzr, h20, #13
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtzs	w19, h0, #32
@@ -3308,12 +2017,17 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtas	x27, d28
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtau	w29, d30
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     fcvtau	xzr, d0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     fmov	h6, w5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     fmov	h16, x27
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00   fmov	w15, h31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00   fmov	w3, s9
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     fmov	s9, w3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00   fmov	x21, h14
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00   fmov	x20, d31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -     fmov	d1, x15
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00   fmov	x3, v12.d[1]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -     0.50   0.50   fmov	v1.d[1], x19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	h29, #0.50000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s2, #0.12500000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	s3, #1.00000000
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50   fmov	d30, #16.00000000
@@ -3337,13 +2051,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxrh	w17, [x4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxr	w22, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxr	x11, [x29]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stxp	w12, w11, w10, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stxp	wzr, x27, x9, [x12]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxp	w0, wzr, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxp	x17, x0, [x18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldxp	x17, x0, [x18]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stlxrb	w12, w22, [x0]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stlxrh	w10, w1, [x1]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stlxr	w9, w2, [x2]
@@ -3352,25 +2063,19 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxrh	w7, [x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxr	w6, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxr	x5, [x6]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stlxp	w4, w5, w6, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -     0.33   0.33   0.83    -      -      -      -      -      -      -      -     0.50    -      -     stlxp	wzr, x6, x7, [x1]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxp	w5, w18, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldaxp	x6, x19, [x22]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlrb	w24, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlrh	w25, [x30]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlr	w26, [x29]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlr	x27, [x28]
-# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlr	x27, [x28]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldarb	w16, [x21]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldarb	w23, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldarh	w22, [x30]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldar	wzr, [x29]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldar	x21, [x28]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     sturb	w9, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     sturh	wzr, [x12, #255]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stur	w16, [x0, #-256]
@@ -3556,16 +2261,23 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	w13, [x2, #4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsw	x2, [x5, #4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsw	x23, [sp, #16380]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsw	x21, [x25, x7]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrh	w2, [x4]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsh	w23, [x6, #8190]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsh	wzr, [sp, #2]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsh	x29, [x2, #2]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsh	x25, [x8, w13, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w26, [x3, #121]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w12, [x2]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsb	w27, [sp, #4095]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsb	xzr, [x15]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsb	x12, [x28, x27]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     str	x30, [sp]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     str	w20, [x4, #16380]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	b5, [x11]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	h23, [x15]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	s25, [x19]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	d15, [x2]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     strh	w17, [sp, #8190]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     strb	w23, [x3, #4095]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     strb	wzr, [x2]
@@ -3574,23 +2286,13 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	s10, [x19, #16380]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	d3, [x10, #32760]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	q12, [sp, #65520]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h3, [sp, x5]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h9, [x27, x6]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ldr	h10, [x30, x7, lsl #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	h11, [x29, x3, sxtx]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	h12, [x28, xzr, sxtx]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.50   0.50   0.50   str	h13, [x27, x5, sxtx #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h14, [x26, w6, uxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h15, [x25, w7, uxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ldr	h16, [x24, w8, uxtw #1]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h17, [x23, w9, sxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	h18, [x22, w10, sxtw]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33   0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ldr	h19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	q14, [x6, #4624]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsb	w10, [x30, x7]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w11, [x29, x3, sxtx]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     strb	w12, [x28, xzr, sxtx]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     strb	w5, [x26, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w14, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrsb	w15, [x25, w7, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrb	w17, [x23, w9, sxtw]
@@ -3607,6 +2309,18 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrh	w17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldrh	w18, [x22, w10, sxtw]
 # CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     strh	w19, [x21, wzr, sxtw #1]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	b25, [x21, w8, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	b8, [x30, x10]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	b14, [x13, x25]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	b30, [x16, w26, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h6, [x4, w4, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	h11, [x13, x9]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	h16, [x5, x24]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	h15, [x15, w15, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	s12, [x30, w5, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	d24, [x26, w7, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	s20, [x24, w10, uxtw]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   str	d5, [x26, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	w3, [sp, x5]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	s9, [x27, x6]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	w10, [x30, x7, lsl #2]
@@ -3627,6 +2341,7 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	x13, [x27, x5, sxtx #3]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     prfm	pldl1keep, [x26, w6, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	x15, [x25, w7, uxtw]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     str	x27, [x26, w24, uxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	x16, [x24, w8, uxtw #3]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	x17, [x23, w9, sxtw]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldr	x18, [x22, w10, sxtw]
@@ -3658,6 +2373,8 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldp	s1, s2, [x3, #44]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   stp	d3, d5, [x9, #504]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   0.50   0.50   stp	d7, d11, [x10, #-512]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stnp	x20, x16, [x8]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stp	x3, x6, [x16]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     ldp	d2, d3, [x30, #-8]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00   stp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00   stp	q17, q19, [sp, #1008]
@@ -3716,10 +2433,14 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00   stnp	q3, q5, [sp]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50   1.00   1.00   stnp	q17, q19, [sp, #1008]
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     0.67   0.67   0.67    -      -      -      -      -      -      -      -      -      -      -     ldnp	q23, q29, [x1, #-1024]
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     and	wsp, w16, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     and	x2, x22, #0x1e00
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ands	w14, w8, #0x70
+# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ands	x4, x10, #0x60
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     eor	wsp, w4, #0xe00
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     eor	x27, x25, #0x1e00
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	w3, #983055
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     mov	x10, #-6148914691236517206
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ands	w4, w4, #0xf000f
-# CHECK-NEXT:  -      -      -      -      -     0.25   0.25   0.25   0.25    -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     ands	x11, x11, #0xaaaaaaaaaaaaaaaa
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     and	w12, w23, w21
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     and	w16, w15, w1, lsl #1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     and	w9, w4, w10, lsl #31
@@ -3734,6 +2455,10 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     and	x7, x20, xzr, asr #63
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     bic	x13, x20, x14, lsl #47
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     bic	w2, w7, w9
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     eon	w29, w4, w19
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     eon	x19, x12, x2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     eor	w8, w27, w2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     eor	x22, x16, x6
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     orr	w2, w7, w0, asr #31
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     orr	x8, x9, x10, lsl #12
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     orn	x3, x5, x7, asr #2
@@ -3759,16 +2484,20 @@ drps
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     movk	x7, #0, lsl #32
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     movz	x8, #0, lsl #48
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     movk	x9, #0, lsl #48
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     msr	DAIFSet, #0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adr	x2, #1600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adrp	x21, #6553600
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     0.13   0.13   0.13   0.13   0.13   0.13   0.13   0.13    -      -      -     adr	x0, #262144
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #0
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	x12, #62, #-32768
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbz	w17, #16, test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbnz	x12, #60, #32764
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     tbnz	w3, #28, test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#-4
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     b	#134217724
+# CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -     bl	test
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     br	x20
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -     0.17   0.17   0.17   0.17   0.17   0.17    -      -      -     blr	xzr
 # CHECK-NEXT: 0.33   0.33   0.33    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     ret	x10
diff --git a/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-rcpc-immo-instructions.s b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-rcpc-immo-instructions.s
new file mode 100644
index 0000000000000..f801a18bc7a06
--- /dev/null
+++ b/llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-rcpc-immo-instructions.s
@@ -0,0 +1,70 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=aarch64 -mcpu=neoverse-v3ae -instruction-tables < %p/Inputs/rcpc-immo-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:  2      1     0.50    *                   ldapur	w7, [x24]
+# CHECK-NEXT:  2      1     0.50    *                   ldapur	x20, [x13]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurb	w13, [x17]
+# CHECK-NEXT:  2      1     0.50    *                   ldapurh	w3, [x22]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	w7, [x8]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursb	x29, [x7]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	w17, [x19]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursh	x3, [x3]
+# CHECK-NEXT:  2      1     0.50                  U     ldapursw	x3, [x18]
+# CHECK-NEXT:  2      1     0.50           *            stlur	w3, [x27]
+# CHECK-NEXT:  2      1     0.50           *            stlur	x23, [x25]
+# CHECK-NEXT:  2      1     0.50           *            stlurb	w30, [x17]
+# CHECK-NEXT:  2      1     0.50           *            stlurh	w9, [x29]
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0.0] - V3AEUnitB
+# CHECK-NEXT: [0.1] - V3AEUnitB
+# CHECK-NEXT: [0.2] - V3AEUnitB
+# CHECK-NEXT: [1.0] - V3AEUnitD
+# CHECK-NEXT: [1.1] - V3AEUnitD
+# CHECK-NEXT: [2.0] - V3AEUnitFlg
+# CHECK-NEXT: [2.1] - V3AEUnitFlg
+# CHECK-NEXT: [2.2] - V3AEUnitFlg
+# CHECK-NEXT: [2.3] - V3AEUnitFlg
+# CHECK-NEXT: [3.0] - V3AEUnitL12
+# CHECK-NEXT: [3.1] - V3AEUnitL12
+# CHECK-NEXT: [4]   - V3AEUnitLS0
+# CHECK-NEXT: [5]   - V3AEUnitM0
+# CHECK-NEXT: [6]   - V3AEUnitM1
+# CHECK-NEXT: [7]   - V3AEUnitS0
+# CHECK-NEXT: [8]   - V3AEUnitS1
+# CHECK-NEXT: [9]   - V3AEUnitS2
+# CHECK-NEXT: [10]  - V3AEUnitS3
+# CHECK-NEXT: [11]  - V3AEUnitS4
+# CHECK-NEXT: [12]  - V3AEUnitS5
+# CHECK-NEXT: [13]  - V3AEUnitST1
+# CHECK-NEXT: [14]  - V3AEUnitV0
+# CHECK-NEXT: [15]  - V3AEUnitV1
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]
+# CHECK-NEXT:  -      -      -     6.50   6.50    -      -      -      -      -      -     6.50    -      -      -      -      -      -      -      -     6.50    -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0.0]  [0.1]  [0.2]  [1.0]  [1.1]  [2.0]  [2.1]  [2.2]  [2.3]  [3.0]  [3.1]  [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   [14]   [15]   Instructions:
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapur	w7, [x24]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapur	x20, [x13]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapurb	w13, [x17]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapurh	w3, [x22]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapursb	w7, [x8]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapursb	x29, [x7]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapursh	w17, [x19]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapursh	x3, [x3]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     ldapursw	x3, [x18]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlur	w3, [x27]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlur	x23, [x25]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlurb	w30, [x17]
+# CHECK-NEXT:  -      -      -     0.50   0.50    -      -      -      -      -      -     0.50    -      -      -      -      -      -      -      -     0.50    -      -     stlurh	w9, [x29]



More information about the llvm-commits mailing list