diff options
Diffstat (limited to 'test/MC/ARM64/simd-ldst.s')
-rw-r--r-- | test/MC/ARM64/simd-ldst.s | 2404 |
1 files changed, 2404 insertions, 0 deletions
diff --git a/test/MC/ARM64/simd-ldst.s b/test/MC/ARM64/simd-ldst.s new file mode 100644 index 0000000..a754c72 --- /dev/null +++ b/test/MC/ARM64/simd-ldst.s @@ -0,0 +1,2404 @@ +; RUN: llvm-mc -triple arm64-apple-darwin -output-asm-variant=1 -show-encoding < %s | FileCheck %s + +_ld1st1_multiple: + ld1.8b {v0}, [x1] + ld1.8b {v0, v1}, [x1] + ld1.8b {v0, v1, v2}, [x1] + ld1.8b {v0, v1, v2, v3}, [x1] + + ld1.8b {v3}, [x1] + ld1.8b {v3, v4}, [x2] + ld1.8b {v4, v5, v6}, [x3] + ld1.8b {v7, v8, v9, v10}, [x4] + + ld1.16b {v0}, [x1] + ld1.16b {v0, v1}, [x1] + ld1.16b {v0, v1, v2}, [x1] + ld1.16b {v0, v1, v2, v3}, [x1] + + ld1.4h {v0}, [x1] + ld1.4h {v0, v1}, [x1] + ld1.4h {v0, v1, v2}, [x1] + ld1.4h {v0, v1, v2, v3}, [x1] + + ld1.8h {v0}, [x1] + ld1.8h {v0, v1}, [x1] + ld1.8h {v0, v1, v2}, [x1] + ld1.8h {v0, v1, v2, v3}, [x1] + + ld1.2s {v0}, [x1] + ld1.2s {v0, v1}, [x1] + ld1.2s {v0, v1, v2}, [x1] + ld1.2s {v0, v1, v2, v3}, [x1] + + ld1.4s {v0}, [x1] + ld1.4s {v0, v1}, [x1] + ld1.4s {v0, v1, v2}, [x1] + ld1.4s {v0, v1, v2, v3}, [x1] + + ld1.1d {v0}, [x1] + ld1.1d {v0, v1}, [x1] + ld1.1d {v0, v1, v2}, [x1] + ld1.1d {v0, v1, v2, v3}, [x1] + + ld1.2d {v0}, [x1] + ld1.2d {v0, v1}, [x1] + ld1.2d {v0, v1, v2}, [x1] + ld1.2d {v0, v1, v2, v3}, [x1] + + st1.8b {v0}, [x1] + st1.8b {v0, v1}, [x1] + st1.8b {v0, v1, v2}, [x1] + st1.8b {v0, v1, v2, v3}, [x1] + + st1.16b {v0}, [x1] + st1.16b {v0, v1}, [x1] + st1.16b {v0, v1, v2}, [x1] + st1.16b {v0, v1, v2, v3}, [x1] + + st1.4h {v0}, [x1] + st1.4h {v0, v1}, [x1] + st1.4h {v0, v1, v2}, [x1] + st1.4h {v0, v1, v2, v3}, [x1] + + st1.8h {v0}, [x1] + st1.8h {v0, v1}, [x1] + st1.8h {v0, v1, v2}, [x1] + st1.8h {v0, v1, v2, v3}, [x1] + + st1.2s {v0}, [x1] + st1.2s {v0, v1}, [x1] + st1.2s {v0, v1, v2}, [x1] + st1.2s {v0, v1, v2, v3}, [x1] + + st1.4s {v0}, [x1] + st1.4s {v0, v1}, [x1] + st1.4s {v0, v1, v2}, [x1] + st1.4s {v0, v1, v2, v3}, [x1] + + st1.1d {v0}, [x1] + st1.1d {v0, v1}, [x1] + st1.1d {v0, v1, v2}, [x1] + st1.1d {v0, v1, v2, v3}, [x1] + + st1.2d {v0}, [x1] + st1.2d {v0, v1}, [x1] + st1.2d {v0, v1, v2}, [x1] + st1.2d {v0, v1, v2, v3}, [x1] + + st1.2d {v5}, [x1] + st1.2d {v7, v8}, [x10] + st1.2d {v11, v12, v13}, [x1] + st1.2d {v28, v29, v30, v31}, [x13] + +; CHECK: _ld1st1_multiple: +; CHECK: ld1.8b { v0 }, [x1] ; encoding: [0x20,0x70,0x40,0x0c] +; CHECK: ld1.8b { v0, v1 }, [x1] ; encoding: [0x20,0xa0,0x40,0x0c] +; CHECK: ld1.8b { v0, v1, v2 }, [x1] ; encoding: [0x20,0x60,0x40,0x0c] +; CHECK: ld1.8b { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x20,0x40,0x0c] + +; CHECK: ld1.8b { v3 }, [x1] ; encoding: [0x23,0x70,0x40,0x0c] +; CHECK: ld1.8b { v3, v4 }, [x2] ; encoding: [0x43,0xa0,0x40,0x0c] +; CHECK: ld1.8b { v4, v5, v6 }, [x3] ; encoding: [0x64,0x60,0x40,0x0c] +; CHECK: ld1.8b { v7, v8, v9, v10 }, [x4] ; encoding: [0x87,0x20,0x40,0x0c] + +; CHECK: ld1.16b { v0 }, [x1] ; encoding: [0x20,0x70,0x40,0x4c] +; CHECK: ld1.16b { v0, v1 }, [x1] ; encoding: [0x20,0xa0,0x40,0x4c] +; CHECK: ld1.16b { v0, v1, v2 }, [x1] ; encoding: [0x20,0x60,0x40,0x4c] +; CHECK: ld1.16b { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x20,0x40,0x4c] + +; CHECK: ld1.4h { v0 }, [x1] ; encoding: [0x20,0x74,0x40,0x0c] +; CHECK: ld1.4h { v0, v1 }, [x1] ; encoding: [0x20,0xa4,0x40,0x0c] +; CHECK: ld1.4h { v0, v1, v2 }, [x1] ; encoding: [0x20,0x64,0x40,0x0c] +; CHECK: ld1.4h { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x24,0x40,0x0c] + +; CHECK: ld1.8h { v0 }, [x1] ; encoding: [0x20,0x74,0x40,0x4c] +; CHECK: ld1.8h { v0, v1 }, [x1] ; encoding: [0x20,0xa4,0x40,0x4c] +; CHECK: ld1.8h { v0, v1, v2 }, [x1] ; encoding: [0x20,0x64,0x40,0x4c] +; CHECK: ld1.8h { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x24,0x40,0x4c] + +; CHECK: ld1.2s { v0 }, [x1] ; encoding: [0x20,0x78,0x40,0x0c] +; CHECK: ld1.2s { v0, v1 }, [x1] ; encoding: [0x20,0xa8,0x40,0x0c] +; CHECK: ld1.2s { v0, v1, v2 }, [x1] ; encoding: [0x20,0x68,0x40,0x0c] +; CHECK: ld1.2s { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x28,0x40,0x0c] + +; CHECK: ld1.4s { v0 }, [x1] ; encoding: [0x20,0x78,0x40,0x4c] +; CHECK: ld1.4s { v0, v1 }, [x1] ; encoding: [0x20,0xa8,0x40,0x4c] +; CHECK: ld1.4s { v0, v1, v2 }, [x1] ; encoding: [0x20,0x68,0x40,0x4c] +; CHECK: ld1.4s { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x28,0x40,0x4c] + +; CHECK: ld1.1d { v0 }, [x1] ; encoding: [0x20,0x7c,0x40,0x0c] +; CHECK: ld1.1d { v0, v1 }, [x1] ; encoding: [0x20,0xac,0x40,0x0c] +; CHECK: ld1.1d { v0, v1, v2 }, [x1] ; encoding: [0x20,0x6c,0x40,0x0c] +; CHECK: ld1.1d { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x2c,0x40,0x0c] + +; CHECK: ld1.2d { v0 }, [x1] ; encoding: [0x20,0x7c,0x40,0x4c] +; CHECK: ld1.2d { v0, v1 }, [x1] ; encoding: [0x20,0xac,0x40,0x4c] +; CHECK: ld1.2d { v0, v1, v2 }, [x1] ; encoding: [0x20,0x6c,0x40,0x4c] +; CHECK: ld1.2d { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x2c,0x40,0x4c] + + +; CHECK: st1.8b { v0 }, [x1] ; encoding: [0x20,0x70,0x00,0x0c] +; CHECK: st1.8b { v0, v1 }, [x1] ; encoding: [0x20,0xa0,0x00,0x0c] +; CHECK: st1.8b { v0, v1, v2 }, [x1] ; encoding: [0x20,0x60,0x00,0x0c] +; CHECK: st1.8b { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x20,0x00,0x0c] + +; CHECK: st1.16b { v0 }, [x1] ; encoding: [0x20,0x70,0x00,0x4c] +; CHECK: st1.16b { v0, v1 }, [x1] ; encoding: [0x20,0xa0,0x00,0x4c] +; CHECK: st1.16b { v0, v1, v2 }, [x1] ; encoding: [0x20,0x60,0x00,0x4c] +; CHECK: st1.16b { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x20,0x00,0x4c] + +; CHECK: st1.4h { v0 }, [x1] ; encoding: [0x20,0x74,0x00,0x0c] +; CHECK: st1.4h { v0, v1 }, [x1] ; encoding: [0x20,0xa4,0x00,0x0c] +; CHECK: st1.4h { v0, v1, v2 }, [x1] ; encoding: [0x20,0x64,0x00,0x0c] +; CHECK: st1.4h { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x24,0x00,0x0c] + +; CHECK: st1.8h { v0 }, [x1] ; encoding: [0x20,0x74,0x00,0x4c] +; CHECK: st1.8h { v0, v1 }, [x1] ; encoding: [0x20,0xa4,0x00,0x4c] +; CHECK: st1.8h { v0, v1, v2 }, [x1] ; encoding: [0x20,0x64,0x00,0x4c] +; CHECK: st1.8h { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x24,0x00,0x4c] + +; CHECK: st1.2s { v0 }, [x1] ; encoding: [0x20,0x78,0x00,0x0c] +; CHECK: st1.2s { v0, v1 }, [x1] ; encoding: [0x20,0xa8,0x00,0x0c] +; CHECK: st1.2s { v0, v1, v2 }, [x1] ; encoding: [0x20,0x68,0x00,0x0c] +; CHECK: st1.2s { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x28,0x00,0x0c] + +; CHECK: st1.4s { v0 }, [x1] ; encoding: [0x20,0x78,0x00,0x4c] +; CHECK: st1.4s { v0, v1 }, [x1] ; encoding: [0x20,0xa8,0x00,0x4c] +; CHECK: st1.4s { v0, v1, v2 }, [x1] ; encoding: [0x20,0x68,0x00,0x4c] +; CHECK: st1.4s { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x28,0x00,0x4c] + +; CHECK: st1.1d { v0 }, [x1] ; encoding: [0x20,0x7c,0x00,0x0c] +; CHECK: st1.1d { v0, v1 }, [x1] ; encoding: [0x20,0xac,0x00,0x0c] +; CHECK: st1.1d { v0, v1, v2 }, [x1] ; encoding: [0x20,0x6c,0x00,0x0c] +; CHECK: st1.1d { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x2c,0x00,0x0c] + +; CHECK: st1.2d { v0 }, [x1] ; encoding: [0x20,0x7c,0x00,0x4c] +; CHECK: st1.2d { v0, v1 }, [x1] ; encoding: [0x20,0xac,0x00,0x4c] +; CHECK: st1.2d { v0, v1, v2 }, [x1] ; encoding: [0x20,0x6c,0x00,0x4c] +; CHECK: st1.2d { v0, v1, v2, v3 }, [x1] ; encoding: [0x20,0x2c,0x00,0x4c] + +; CHECK: st1.2d { v5 }, [x1] ; encoding: [0x25,0x7c,0x00,0x4c] +; CHECK: st1.2d { v7, v8 }, [x10] ; encoding: [0x47,0xad,0x00,0x4c] +; CHECK: st1.2d { v11, v12, v13 }, [x1] ; encoding: [0x2b,0x6c,0x00,0x4c] +; CHECK: st1.2d { v28, v29, v30, v31 }, [x13] ; encoding: [0xbc,0x2d,0x00,0x4c] + +_ld2st2_multiple: + ld2.8b {v4, v5}, [x19] + ld2.16b {v4, v5}, [x19] + ld2.4h {v4, v5}, [x19] + ld2.8h {v4, v5}, [x19] + ld2.2s {v4, v5}, [x19] + ld2.4s {v4, v5}, [x19] + ld2.2d {v4, v5}, [x19] + + st2.8b {v4, v5}, [x19] + st2.16b {v4, v5}, [x19] + st2.4h {v4, v5}, [x19] + st2.8h {v4, v5}, [x19] + st2.2s {v4, v5}, [x19] + st2.4s {v4, v5}, [x19] + st2.2d {v4, v5}, [x19] + + +; CHECK: _ld2st2_multiple +; CHECK: ld2.8b { v4, v5 }, [x19] ; encoding: [0x64,0x82,0x40,0x0c] +; CHECK: ld2.16b { v4, v5 }, [x19] ; encoding: [0x64,0x82,0x40,0x4c] +; CHECK: ld2.4h { v4, v5 }, [x19] ; encoding: [0x64,0x86,0x40,0x0c] +; CHECK: ld2.8h { v4, v5 }, [x19] ; encoding: [0x64,0x86,0x40,0x4c] +; CHECK: ld2.2s { v4, v5 }, [x19] ; encoding: [0x64,0x8a,0x40,0x0c] +; CHECK: ld2.4s { v4, v5 }, [x19] ; encoding: [0x64,0x8a,0x40,0x4c] +; CHECK: ld2.2d { v4, v5 }, [x19] ; encoding: [0x64,0x8e,0x40,0x4c] + +; CHECK: st2.8b { v4, v5 }, [x19] ; encoding: [0x64,0x82,0x00,0x0c] +; CHECK: st2.16b { v4, v5 }, [x19] ; encoding: [0x64,0x82,0x00,0x4c] +; CHECK: st2.4h { v4, v5 }, [x19] ; encoding: [0x64,0x86,0x00,0x0c] +; CHECK: st2.8h { v4, v5 }, [x19] ; encoding: [0x64,0x86,0x00,0x4c] +; CHECK: st2.2s { v4, v5 }, [x19] ; encoding: [0x64,0x8a,0x00,0x0c] +; CHECK: st2.4s { v4, v5 }, [x19] ; encoding: [0x64,0x8a,0x00,0x4c] +; CHECK: st2.2d { v4, v5 }, [x19] ; encoding: [0x64,0x8e,0x00,0x4c] + + +ld3st3_multiple: + ld3.8b {v4, v5, v6}, [x19] + ld3.16b {v4, v5, v6}, [x19] + ld3.4h {v4, v5, v6}, [x19] + ld3.8h {v4, v5, v6}, [x19] + ld3.2s {v4, v5, v6}, [x19] + ld3.4s {v4, v5, v6}, [x19] + ld3.2d {v4, v5, v6}, [x19] + + ld3.8b {v9, v10, v11}, [x9] + ld3.16b {v14, v15, v16}, [x19] + ld3.4h {v24, v25, v26}, [x29] + ld3.8h {v30, v31, v0}, [x9] + ld3.2s {v2, v3, v4}, [x19] + ld3.4s {v4, v5, v6}, [x29] + ld3.2d {v7, v8, v9}, [x9] + + st3.8b {v4, v5, v6}, [x19] + st3.16b {v4, v5, v6}, [x19] + st3.4h {v4, v5, v6}, [x19] + st3.8h {v4, v5, v6}, [x19] + st3.2s {v4, v5, v6}, [x19] + st3.4s {v4, v5, v6}, [x19] + st3.2d {v4, v5, v6}, [x19] + + st3.8b {v10, v11, v12}, [x9] + st3.16b {v14, v15, v16}, [x19] + st3.4h {v24, v25, v26}, [x29] + st3.8h {v30, v31, v0}, [x9] + st3.2s {v2, v3, v4}, [x19] + st3.4s {v7, v8, v9}, [x29] + st3.2d {v4, v5, v6}, [x9] + +; CHECK: ld3st3_multiple: +; CHECK: ld3.8b { v4, v5, v6 }, [x19] ; encoding: [0x64,0x42,0x40,0x0c] +; CHECK: ld3.16b { v4, v5, v6 }, [x19] ; encoding: [0x64,0x42,0x40,0x4c] +; CHECK: ld3.4h { v4, v5, v6 }, [x19] ; encoding: [0x64,0x46,0x40,0x0c] +; CHECK: ld3.8h { v4, v5, v6 }, [x19] ; encoding: [0x64,0x46,0x40,0x4c] +; CHECK: ld3.2s { v4, v5, v6 }, [x19] ; encoding: [0x64,0x4a,0x40,0x0c] +; CHECK: ld3.4s { v4, v5, v6 }, [x19] ; encoding: [0x64,0x4a,0x40,0x4c] +; CHECK: ld3.2d { v4, v5, v6 }, [x19] ; encoding: [0x64,0x4e,0x40,0x4c] + +; CHECK: ld3.8b { v9, v10, v11 }, [x9] ; encoding: [0x29,0x41,0x40,0x0c] +; CHECK: ld3.16b { v14, v15, v16 }, [x19] ; encoding: [0x6e,0x42,0x40,0x4c] +; CHECK: ld3.4h { v24, v25, v26 }, [fp] ; encoding: [0xb8,0x47,0x40,0x0c] +; CHECK: ld3.8h { v30, v31, v0 }, [x9] ; encoding: [0x3e,0x45,0x40,0x4c] +; CHECK: ld3.2s { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4a,0x40,0x0c] +; CHECK: ld3.4s { v4, v5, v6 }, [fp] ; encoding: [0xa4,0x4b,0x40,0x4c] +; CHECK: ld3.2d { v7, v8, v9 }, [x9] ; encoding: [0x27,0x4d,0x40,0x4c] + +; CHECK: st3.8b { v4, v5, v6 }, [x19] ; encoding: [0x64,0x42,0x00,0x0c] +; CHECK: st3.16b { v4, v5, v6 }, [x19] ; encoding: [0x64,0x42,0x00,0x4c] +; CHECK: st3.4h { v4, v5, v6 }, [x19] ; encoding: [0x64,0x46,0x00,0x0c] +; CHECK: st3.8h { v4, v5, v6 }, [x19] ; encoding: [0x64,0x46,0x00,0x4c] +; CHECK: st3.2s { v4, v5, v6 }, [x19] ; encoding: [0x64,0x4a,0x00,0x0c] +; CHECK: st3.4s { v4, v5, v6 }, [x19] ; encoding: [0x64,0x4a,0x00,0x4c] +; CHECK: st3.2d { v4, v5, v6 }, [x19] ; encoding: [0x64,0x4e,0x00,0x4c] + +; CHECK: st3.8b { v10, v11, v12 }, [x9] ; encoding: [0x2a,0x41,0x00,0x0c] +; CHECK: st3.16b { v14, v15, v16 }, [x19] ; encoding: [0x6e,0x42,0x00,0x4c] +; CHECK: st3.4h { v24, v25, v26 }, [fp] ; encoding: [0xb8,0x47,0x00,0x0c] +; CHECK: st3.8h { v30, v31, v0 }, [x9] ; encoding: [0x3e,0x45,0x00,0x4c] +; CHECK: st3.2s { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4a,0x00,0x0c] +; CHECK: st3.4s { v7, v8, v9 }, [fp] ; encoding: [0xa7,0x4b,0x00,0x4c] +; CHECK: st3.2d { v4, v5, v6 }, [x9] ; encoding: [0x24,0x4d,0x00,0x4c] + +ld4st4_multiple: + ld4.8b {v4, v5, v6, v7}, [x19] + ld4.16b {v4, v5, v6, v7}, [x19] + ld4.4h {v4, v5, v6, v7}, [x19] + ld4.8h {v4, v5, v6, v7}, [x19] + ld4.2s {v4, v5, v6, v7}, [x19] + ld4.4s {v4, v5, v6, v7}, [x19] + ld4.2d {v4, v5, v6, v7}, [x19] + + st4.8b {v4, v5, v6, v7}, [x19] + st4.16b {v4, v5, v6, v7}, [x19] + st4.4h {v4, v5, v6, v7}, [x19] + st4.8h {v4, v5, v6, v7}, [x19] + st4.2s {v4, v5, v6, v7}, [x19] + st4.4s {v4, v5, v6, v7}, [x19] + st4.2d {v4, v5, v6, v7}, [x19] + +; CHECK: ld4st4_multiple: +; CHECK: ld4.8b { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x02,0x40,0x0c] +; CHECK: ld4.16b { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x02,0x40,0x4c] +; CHECK: ld4.4h { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x06,0x40,0x0c] +; CHECK: ld4.8h { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x06,0x40,0x4c] +; CHECK: ld4.2s { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x0a,0x40,0x0c] +; CHECK: ld4.4s { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x0a,0x40,0x4c] +; CHECK: ld4.2d { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x0e,0x40,0x4c] + +; CHECK: st4.8b { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x02,0x00,0x0c] +; CHECK: st4.16b { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x02,0x00,0x4c] +; CHECK: st4.4h { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x06,0x00,0x0c] +; CHECK: st4.8h { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x06,0x00,0x4c] +; CHECK: st4.2s { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x0a,0x00,0x0c] +; CHECK: st4.4s { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x0a,0x00,0x4c] +; CHECK: st4.2d { v4, v5, v6, v7 }, [x19] ; encoding: [0x64,0x0e,0x00,0x4c] + +;----------------------------------------------------------------------------- +; Post-increment versions. +;----------------------------------------------------------------------------- + +_ld1st1_multiple_post: + ld1.8b {v0}, [x1], x15 + ld1.8b {v0, v1}, [x1], x15 + ld1.8b {v0, v1, v2}, [x1], x15 + ld1.8b {v0, v1, v2, v3}, [x1], x15 + + ld1.16b {v0}, [x1], x15 + ld1.16b {v0, v1}, [x1], x15 + ld1.16b {v0, v1, v2}, [x1], x15 + ld1.16b {v0, v1, v2, v3}, [x1], x15 + + ld1.4h {v0}, [x1], x15 + ld1.4h {v0, v1}, [x1], x15 + ld1.4h {v0, v1, v2}, [x1], x15 + ld1.4h {v0, v1, v2, v3}, [x1], x15 + + ld1.8h {v0}, [x1], x15 + ld1.8h {v0, v1}, [x1], x15 + ld1.8h {v0, v1, v2}, [x1], x15 + ld1.8h {v0, v1, v2, v3}, [x1], x15 + + ld1.2s {v0}, [x1], x15 + ld1.2s {v0, v1}, [x1], x15 + ld1.2s {v0, v1, v2}, [x1], x15 + ld1.2s {v0, v1, v2, v3}, [x1], x15 + + ld1.4s {v0}, [x1], x15 + ld1.4s {v0, v1}, [x1], x15 + ld1.4s {v0, v1, v2}, [x1], x15 + ld1.4s {v0, v1, v2, v3}, [x1], x15 + + ld1.1d {v0}, [x1], x15 + ld1.1d {v0, v1}, [x1], x15 + ld1.1d {v0, v1, v2}, [x1], x15 + ld1.1d {v0, v1, v2, v3}, [x1], x15 + + ld1.2d {v0}, [x1], x15 + ld1.2d {v0, v1}, [x1], x15 + ld1.2d {v0, v1, v2}, [x1], x15 + ld1.2d {v0, v1, v2, v3}, [x1], x15 + + st1.8b {v0}, [x1], x15 + st1.8b {v0, v1}, [x1], x15 + st1.8b {v0, v1, v2}, [x1], x15 + st1.8b {v0, v1, v2, v3}, [x1], x15 + + st1.16b {v0}, [x1], x15 + st1.16b {v0, v1}, [x1], x15 + st1.16b {v0, v1, v2}, [x1], x15 + st1.16b {v0, v1, v2, v3}, [x1], x15 + + st1.4h {v0}, [x1], x15 + st1.4h {v0, v1}, [x1], x15 + st1.4h {v0, v1, v2}, [x1], x15 + st1.4h {v0, v1, v2, v3}, [x1], x15 + + st1.8h {v0}, [x1], x15 + st1.8h {v0, v1}, [x1], x15 + st1.8h {v0, v1, v2}, [x1], x15 + st1.8h {v0, v1, v2, v3}, [x1], x15 + + st1.2s {v0}, [x1], x15 + st1.2s {v0, v1}, [x1], x15 + st1.2s {v0, v1, v2}, [x1], x15 + st1.2s {v0, v1, v2, v3}, [x1], x15 + + st1.4s {v0}, [x1], x15 + st1.4s {v0, v1}, [x1], x15 + st1.4s {v0, v1, v2}, [x1], x15 + st1.4s {v0, v1, v2, v3}, [x1], x15 + + st1.1d {v0}, [x1], x15 + st1.1d {v0, v1}, [x1], x15 + st1.1d {v0, v1, v2}, [x1], x15 + st1.1d {v0, v1, v2, v3}, [x1], x15 + + st1.2d {v0}, [x1], x15 + st1.2d {v0, v1}, [x1], x15 + st1.2d {v0, v1, v2}, [x1], x15 + st1.2d {v0, v1, v2, v3}, [x1], x15 + + ld1.8b {v0}, [x1], #8 + ld1.8b {v0, v1}, [x1], #16 + ld1.8b {v0, v1, v2}, [x1], #24 + ld1.8b {v0, v1, v2, v3}, [x1], #32 + + ld1.16b {v0}, [x1], #16 + ld1.16b {v0, v1}, [x1], #32 + ld1.16b {v0, v1, v2}, [x1], #48 + ld1.16b {v0, v1, v2, v3}, [x1], #64 + + ld1.4h {v0}, [x1], #8 + ld1.4h {v0, v1}, [x1], #16 + ld1.4h {v0, v1, v2}, [x1], #24 + ld1.4h {v0, v1, v2, v3}, [x1], #32 + + ld1.8h {v0}, [x1], #16 + ld1.8h {v0, v1}, [x1], #32 + ld1.8h {v0, v1, v2}, [x1], #48 + ld1.8h {v0, v1, v2, v3}, [x1], #64 + + ld1.2s {v0}, [x1], #8 + ld1.2s {v0, v1}, [x1], #16 + ld1.2s {v0, v1, v2}, [x1], #24 + ld1.2s {v0, v1, v2, v3}, [x1], #32 + + ld1.4s {v0}, [x1], #16 + ld1.4s {v0, v1}, [x1], #32 + ld1.4s {v0, v1, v2}, [x1], #48 + ld1.4s {v0, v1, v2, v3}, [x1], #64 + + ld1.1d {v0}, [x1], #8 + ld1.1d {v0, v1}, [x1], #16 + ld1.1d {v0, v1, v2}, [x1], #24 + ld1.1d {v0, v1, v2, v3}, [x1], #32 + + ld1.2d {v0}, [x1], #16 + ld1.2d {v0, v1}, [x1], #32 + ld1.2d {v0, v1, v2}, [x1], #48 + ld1.2d {v0, v1, v2, v3}, [x1], #64 + + st1.8b {v0}, [x1], #8 + st1.8b {v0, v1}, [x1], #16 + st1.8b {v0, v1, v2}, [x1], #24 + st1.8b {v0, v1, v2, v3}, [x1], #32 + + st1.16b {v0}, [x1], #16 + st1.16b {v0, v1}, [x1], #32 + st1.16b {v0, v1, v2}, [x1], #48 + st1.16b {v0, v1, v2, v3}, [x1], #64 + + st1.4h {v0}, [x1], #8 + st1.4h {v0, v1}, [x1], #16 + st1.4h {v0, v1, v2}, [x1], #24 + st1.4h {v0, v1, v2, v3}, [x1], #32 + + st1.8h {v0}, [x1], #16 + st1.8h {v0, v1}, [x1], #32 + st1.8h {v0, v1, v2}, [x1], #48 + st1.8h {v0, v1, v2, v3}, [x1], #64 + + st1.2s {v0}, [x1], #8 + st1.2s {v0, v1}, [x1], #16 + st1.2s {v0, v1, v2}, [x1], #24 + st1.2s {v0, v1, v2, v3}, [x1], #32 + + st1.4s {v0}, [x1], #16 + st1.4s {v0, v1}, [x1], #32 + st1.4s {v0, v1, v2}, [x1], #48 + st1.4s {v0, v1, v2, v3}, [x1], #64 + + st1.1d {v0}, [x1], #8 + st1.1d {v0, v1}, [x1], #16 + st1.1d {v0, v1, v2}, [x1], #24 + st1.1d {v0, v1, v2, v3}, [x1], #32 + + st1.2d {v0}, [x1], #16 + st1.2d {v0, v1}, [x1], #32 + st1.2d {v0, v1, v2}, [x1], #48 + st1.2d {v0, v1, v2, v3}, [x1], #64 + +; CHECK: ld1st1_multiple_post: +; CHECK: ld1.8b { v0 }, [x1], x15 ; encoding: [0x20,0x70,0xcf,0x0c] +; CHECK: ld1.8b { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa0,0xcf,0x0c] +; CHECK: ld1.8b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x60,0xcf,0x0c] +; CHECK: ld1.8b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x20,0xcf,0x0c] + +; CHECK: ld1.16b { v0 }, [x1], x15 ; encoding: [0x20,0x70,0xcf,0x4c] +; CHECK: ld1.16b { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa0,0xcf,0x4c] +; CHECK: ld1.16b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x60,0xcf,0x4c] +; CHECK: ld1.16b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x20,0xcf,0x4c] + +; CHECK: ld1.4h { v0 }, [x1], x15 ; encoding: [0x20,0x74,0xcf,0x0c] +; CHECK: ld1.4h { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa4,0xcf,0x0c] +; CHECK: ld1.4h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x64,0xcf,0x0c] +; CHECK: ld1.4h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x24,0xcf,0x0c] + +; CHECK: ld1.8h { v0 }, [x1], x15 ; encoding: [0x20,0x74,0xcf,0x4c] +; CHECK: ld1.8h { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa4,0xcf,0x4c] +; CHECK: ld1.8h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x64,0xcf,0x4c] +; CHECK: ld1.8h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x24,0xcf,0x4c] + +; CHECK: ld1.2s { v0 }, [x1], x15 ; encoding: [0x20,0x78,0xcf,0x0c] +; CHECK: ld1.2s { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa8,0xcf,0x0c] +; CHECK: ld1.2s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x68,0xcf,0x0c] +; CHECK: ld1.2s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x28,0xcf,0x0c] + +; CHECK: ld1.4s { v0 }, [x1], x15 ; encoding: [0x20,0x78,0xcf,0x4c] +; CHECK: ld1.4s { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa8,0xcf,0x4c] +; CHECK: ld1.4s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x68,0xcf,0x4c] +; CHECK: ld1.4s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x28,0xcf,0x4c] + +; CHECK: ld1.1d { v0 }, [x1], x15 ; encoding: [0x20,0x7c,0xcf,0x0c] +; CHECK: ld1.1d { v0, v1 }, [x1], x15 ; encoding: [0x20,0xac,0xcf,0x0c] +; CHECK: ld1.1d { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x6c,0xcf,0x0c] +; CHECK: ld1.1d { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x2c,0xcf,0x0c] + +; CHECK: ld1.2d { v0 }, [x1], x15 ; encoding: [0x20,0x7c,0xcf,0x4c] +; CHECK: ld1.2d { v0, v1 }, [x1], x15 ; encoding: [0x20,0xac,0xcf,0x4c] +; CHECK: ld1.2d { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x6c,0xcf,0x4c] +; CHECK: ld1.2d { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x2c,0xcf,0x4c] + +; CHECK: st1.8b { v0 }, [x1], x15 ; encoding: [0x20,0x70,0x8f,0x0c] +; CHECK: st1.8b { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa0,0x8f,0x0c] +; CHECK: st1.8b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x60,0x8f,0x0c] +; CHECK: st1.8b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x20,0x8f,0x0c] + +; CHECK: st1.16b { v0 }, [x1], x15 ; encoding: [0x20,0x70,0x8f,0x4c] +; CHECK: st1.16b { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa0,0x8f,0x4c] +; CHECK: st1.16b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x60,0x8f,0x4c] +; CHECK: st1.16b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x20,0x8f,0x4c] + +; CHECK: st1.4h { v0 }, [x1], x15 ; encoding: [0x20,0x74,0x8f,0x0c] +; CHECK: st1.4h { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa4,0x8f,0x0c] +; CHECK: st1.4h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x64,0x8f,0x0c] +; CHECK: st1.4h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x24,0x8f,0x0c] + +; CHECK: st1.8h { v0 }, [x1], x15 ; encoding: [0x20,0x74,0x8f,0x4c] +; CHECK: st1.8h { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa4,0x8f,0x4c] +; CHECK: st1.8h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x64,0x8f,0x4c] +; CHECK: st1.8h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x24,0x8f,0x4c] + +; CHECK: st1.2s { v0 }, [x1], x15 ; encoding: [0x20,0x78,0x8f,0x0c] +; CHECK: st1.2s { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa8,0x8f,0x0c] +; CHECK: st1.2s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x68,0x8f,0x0c] +; CHECK: st1.2s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x28,0x8f,0x0c] + +; CHECK: st1.4s { v0 }, [x1], x15 ; encoding: [0x20,0x78,0x8f,0x4c] +; CHECK: st1.4s { v0, v1 }, [x1], x15 ; encoding: [0x20,0xa8,0x8f,0x4c] +; CHECK: st1.4s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x68,0x8f,0x4c] +; CHECK: st1.4s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x28,0x8f,0x4c] + +; CHECK: st1.1d { v0 }, [x1], x15 ; encoding: [0x20,0x7c,0x8f,0x0c] +; CHECK: st1.1d { v0, v1 }, [x1], x15 ; encoding: [0x20,0xac,0x8f,0x0c] +; CHECK: st1.1d { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x6c,0x8f,0x0c] +; CHECK: st1.1d { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x2c,0x8f,0x0c] + +; CHECK: st1.2d { v0 }, [x1], x15 ; encoding: [0x20,0x7c,0x8f,0x4c] +; CHECK: st1.2d { v0, v1 }, [x1], x15 ; encoding: [0x20,0xac,0x8f,0x4c] +; CHECK: st1.2d { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x6c,0x8f,0x4c] +; CHECK: st1.2d { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x2c,0x8f,0x4c] + +; CHECK: ld1.8b { v0 }, [x1], #8 ; encoding: [0x20,0x70,0xdf,0x0c] +; CHECK: ld1.8b { v0, v1 }, [x1], #16 ; encoding: [0x20,0xa0,0xdf,0x0c] +; CHECK: ld1.8b { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x60,0xdf,0x0c] +; CHECK: ld1.8b { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x20,0xdf,0x0c] + +; CHECK: ld1.16b { v0 }, [x1], #16 ; encoding: [0x20,0x70,0xdf,0x4c] +; CHECK: ld1.16b { v0, v1 }, [x1], #32 ; encoding: [0x20,0xa0,0xdf,0x4c] +; CHECK: ld1.16b { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x60,0xdf,0x4c] +; CHECK: ld1.16b { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x20,0xdf,0x4c] + +; CHECK: ld1.4h { v0 }, [x1], #8 ; encoding: [0x20,0x74,0xdf,0x0c] +; CHECK: ld1.4h { v0, v1 }, [x1], #16 ; encoding: [0x20,0xa4,0xdf,0x0c] +; CHECK: ld1.4h { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x64,0xdf,0x0c] +; CHECK: ld1.4h { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x24,0xdf,0x0c] + +; CHECK: ld1.8h { v0 }, [x1], #16 ; encoding: [0x20,0x74,0xdf,0x4c] +; CHECK: ld1.8h { v0, v1 }, [x1], #32 ; encoding: [0x20,0xa4,0xdf,0x4c] +; CHECK: ld1.8h { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x64,0xdf,0x4c] +; CHECK: ld1.8h { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x24,0xdf,0x4c] + +; CHECK: ld1.2s { v0 }, [x1], #8 ; encoding: [0x20,0x78,0xdf,0x0c] +; CHECK: ld1.2s { v0, v1 }, [x1], #16 ; encoding: [0x20,0xa8,0xdf,0x0c] +; CHECK: ld1.2s { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x68,0xdf,0x0c] +; CHECK: ld1.2s { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x28,0xdf,0x0c] + +; CHECK: ld1.4s { v0 }, [x1], #16 ; encoding: [0x20,0x78,0xdf,0x4c] +; CHECK: ld1.4s { v0, v1 }, [x1], #32 ; encoding: [0x20,0xa8,0xdf,0x4c] +; CHECK: ld1.4s { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x68,0xdf,0x4c] +; CHECK: ld1.4s { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x28,0xdf,0x4c] + +; CHECK: ld1.1d { v0 }, [x1], #8 ; encoding: [0x20,0x7c,0xdf,0x0c] +; CHECK: ld1.1d { v0, v1 }, [x1], #16 ; encoding: [0x20,0xac,0xdf,0x0c] +; CHECK: ld1.1d { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x6c,0xdf,0x0c] +; CHECK: ld1.1d { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x2c,0xdf,0x0c] + +; CHECK: ld1.2d { v0 }, [x1], #16 ; encoding: [0x20,0x7c,0xdf,0x4c] +; CHECK: ld1.2d { v0, v1 }, [x1], #32 ; encoding: [0x20,0xac,0xdf,0x4c] +; CHECK: ld1.2d { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x6c,0xdf,0x4c] +; CHECK: ld1.2d { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x2c,0xdf,0x4c] + +; CHECK: st1.8b { v0 }, [x1], #8 ; encoding: [0x20,0x70,0x9f,0x0c] +; CHECK: st1.8b { v0, v1 }, [x1], #16 ; encoding: [0x20,0xa0,0x9f,0x0c] +; CHECK: st1.8b { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x60,0x9f,0x0c] +; CHECK: st1.8b { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x20,0x9f,0x0c] + +; CHECK: st1.16b { v0 }, [x1], #16 ; encoding: [0x20,0x70,0x9f,0x4c] +; CHECK: st1.16b { v0, v1 }, [x1], #32 ; encoding: [0x20,0xa0,0x9f,0x4c] +; CHECK: st1.16b { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x60,0x9f,0x4c] +; CHECK: st1.16b { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x20,0x9f,0x4c] + +; CHECK: st1.4h { v0 }, [x1], #8 ; encoding: [0x20,0x74,0x9f,0x0c] +; CHECK: st1.4h { v0, v1 }, [x1], #16 ; encoding: [0x20,0xa4,0x9f,0x0c] +; CHECK: st1.4h { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x64,0x9f,0x0c] +; CHECK: st1.4h { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x24,0x9f,0x0c] + +; CHECK: st1.8h { v0 }, [x1], #16 ; encoding: [0x20,0x74,0x9f,0x4c] +; CHECK: st1.8h { v0, v1 }, [x1], #32 ; encoding: [0x20,0xa4,0x9f,0x4c] +; CHECK: st1.8h { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x64,0x9f,0x4c] +; CHECK: st1.8h { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x24,0x9f,0x4c] + +; CHECK: st1.2s { v0 }, [x1], #8 ; encoding: [0x20,0x78,0x9f,0x0c] +; CHECK: st1.2s { v0, v1 }, [x1], #16 ; encoding: [0x20,0xa8,0x9f,0x0c] +; CHECK: st1.2s { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x68,0x9f,0x0c] +; CHECK: st1.2s { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x28,0x9f,0x0c] + +; CHECK: st1.4s { v0 }, [x1], #16 ; encoding: [0x20,0x78,0x9f,0x4c] +; CHECK: st1.4s { v0, v1 }, [x1], #32 ; encoding: [0x20,0xa8,0x9f,0x4c] +; CHECK: st1.4s { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x68,0x9f,0x4c] +; CHECK: st1.4s { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x28,0x9f,0x4c] + +; CHECK: st1.1d { v0 }, [x1], #8 ; encoding: [0x20,0x7c,0x9f,0x0c] +; CHECK: st1.1d { v0, v1 }, [x1], #16 ; encoding: [0x20,0xac,0x9f,0x0c] +; CHECK: st1.1d { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x6c,0x9f,0x0c] +; CHECK: st1.1d { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x2c,0x9f,0x0c] + +; CHECK: st1.2d { v0 }, [x1], #16 ; encoding: [0x20,0x7c,0x9f,0x4c] +; CHECK: st1.2d { v0, v1 }, [x1], #32 ; encoding: [0x20,0xac,0x9f,0x4c] +; CHECK: st1.2d { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x6c,0x9f,0x4c] +; CHECK: st1.2d { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x2c,0x9f,0x4c] + + +_ld2st2_multiple_post: + ld2.8b {v0, v1}, [x1], x15 + ld2.16b {v0, v1}, [x1], x15 + ld2.4h {v0, v1}, [x1], x15 + ld2.8h {v0, v1}, [x1], x15 + ld2.2s {v0, v1}, [x1], x15 + ld2.4s {v0, v1}, [x1], x15 + ld2.2d {v0, v1}, [x1], x15 + + st2.8b {v0, v1}, [x1], x15 + st2.16b {v0, v1}, [x1], x15 + st2.4h {v0, v1}, [x1], x15 + st2.8h {v0, v1}, [x1], x15 + st2.2s {v0, v1}, [x1], x15 + st2.4s {v0, v1}, [x1], x15 + st2.2d {v0, v1}, [x1], x15 + + ld2.8b {v0, v1}, [x1], #16 + ld2.16b {v0, v1}, [x1], #32 + ld2.4h {v0, v1}, [x1], #16 + ld2.8h {v0, v1}, [x1], #32 + ld2.2s {v0, v1}, [x1], #16 + ld2.4s {v0, v1}, [x1], #32 + ld2.2d {v0, v1}, [x1], #32 + + st2.8b {v0, v1}, [x1], #16 + st2.16b {v0, v1}, [x1], #32 + st2.4h {v0, v1}, [x1], #16 + st2.8h {v0, v1}, [x1], #32 + st2.2s {v0, v1}, [x1], #16 + st2.4s {v0, v1}, [x1], #32 + st2.2d {v0, v1}, [x1], #32 + + +; CHECK: ld2st2_multiple_post: +; CHECK: ld2.8b { v0, v1 }, [x1], x15 ; encoding: [0x20,0x80,0xcf,0x0c] +; CHECK: ld2.16b { v0, v1 }, [x1], x15 ; encoding: [0x20,0x80,0xcf,0x4c] +; CHECK: ld2.4h { v0, v1 }, [x1], x15 ; encoding: [0x20,0x84,0xcf,0x0c] +; CHECK: ld2.8h { v0, v1 }, [x1], x15 ; encoding: [0x20,0x84,0xcf,0x4c] +; CHECK: ld2.2s { v0, v1 }, [x1], x15 ; encoding: [0x20,0x88,0xcf,0x0c] +; CHECK: ld2.4s { v0, v1 }, [x1], x15 ; encoding: [0x20,0x88,0xcf,0x4c] +; CHECK: ld2.2d { v0, v1 }, [x1], x15 ; encoding: [0x20,0x8c,0xcf,0x4c] + +; CHECK: st2.8b { v0, v1 }, [x1], x15 ; encoding: [0x20,0x80,0x8f,0x0c] +; CHECK: st2.16b { v0, v1 }, [x1], x15 ; encoding: [0x20,0x80,0x8f,0x4c] +; CHECK: st2.4h { v0, v1 }, [x1], x15 ; encoding: [0x20,0x84,0x8f,0x0c] +; CHECK: st2.8h { v0, v1 }, [x1], x15 ; encoding: [0x20,0x84,0x8f,0x4c] +; CHECK: st2.2s { v0, v1 }, [x1], x15 ; encoding: [0x20,0x88,0x8f,0x0c] +; CHECK: st2.4s { v0, v1 }, [x1], x15 ; encoding: [0x20,0x88,0x8f,0x4c] +; CHECK: st2.2d { v0, v1 }, [x1], x15 ; encoding: [0x20,0x8c,0x8f,0x4c] + +; CHECK: ld2.8b { v0, v1 }, [x1], #16 ; encoding: [0x20,0x80,0xdf,0x0c] +; CHECK: ld2.16b { v0, v1 }, [x1], #32 ; encoding: [0x20,0x80,0xdf,0x4c] +; CHECK: ld2.4h { v0, v1 }, [x1], #16 ; encoding: [0x20,0x84,0xdf,0x0c] +; CHECK: ld2.8h { v0, v1 }, [x1], #32 ; encoding: [0x20,0x84,0xdf,0x4c] +; CHECK: ld2.2s { v0, v1 }, [x1], #16 ; encoding: [0x20,0x88,0xdf,0x0c] +; CHECK: ld2.4s { v0, v1 }, [x1], #32 ; encoding: [0x20,0x88,0xdf,0x4c] +; CHECK: ld2.2d { v0, v1 }, [x1], #32 ; encoding: [0x20,0x8c,0xdf,0x4c] + +; CHECK: st2.8b { v0, v1 }, [x1], #16 ; encoding: [0x20,0x80,0x9f,0x0c] +; CHECK: st2.16b { v0, v1 }, [x1], #32 ; encoding: [0x20,0x80,0x9f,0x4c] +; CHECK: st2.4h { v0, v1 }, [x1], #16 ; encoding: [0x20,0x84,0x9f,0x0c] +; CHECK: st2.8h { v0, v1 }, [x1], #32 ; encoding: [0x20,0x84,0x9f,0x4c] +; CHECK: st2.2s { v0, v1 }, [x1], #16 ; encoding: [0x20,0x88,0x9f,0x0c] +; CHECK: st2.4s { v0, v1 }, [x1], #32 ; encoding: [0x20,0x88,0x9f,0x4c] +; CHECK: st2.2d { v0, v1 }, [x1], #32 ; encoding: [0x20,0x8c,0x9f,0x4c] + + +_ld3st3_multiple_post: + ld3.8b {v0, v1, v2}, [x1], x15 + ld3.16b {v0, v1, v2}, [x1], x15 + ld3.4h {v0, v1, v2}, [x1], x15 + ld3.8h {v0, v1, v2}, [x1], x15 + ld3.2s {v0, v1, v2}, [x1], x15 + ld3.4s {v0, v1, v2}, [x1], x15 + ld3.2d {v0, v1, v2}, [x1], x15 + + st3.8b {v0, v1, v2}, [x1], x15 + st3.16b {v0, v1, v2}, [x1], x15 + st3.4h {v0, v1, v2}, [x1], x15 + st3.8h {v0, v1, v2}, [x1], x15 + st3.2s {v0, v1, v2}, [x1], x15 + st3.4s {v0, v1, v2}, [x1], x15 + st3.2d {v0, v1, v2}, [x1], x15 + + ld3.8b {v0, v1, v2}, [x1], #24 + ld3.16b {v0, v1, v2}, [x1], #48 + ld3.4h {v0, v1, v2}, [x1], #24 + ld3.8h {v0, v1, v2}, [x1], #48 + ld3.2s {v0, v1, v2}, [x1], #24 + ld3.4s {v0, v1, v2}, [x1], #48 + ld3.2d {v0, v1, v2}, [x1], #48 + + st3.8b {v0, v1, v2}, [x1], #24 + st3.16b {v0, v1, v2}, [x1], #48 + st3.4h {v0, v1, v2}, [x1], #24 + st3.8h {v0, v1, v2}, [x1], #48 + st3.2s {v0, v1, v2}, [x1], #24 + st3.4s {v0, v1, v2}, [x1], #48 + st3.2d {v0, v1, v2}, [x1], #48 + +; CHECK: ld3st3_multiple_post: +; CHECK: ld3.8b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x40,0xcf,0x0c] +; CHECK: ld3.16b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x40,0xcf,0x4c] +; CHECK: ld3.4h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x44,0xcf,0x0c] +; CHECK: ld3.8h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x44,0xcf,0x4c] +; CHECK: ld3.2s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x48,0xcf,0x0c] +; CHECK: ld3.4s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x48,0xcf,0x4c] +; CHECK: ld3.2d { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x4c,0xcf,0x4c] + +; CHECK: st3.8b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x40,0x8f,0x0c] +; CHECK: st3.16b { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x40,0x8f,0x4c] +; CHECK: st3.4h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x44,0x8f,0x0c] +; CHECK: st3.8h { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x44,0x8f,0x4c] +; CHECK: st3.2s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x48,0x8f,0x0c] +; CHECK: st3.4s { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x48,0x8f,0x4c] +; CHECK: st3.2d { v0, v1, v2 }, [x1], x15 ; encoding: [0x20,0x4c,0x8f,0x4c] + +; CHECK: ld3.8b { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x40,0xdf,0x0c] +; CHECK: ld3.16b { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x40,0xdf,0x4c] +; CHECK: ld3.4h { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x44,0xdf,0x0c] +; CHECK: ld3.8h { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x44,0xdf,0x4c] +; CHECK: ld3.2s { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x48,0xdf,0x0c] +; CHECK: ld3.4s { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x48,0xdf,0x4c] +; CHECK: ld3.2d { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x4c,0xdf,0x4c] + +; CHECK: st3.8b { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x40,0x9f,0x0c] +; CHECK: st3.16b { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x40,0x9f,0x4c] +; CHECK: st3.4h { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x44,0x9f,0x0c] +; CHECK: st3.8h { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x44,0x9f,0x4c] +; CHECK: st3.2s { v0, v1, v2 }, [x1], #24 ; encoding: [0x20,0x48,0x9f,0x0c] +; CHECK: st3.4s { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x48,0x9f,0x4c] +; CHECK: st3.2d { v0, v1, v2 }, [x1], #48 ; encoding: [0x20,0x4c,0x9f,0x4c] + +_ld4st4_multiple_post: + ld4.8b {v0, v1, v2, v3}, [x1], x15 + ld4.16b {v0, v1, v2, v3}, [x1], x15 + ld4.4h {v0, v1, v2, v3}, [x1], x15 + ld4.8h {v0, v1, v2, v3}, [x1], x15 + ld4.2s {v0, v1, v2, v3}, [x1], x15 + ld4.4s {v0, v1, v2, v3}, [x1], x15 + ld4.2d {v0, v1, v2, v3}, [x1], x15 + + st4.8b {v0, v1, v2, v3}, [x1], x15 + st4.16b {v0, v1, v2, v3}, [x1], x15 + st4.4h {v0, v1, v2, v3}, [x1], x15 + st4.8h {v0, v1, v2, v3}, [x1], x15 + st4.2s {v0, v1, v2, v3}, [x1], x15 + st4.4s {v0, v1, v2, v3}, [x1], x15 + st4.2d {v0, v1, v2, v3}, [x1], x15 + + ld4.8b {v0, v1, v2, v3}, [x1], #32 + ld4.16b {v0, v1, v2, v3}, [x1], #64 + ld4.4h {v0, v1, v2, v3}, [x1], #32 + ld4.8h {v0, v1, v2, v3}, [x1], #64 + ld4.2s {v0, v1, v2, v3}, [x1], #32 + ld4.4s {v0, v1, v2, v3}, [x1], #64 + ld4.2d {v0, v1, v2, v3}, [x1], #64 + + st4.8b {v0, v1, v2, v3}, [x1], #32 + st4.16b {v0, v1, v2, v3}, [x1], #64 + st4.4h {v0, v1, v2, v3}, [x1], #32 + st4.8h {v0, v1, v2, v3}, [x1], #64 + st4.2s {v0, v1, v2, v3}, [x1], #32 + st4.4s {v0, v1, v2, v3}, [x1], #64 + st4.2d {v0, v1, v2, v3}, [x1], #64 + + +; CHECK: ld4st4_multiple_post: +; CHECK: ld4.8b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x00,0xcf,0x0c] +; CHECK: ld4.16b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x00,0xcf,0x4c] +; CHECK: ld4.4h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x04,0xcf,0x0c] +; CHECK: ld4.8h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x04,0xcf,0x4c] +; CHECK: ld4.2s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x08,0xcf,0x0c] +; CHECK: ld4.4s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x08,0xcf,0x4c] +; CHECK: ld4.2d { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x0c,0xcf,0x4c] + +; CHECK: st4.8b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x00,0x8f,0x0c] +; CHECK: st4.16b { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x00,0x8f,0x4c] +; CHECK: st4.4h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x04,0x8f,0x0c] +; CHECK: st4.8h { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x04,0x8f,0x4c] +; CHECK: st4.2s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x08,0x8f,0x0c] +; CHECK: st4.4s { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x08,0x8f,0x4c] +; CHECK: st4.2d { v0, v1, v2, v3 }, [x1], x15 ; encoding: [0x20,0x0c,0x8f,0x4c] + +; CHECK: ld4.8b { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x00,0xdf,0x0c] +; CHECK: ld4.16b { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x00,0xdf,0x4c] +; CHECK: ld4.4h { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x04,0xdf,0x0c] +; CHECK: ld4.8h { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x04,0xdf,0x4c] +; CHECK: ld4.2s { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x08,0xdf,0x0c] +; CHECK: ld4.4s { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x08,0xdf,0x4c] +; CHECK: ld4.2d { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x0c,0xdf,0x4c] + +; CHECK: st4.8b { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x00,0x9f,0x0c] +; CHECK: st4.16b { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x00,0x9f,0x4c] +; CHECK: st4.4h { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x04,0x9f,0x0c] +; CHECK: st4.8h { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x04,0x9f,0x4c] +; CHECK: st4.2s { v0, v1, v2, v3 }, [x1], #32 ; encoding: [0x20,0x08,0x9f,0x0c] +; CHECK: st4.4s { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x08,0x9f,0x4c] +; CHECK: st4.2d { v0, v1, v2, v3 }, [x1], #64 ; encoding: [0x20,0x0c,0x9f,0x4c] + +ld1r: + ld1r.8b {v4}, [x2] + ld1r.8b {v4}, [x2], x3 + ld1r.16b {v4}, [x2] + ld1r.16b {v4}, [x2], x3 + ld1r.4h {v4}, [x2] + ld1r.4h {v4}, [x2], x3 + ld1r.8h {v4}, [x2] + ld1r.8h {v4}, [x2], x3 + ld1r.2s {v4}, [x2] + ld1r.2s {v4}, [x2], x3 + ld1r.4s {v4}, [x2] + ld1r.4s {v4}, [x2], x3 + ld1r.1d {v4}, [x2] + ld1r.1d {v4}, [x2], x3 + ld1r.2d {v4}, [x2] + ld1r.2d {v4}, [x2], x3 + + ld1r.8b {v4}, [x2], #1 + ld1r.16b {v4}, [x2], #1 + ld1r.4h {v4}, [x2], #2 + ld1r.8h {v4}, [x2], #2 + ld1r.2s {v4}, [x2], #4 + ld1r.4s {v4}, [x2], #4 + ld1r.1d {v4}, [x2], #8 + ld1r.2d {v4}, [x2], #8 + +; CHECK: ld1r: +; CHECK: ld1r.8b { v4 }, [x2] ; encoding: [0x44,0xc0,0x40,0x0d] +; CHECK: ld1r.8b { v4 }, [x2], x3 ; encoding: [0x44,0xc0,0xc3,0x0d] +; CHECK: ld1r.16b { v4 }, [x2] ; encoding: [0x44,0xc0,0x40,0x4d] +; CHECK: ld1r.16b { v4 }, [x2], x3 ; encoding: [0x44,0xc0,0xc3,0x4d] +; CHECK: ld1r.4h { v4 }, [x2] ; encoding: [0x44,0xc4,0x40,0x0d] +; CHECK: ld1r.4h { v4 }, [x2], x3 ; encoding: [0x44,0xc4,0xc3,0x0d] +; CHECK: ld1r.8h { v4 }, [x2] ; encoding: [0x44,0xc4,0x40,0x4d] +; CHECK: ld1r.8h { v4 }, [x2], x3 ; encoding: [0x44,0xc4,0xc3,0x4d] +; CHECK: ld1r.2s { v4 }, [x2] ; encoding: [0x44,0xc8,0x40,0x0d] +; CHECK: ld1r.2s { v4 }, [x2], x3 ; encoding: [0x44,0xc8,0xc3,0x0d] +; CHECK: ld1r.4s { v4 }, [x2] ; encoding: [0x44,0xc8,0x40,0x4d] +; CHECK: ld1r.4s { v4 }, [x2], x3 ; encoding: [0x44,0xc8,0xc3,0x4d] +; CHECK: ld1r.1d { v4 }, [x2] ; encoding: [0x44,0xcc,0x40,0x0d] +; CHECK: ld1r.1d { v4 }, [x2], x3 ; encoding: [0x44,0xcc,0xc3,0x0d] +; CHECK: ld1r.2d { v4 }, [x2] ; encoding: [0x44,0xcc,0x40,0x4d] +; CHECK: ld1r.2d { v4 }, [x2], x3 ; encoding: [0x44,0xcc,0xc3,0x4d] + +; CHECK: ld1r.8b { v4 }, [x2], #1 ; encoding: [0x44,0xc0,0xdf,0x0d] +; CHECK: ld1r.16b { v4 }, [x2], #1 ; encoding: [0x44,0xc0,0xdf,0x4d] +; CHECK: ld1r.4h { v4 }, [x2], #2 ; encoding: [0x44,0xc4,0xdf,0x0d] +; CHECK: ld1r.8h { v4 }, [x2], #2 ; encoding: [0x44,0xc4,0xdf,0x4d] +; CHECK: ld1r.2s { v4 }, [x2], #4 ; encoding: [0x44,0xc8,0xdf,0x0d] +; CHECK: ld1r.4s { v4 }, [x2], #4 ; encoding: [0x44,0xc8,0xdf,0x4d] +; CHECK: ld1r.1d { v4 }, [x2], #8 ; encoding: [0x44,0xcc,0xdf,0x0d] +; CHECK: ld1r.2d { v4 }, [x2], #8 ; encoding: [0x44,0xcc,0xdf,0x4d] + +ld2r: + ld2r.8b {v4, v5}, [x2] + ld2r.8b {v4, v5}, [x2], x3 + ld2r.16b {v4, v5}, [x2] + ld2r.16b {v4, v5}, [x2], x3 + ld2r.4h {v4, v5}, [x2] + ld2r.4h {v4, v5}, [x2], x3 + ld2r.8h {v4, v5}, [x2] + ld2r.8h {v4, v5}, [x2], x3 + ld2r.2s {v4, v5}, [x2] + ld2r.2s {v4, v5}, [x2], x3 + ld2r.4s {v4, v5}, [x2] + ld2r.4s {v4, v5}, [x2], x3 + ld2r.1d {v4, v5}, [x2] + ld2r.1d {v4, v5}, [x2], x3 + ld2r.2d {v4, v5}, [x2] + ld2r.2d {v4, v5}, [x2], x3 + + ld2r.8b {v4, v5}, [x2], #2 + ld2r.16b {v4, v5}, [x2], #2 + ld2r.4h {v4, v5}, [x2], #4 + ld2r.8h {v4, v5}, [x2], #4 + ld2r.2s {v4, v5}, [x2], #8 + ld2r.4s {v4, v5}, [x2], #8 + ld2r.1d {v4, v5}, [x2], #16 + ld2r.2d {v4, v5}, [x2], #16 + +; CHECK: ld2r: +; CHECK: ld2r.8b { v4, v5 }, [x2] ; encoding: [0x44,0xc0,0x60,0x0d] +; CHECK: ld2r.8b { v4, v5 }, [x2], x3 ; encoding: [0x44,0xc0,0xe3,0x0d] +; CHECK: ld2r.16b { v4, v5 }, [x2] ; encoding: [0x44,0xc0,0x60,0x4d] +; CHECK: ld2r.16b { v4, v5 }, [x2], x3 ; encoding: [0x44,0xc0,0xe3,0x4d] +; CHECK: ld2r.4h { v4, v5 }, [x2] ; encoding: [0x44,0xc4,0x60,0x0d] +; CHECK: ld2r.4h { v4, v5 }, [x2], x3 ; encoding: [0x44,0xc4,0xe3,0x0d] +; CHECK: ld2r.8h { v4, v5 }, [x2] ; encoding: [0x44,0xc4,0x60,0x4d] +; CHECK: ld2r.8h { v4, v5 }, [x2], x3 ; encoding: [0x44,0xc4,0xe3,0x4d] +; CHECK: ld2r.2s { v4, v5 }, [x2] ; encoding: [0x44,0xc8,0x60,0x0d] +; CHECK: ld2r.2s { v4, v5 }, [x2], x3 ; encoding: [0x44,0xc8,0xe3,0x0d] +; CHECK: ld2r.4s { v4, v5 }, [x2] ; encoding: [0x44,0xc8,0x60,0x4d] +; CHECK: ld2r.4s { v4, v5 }, [x2], x3 ; encoding: [0x44,0xc8,0xe3,0x4d] +; CHECK: ld2r.1d { v4, v5 }, [x2] ; encoding: [0x44,0xcc,0x60,0x0d] +; CHECK: ld2r.1d { v4, v5 }, [x2], x3 ; encoding: [0x44,0xcc,0xe3,0x0d] +; CHECK: ld2r.2d { v4, v5 }, [x2] ; encoding: [0x44,0xcc,0x60,0x4d] +; CHECK: ld2r.2d { v4, v5 }, [x2], x3 ; encoding: [0x44,0xcc,0xe3,0x4d] + +; CHECK: ld2r.8b { v4, v5 }, [x2], #2 ; encoding: [0x44,0xc0,0xff,0x0d] +; CHECK: ld2r.16b { v4, v5 }, [x2], #2 ; encoding: [0x44,0xc0,0xff,0x4d] +; CHECK: ld2r.4h { v4, v5 }, [x2], #4 ; encoding: [0x44,0xc4,0xff,0x0d] +; CHECK: ld2r.8h { v4, v5 }, [x2], #4 ; encoding: [0x44,0xc4,0xff,0x4d] +; CHECK: ld2r.2s { v4, v5 }, [x2], #8 ; encoding: [0x44,0xc8,0xff,0x0d] +; CHECK: ld2r.4s { v4, v5 }, [x2], #8 ; encoding: [0x44,0xc8,0xff,0x4d] +; CHECK: ld2r.1d { v4, v5 }, [x2], #16 ; encoding: [0x44,0xcc,0xff,0x0d] +; CHECK: ld2r.2d { v4, v5 }, [x2], #16 ; encoding: [0x44,0xcc,0xff,0x4d] + +ld3r: + ld3r.8b {v4, v5, v6}, [x2] + ld3r.8b {v4, v5, v6}, [x2], x3 + ld3r.16b {v4, v5, v6}, [x2] + ld3r.16b {v4, v5, v6}, [x2], x3 + ld3r.4h {v4, v5, v6}, [x2] + ld3r.4h {v4, v5, v6}, [x2], x3 + ld3r.8h {v4, v5, v6}, [x2] + ld3r.8h {v4, v5, v6}, [x2], x3 + ld3r.2s {v4, v5, v6}, [x2] + ld3r.2s {v4, v5, v6}, [x2], x3 + ld3r.4s {v4, v5, v6}, [x2] + ld3r.4s {v4, v5, v6}, [x2], x3 + ld3r.1d {v4, v5, v6}, [x2] + ld3r.1d {v4, v5, v6}, [x2], x3 + ld3r.2d {v4, v5, v6}, [x2] + ld3r.2d {v4, v5, v6}, [x2], x3 + + ld3r.8b {v4, v5, v6}, [x2], #3 + ld3r.16b {v4, v5, v6}, [x2], #3 + ld3r.4h {v4, v5, v6}, [x2], #6 + ld3r.8h {v4, v5, v6}, [x2], #6 + ld3r.2s {v4, v5, v6}, [x2], #12 + ld3r.4s {v4, v5, v6}, [x2], #12 + ld3r.1d {v4, v5, v6}, [x2], #24 + ld3r.2d {v4, v5, v6}, [x2], #24 + +; CHECK: ld3r: +; CHECK: ld3r.8b { v4, v5, v6 }, [x2] ; encoding: [0x44,0xe0,0x40,0x0d] +; CHECK: ld3r.8b { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xe0,0xc3,0x0d] +; CHECK: ld3r.16b { v4, v5, v6 }, [x2] ; encoding: [0x44,0xe0,0x40,0x4d] +; CHECK: ld3r.16b { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xe0,0xc3,0x4d] +; CHECK: ld3r.4h { v4, v5, v6 }, [x2] ; encoding: [0x44,0xe4,0x40,0x0d] +; CHECK: ld3r.4h { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xe4,0xc3,0x0d] +; CHECK: ld3r.8h { v4, v5, v6 }, [x2] ; encoding: [0x44,0xe4,0x40,0x4d] +; CHECK: ld3r.8h { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xe4,0xc3,0x4d] +; CHECK: ld3r.2s { v4, v5, v6 }, [x2] ; encoding: [0x44,0xe8,0x40,0x0d] +; CHECK: ld3r.2s { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xe8,0xc3,0x0d] +; CHECK: ld3r.4s { v4, v5, v6 }, [x2] ; encoding: [0x44,0xe8,0x40,0x4d] +; CHECK: ld3r.4s { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xe8,0xc3,0x4d] +; CHECK: ld3r.1d { v4, v5, v6 }, [x2] ; encoding: [0x44,0xec,0x40,0x0d] +; CHECK: ld3r.1d { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xec,0xc3,0x0d] +; CHECK: ld3r.2d { v4, v5, v6 }, [x2] ; encoding: [0x44,0xec,0x40,0x4d] +; CHECK: ld3r.2d { v4, v5, v6 }, [x2], x3 ; encoding: [0x44,0xec,0xc3,0x4d] + +; CHECK: ld3r.8b { v4, v5, v6 }, [x2], #3 ; encoding: [0x44,0xe0,0xdf,0x0d] +; CHECK: ld3r.16b { v4, v5, v6 }, [x2], #3 ; encoding: [0x44,0xe0,0xdf,0x4d] +; CHECK: ld3r.4h { v4, v5, v6 }, [x2], #6 ; encoding: [0x44,0xe4,0xdf,0x0d] +; CHECK: ld3r.8h { v4, v5, v6 }, [x2], #6 ; encoding: [0x44,0xe4,0xdf,0x4d] +; CHECK: ld3r.2s { v4, v5, v6 }, [x2], #12 ; encoding: [0x44,0xe8,0xdf,0x0d] +; CHECK: ld3r.4s { v4, v5, v6 }, [x2], #12 ; encoding: [0x44,0xe8,0xdf,0x4d] +; CHECK: ld3r.1d { v4, v5, v6 }, [x2], #24 ; encoding: [0x44,0xec,0xdf,0x0d] +; CHECK: ld3r.2d { v4, v5, v6 }, [x2], #24 ; encoding: [0x44,0xec,0xdf,0x4d] + +ld4r: + ld4r.8b {v4, v5, v6, v7}, [x2] + ld4r.8b {v4, v5, v6, v7}, [x2], x3 + ld4r.16b {v4, v5, v6, v7}, [x2] + ld4r.16b {v4, v5, v6, v7}, [x2], x3 + ld4r.4h {v4, v5, v6, v7}, [x2] + ld4r.4h {v4, v5, v6, v7}, [x2], x3 + ld4r.8h {v4, v5, v6, v7}, [x2] + ld4r.8h {v4, v5, v6, v7}, [x2], x3 + ld4r.2s {v4, v5, v6, v7}, [x2] + ld4r.2s {v4, v5, v6, v7}, [x2], x3 + ld4r.4s {v4, v5, v6, v7}, [x2] + ld4r.4s {v4, v5, v6, v7}, [x2], x3 + ld4r.1d {v4, v5, v6, v7}, [x2] + ld4r.1d {v4, v5, v6, v7}, [x2], x3 + ld4r.2d {v4, v5, v6, v7}, [x2] + ld4r.2d {v4, v5, v6, v7}, [x2], x3 + + ld4r.8b {v4, v5, v6, v7}, [x2], #4 + ld4r.16b {v5, v6, v7, v8}, [x2], #4 + ld4r.4h {v6, v7, v8, v9}, [x2], #8 + ld4r.8h {v1, v2, v3, v4}, [x2], #8 + ld4r.2s {v2, v3, v4, v5}, [x2], #16 + ld4r.4s {v3, v4, v5, v6}, [x2], #16 + ld4r.1d {v0, v1, v2, v3}, [x2], #32 + ld4r.2d {v4, v5, v6, v7}, [x2], #32 + +; CHECK: ld4r: +; CHECK: ld4r.8b { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xe0,0x60,0x0d] +; CHECK: ld4r.8b { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xe0,0xe3,0x0d] +; CHECK: ld4r.16b { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xe0,0x60,0x4d] +; CHECK: ld4r.16b { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xe0,0xe3,0x4d] +; CHECK: ld4r.4h { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xe4,0x60,0x0d] +; CHECK: ld4r.4h { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xe4,0xe3,0x0d] +; CHECK: ld4r.8h { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xe4,0x60,0x4d] +; CHECK: ld4r.8h { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xe4,0xe3,0x4d] +; CHECK: ld4r.2s { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xe8,0x60,0x0d] +; CHECK: ld4r.2s { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xe8,0xe3,0x0d] +; CHECK: ld4r.4s { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xe8,0x60,0x4d] +; CHECK: ld4r.4s { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xe8,0xe3,0x4d] +; CHECK: ld4r.1d { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xec,0x60,0x0d] +; CHECK: ld4r.1d { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xec,0xe3,0x0d] +; CHECK: ld4r.2d { v4, v5, v6, v7 }, [x2] ; encoding: [0x44,0xec,0x60,0x4d] +; CHECK: ld4r.2d { v4, v5, v6, v7 }, [x2], x3 ; encoding: [0x44,0xec,0xe3,0x4d] + +; CHECK: ld4r.8b { v4, v5, v6, v7 }, [x2], #4 ; encoding: [0x44,0xe0,0xff,0x0d] +; CHECK: ld4r.16b { v5, v6, v7, v8 }, [x2], #4 ; encoding: [0x45,0xe0,0xff,0x4d] +; CHECK: ld4r.4h { v6, v7, v8, v9 }, [x2], #8 ; encoding: [0x46,0xe4,0xff,0x0d] +; CHECK: ld4r.8h { v1, v2, v3, v4 }, [x2], #8 ; encoding: [0x41,0xe4,0xff,0x4d] +; CHECK: ld4r.2s { v2, v3, v4, v5 }, [x2], #16 ; encoding: [0x42,0xe8,0xff,0x0d] +; CHECK: ld4r.4s { v3, v4, v5, v6 }, [x2], #16 ; encoding: [0x43,0xe8,0xff,0x4d] +; CHECK: ld4r.1d { v0, v1, v2, v3 }, [x2], #32 ; encoding: [0x40,0xec,0xff,0x0d] +; CHECK: ld4r.2d { v4, v5, v6, v7 }, [x2], #32 ; encoding: [0x44,0xec,0xff,0x4d] + + +_ld1: + ld1.b {v4}[13], [x3] + ld1.h {v4}[2], [x3] + ld1.s {v4}[2], [x3] + ld1.d {v4}[1], [x3] + ld1.b {v4}[13], [x3], x5 + ld1.h {v4}[2], [x3], x5 + ld1.s {v4}[2], [x3], x5 + ld1.d {v4}[1], [x3], x5 + ld1.b {v4}[13], [x3], #1 + ld1.h {v4}[2], [x3], #2 + ld1.s {v4}[2], [x3], #4 + ld1.d {v4}[1], [x3], #8 + +; CHECK: _ld1: +; CHECK: ld1.b { v4 }[13], [x3] ; encoding: [0x64,0x14,0x40,0x4d] +; CHECK: ld1.h { v4 }[2], [x3] ; encoding: [0x64,0x50,0x40,0x0d] +; CHECK: ld1.s { v4 }[2], [x3] ; encoding: [0x64,0x80,0x40,0x4d] +; CHECK: ld1.d { v4 }[1], [x3] ; encoding: [0x64,0x84,0x40,0x4d] +; CHECK: ld1.b { v4 }[13], [x3], x5 ; encoding: [0x64,0x14,0xc5,0x4d] +; CHECK: ld1.h { v4 }[2], [x3], x5 ; encoding: [0x64,0x50,0xc5,0x0d] +; CHECK: ld1.s { v4 }[2], [x3], x5 ; encoding: [0x64,0x80,0xc5,0x4d] +; CHECK: ld1.d { v4 }[1], [x3], x5 ; encoding: [0x64,0x84,0xc5,0x4d] +; CHECK: ld1.b { v4 }[13], [x3], #1 ; encoding: [0x64,0x14,0xdf,0x4d] +; CHECK: ld1.h { v4 }[2], [x3], #2 ; encoding: [0x64,0x50,0xdf,0x0d] +; CHECK: ld1.s { v4 }[2], [x3], #4 ; encoding: [0x64,0x80,0xdf,0x4d] +; CHECK: ld1.d { v4 }[1], [x3], #8 ; encoding: [0x64,0x84,0xdf,0x4d] + +_ld2: + ld2.b {v4, v5}[13], [x3] + ld2.h {v4, v5}[2], [x3] + ld2.s {v4, v5}[2], [x3] + ld2.d {v4, v5}[1], [x3] + ld2.b {v4, v5}[13], [x3], x5 + ld2.h {v4, v5}[2], [x3], x5 + ld2.s {v4, v5}[2], [x3], x5 + ld2.d {v4, v5}[1], [x3], x5 + ld2.b {v4, v5}[13], [x3], #2 + ld2.h {v4, v5}[2], [x3], #4 + ld2.s {v4, v5}[2], [x3], #8 + ld2.d {v4, v5}[1], [x3], #16 + + +; CHECK: _ld2: +; CHECK: ld2.b { v4, v5 }[13], [x3] ; encoding: [0x64,0x14,0x60,0x4d] +; CHECK: ld2.h { v4, v5 }[2], [x3] ; encoding: [0x64,0x50,0x60,0x0d] +; CHECK: ld2.s { v4, v5 }[2], [x3] ; encoding: [0x64,0x80,0x60,0x4d] +; CHECK: ld2.d { v4, v5 }[1], [x3] ; encoding: [0x64,0x84,0x60,0x4d] +; CHECK: ld2.b { v4, v5 }[13], [x3], x5 ; encoding: [0x64,0x14,0xe5,0x4d] +; CHECK: ld2.h { v4, v5 }[2], [x3], x5 ; encoding: [0x64,0x50,0xe5,0x0d] +; CHECK: ld2.s { v4, v5 }[2], [x3], x5 ; encoding: [0x64,0x80,0xe5,0x4d] +; CHECK: ld2.d { v4, v5 }[1], [x3], x5 ; encoding: [0x64,0x84,0xe5,0x4d] +; CHECK: ld2.b { v4, v5 }[13], [x3], #2 ; encoding: [0x64,0x14,0xff,0x4d] +; CHECK: ld2.h { v4, v5 }[2], [x3], #4 ; encoding: [0x64,0x50,0xff,0x0d] +; CHECK: ld2.s { v4, v5 }[2], [x3], #8 ; encoding: [0x64,0x80,0xff,0x4d] +; CHECK: ld2.d { v4, v5 }[1], [x3], #16 ; encoding: [0x64,0x84,0xff,0x4d] + + +_ld3: + ld3.b {v4, v5, v6}[13], [x3] + ld3.h {v4, v5, v6}[2], [x3] + ld3.s {v4, v5, v6}[2], [x3] + ld3.d {v4, v5, v6}[1], [x3] + ld3.b {v4, v5, v6}[13], [x3], x5 + ld3.h {v4, v5, v6}[2], [x3], x5 + ld3.s {v4, v5, v6}[2], [x3], x5 + ld3.d {v4, v5, v6}[1], [x3], x5 + ld3.b {v4, v5, v6}[13], [x3], #3 + ld3.h {v4, v5, v6}[2], [x3], #6 + ld3.s {v4, v5, v6}[2], [x3], #12 + ld3.d {v4, v5, v6}[1], [x3], #24 + + +; CHECK: _ld3: +; CHECK: ld3.b { v4, v5, v6 }[13], [x3] ; encoding: [0x64,0x34,0x40,0x4d] +; CHECK: ld3.h { v4, v5, v6 }[2], [x3] ; encoding: [0x64,0x70,0x40,0x0d] +; CHECK: ld3.s { v4, v5, v6 }[2], [x3] ; encoding: [0x64,0xa0,0x40,0x4d] +; CHECK: ld3.d { v4, v5, v6 }[1], [x3] ; encoding: [0x64,0xa4,0x40,0x4d] +; CHECK: ld3.b { v4, v5, v6 }[13], [x3], x5 ; encoding: [0x64,0x34,0xc5,0x4d] +; CHECK: ld3.h { v4, v5, v6 }[2], [x3], x5 ; encoding: [0x64,0x70,0xc5,0x0d] +; CHECK: ld3.s { v4, v5, v6 }[2], [x3], x5 ; encoding: [0x64,0xa0,0xc5,0x4d] +; CHECK: ld3.d { v4, v5, v6 }[1], [x3], x5 ; encoding: [0x64,0xa4,0xc5,0x4d] +; CHECK: ld3.b { v4, v5, v6 }[13], [x3], #3 ; encoding: [0x64,0x34,0xdf,0x4d] +; CHECK: ld3.h { v4, v5, v6 }[2], [x3], #6 ; encoding: [0x64,0x70,0xdf,0x0d] +; CHECK: ld3.s { v4, v5, v6 }[2], [x3], #12 ; encoding: [0x64,0xa0,0xdf,0x4d] +; CHECK: ld3.d { v4, v5, v6 }[1], [x3], #24 ; encoding: [0x64,0xa4,0xdf,0x4d] + + +_ld4: + ld4.b {v4, v5, v6, v7}[13], [x3] + ld4.h {v4, v5, v6, v7}[2], [x3] + ld4.s {v4, v5, v6, v7}[2], [x3] + ld4.d {v4, v5, v6, v7}[1], [x3] + ld4.b {v4, v5, v6, v7}[13], [x3], x5 + ld4.h {v4, v5, v6, v7}[2], [x3], x5 + ld4.s {v4, v5, v6, v7}[2], [x3], x5 + ld4.d {v4, v5, v6, v7}[1], [x3], x5 + ld4.b {v4, v5, v6, v7}[13], [x3], #4 + ld4.h {v4, v5, v6, v7}[2], [x3], #8 + ld4.s {v4, v5, v6, v7}[2], [x3], #16 + ld4.d {v4, v5, v6, v7}[1], [x3], #32 + +; CHECK: _ld4: +; CHECK: ld4.b { v4, v5, v6, v7 }[13], [x3] ; encoding: [0x64,0x34,0x60,0x4d] +; CHECK: ld4.h { v4, v5, v6, v7 }[2], [x3] ; encoding: [0x64,0x70,0x60,0x0d] +; CHECK: ld4.s { v4, v5, v6, v7 }[2], [x3] ; encoding: [0x64,0xa0,0x60,0x4d] +; CHECK: ld4.d { v4, v5, v6, v7 }[1], [x3] ; encoding: [0x64,0xa4,0x60,0x4d] +; CHECK: ld4.b { v4, v5, v6, v7 }[13], [x3], x5 ; encoding: [0x64,0x34,0xe5,0x4d] +; CHECK: ld4.h { v4, v5, v6, v7 }[2], [x3], x5 ; encoding: [0x64,0x70,0xe5,0x0d] +; CHECK: ld4.s { v4, v5, v6, v7 }[2], [x3], x5 ; encoding: [0x64,0xa0,0xe5,0x4d] +; CHECK: ld4.d { v4, v5, v6, v7 }[1], [x3], x5 ; encoding: [0x64,0xa4,0xe5,0x4d] +; CHECK: ld4.b { v4, v5, v6, v7 }[13], [x3], #4 ; encoding: [0x64,0x34,0xff,0x4d] +; CHECK: ld4.h { v4, v5, v6, v7 }[2], [x3], #8 ; encoding: [0x64,0x70,0xff,0x0d] +; CHECK: ld4.s { v4, v5, v6, v7 }[2], [x3], #16 ; encoding: [0x64,0xa0,0xff,0x4d] +; CHECK: ld4.d { v4, v5, v6, v7 }[1], [x3], #32 ; encoding: [0x64,0xa4,0xff,0x4d] + +_st1: + st1.b {v4}[13], [x3] + st1.h {v4}[2], [x3] + st1.s {v4}[2], [x3] + st1.d {v4}[1], [x3] + st1.b {v4}[13], [x3], x5 + st1.h {v4}[2], [x3], x5 + st1.s {v4}[2], [x3], x5 + st1.d {v4}[1], [x3], x5 + st1.b {v4}[13], [x3], #1 + st1.h {v4}[2], [x3], #2 + st1.s {v4}[2], [x3], #4 + st1.d {v4}[1], [x3], #8 + +; CHECK: _st1: +; CHECK: st1.b { v4 }[13], [x3] ; encoding: [0x64,0x14,0x00,0x4d] +; CHECK: st1.h { v4 }[2], [x3] ; encoding: [0x64,0x50,0x00,0x0d] +; CHECK: st1.s { v4 }[2], [x3] ; encoding: [0x64,0x80,0x00,0x4d] +; CHECK: st1.d { v4 }[1], [x3] ; encoding: [0x64,0x84,0x00,0x4d] +; CHECK: st1.b { v4 }[13], [x3], x5 ; encoding: [0x64,0x14,0x85,0x4d] +; CHECK: st1.h { v4 }[2], [x3], x5 ; encoding: [0x64,0x50,0x85,0x0d] +; CHECK: st1.s { v4 }[2], [x3], x5 ; encoding: [0x64,0x80,0x85,0x4d] +; CHECK: st1.d { v4 }[1], [x3], x5 ; encoding: [0x64,0x84,0x85,0x4d] +; CHECK: st1.b { v4 }[13], [x3], #1 ; encoding: [0x64,0x14,0x9f,0x4d] +; CHECK: st1.h { v4 }[2], [x3], #2 ; encoding: [0x64,0x50,0x9f,0x0d] +; CHECK: st1.s { v4 }[2], [x3], #4 ; encoding: [0x64,0x80,0x9f,0x4d] +; CHECK: st1.d { v4 }[1], [x3], #8 ; encoding: [0x64,0x84,0x9f,0x4d] + +_st2: + st2.b {v4, v5}[13], [x3] + st2.h {v4, v5}[2], [x3] + st2.s {v4, v5}[2], [x3] + st2.d {v4, v5}[1], [x3] + st2.b {v4, v5}[13], [x3], x5 + st2.h {v4, v5}[2], [x3], x5 + st2.s {v4, v5}[2], [x3], x5 + st2.d {v4, v5}[1], [x3], x5 + st2.b {v4, v5}[13], [x3], #2 + st2.h {v4, v5}[2], [x3], #4 + st2.s {v4, v5}[2], [x3], #8 + st2.d {v4, v5}[1], [x3], #16 + +; CHECK: _st2: +; CHECK: st2.b { v4, v5 }[13], [x3] ; encoding: [0x64,0x14,0x20,0x4d] +; CHECK: st2.h { v4, v5 }[2], [x3] ; encoding: [0x64,0x50,0x20,0x0d] +; CHECK: st2.s { v4, v5 }[2], [x3] ; encoding: [0x64,0x80,0x20,0x4d] +; CHECK: st2.d { v4, v5 }[1], [x3] ; encoding: [0x64,0x84,0x20,0x4d] +; CHECK: st2.b { v4, v5 }[13], [x3], x5 ; encoding: [0x64,0x14,0xa5,0x4d] +; CHECK: st2.h { v4, v5 }[2], [x3], x5 ; encoding: [0x64,0x50,0xa5,0x0d] +; CHECK: st2.s { v4, v5 }[2], [x3], x5 ; encoding: [0x64,0x80,0xa5,0x4d] +; CHECK: st2.d { v4, v5 }[1], [x3], x5 ; encoding: [0x64,0x84,0xa5,0x4d] +; CHECK: st2.b { v4, v5 }[13], [x3], #2 ; encoding: [0x64,0x14,0xbf,0x4d] +; CHECK: st2.h { v4, v5 }[2], [x3], #4 ; encoding: [0x64,0x50,0xbf,0x0d] +; CHECK: st2.s { v4, v5 }[2], [x3], #8 ; encoding: [0x64,0x80,0xbf,0x4d] +; CHECK: st2.d { v4, v5 }[1], [x3], #16 ; encoding: [0x64,0x84,0xbf,0x4d] + + +_st3: + st3.b {v4, v5, v6}[13], [x3] + st3.h {v4, v5, v6}[2], [x3] + st3.s {v4, v5, v6}[2], [x3] + st3.d {v4, v5, v6}[1], [x3] + st3.b {v4, v5, v6}[13], [x3], x5 + st3.h {v4, v5, v6}[2], [x3], x5 + st3.s {v4, v5, v6}[2], [x3], x5 + st3.d {v4, v5, v6}[1], [x3], x5 + st3.b {v4, v5, v6}[13], [x3], #3 + st3.h {v4, v5, v6}[2], [x3], #6 + st3.s {v4, v5, v6}[2], [x3], #12 + st3.d {v4, v5, v6}[1], [x3], #24 + +; CHECK: _st3: +; CHECK: st3.b { v4, v5, v6 }[13], [x3] ; encoding: [0x64,0x34,0x00,0x4d] +; CHECK: st3.h { v4, v5, v6 }[2], [x3] ; encoding: [0x64,0x70,0x00,0x0d] +; CHECK: st3.s { v4, v5, v6 }[2], [x3] ; encoding: [0x64,0xa0,0x00,0x4d] +; CHECK: st3.d { v4, v5, v6 }[1], [x3] ; encoding: [0x64,0xa4,0x00,0x4d] +; CHECK: st3.b { v4, v5, v6 }[13], [x3], x5 ; encoding: [0x64,0x34,0x85,0x4d] +; CHECK: st3.h { v4, v5, v6 }[2], [x3], x5 ; encoding: [0x64,0x70,0x85,0x0d] +; CHECK: st3.s { v4, v5, v6 }[2], [x3], x5 ; encoding: [0x64,0xa0,0x85,0x4d] +; CHECK: st3.d { v4, v5, v6 }[1], [x3], x5 ; encoding: [0x64,0xa4,0x85,0x4d] +; CHECK: st3.b { v4, v5, v6 }[13], [x3], #3 ; encoding: [0x64,0x34,0x9f,0x4d] +; CHECK: st3.h { v4, v5, v6 }[2], [x3], #6 ; encoding: [0x64,0x70,0x9f,0x0d] +; CHECK: st3.s { v4, v5, v6 }[2], [x3], #12 ; encoding: [0x64,0xa0,0x9f,0x4d] +; CHECK: st3.d { v4, v5, v6 }[1], [x3], #24 ; encoding: [0x64,0xa4,0x9f,0x4d] + +_st4: + st4.b {v4, v5, v6, v7}[13], [x3] + st4.h {v4, v5, v6, v7}[2], [x3] + st4.s {v4, v5, v6, v7}[2], [x3] + st4.d {v4, v5, v6, v7}[1], [x3] + st4.b {v4, v5, v6, v7}[13], [x3], x5 + st4.h {v4, v5, v6, v7}[2], [x3], x5 + st4.s {v4, v5, v6, v7}[2], [x3], x5 + st4.d {v4, v5, v6, v7}[1], [x3], x5 + st4.b {v4, v5, v6, v7}[13], [x3], #4 + st4.h {v4, v5, v6, v7}[2], [x3], #8 + st4.s {v4, v5, v6, v7}[2], [x3], #16 + st4.d {v4, v5, v6, v7}[1], [x3], #32 + +; CHECK: _st4: +; CHECK: st4.b { v4, v5, v6, v7 }[13], [x3] ; encoding: [0x64,0x34,0x20,0x4d] +; CHECK: st4.h { v4, v5, v6, v7 }[2], [x3] ; encoding: [0x64,0x70,0x20,0x0d] +; CHECK: st4.s { v4, v5, v6, v7 }[2], [x3] ; encoding: [0x64,0xa0,0x20,0x4d] +; CHECK: st4.d { v4, v5, v6, v7 }[1], [x3] ; encoding: [0x64,0xa4,0x20,0x4d] +; CHECK: st4.b { v4, v5, v6, v7 }[13], [x3], x5 ; encoding: [0x64,0x34,0xa5,0x4d] +; CHECK: st4.h { v4, v5, v6, v7 }[2], [x3], x5 ; encoding: [0x64,0x70,0xa5,0x0d] +; CHECK: st4.s { v4, v5, v6, v7 }[2], [x3], x5 ; encoding: [0x64,0xa0,0xa5,0x4d] +; CHECK: st4.d { v4, v5, v6, v7 }[1], [x3], x5 ; encoding: [0x64,0xa4,0xa5,0x4d] +; CHECK: st4.b { v4, v5, v6, v7 }[13], [x3], #4 ; encoding: [0x64,0x34,0xbf,0x4d] +; CHECK: st4.h { v4, v5, v6, v7 }[2], [x3], #8 ; encoding: [0x64,0x70,0xbf,0x0d] +; CHECK: st4.s { v4, v5, v6, v7 }[2], [x3], #16 ; encoding: [0x64,0xa0,0xbf,0x4d] +; CHECK: st4.d { v4, v5, v6, v7 }[1], [x3], #32 ; encoding: [0x64,0xa4,0xbf,0x4d] + + +;--------- +; ARM verbose syntax equivalents to the above. +;--------- +verbose_syntax: + + ld1 { v1.8b }, [x1] + ld1 { v2.8b, v3.8b }, [x1] + ld1 { v3.8b, v4.8b, v5.8b }, [x1] + ld1 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1] + + ld1 { v1.16b }, [x1] + ld1 { v2.16b, v3.16b }, [x1] + ld1 { v3.16b, v4.16b, v5.16b }, [x1] + ld1 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1] + + ld1 { v1.4h }, [x1] + ld1 { v2.4h, v3.4h }, [x1] + ld1 { v3.4h, v4.4h, v5.4h }, [x1] + ld1 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1] + + ld1 { v1.8h }, [x1] + ld1 { v2.8h, v3.8h }, [x1] + ld1 { v3.8h, v4.8h, v5.8h }, [x1] + ld1 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1] + + ld1 { v1.2s }, [x1] + ld1 { v2.2s, v3.2s }, [x1] + ld1 { v3.2s, v4.2s, v5.2s }, [x1] + ld1 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1] + + ld1 { v1.4s }, [x1] + ld1 { v2.4s, v3.4s }, [x1] + ld1 { v3.4s, v4.4s, v5.4s }, [x1] + ld1 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1] + + ld1 { v1.1d }, [x1] + ld1 { v2.1d, v3.1d }, [x1] + ld1 { v3.1d, v4.1d, v5.1d }, [x1] + ld1 { v7.1d, v8.1d, v9.1d, v10.1d }, [x1] + + ld1 { v1.2d }, [x1] + ld1 { v2.2d, v3.2d }, [x1] + ld1 { v3.2d, v4.2d, v5.2d }, [x1] + ld1 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1] + + st1 { v1.8b }, [x1] + st1 { v2.8b, v3.8b }, [x1] + st1 { v3.8b, v4.8b, v5.8b }, [x1] + st1 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1] + + st1 { v1.16b }, [x1] + st1 { v2.16b, v3.16b }, [x1] + st1 { v3.16b, v4.16b, v5.16b }, [x1] + st1 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1] + + st1 { v1.4h }, [x1] + st1 { v2.4h, v3.4h }, [x1] + st1 { v3.4h, v4.4h, v5.4h }, [x1] + st1 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1] + + st1 { v1.8h }, [x1] + st1 { v2.8h, v3.8h }, [x1] + st1 { v3.8h, v4.8h, v5.8h }, [x1] + st1 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1] + + st1 { v1.2s }, [x1] + st1 { v2.2s, v3.2s }, [x1] + st1 { v3.2s, v4.2s, v5.2s }, [x1] + st1 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1] + + st1 { v1.4s }, [x1] + st1 { v2.4s, v3.4s }, [x1] + st1 { v3.4s, v4.4s, v5.4s }, [x1] + st1 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1] + + st1 { v1.1d }, [x1] + st1 { v2.1d, v3.1d }, [x1] + st1 { v3.1d, v4.1d, v5.1d }, [x1] + st1 { v7.1d, v8.1d, v9.1d, v10.1d }, [x1] + + st1 { v1.2d }, [x1] + st1 { v2.2d, v3.2d }, [x1] + st1 { v3.2d, v4.2d, v5.2d }, [x1] + st1 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1] + + ld2 { v3.8b, v4.8b }, [x19] + ld2 { v3.16b, v4.16b }, [x19] + ld2 { v3.4h, v4.4h }, [x19] + ld2 { v3.8h, v4.8h }, [x19] + ld2 { v3.2s, v4.2s }, [x19] + ld2 { v3.4s, v4.4s }, [x19] + ld2 { v3.2d, v4.2d }, [x19] + + st2 { v3.8b, v4.8b }, [x19] + st2 { v3.16b, v4.16b }, [x19] + st2 { v3.4h, v4.4h }, [x19] + st2 { v3.8h, v4.8h }, [x19] + st2 { v3.2s, v4.2s }, [x19] + st2 { v3.4s, v4.4s }, [x19] + st2 { v3.2d, v4.2d }, [x19] + + ld3 { v2.8b, v3.8b, v4.8b }, [x19] + ld3 { v2.16b, v3.16b, v4.16b }, [x19] + ld3 { v2.4h, v3.4h, v4.4h }, [x19] + ld3 { v2.8h, v3.8h, v4.8h }, [x19] + ld3 { v2.2s, v3.2s, v4.2s }, [x19] + ld3 { v2.4s, v3.4s, v4.4s }, [x19] + ld3 { v2.2d, v3.2d, v4.2d }, [x19] + + st3 { v2.8b, v3.8b, v4.8b }, [x19] + st3 { v2.16b, v3.16b, v4.16b }, [x19] + st3 { v2.4h, v3.4h, v4.4h }, [x19] + st3 { v2.8h, v3.8h, v4.8h }, [x19] + st3 { v2.2s, v3.2s, v4.2s }, [x19] + st3 { v2.4s, v3.4s, v4.4s }, [x19] + st3 { v2.2d, v3.2d, v4.2d }, [x19] + + ld4 { v2.8b, v3.8b, v4.8b, v5.8b }, [x19] + ld4 { v2.16b, v3.16b, v4.16b, v5.16b }, [x19] + ld4 { v2.4h, v3.4h, v4.4h, v5.4h }, [x19] + ld4 { v2.8h, v3.8h, v4.8h, v5.8h }, [x19] + ld4 { v2.2s, v3.2s, v4.2s, v5.2s }, [x19] + ld4 { v2.4s, v3.4s, v4.4s, v5.4s }, [x19] + ld4 { v2.2d, v3.2d, v4.2d, v5.2d }, [x19] + + st4 { v2.8b, v3.8b, v4.8b, v5.8b }, [x19] + st4 { v2.16b, v3.16b, v4.16b, v5.16b }, [x19] + st4 { v2.4h, v3.4h, v4.4h, v5.4h }, [x19] + st4 { v2.8h, v3.8h, v4.8h, v5.8h }, [x19] + st4 { v2.2s, v3.2s, v4.2s, v5.2s }, [x19] + st4 { v2.4s, v3.4s, v4.4s, v5.4s }, [x19] + st4 { v2.2d, v3.2d, v4.2d, v5.2d }, [x19] + + ld1 { v1.8b }, [x1], x15 + ld1 { v2.8b, v3.8b }, [x1], x15 + ld1 { v3.8b, v4.8b, v5.8b }, [x1], x15 + ld1 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], x15 + + ld1 { v1.16b }, [x1], x15 + ld1 { v2.16b, v3.16b }, [x1], x15 + ld1 { v3.16b, v4.16b, v5.16b }, [x1], x15 + ld1 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], x15 + + ld1 { v1.4h }, [x1], x15 + ld1 { v2.4h, v3.4h }, [x1], x15 + ld1 { v3.4h, v4.4h, v5.4h }, [x1], x15 + ld1 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], x15 + + ld1 { v1.8h }, [x1], x15 + ld1 { v2.8h, v3.8h }, [x1], x15 + ld1 { v3.8h, v4.8h, v5.8h }, [x1], x15 + ld1 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], x15 + + ld1 { v1.2s }, [x1], x15 + ld1 { v2.2s, v3.2s }, [x1], x15 + ld1 { v3.2s, v4.2s, v5.2s }, [x1], x15 + ld1 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], x15 + + ld1 { v1.4s }, [x1], x15 + ld1 { v2.4s, v3.4s }, [x1], x15 + ld1 { v3.4s, v4.4s, v5.4s }, [x1], x15 + ld1 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], x15 + + ld1 { v1.1d }, [x1], x15 + ld1 { v2.1d, v3.1d }, [x1], x15 + ld1 { v3.1d, v4.1d, v5.1d }, [x1], x15 + ld1 { v7.1d, v8.1d, v9.1d, v10.1d }, [x1], x15 + + ld1 { v1.2d }, [x1], x15 + ld1 { v2.2d, v3.2d }, [x1], x15 + ld1 { v3.2d, v4.2d, v5.2d }, [x1], x15 + ld1 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], x15 + + st1 { v1.8b }, [x1], x15 + st1 { v2.8b, v3.8b }, [x1], x15 + st1 { v3.8b, v4.8b, v5.8b }, [x1], x15 + st1 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], x15 + + st1 { v1.16b }, [x1], x15 + st1 { v2.16b, v3.16b }, [x1], x15 + st1 { v3.16b, v4.16b, v5.16b }, [x1], x15 + st1 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], x15 + + st1 { v1.4h }, [x1], x15 + st1 { v2.4h, v3.4h }, [x1], x15 + st1 { v3.4h, v4.4h, v5.4h }, [x1], x15 + st1 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], x15 + + st1 { v1.8h }, [x1], x15 + st1 { v2.8h, v3.8h }, [x1], x15 + st1 { v3.8h, v4.8h, v5.8h }, [x1], x15 + st1 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], x15 + + st1 { v1.2s }, [x1], x15 + st1 { v2.2s, v3.2s }, [x1], x15 + st1 { v3.2s, v4.2s, v5.2s }, [x1], x15 + st1 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], x15 + + st1 { v1.4s }, [x1], x15 + st1 { v2.4s, v3.4s }, [x1], x15 + st1 { v3.4s, v4.4s, v5.4s }, [x1], x15 + st1 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], x15 + + st1 { v1.1d }, [x1], x15 + st1 { v2.1d, v3.1d }, [x1], x15 + st1 { v3.1d, v4.1d, v5.1d }, [x1], x15 + st1 { v7.1d, v8.1d, v9.1d, v10.1d }, [x1], x15 + + st1 { v1.2d }, [x1], x15 + st1 { v2.2d, v3.2d }, [x1], x15 + st1 { v3.2d, v4.2d, v5.2d }, [x1], x15 + st1 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], x15 + + ld1 { v1.8b }, [x1], #8 + ld1 { v2.8b, v3.8b }, [x1], #16 + ld1 { v3.8b, v4.8b, v5.8b }, [x1], #24 + ld1 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], #32 + + ld1 { v1.16b }, [x1], #16 + ld1 { v2.16b, v3.16b }, [x1], #32 + ld1 { v3.16b, v4.16b, v5.16b }, [x1], #48 + ld1 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], #64 + + ld1 { v1.4h }, [x1], #8 + ld1 { v2.4h, v3.4h }, [x1], #16 + ld1 { v3.4h, v4.4h, v5.4h }, [x1], #24 + ld1 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], #32 + + ld1 { v1.8h }, [x1], #16 + ld1 { v2.8h, v3.8h }, [x1], #32 + ld1 { v3.8h, v4.8h, v5.8h }, [x1], #48 + ld1 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], #64 + + ld1 { v1.2s }, [x1], #8 + ld1 { v2.2s, v3.2s }, [x1], #16 + ld1 { v3.2s, v4.2s, v5.2s }, [x1], #24 + ld1 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], #32 + + ld1 { v1.4s }, [x1], #16 + ld1 { v2.4s, v3.4s }, [x1], #32 + ld1 { v3.4s, v4.4s, v5.4s }, [x1], #48 + ld1 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], #64 + + ld1 { v1.1d }, [x1], #8 + ld1 { v2.1d, v3.1d }, [x1], #16 + ld1 { v3.1d, v4.1d, v5.1d }, [x1], #24 + ld1 { v7.1d, v8.1d, v9.1d, v10.1d }, [x1], #32 + + ld1 { v1.2d }, [x1], #16 + ld1 { v2.2d, v3.2d }, [x1], #32 + ld1 { v3.2d, v4.2d, v5.2d }, [x1], #48 + ld1 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], #64 + + st1 { v1.8b }, [x1], #8 + st1 { v2.8b, v3.8b }, [x1], #16 + st1 { v3.8b, v4.8b, v5.8b }, [x1], #24 + st1 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], #32 + + st1 { v1.16b }, [x1], #16 + st1 { v2.16b, v3.16b }, [x1], #32 + st1 { v3.16b, v4.16b, v5.16b }, [x1], #48 + st1 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], #64 + + st1 { v1.4h }, [x1], #8 + st1 { v2.4h, v3.4h }, [x1], #16 + st1 { v3.4h, v4.4h, v5.4h }, [x1], #24 + st1 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], #32 + + st1 { v1.8h }, [x1], #16 + st1 { v2.8h, v3.8h }, [x1], #32 + st1 { v3.8h, v4.8h, v5.8h }, [x1], #48 + st1 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], #64 + + st1 { v1.2s }, [x1], #8 + st1 { v2.2s, v3.2s }, [x1], #16 + st1 { v3.2s, v4.2s, v5.2s }, [x1], #24 + st1 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], #32 + + st1 { v1.4s }, [x1], #16 + st1 { v2.4s, v3.4s }, [x1], #32 + st1 { v3.4s, v4.4s, v5.4s }, [x1], #48 + st1 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], #64 + + st1 { v1.1d }, [x1], #8 + st1 { v2.1d, v3.1d }, [x1], #16 + st1 { v3.1d, v4.1d, v5.1d }, [x1], #24 + st1 { v7.1d, v8.1d, v9.1d, v10.1d }, [x1], #32 + + st1 { v1.2d }, [x1], #16 + st1 { v2.2d, v3.2d }, [x1], #32 + st1 { v3.2d, v4.2d, v5.2d }, [x1], #48 + st1 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], #64 + + ld2 { v2.8b, v3.8b }, [x1], x15 + ld2 { v2.16b, v3.16b }, [x1], x15 + ld2 { v2.4h, v3.4h }, [x1], x15 + ld2 { v2.8h, v3.8h }, [x1], x15 + ld2 { v2.2s, v3.2s }, [x1], x15 + ld2 { v2.4s, v3.4s }, [x1], x15 + ld2 { v2.2d, v3.2d }, [x1], x15 + + st2 { v2.8b, v3.8b }, [x1], x15 + st2 { v2.16b, v3.16b }, [x1], x15 + st2 { v2.4h, v3.4h }, [x1], x15 + st2 { v2.8h, v3.8h }, [x1], x15 + st2 { v2.2s, v3.2s }, [x1], x15 + st2 { v2.4s, v3.4s }, [x1], x15 + st2 { v2.2d, v3.2d }, [x1], x15 + + ld2 { v2.8b, v3.8b }, [x1], #16 + ld2 { v2.16b, v3.16b }, [x1], #32 + ld2 { v2.4h, v3.4h }, [x1], #16 + ld2 { v2.8h, v3.8h }, [x1], #32 + ld2 { v2.2s, v3.2s }, [x1], #16 + ld2 { v2.4s, v3.4s }, [x1], #32 + ld2 { v2.2d, v3.2d }, [x1], #32 + + st2 { v2.8b, v3.8b }, [x1], #16 + st2 { v2.16b, v3.16b }, [x1], #32 + st2 { v2.4h, v3.4h }, [x1], #16 + st2 { v2.8h, v3.8h }, [x1], #32 + st2 { v2.2s, v3.2s }, [x1], #16 + st2 { v2.4s, v3.4s }, [x1], #32 + st2 { v2.2d, v3.2d }, [x1], #32 + + ld3 { v3.8b, v4.8b, v5.8b }, [x1], x15 + ld3 { v3.16b, v4.16b, v5.16b }, [x1], x15 + ld3 { v3.4h, v4.4h, v5.4h }, [x1], x15 + ld3 { v3.8h, v4.8h, v5.8h }, [x1], x15 + ld3 { v3.2s, v4.2s, v5.2s }, [x1], x15 + ld3 { v3.4s, v4.4s, v5.4s }, [x1], x15 + ld3 { v3.2d, v4.2d, v5.2d }, [x1], x15 + + st3 { v3.8b, v4.8b, v5.8b }, [x1], x15 + st3 { v3.16b, v4.16b, v5.16b }, [x1], x15 + st3 { v3.4h, v4.4h, v5.4h }, [x1], x15 + st3 { v3.8h, v4.8h, v5.8h }, [x1], x15 + st3 { v3.2s, v4.2s, v5.2s }, [x1], x15 + st3 { v3.4s, v4.4s, v5.4s }, [x1], x15 + st3 { v3.2d, v4.2d, v5.2d }, [x1], x15 + ld3 { v3.8b, v4.8b, v5.8b }, [x1], #24 + + ld3 { v3.16b, v4.16b, v5.16b }, [x1], #48 + ld3 { v3.4h, v4.4h, v5.4h }, [x1], #24 + ld3 { v3.8h, v4.8h, v5.8h }, [x1], #48 + ld3 { v3.2s, v4.2s, v5.2s }, [x1], #24 + ld3 { v3.4s, v4.4s, v5.4s }, [x1], #48 + ld3 { v3.2d, v4.2d, v5.2d }, [x1], #48 + + st3 { v3.8b, v4.8b, v5.8b }, [x1], #24 + st3 { v3.16b, v4.16b, v5.16b }, [x1], #48 + st3 { v3.4h, v4.4h, v5.4h }, [x1], #24 + st3 { v3.8h, v4.8h, v5.8h }, [x1], #48 + st3 { v3.2s, v4.2s, v5.2s }, [x1], #24 + st3 { v3.4s, v4.4s, v5.4s }, [x1], #48 + st3 { v3.2d, v4.2d, v5.2d }, [x1], #48 + + ld4 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], x15 + ld4 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], x15 + ld4 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], x15 + ld4 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], x15 + ld4 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], x15 + ld4 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], x15 + ld4 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], x15 + + st4 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], x15 + st4 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], x15 + st4 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], x15 + st4 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], x15 + st4 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], x15 + st4 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], x15 + st4 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], x15 + + ld4 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], #32 + ld4 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], #64 + ld4 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], #32 + ld4 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], #64 + ld4 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], #32 + ld4 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], #64 + ld4 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], #64 + + st4 { v4.8b, v5.8b, v6.8b, v7.8b }, [x1], #32 + st4 { v4.16b, v5.16b, v6.16b, v7.16b }, [x1], #64 + st4 { v7.4h, v8.4h, v9.4h, v10.4h }, [x1], #32 + st4 { v7.8h, v8.8h, v9.8h, v10.8h }, [x1], #64 + st4 { v7.2s, v8.2s, v9.2s, v10.2s }, [x1], #32 + st4 { v7.4s, v8.4s, v9.4s, v10.4s }, [x1], #64 + st4 { v7.2d, v8.2d, v9.2d, v10.2d }, [x1], #64 + + + ld1r { v12.8b }, [x2] + ld1r { v12.8b }, [x2], x3 + ld1r { v12.16b }, [x2] + ld1r { v12.16b }, [x2], x3 + ld1r { v12.4h }, [x2] + ld1r { v12.4h }, [x2], x3 + ld1r { v12.8h }, [x2] + ld1r { v12.8h }, [x2], x3 + ld1r { v12.2s }, [x2] + ld1r { v12.2s }, [x2], x3 + ld1r { v12.4s }, [x2] + ld1r { v12.4s }, [x2], x3 + ld1r { v12.1d }, [x2] + ld1r { v12.1d }, [x2], x3 + ld1r { v12.2d }, [x2] + ld1r { v12.2d }, [x2], x3 + + ld1r { v12.8b }, [x2], #1 + ld1r { v12.16b }, [x2], #1 + ld1r { v12.4h }, [x2], #2 + ld1r { v12.8h }, [x2], #2 + ld1r { v12.2s }, [x2], #4 + ld1r { v12.4s }, [x2], #4 + ld1r { v12.1d }, [x2], #8 + ld1r { v12.2d }, [x2], #8 + ld2r { v3.8b, v4.8b }, [x2] + ld2r { v3.8b, v4.8b }, [x2], x3 + ld2r { v3.16b, v4.16b }, [x2] + ld2r { v3.16b, v4.16b }, [x2], x3 + ld2r { v3.4h, v4.4h }, [x2] + ld2r { v3.4h, v4.4h }, [x2], x3 + ld2r { v3.8h, v4.8h }, [x2] + ld2r { v3.8h, v4.8h }, [x2], x3 + ld2r { v3.2s, v4.2s }, [x2] + ld2r { v3.2s, v4.2s }, [x2], x3 + ld2r { v3.4s, v4.4s }, [x2] + ld2r { v3.4s, v4.4s }, [x2], x3 + ld2r { v3.1d, v4.1d }, [x2] + ld2r { v3.1d, v4.1d }, [x2], x3 + ld2r { v3.2d, v4.2d }, [x2] + ld2r { v3.2d, v4.2d }, [x2], x3 + + ld2r { v3.8b, v4.8b }, [x2], #2 + ld2r { v3.16b, v4.16b }, [x2], #2 + ld2r { v3.4h, v4.4h }, [x2], #4 + ld2r { v3.8h, v4.8h }, [x2], #4 + ld2r { v3.2s, v4.2s }, [x2], #8 + ld2r { v3.4s, v4.4s }, [x2], #8 + ld2r { v3.1d, v4.1d }, [x2], #16 + ld2r { v3.2d, v4.2d }, [x2], #16 + + ld3r { v2.8b, v3.8b, v4.8b }, [x2] + ld3r { v2.8b, v3.8b, v4.8b }, [x2], x3 + ld3r { v2.16b, v3.16b, v4.16b }, [x2] + ld3r { v2.16b, v3.16b, v4.16b }, [x2], x3 + ld3r { v2.4h, v3.4h, v4.4h }, [x2] + ld3r { v2.4h, v3.4h, v4.4h }, [x2], x3 + ld3r { v2.8h, v3.8h, v4.8h }, [x2] + ld3r { v2.8h, v3.8h, v4.8h }, [x2], x3 + ld3r { v2.2s, v3.2s, v4.2s }, [x2] + ld3r { v2.2s, v3.2s, v4.2s }, [x2], x3 + ld3r { v2.4s, v3.4s, v4.4s }, [x2] + ld3r { v2.4s, v3.4s, v4.4s }, [x2], x3 + ld3r { v2.1d, v3.1d, v4.1d }, [x2] + ld3r { v2.1d, v3.1d, v4.1d }, [x2], x3 + ld3r { v2.2d, v3.2d, v4.2d }, [x2] + ld3r { v2.2d, v3.2d, v4.2d }, [x2], x3 + + ld3r { v2.8b, v3.8b, v4.8b }, [x2], #3 + ld3r { v2.16b, v3.16b, v4.16b }, [x2], #3 + ld3r { v2.4h, v3.4h, v4.4h }, [x2], #6 + ld3r { v2.8h, v3.8h, v4.8h }, [x2], #6 + ld3r { v2.2s, v3.2s, v4.2s }, [x2], #12 + ld3r { v2.4s, v3.4s, v4.4s }, [x2], #12 + ld3r { v2.1d, v3.1d, v4.1d }, [x2], #24 + ld3r { v2.2d, v3.2d, v4.2d }, [x2], #24 + + ld4r { v2.8b, v3.8b, v4.8b, v5.8b }, [x2] + ld4r { v2.8b, v3.8b, v4.8b, v5.8b }, [x2], x3 + ld4r { v2.16b, v3.16b, v4.16b, v5.16b }, [x2] + ld4r { v2.16b, v3.16b, v4.16b, v5.16b }, [x2], x3 + ld4r { v2.4h, v3.4h, v4.4h, v5.4h }, [x2] + ld4r { v2.4h, v3.4h, v4.4h, v5.4h }, [x2], x3 + ld4r { v2.8h, v3.8h, v4.8h, v5.8h }, [x2] + ld4r { v2.8h, v3.8h, v4.8h, v5.8h }, [x2], x3 + ld4r { v2.2s, v3.2s, v4.2s, v5.2s }, [x2] + ld4r { v2.2s, v3.2s, v4.2s, v5.2s }, [x2], x3 + ld4r { v2.4s, v3.4s, v4.4s, v5.4s }, [x2] + ld4r { v2.4s, v3.4s, v4.4s, v5.4s }, [x2], x3 + ld4r { v2.1d, v3.1d, v4.1d, v5.1d }, [x2] + ld4r { v2.1d, v3.1d, v4.1d, v5.1d }, [x2], x3 + ld4r { v2.2d, v3.2d, v4.2d, v5.2d }, [x2] + ld4r { v2.2d, v3.2d, v4.2d, v5.2d }, [x2], x3 + + ld4r { v2.8b, v3.8b, v4.8b, v5.8b }, [x2], #4 + ld4r { v2.16b, v3.16b, v4.16b, v5.16b }, [x2], #4 + ld4r { v2.4h, v3.4h, v4.4h, v5.4h }, [x2], #8 + ld4r { v2.8h, v3.8h, v4.8h, v5.8h }, [x2], #8 + ld4r { v2.2s, v3.2s, v4.2s, v5.2s }, [x2], #16 + ld4r { v2.4s, v3.4s, v4.4s, v5.4s }, [x2], #16 + ld4r { v2.1d, v3.1d, v4.1d, v5.1d }, [x2], #32 + ld4r { v2.2d, v3.2d, v4.2d, v5.2d }, [x2], #32 + + ld1 { v6.b }[13], [x3] + ld1 { v6.h }[2], [x3] + ld1 { v6.s }[2], [x3] + ld1 { v6.d }[1], [x3] + ld1 { v6.b }[13], [x3], x5 + ld1 { v6.h }[2], [x3], x5 + ld1 { v6.s }[2], [x3], x5 + ld1 { v6.d }[1], [x3], x5 + ld1 { v6.b }[13], [x3], #1 + ld1 { v6.h }[2], [x3], #2 + ld1 { v6.s }[2], [x3], #4 + ld1 { v6.d }[1], [x3], #8 + + ld2 { v5.b, v6.b }[13], [x3] + ld2 { v5.h, v6.h }[2], [x3] + ld2 { v5.s, v6.s }[2], [x3] + ld2 { v5.d, v6.d }[1], [x3] + ld2 { v5.b, v6.b }[13], [x3], x5 + ld2 { v5.h, v6.h }[2], [x3], x5 + ld2 { v5.s, v6.s }[2], [x3], x5 + ld2 { v5.d, v6.d }[1], [x3], x5 + ld2 { v5.b, v6.b }[13], [x3], #2 + ld2 { v5.h, v6.h }[2], [x3], #4 + ld2 { v5.s, v6.s }[2], [x3], #8 + ld2 { v5.d, v6.d }[1], [x3], #16 + + ld3 { v7.b, v8.b, v9.b }[13], [x3] + ld3 { v7.h, v8.h, v9.h }[2], [x3] + ld3 { v7.s, v8.s, v9.s }[2], [x3] + ld3 { v7.d, v8.d, v9.d }[1], [x3] + ld3 { v7.b, v8.b, v9.b }[13], [x3], x5 + ld3 { v7.h, v8.h, v9.h }[2], [x3], x5 + ld3 { v7.s, v8.s, v9.s }[2], [x3], x5 + ld3 { v7.d, v8.d, v9.d }[1], [x3], x5 + ld3 { v7.b, v8.b, v9.b }[13], [x3], #3 + ld3 { v7.h, v8.h, v9.h }[2], [x3], #6 + ld3 { v7.s, v8.s, v9.s }[2], [x3], #12 + ld3 { v7.d, v8.d, v9.d }[1], [x3], #24 + + ld4 { v7.b, v8.b, v9.b, v10.b }[13], [x3] + ld4 { v7.h, v8.h, v9.h, v10.h }[2], [x3] + ld4 { v7.s, v8.s, v9.s, v10.s }[2], [x3] + ld4 { v7.d, v8.d, v9.d, v10.d }[1], [x3] + ld4 { v7.b, v8.b, v9.b, v10.b }[13], [x3], x5 + ld4 { v7.h, v8.h, v9.h, v10.h }[2], [x3], x5 + ld4 { v7.s, v8.s, v9.s, v10.s }[2], [x3], x5 + ld4 { v7.d, v8.d, v9.d, v10.d }[1], [x3], x5 + ld4 { v7.b, v8.b, v9.b, v10.b }[13], [x3], #4 + ld4 { v7.h, v8.h, v9.h, v10.h }[2], [x3], #8 + ld4 { v7.s, v8.s, v9.s, v10.s }[2], [x3], #16 + ld4 { v7.d, v8.d, v9.d, v10.d }[1], [x3], #32 + + st1 { v6.b }[13], [x3] + st1 { v6.h }[2], [x3] + st1 { v6.s }[2], [x3] + st1 { v6.d }[1], [x3] + st1 { v6.b }[13], [x3], x5 + st1 { v6.h }[2], [x3], x5 + st1 { v6.s }[2], [x3], x5 + st1 { v6.d }[1], [x3], x5 + st1 { v6.b }[13], [x3], #1 + st1 { v6.h }[2], [x3], #2 + st1 { v6.s }[2], [x3], #4 + st1 { v6.d }[1], [x3], #8 + + + st2 { v5.b, v6.b }[13], [x3] + st2 { v5.h, v6.h }[2], [x3] + st2 { v5.s, v6.s }[2], [x3] + st2 { v5.d, v6.d }[1], [x3] + st2 { v5.b, v6.b }[13], [x3], x5 + st2 { v5.h, v6.h }[2], [x3], x5 + st2 { v5.s, v6.s }[2], [x3], x5 + st2 { v5.d, v6.d }[1], [x3], x5 + st2 { v5.b, v6.b }[13], [x3], #2 + st2 { v5.h, v6.h }[2], [x3], #4 + st2 { v5.s, v6.s }[2], [x3], #8 + st2 { v5.d, v6.d }[1], [x3], #16 + + st3 { v7.b, v8.b, v9.b }[13], [x3] + st3 { v7.h, v8.h, v9.h }[2], [x3] + st3 { v7.s, v8.s, v9.s }[2], [x3] + st3 { v7.d, v8.d, v9.d }[1], [x3] + st3 { v7.b, v8.b, v9.b }[13], [x3], x5 + st3 { v7.h, v8.h, v9.h }[2], [x3], x5 + st3 { v7.s, v8.s, v9.s }[2], [x3], x5 + st3 { v7.d, v8.d, v9.d }[1], [x3], x5 + st3 { v7.b, v8.b, v9.b }[13], [x3], #3 + st3 { v7.h, v8.h, v9.h }[2], [x3], #6 + st3 { v7.s, v8.s, v9.s }[2], [x3], #12 + st3 { v7.d, v8.d, v9.d }[1], [x3], #24 + + st4 { v7.b, v8.b, v9.b, v10.b }[13], [x3] + st4 { v7.h, v8.h, v9.h, v10.h }[2], [x3] + st4 { v7.s, v8.s, v9.s, v10.s }[2], [x3] + st4 { v7.d, v8.d, v9.d, v10.d }[1], [x3] + st4 { v7.b, v8.b, v9.b, v10.b }[13], [x3], x5 + st4 { v7.h, v8.h, v9.h, v10.h }[2], [x3], x5 + st4 { v7.s, v8.s, v9.s, v10.s }[2], [x3], x5 + st4 { v7.d, v8.d, v9.d, v10.d }[1], [x3], x5 + st4 { v7.b, v8.b, v9.b, v10.b }[13], [x3], #4 + st4 { v7.h, v8.h, v9.h, v10.h }[2], [x3], #8 + st4 { v7.s, v8.s, v9.s, v10.s }[2], [x3], #16 + st4 { v7.d, v8.d, v9.d, v10.d }[1], [x3], #32 + +; CHECK: ld1.8b { v1 }, [x1] ; encoding: [0x21,0x70,0x40,0x0c] +; CHECK: ld1.8b { v2, v3 }, [x1] ; encoding: [0x22,0xa0,0x40,0x0c] +; CHECK: ld1.8b { v3, v4, v5 }, [x1] ; encoding: [0x23,0x60,0x40,0x0c] +; CHECK: ld1.8b { v4, v5, v6, v7 }, [x1] ; encoding: [0x24,0x20,0x40,0x0c] +; CHECK: ld1.16b { v1 }, [x1] ; encoding: [0x21,0x70,0x40,0x4c] +; CHECK: ld1.16b { v2, v3 }, [x1] ; encoding: [0x22,0xa0,0x40,0x4c] +; CHECK: ld1.16b { v3, v4, v5 }, [x1] ; encoding: [0x23,0x60,0x40,0x4c] +; CHECK: ld1.16b { v4, v5, v6, v7 }, [x1] ; encoding: [0x24,0x20,0x40,0x4c] +; CHECK: ld1.4h { v1 }, [x1] ; encoding: [0x21,0x74,0x40,0x0c] +; CHECK: ld1.4h { v2, v3 }, [x1] ; encoding: [0x22,0xa4,0x40,0x0c] +; CHECK: ld1.4h { v3, v4, v5 }, [x1] ; encoding: [0x23,0x64,0x40,0x0c] +; CHECK: ld1.4h { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x24,0x40,0x0c] +; CHECK: ld1.8h { v1 }, [x1] ; encoding: [0x21,0x74,0x40,0x4c] +; CHECK: ld1.8h { v2, v3 }, [x1] ; encoding: [0x22,0xa4,0x40,0x4c] +; CHECK: ld1.8h { v3, v4, v5 }, [x1] ; encoding: [0x23,0x64,0x40,0x4c] +; CHECK: ld1.8h { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x24,0x40,0x4c] +; CHECK: ld1.2s { v1 }, [x1] ; encoding: [0x21,0x78,0x40,0x0c] +; CHECK: ld1.2s { v2, v3 }, [x1] ; encoding: [0x22,0xa8,0x40,0x0c] +; CHECK: ld1.2s { v3, v4, v5 }, [x1] ; encoding: [0x23,0x68,0x40,0x0c] +; CHECK: ld1.2s { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x28,0x40,0x0c] +; CHECK: ld1.4s { v1 }, [x1] ; encoding: [0x21,0x78,0x40,0x4c] +; CHECK: ld1.4s { v2, v3 }, [x1] ; encoding: [0x22,0xa8,0x40,0x4c] +; CHECK: ld1.4s { v3, v4, v5 }, [x1] ; encoding: [0x23,0x68,0x40,0x4c] +; CHECK: ld1.4s { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x28,0x40,0x4c] +; CHECK: ld1.1d { v1 }, [x1] ; encoding: [0x21,0x7c,0x40,0x0c] +; CHECK: ld1.1d { v2, v3 }, [x1] ; encoding: [0x22,0xac,0x40,0x0c] +; CHECK: ld1.1d { v3, v4, v5 }, [x1] ; encoding: [0x23,0x6c,0x40,0x0c] +; CHECK: ld1.1d { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x2c,0x40,0x0c] +; CHECK: ld1.2d { v1 }, [x1] ; encoding: [0x21,0x7c,0x40,0x4c] +; CHECK: ld1.2d { v2, v3 }, [x1] ; encoding: [0x22,0xac,0x40,0x4c] +; CHECK: ld1.2d { v3, v4, v5 }, [x1] ; encoding: [0x23,0x6c,0x40,0x4c] +; CHECK: ld1.2d { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x2c,0x40,0x4c] +; CHECK: st1.8b { v1 }, [x1] ; encoding: [0x21,0x70,0x00,0x0c] +; CHECK: st1.8b { v2, v3 }, [x1] ; encoding: [0x22,0xa0,0x00,0x0c] +; CHECK: st1.8b { v3, v4, v5 }, [x1] ; encoding: [0x23,0x60,0x00,0x0c] +; CHECK: st1.8b { v4, v5, v6, v7 }, [x1] ; encoding: [0x24,0x20,0x00,0x0c] +; CHECK: st1.16b { v1 }, [x1] ; encoding: [0x21,0x70,0x00,0x4c] +; CHECK: st1.16b { v2, v3 }, [x1] ; encoding: [0x22,0xa0,0x00,0x4c] +; CHECK: st1.16b { v3, v4, v5 }, [x1] ; encoding: [0x23,0x60,0x00,0x4c] +; CHECK: st1.16b { v4, v5, v6, v7 }, [x1] ; encoding: [0x24,0x20,0x00,0x4c] +; CHECK: st1.4h { v1 }, [x1] ; encoding: [0x21,0x74,0x00,0x0c] +; CHECK: st1.4h { v2, v3 }, [x1] ; encoding: [0x22,0xa4,0x00,0x0c] +; CHECK: st1.4h { v3, v4, v5 }, [x1] ; encoding: [0x23,0x64,0x00,0x0c] +; CHECK: st1.4h { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x24,0x00,0x0c] +; CHECK: st1.8h { v1 }, [x1] ; encoding: [0x21,0x74,0x00,0x4c] +; CHECK: st1.8h { v2, v3 }, [x1] ; encoding: [0x22,0xa4,0x00,0x4c] +; CHECK: st1.8h { v3, v4, v5 }, [x1] ; encoding: [0x23,0x64,0x00,0x4c] +; CHECK: st1.8h { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x24,0x00,0x4c] +; CHECK: st1.2s { v1 }, [x1] ; encoding: [0x21,0x78,0x00,0x0c] +; CHECK: st1.2s { v2, v3 }, [x1] ; encoding: [0x22,0xa8,0x00,0x0c] +; CHECK: st1.2s { v3, v4, v5 }, [x1] ; encoding: [0x23,0x68,0x00,0x0c] +; CHECK: st1.2s { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x28,0x00,0x0c] +; CHECK: st1.4s { v1 }, [x1] ; encoding: [0x21,0x78,0x00,0x4c] +; CHECK: st1.4s { v2, v3 }, [x1] ; encoding: [0x22,0xa8,0x00,0x4c] +; CHECK: st1.4s { v3, v4, v5 }, [x1] ; encoding: [0x23,0x68,0x00,0x4c] +; CHECK: st1.4s { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x28,0x00,0x4c] +; CHECK: st1.1d { v1 }, [x1] ; encoding: [0x21,0x7c,0x00,0x0c] +; CHECK: st1.1d { v2, v3 }, [x1] ; encoding: [0x22,0xac,0x00,0x0c] +; CHECK: st1.1d { v3, v4, v5 }, [x1] ; encoding: [0x23,0x6c,0x00,0x0c] +; CHECK: st1.1d { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x2c,0x00,0x0c] +; CHECK: st1.2d { v1 }, [x1] ; encoding: [0x21,0x7c,0x00,0x4c] +; CHECK: st1.2d { v2, v3 }, [x1] ; encoding: [0x22,0xac,0x00,0x4c] +; CHECK: st1.2d { v3, v4, v5 }, [x1] ; encoding: [0x23,0x6c,0x00,0x4c] +; CHECK: st1.2d { v7, v8, v9, v10 }, [x1] ; encoding: [0x27,0x2c,0x00,0x4c] +; CHECK: ld2.8b { v3, v4 }, [x19] ; encoding: [0x63,0x82,0x40,0x0c] +; CHECK: ld2.16b { v3, v4 }, [x19] ; encoding: [0x63,0x82,0x40,0x4c] +; CHECK: ld2.4h { v3, v4 }, [x19] ; encoding: [0x63,0x86,0x40,0x0c] +; CHECK: ld2.8h { v3, v4 }, [x19] ; encoding: [0x63,0x86,0x40,0x4c] +; CHECK: ld2.2s { v3, v4 }, [x19] ; encoding: [0x63,0x8a,0x40,0x0c] +; CHECK: ld2.4s { v3, v4 }, [x19] ; encoding: [0x63,0x8a,0x40,0x4c] +; CHECK: ld2.2d { v3, v4 }, [x19] ; encoding: [0x63,0x8e,0x40,0x4c] +; CHECK: st2.8b { v3, v4 }, [x19] ; encoding: [0x63,0x82,0x00,0x0c] +; CHECK: st2.16b { v3, v4 }, [x19] ; encoding: [0x63,0x82,0x00,0x4c] +; CHECK: st2.4h { v3, v4 }, [x19] ; encoding: [0x63,0x86,0x00,0x0c] +; CHECK: st2.8h { v3, v4 }, [x19] ; encoding: [0x63,0x86,0x00,0x4c] +; CHECK: st2.2s { v3, v4 }, [x19] ; encoding: [0x63,0x8a,0x00,0x0c] +; CHECK: st2.4s { v3, v4 }, [x19] ; encoding: [0x63,0x8a,0x00,0x4c] +; CHECK: st2.2d { v3, v4 }, [x19] ; encoding: [0x63,0x8e,0x00,0x4c] +; CHECK: ld3.8b { v2, v3, v4 }, [x19] ; encoding: [0x62,0x42,0x40,0x0c] +; CHECK: ld3.16b { v2, v3, v4 }, [x19] ; encoding: [0x62,0x42,0x40,0x4c] +; CHECK: ld3.4h { v2, v3, v4 }, [x19] ; encoding: [0x62,0x46,0x40,0x0c] +; CHECK: ld3.8h { v2, v3, v4 }, [x19] ; encoding: [0x62,0x46,0x40,0x4c] +; CHECK: ld3.2s { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4a,0x40,0x0c] +; CHECK: ld3.4s { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4a,0x40,0x4c] +; CHECK: ld3.2d { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4e,0x40,0x4c] +; CHECK: st3.8b { v2, v3, v4 }, [x19] ; encoding: [0x62,0x42,0x00,0x0c] +; CHECK: st3.16b { v2, v3, v4 }, [x19] ; encoding: [0x62,0x42,0x00,0x4c] +; CHECK: st3.4h { v2, v3, v4 }, [x19] ; encoding: [0x62,0x46,0x00,0x0c] +; CHECK: st3.8h { v2, v3, v4 }, [x19] ; encoding: [0x62,0x46,0x00,0x4c] +; CHECK: st3.2s { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4a,0x00,0x0c] +; CHECK: st3.4s { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4a,0x00,0x4c] +; CHECK: st3.2d { v2, v3, v4 }, [x19] ; encoding: [0x62,0x4e,0x00,0x4c] +; CHECK: ld4.8b { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x02,0x40,0x0c] +; CHECK: ld4.16b { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x02,0x40,0x4c] +; CHECK: ld4.4h { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x06,0x40,0x0c] +; CHECK: ld4.8h { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x06,0x40,0x4c] +; CHECK: ld4.2s { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x0a,0x40,0x0c] +; CHECK: ld4.4s { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x0a,0x40,0x4c] +; CHECK: ld4.2d { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x0e,0x40,0x4c] +; CHECK: st4.8b { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x02,0x00,0x0c] +; CHECK: st4.16b { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x02,0x00,0x4c] +; CHECK: st4.4h { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x06,0x00,0x0c] +; CHECK: st4.8h { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x06,0x00,0x4c] +; CHECK: st4.2s { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x0a,0x00,0x0c] +; CHECK: st4.4s { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x0a,0x00,0x4c] +; CHECK: st4.2d { v2, v3, v4, v5 }, [x19] ; encoding: [0x62,0x0e,0x00,0x4c] +; CHECK: ld1.8b { v1 }, [x1], x15 ; encoding: [0x21,0x70,0xcf,0x0c] +; CHECK: ld1.8b { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa0,0xcf,0x0c] +; CHECK: ld1.8b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x60,0xcf,0x0c] +; CHECK: ld1.8b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x20,0xcf,0x0c] +; CHECK: ld1.16b { v1 }, [x1], x15 ; encoding: [0x21,0x70,0xcf,0x4c] +; CHECK: ld1.16b { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa0,0xcf,0x4c] +; CHECK: ld1.16b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x60,0xcf,0x4c] +; CHECK: ld1.16b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x20,0xcf,0x4c] +; CHECK: ld1.4h { v1 }, [x1], x15 ; encoding: [0x21,0x74,0xcf,0x0c] +; CHECK: ld1.4h { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa4,0xcf,0x0c] +; CHECK: ld1.4h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x64,0xcf,0x0c] +; CHECK: ld1.4h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x24,0xcf,0x0c] +; CHECK: ld1.8h { v1 }, [x1], x15 ; encoding: [0x21,0x74,0xcf,0x4c] +; CHECK: ld1.8h { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa4,0xcf,0x4c] +; CHECK: ld1.8h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x64,0xcf,0x4c] +; CHECK: ld1.8h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x24,0xcf,0x4c] +; CHECK: ld1.2s { v1 }, [x1], x15 ; encoding: [0x21,0x78,0xcf,0x0c] +; CHECK: ld1.2s { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa8,0xcf,0x0c] +; CHECK: ld1.2s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x68,0xcf,0x0c] +; CHECK: ld1.2s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x28,0xcf,0x0c] +; CHECK: ld1.4s { v1 }, [x1], x15 ; encoding: [0x21,0x78,0xcf,0x4c] +; CHECK: ld1.4s { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa8,0xcf,0x4c] +; CHECK: ld1.4s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x68,0xcf,0x4c] +; CHECK: ld1.4s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x28,0xcf,0x4c] +; CHECK: ld1.1d { v1 }, [x1], x15 ; encoding: [0x21,0x7c,0xcf,0x0c] +; CHECK: ld1.1d { v2, v3 }, [x1], x15 ; encoding: [0x22,0xac,0xcf,0x0c] +; CHECK: ld1.1d { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x6c,0xcf,0x0c] +; CHECK: ld1.1d { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x2c,0xcf,0x0c] +; CHECK: ld1.2d { v1 }, [x1], x15 ; encoding: [0x21,0x7c,0xcf,0x4c] +; CHECK: ld1.2d { v2, v3 }, [x1], x15 ; encoding: [0x22,0xac,0xcf,0x4c] +; CHECK: ld1.2d { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x6c,0xcf,0x4c] +; CHECK: ld1.2d { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x2c,0xcf,0x4c] +; CHECK: st1.8b { v1 }, [x1], x15 ; encoding: [0x21,0x70,0x8f,0x0c] +; CHECK: st1.8b { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa0,0x8f,0x0c] +; CHECK: st1.8b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x60,0x8f,0x0c] +; CHECK: st1.8b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x20,0x8f,0x0c] +; CHECK: st1.16b { v1 }, [x1], x15 ; encoding: [0x21,0x70,0x8f,0x4c] +; CHECK: st1.16b { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa0,0x8f,0x4c] +; CHECK: st1.16b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x60,0x8f,0x4c] +; CHECK: st1.16b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x20,0x8f,0x4c] +; CHECK: st1.4h { v1 }, [x1], x15 ; encoding: [0x21,0x74,0x8f,0x0c] +; CHECK: st1.4h { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa4,0x8f,0x0c] +; CHECK: st1.4h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x64,0x8f,0x0c] +; CHECK: st1.4h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x24,0x8f,0x0c] +; CHECK: st1.8h { v1 }, [x1], x15 ; encoding: [0x21,0x74,0x8f,0x4c] +; CHECK: st1.8h { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa4,0x8f,0x4c] +; CHECK: st1.8h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x64,0x8f,0x4c] +; CHECK: st1.8h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x24,0x8f,0x4c] +; CHECK: st1.2s { v1 }, [x1], x15 ; encoding: [0x21,0x78,0x8f,0x0c] +; CHECK: st1.2s { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa8,0x8f,0x0c] +; CHECK: st1.2s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x68,0x8f,0x0c] +; CHECK: st1.2s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x28,0x8f,0x0c] +; CHECK: st1.4s { v1 }, [x1], x15 ; encoding: [0x21,0x78,0x8f,0x4c] +; CHECK: st1.4s { v2, v3 }, [x1], x15 ; encoding: [0x22,0xa8,0x8f,0x4c] +; CHECK: st1.4s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x68,0x8f,0x4c] +; CHECK: st1.4s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x28,0x8f,0x4c] +; CHECK: st1.1d { v1 }, [x1], x15 ; encoding: [0x21,0x7c,0x8f,0x0c] +; CHECK: st1.1d { v2, v3 }, [x1], x15 ; encoding: [0x22,0xac,0x8f,0x0c] +; CHECK: st1.1d { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x6c,0x8f,0x0c] +; CHECK: st1.1d { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x2c,0x8f,0x0c] +; CHECK: st1.2d { v1 }, [x1], x15 ; encoding: [0x21,0x7c,0x8f,0x4c] +; CHECK: st1.2d { v2, v3 }, [x1], x15 ; encoding: [0x22,0xac,0x8f,0x4c] +; CHECK: st1.2d { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x6c,0x8f,0x4c] +; CHECK: st1.2d { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x2c,0x8f,0x4c] +; CHECK: ld1.8b { v1 }, [x1], #8 ; encoding: [0x21,0x70,0xdf,0x0c] +; CHECK: ld1.8b { v2, v3 }, [x1], #16 ; encoding: [0x22,0xa0,0xdf,0x0c] +; CHECK: ld1.8b { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x60,0xdf,0x0c] +; CHECK: ld1.8b { v4, v5, v6, v7 }, [x1], #32 ; encoding: [0x24,0x20,0xdf,0x0c] +; CHECK: ld1.16b { v1 }, [x1], #16 ; encoding: [0x21,0x70,0xdf,0x4c] +; CHECK: ld1.16b { v2, v3 }, [x1], #32 ; encoding: [0x22,0xa0,0xdf,0x4c] +; CHECK: ld1.16b { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x60,0xdf,0x4c] +; CHECK: ld1.16b { v4, v5, v6, v7 }, [x1], #64 ; encoding: [0x24,0x20,0xdf,0x4c] +; CHECK: ld1.4h { v1 }, [x1], #8 ; encoding: [0x21,0x74,0xdf,0x0c] +; CHECK: ld1.4h { v2, v3 }, [x1], #16 ; encoding: [0x22,0xa4,0xdf,0x0c] +; CHECK: ld1.4h { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x64,0xdf,0x0c] +; CHECK: ld1.4h { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x24,0xdf,0x0c] +; CHECK: ld1.8h { v1 }, [x1], #16 ; encoding: [0x21,0x74,0xdf,0x4c] +; CHECK: ld1.8h { v2, v3 }, [x1], #32 ; encoding: [0x22,0xa4,0xdf,0x4c] +; CHECK: ld1.8h { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x64,0xdf,0x4c] +; CHECK: ld1.8h { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x24,0xdf,0x4c] +; CHECK: ld1.2s { v1 }, [x1], #8 ; encoding: [0x21,0x78,0xdf,0x0c] +; CHECK: ld1.2s { v2, v3 }, [x1], #16 ; encoding: [0x22,0xa8,0xdf,0x0c] +; CHECK: ld1.2s { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x68,0xdf,0x0c] +; CHECK: ld1.2s { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x28,0xdf,0x0c] +; CHECK: ld1.4s { v1 }, [x1], #16 ; encoding: [0x21,0x78,0xdf,0x4c] +; CHECK: ld1.4s { v2, v3 }, [x1], #32 ; encoding: [0x22,0xa8,0xdf,0x4c] +; CHECK: ld1.4s { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x68,0xdf,0x4c] +; CHECK: ld1.4s { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x28,0xdf,0x4c] +; CHECK: ld1.1d { v1 }, [x1], #8 ; encoding: [0x21,0x7c,0xdf,0x0c] +; CHECK: ld1.1d { v2, v3 }, [x1], #16 ; encoding: [0x22,0xac,0xdf,0x0c] +; CHECK: ld1.1d { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x6c,0xdf,0x0c] +; CHECK: ld1.1d { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x2c,0xdf,0x0c] +; CHECK: ld1.2d { v1 }, [x1], #16 ; encoding: [0x21,0x7c,0xdf,0x4c] +; CHECK: ld1.2d { v2, v3 }, [x1], #32 ; encoding: [0x22,0xac,0xdf,0x4c] +; CHECK: ld1.2d { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x6c,0xdf,0x4c] +; CHECK: ld1.2d { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x2c,0xdf,0x4c] +; CHECK: st1.8b { v1 }, [x1], #8 ; encoding: [0x21,0x70,0x9f,0x0c] +; CHECK: st1.8b { v2, v3 }, [x1], #16 ; encoding: [0x22,0xa0,0x9f,0x0c] +; CHECK: st1.8b { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x60,0x9f,0x0c] +; CHECK: st1.8b { v4, v5, v6, v7 }, [x1], #32 ; encoding: [0x24,0x20,0x9f,0x0c] +; CHECK: st1.16b { v1 }, [x1], #16 ; encoding: [0x21,0x70,0x9f,0x4c] +; CHECK: st1.16b { v2, v3 }, [x1], #32 ; encoding: [0x22,0xa0,0x9f,0x4c] +; CHECK: st1.16b { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x60,0x9f,0x4c] +; CHECK: st1.16b { v4, v5, v6, v7 }, [x1], #64 ; encoding: [0x24,0x20,0x9f,0x4c] +; CHECK: st1.4h { v1 }, [x1], #8 ; encoding: [0x21,0x74,0x9f,0x0c] +; CHECK: st1.4h { v2, v3 }, [x1], #16 ; encoding: [0x22,0xa4,0x9f,0x0c] +; CHECK: st1.4h { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x64,0x9f,0x0c] +; CHECK: st1.4h { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x24,0x9f,0x0c] +; CHECK: st1.8h { v1 }, [x1], #16 ; encoding: [0x21,0x74,0x9f,0x4c] +; CHECK: st1.8h { v2, v3 }, [x1], #32 ; encoding: [0x22,0xa4,0x9f,0x4c] +; CHECK: st1.8h { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x64,0x9f,0x4c] +; CHECK: st1.8h { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x24,0x9f,0x4c] +; CHECK: st1.2s { v1 }, [x1], #8 ; encoding: [0x21,0x78,0x9f,0x0c] +; CHECK: st1.2s { v2, v3 }, [x1], #16 ; encoding: [0x22,0xa8,0x9f,0x0c] +; CHECK: st1.2s { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x68,0x9f,0x0c] +; CHECK: st1.2s { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x28,0x9f,0x0c] +; CHECK: st1.4s { v1 }, [x1], #16 ; encoding: [0x21,0x78,0x9f,0x4c] +; CHECK: st1.4s { v2, v3 }, [x1], #32 ; encoding: [0x22,0xa8,0x9f,0x4c] +; CHECK: st1.4s { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x68,0x9f,0x4c] +; CHECK: st1.4s { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x28,0x9f,0x4c] +; CHECK: st1.1d { v1 }, [x1], #8 ; encoding: [0x21,0x7c,0x9f,0x0c] +; CHECK: st1.1d { v2, v3 }, [x1], #16 ; encoding: [0x22,0xac,0x9f,0x0c] +; CHECK: st1.1d { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x6c,0x9f,0x0c] +; CHECK: st1.1d { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x2c,0x9f,0x0c] +; CHECK: st1.2d { v1 }, [x1], #16 ; encoding: [0x21,0x7c,0x9f,0x4c] +; CHECK: st1.2d { v2, v3 }, [x1], #32 ; encoding: [0x22,0xac,0x9f,0x4c] +; CHECK: st1.2d { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x6c,0x9f,0x4c] +; CHECK: st1.2d { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x2c,0x9f,0x4c] +; CHECK: ld2.8b { v2, v3 }, [x1], x15 ; encoding: [0x22,0x80,0xcf,0x0c] +; CHECK: ld2.16b { v2, v3 }, [x1], x15 ; encoding: [0x22,0x80,0xcf,0x4c] +; CHECK: ld2.4h { v2, v3 }, [x1], x15 ; encoding: [0x22,0x84,0xcf,0x0c] +; CHECK: ld2.8h { v2, v3 }, [x1], x15 ; encoding: [0x22,0x84,0xcf,0x4c] +; CHECK: ld2.2s { v2, v3 }, [x1], x15 ; encoding: [0x22,0x88,0xcf,0x0c] +; CHECK: ld2.4s { v2, v3 }, [x1], x15 ; encoding: [0x22,0x88,0xcf,0x4c] +; CHECK: ld2.2d { v2, v3 }, [x1], x15 ; encoding: [0x22,0x8c,0xcf,0x4c] +; CHECK: st2.8b { v2, v3 }, [x1], x15 ; encoding: [0x22,0x80,0x8f,0x0c] +; CHECK: st2.16b { v2, v3 }, [x1], x15 ; encoding: [0x22,0x80,0x8f,0x4c] +; CHECK: st2.4h { v2, v3 }, [x1], x15 ; encoding: [0x22,0x84,0x8f,0x0c] +; CHECK: st2.8h { v2, v3 }, [x1], x15 ; encoding: [0x22,0x84,0x8f,0x4c] +; CHECK: st2.2s { v2, v3 }, [x1], x15 ; encoding: [0x22,0x88,0x8f,0x0c] +; CHECK: st2.4s { v2, v3 }, [x1], x15 ; encoding: [0x22,0x88,0x8f,0x4c] +; CHECK: st2.2d { v2, v3 }, [x1], x15 ; encoding: [0x22,0x8c,0x8f,0x4c] +; CHECK: ld2.8b { v2, v3 }, [x1], #16 ; encoding: [0x22,0x80,0xdf,0x0c] +; CHECK: ld2.16b { v2, v3 }, [x1], #32 ; encoding: [0x22,0x80,0xdf,0x4c] +; CHECK: ld2.4h { v2, v3 }, [x1], #16 ; encoding: [0x22,0x84,0xdf,0x0c] +; CHECK: ld2.8h { v2, v3 }, [x1], #32 ; encoding: [0x22,0x84,0xdf,0x4c] +; CHECK: ld2.2s { v2, v3 }, [x1], #16 ; encoding: [0x22,0x88,0xdf,0x0c] +; CHECK: ld2.4s { v2, v3 }, [x1], #32 ; encoding: [0x22,0x88,0xdf,0x4c] +; CHECK: ld2.2d { v2, v3 }, [x1], #32 ; encoding: [0x22,0x8c,0xdf,0x4c] +; CHECK: st2.8b { v2, v3 }, [x1], #16 ; encoding: [0x22,0x80,0x9f,0x0c] +; CHECK: st2.16b { v2, v3 }, [x1], #32 ; encoding: [0x22,0x80,0x9f,0x4c] +; CHECK: st2.4h { v2, v3 }, [x1], #16 ; encoding: [0x22,0x84,0x9f,0x0c] +; CHECK: st2.8h { v2, v3 }, [x1], #32 ; encoding: [0x22,0x84,0x9f,0x4c] +; CHECK: st2.2s { v2, v3 }, [x1], #16 ; encoding: [0x22,0x88,0x9f,0x0c] +; CHECK: st2.4s { v2, v3 }, [x1], #32 ; encoding: [0x22,0x88,0x9f,0x4c] +; CHECK: st2.2d { v2, v3 }, [x1], #32 ; encoding: [0x22,0x8c,0x9f,0x4c] +; CHECK: ld3.8b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x40,0xcf,0x0c] +; CHECK: ld3.16b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x40,0xcf,0x4c] +; CHECK: ld3.4h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x44,0xcf,0x0c] +; CHECK: ld3.8h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x44,0xcf,0x4c] +; CHECK: ld3.2s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x48,0xcf,0x0c] +; CHECK: ld3.4s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x48,0xcf,0x4c] +; CHECK: ld3.2d { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x4c,0xcf,0x4c] +; CHECK: st3.8b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x40,0x8f,0x0c] +; CHECK: st3.16b { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x40,0x8f,0x4c] +; CHECK: st3.4h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x44,0x8f,0x0c] +; CHECK: st3.8h { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x44,0x8f,0x4c] +; CHECK: st3.2s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x48,0x8f,0x0c] +; CHECK: st3.4s { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x48,0x8f,0x4c] +; CHECK: st3.2d { v3, v4, v5 }, [x1], x15 ; encoding: [0x23,0x4c,0x8f,0x4c] +; CHECK: ld3.8b { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x40,0xdf,0x0c] +; CHECK: ld3.16b { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x40,0xdf,0x4c] +; CHECK: ld3.4h { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x44,0xdf,0x0c] +; CHECK: ld3.8h { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x44,0xdf,0x4c] +; CHECK: ld3.2s { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x48,0xdf,0x0c] +; CHECK: ld3.4s { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x48,0xdf,0x4c] +; CHECK: ld3.2d { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x4c,0xdf,0x4c] +; CHECK: st3.8b { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x40,0x9f,0x0c] +; CHECK: st3.16b { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x40,0x9f,0x4c] +; CHECK: st3.4h { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x44,0x9f,0x0c] +; CHECK: st3.8h { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x44,0x9f,0x4c] +; CHECK: st3.2s { v3, v4, v5 }, [x1], #24 ; encoding: [0x23,0x48,0x9f,0x0c] +; CHECK: st3.4s { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x48,0x9f,0x4c] +; CHECK: st3.2d { v3, v4, v5 }, [x1], #48 ; encoding: [0x23,0x4c,0x9f,0x4c] +; CHECK: ld4.8b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x00,0xcf,0x0c] +; CHECK: ld4.16b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x00,0xcf,0x4c] +; CHECK: ld4.4h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x04,0xcf,0x0c] +; CHECK: ld4.8h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x04,0xcf,0x4c] +; CHECK: ld4.2s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x08,0xcf,0x0c] +; CHECK: ld4.4s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x08,0xcf,0x4c] +; CHECK: ld4.2d { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x0c,0xcf,0x4c] +; CHECK: st4.8b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x00,0x8f,0x0c] +; CHECK: st4.16b { v4, v5, v6, v7 }, [x1], x15 ; encoding: [0x24,0x00,0x8f,0x4c] +; CHECK: st4.4h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x04,0x8f,0x0c] +; CHECK: st4.8h { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x04,0x8f,0x4c] +; CHECK: st4.2s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x08,0x8f,0x0c] +; CHECK: st4.4s { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x08,0x8f,0x4c] +; CHECK: st4.2d { v7, v8, v9, v10 }, [x1], x15 ; encoding: [0x27,0x0c,0x8f,0x4c] +; CHECK: ld4.8b { v4, v5, v6, v7 }, [x1], #32 ; encoding: [0x24,0x00,0xdf,0x0c] +; CHECK: ld4.16b { v4, v5, v6, v7 }, [x1], #64 ; encoding: [0x24,0x00,0xdf,0x4c] +; CHECK: ld4.4h { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x04,0xdf,0x0c] +; CHECK: ld4.8h { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x04,0xdf,0x4c] +; CHECK: ld4.2s { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x08,0xdf,0x0c] +; CHECK: ld4.4s { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x08,0xdf,0x4c] +; CHECK: ld4.2d { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x0c,0xdf,0x4c] +; CHECK: st4.8b { v4, v5, v6, v7 }, [x1], #32 ; encoding: [0x24,0x00,0x9f,0x0c] +; CHECK: st4.16b { v4, v5, v6, v7 }, [x1], #64 ; encoding: [0x24,0x00,0x9f,0x4c] +; CHECK: st4.4h { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x04,0x9f,0x0c] +; CHECK: st4.8h { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x04,0x9f,0x4c] +; CHECK: st4.2s { v7, v8, v9, v10 }, [x1], #32 ; encoding: [0x27,0x08,0x9f,0x0c] +; CHECK: st4.4s { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x08,0x9f,0x4c] +; CHECK: st4.2d { v7, v8, v9, v10 }, [x1], #64 ; encoding: [0x27,0x0c,0x9f,0x4c] +; CHECK: ld1r.8b { v12 }, [x2] ; encoding: [0x4c,0xc0,0x40,0x0d] +; CHECK: ld1r.8b { v12 }, [x2], x3 ; encoding: [0x4c,0xc0,0xc3,0x0d] +; CHECK: ld1r.16b { v12 }, [x2] ; encoding: [0x4c,0xc0,0x40,0x4d] +; CHECK: ld1r.16b { v12 }, [x2], x3 ; encoding: [0x4c,0xc0,0xc3,0x4d] +; CHECK: ld1r.4h { v12 }, [x2] ; encoding: [0x4c,0xc4,0x40,0x0d] +; CHECK: ld1r.4h { v12 }, [x2], x3 ; encoding: [0x4c,0xc4,0xc3,0x0d] +; CHECK: ld1r.8h { v12 }, [x2] ; encoding: [0x4c,0xc4,0x40,0x4d] +; CHECK: ld1r.8h { v12 }, [x2], x3 ; encoding: [0x4c,0xc4,0xc3,0x4d] +; CHECK: ld1r.2s { v12 }, [x2] ; encoding: [0x4c,0xc8,0x40,0x0d] +; CHECK: ld1r.2s { v12 }, [x2], x3 ; encoding: [0x4c,0xc8,0xc3,0x0d] +; CHECK: ld1r.4s { v12 }, [x2] ; encoding: [0x4c,0xc8,0x40,0x4d] +; CHECK: ld1r.4s { v12 }, [x2], x3 ; encoding: [0x4c,0xc8,0xc3,0x4d] +; CHECK: ld1r.1d { v12 }, [x2] ; encoding: [0x4c,0xcc,0x40,0x0d] +; CHECK: ld1r.1d { v12 }, [x2], x3 ; encoding: [0x4c,0xcc,0xc3,0x0d] +; CHECK: ld1r.2d { v12 }, [x2] ; encoding: [0x4c,0xcc,0x40,0x4d] +; CHECK: ld1r.2d { v12 }, [x2], x3 ; encoding: [0x4c,0xcc,0xc3,0x4d] +; CHECK: ld1r.8b { v12 }, [x2], #1 ; encoding: [0x4c,0xc0,0xdf,0x0d] +; CHECK: ld1r.16b { v12 }, [x2], #1 ; encoding: [0x4c,0xc0,0xdf,0x4d] +; CHECK: ld1r.4h { v12 }, [x2], #2 ; encoding: [0x4c,0xc4,0xdf,0x0d] +; CHECK: ld1r.8h { v12 }, [x2], #2 ; encoding: [0x4c,0xc4,0xdf,0x4d] +; CHECK: ld1r.2s { v12 }, [x2], #4 ; encoding: [0x4c,0xc8,0xdf,0x0d] +; CHECK: ld1r.4s { v12 }, [x2], #4 ; encoding: [0x4c,0xc8,0xdf,0x4d] +; CHECK: ld1r.1d { v12 }, [x2], #8 ; encoding: [0x4c,0xcc,0xdf,0x0d] +; CHECK: ld1r.2d { v12 }, [x2], #8 ; encoding: [0x4c,0xcc,0xdf,0x4d] +; CHECK: ld2r.8b { v3, v4 }, [x2] ; encoding: [0x43,0xc0,0x60,0x0d] +; CHECK: ld2r.8b { v3, v4 }, [x2], x3 ; encoding: [0x43,0xc0,0xe3,0x0d] +; CHECK: ld2r.16b { v3, v4 }, [x2] ; encoding: [0x43,0xc0,0x60,0x4d] +; CHECK: ld2r.16b { v3, v4 }, [x2], x3 ; encoding: [0x43,0xc0,0xe3,0x4d] +; CHECK: ld2r.4h { v3, v4 }, [x2] ; encoding: [0x43,0xc4,0x60,0x0d] +; CHECK: ld2r.4h { v3, v4 }, [x2], x3 ; encoding: [0x43,0xc4,0xe3,0x0d] +; CHECK: ld2r.8h { v3, v4 }, [x2] ; encoding: [0x43,0xc4,0x60,0x4d] +; CHECK: ld2r.8h { v3, v4 }, [x2], x3 ; encoding: [0x43,0xc4,0xe3,0x4d] +; CHECK: ld2r.2s { v3, v4 }, [x2] ; encoding: [0x43,0xc8,0x60,0x0d] +; CHECK: ld2r.2s { v3, v4 }, [x2], x3 ; encoding: [0x43,0xc8,0xe3,0x0d] +; CHECK: ld2r.4s { v3, v4 }, [x2] ; encoding: [0x43,0xc8,0x60,0x4d] +; CHECK: ld2r.4s { v3, v4 }, [x2], x3 ; encoding: [0x43,0xc8,0xe3,0x4d] +; CHECK: ld2r.1d { v3, v4 }, [x2] ; encoding: [0x43,0xcc,0x60,0x0d] +; CHECK: ld2r.1d { v3, v4 }, [x2], x3 ; encoding: [0x43,0xcc,0xe3,0x0d] +; CHECK: ld2r.2d { v3, v4 }, [x2] ; encoding: [0x43,0xcc,0x60,0x4d] +; CHECK: ld2r.2d { v3, v4 }, [x2], x3 ; encoding: [0x43,0xcc,0xe3,0x4d] +; CHECK: ld2r.8b { v3, v4 }, [x2], #2 ; encoding: [0x43,0xc0,0xff,0x0d] +; CHECK: ld2r.16b { v3, v4 }, [x2], #2 ; encoding: [0x43,0xc0,0xff,0x4d] +; CHECK: ld2r.4h { v3, v4 }, [x2], #4 ; encoding: [0x43,0xc4,0xff,0x0d] +; CHECK: ld2r.8h { v3, v4 }, [x2], #4 ; encoding: [0x43,0xc4,0xff,0x4d] +; CHECK: ld2r.2s { v3, v4 }, [x2], #8 ; encoding: [0x43,0xc8,0xff,0x0d] +; CHECK: ld2r.4s { v3, v4 }, [x2], #8 ; encoding: [0x43,0xc8,0xff,0x4d] +; CHECK: ld2r.1d { v3, v4 }, [x2], #16 ; encoding: [0x43,0xcc,0xff,0x0d] +; CHECK: ld2r.2d { v3, v4 }, [x2], #16 ; encoding: [0x43,0xcc,0xff,0x4d] +; CHECK: ld3r.8b { v2, v3, v4 }, [x2] ; encoding: [0x42,0xe0,0x40,0x0d] +; CHECK: ld3r.8b { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xe0,0xc3,0x0d] +; CHECK: ld3r.16b { v2, v3, v4 }, [x2] ; encoding: [0x42,0xe0,0x40,0x4d] +; CHECK: ld3r.16b { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xe0,0xc3,0x4d] +; CHECK: ld3r.4h { v2, v3, v4 }, [x2] ; encoding: [0x42,0xe4,0x40,0x0d] +; CHECK: ld3r.4h { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xe4,0xc3,0x0d] +; CHECK: ld3r.8h { v2, v3, v4 }, [x2] ; encoding: [0x42,0xe4,0x40,0x4d] +; CHECK: ld3r.8h { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xe4,0xc3,0x4d] +; CHECK: ld3r.2s { v2, v3, v4 }, [x2] ; encoding: [0x42,0xe8,0x40,0x0d] +; CHECK: ld3r.2s { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xe8,0xc3,0x0d] +; CHECK: ld3r.4s { v2, v3, v4 }, [x2] ; encoding: [0x42,0xe8,0x40,0x4d] +; CHECK: ld3r.4s { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xe8,0xc3,0x4d] +; CHECK: ld3r.1d { v2, v3, v4 }, [x2] ; encoding: [0x42,0xec,0x40,0x0d] +; CHECK: ld3r.1d { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xec,0xc3,0x0d] +; CHECK: ld3r.2d { v2, v3, v4 }, [x2] ; encoding: [0x42,0xec,0x40,0x4d] +; CHECK: ld3r.2d { v2, v3, v4 }, [x2], x3 ; encoding: [0x42,0xec,0xc3,0x4d] +; CHECK: ld3r.8b { v2, v3, v4 }, [x2], #3 ; encoding: [0x42,0xe0,0xdf,0x0d] +; CHECK: ld3r.16b { v2, v3, v4 }, [x2], #3 ; encoding: [0x42,0xe0,0xdf,0x4d] +; CHECK: ld3r.4h { v2, v3, v4 }, [x2], #6 ; encoding: [0x42,0xe4,0xdf,0x0d] +; CHECK: ld3r.8h { v2, v3, v4 }, [x2], #6 ; encoding: [0x42,0xe4,0xdf,0x4d] +; CHECK: ld3r.2s { v2, v3, v4 }, [x2], #12 ; encoding: [0x42,0xe8,0xdf,0x0d] +; CHECK: ld3r.4s { v2, v3, v4 }, [x2], #12 ; encoding: [0x42,0xe8,0xdf,0x4d] +; CHECK: ld3r.1d { v2, v3, v4 }, [x2], #24 ; encoding: [0x42,0xec,0xdf,0x0d] +; CHECK: ld3r.2d { v2, v3, v4 }, [x2], #24 ; encoding: [0x42,0xec,0xdf,0x4d] +; CHECK: ld4r.8b { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xe0,0x60,0x0d] +; CHECK: ld4r.8b { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xe0,0xe3,0x0d] +; CHECK: ld4r.16b { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xe0,0x60,0x4d] +; CHECK: ld4r.16b { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xe0,0xe3,0x4d] +; CHECK: ld4r.4h { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xe4,0x60,0x0d] +; CHECK: ld4r.4h { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xe4,0xe3,0x0d] +; CHECK: ld4r.8h { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xe4,0x60,0x4d] +; CHECK: ld4r.8h { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xe4,0xe3,0x4d] +; CHECK: ld4r.2s { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xe8,0x60,0x0d] +; CHECK: ld4r.2s { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xe8,0xe3,0x0d] +; CHECK: ld4r.4s { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xe8,0x60,0x4d] +; CHECK: ld4r.4s { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xe8,0xe3,0x4d] +; CHECK: ld4r.1d { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xec,0x60,0x0d] +; CHECK: ld4r.1d { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xec,0xe3,0x0d] +; CHECK: ld4r.2d { v2, v3, v4, v5 }, [x2] ; encoding: [0x42,0xec,0x60,0x4d] +; CHECK: ld4r.2d { v2, v3, v4, v5 }, [x2], x3 ; encoding: [0x42,0xec,0xe3,0x4d] +; CHECK: ld4r.8b { v2, v3, v4, v5 }, [x2], #4 ; encoding: [0x42,0xe0,0xff,0x0d] +; CHECK: ld4r.16b { v2, v3, v4, v5 }, [x2], #4 ; encoding: [0x42,0xe0,0xff,0x4d] +; CHECK: ld4r.4h { v2, v3, v4, v5 }, [x2], #8 ; encoding: [0x42,0xe4,0xff,0x0d] +; CHECK: ld4r.8h { v2, v3, v4, v5 }, [x2], #8 ; encoding: [0x42,0xe4,0xff,0x4d] +; CHECK: ld4r.2s { v2, v3, v4, v5 }, [x2], #16 ; encoding: [0x42,0xe8,0xff,0x0d] +; CHECK: ld4r.4s { v2, v3, v4, v5 }, [x2], #16 ; encoding: [0x42,0xe8,0xff,0x4d] +; CHECK: ld4r.1d { v2, v3, v4, v5 }, [x2], #32 ; encoding: [0x42,0xec,0xff,0x0d] +; CHECK: ld4r.2d { v2, v3, v4, v5 }, [x2], #32 ; encoding: [0x42,0xec,0xff,0x4d] +; CHECK: ld1.b { v6 }[13], [x3] ; encoding: [0x66,0x14,0x40,0x4d] +; CHECK: ld1.h { v6 }[2], [x3] ; encoding: [0x66,0x50,0x40,0x0d] +; CHECK: ld1.s { v6 }[2], [x3] ; encoding: [0x66,0x80,0x40,0x4d] +; CHECK: ld1.d { v6 }[1], [x3] ; encoding: [0x66,0x84,0x40,0x4d] +; CHECK: ld1.b { v6 }[13], [x3], x5 ; encoding: [0x66,0x14,0xc5,0x4d] +; CHECK: ld1.h { v6 }[2], [x3], x5 ; encoding: [0x66,0x50,0xc5,0x0d] +; CHECK: ld1.s { v6 }[2], [x3], x5 ; encoding: [0x66,0x80,0xc5,0x4d] +; CHECK: ld1.d { v6 }[1], [x3], x5 ; encoding: [0x66,0x84,0xc5,0x4d] +; CHECK: ld1.b { v6 }[13], [x3], #1 ; encoding: [0x66,0x14,0xdf,0x4d] +; CHECK: ld1.h { v6 }[2], [x3], #2 ; encoding: [0x66,0x50,0xdf,0x0d] +; CHECK: ld1.s { v6 }[2], [x3], #4 ; encoding: [0x66,0x80,0xdf,0x4d] +; CHECK: ld1.d { v6 }[1], [x3], #8 ; encoding: [0x66,0x84,0xdf,0x4d] +; CHECK: ld2.b { v5, v6 }[13], [x3] ; encoding: [0x65,0x14,0x60,0x4d] +; CHECK: ld2.h { v5, v6 }[2], [x3] ; encoding: [0x65,0x50,0x60,0x0d] +; CHECK: ld2.s { v5, v6 }[2], [x3] ; encoding: [0x65,0x80,0x60,0x4d] +; CHECK: ld2.d { v5, v6 }[1], [x3] ; encoding: [0x65,0x84,0x60,0x4d] +; CHECK: ld2.b { v5, v6 }[13], [x3], x5 ; encoding: [0x65,0x14,0xe5,0x4d] +; CHECK: ld2.h { v5, v6 }[2], [x3], x5 ; encoding: [0x65,0x50,0xe5,0x0d] +; CHECK: ld2.s { v5, v6 }[2], [x3], x5 ; encoding: [0x65,0x80,0xe5,0x4d] +; CHECK: ld2.d { v5, v6 }[1], [x3], x5 ; encoding: [0x65,0x84,0xe5,0x4d] +; CHECK: ld2.b { v5, v6 }[13], [x3], #2 ; encoding: [0x65,0x14,0xff,0x4d] +; CHECK: ld2.h { v5, v6 }[2], [x3], #4 ; encoding: [0x65,0x50,0xff,0x0d] +; CHECK: ld2.s { v5, v6 }[2], [x3], #8 ; encoding: [0x65,0x80,0xff,0x4d] +; CHECK: ld2.d { v5, v6 }[1], [x3], #16 ; encoding: [0x65,0x84,0xff,0x4d] +; CHECK: ld3.b { v7, v8, v9 }[13], [x3] ; encoding: [0x67,0x34,0x40,0x4d] +; CHECK: ld3.h { v7, v8, v9 }[2], [x3] ; encoding: [0x67,0x70,0x40,0x0d] +; CHECK: ld3.s { v7, v8, v9 }[2], [x3] ; encoding: [0x67,0xa0,0x40,0x4d] +; CHECK: ld3.d { v7, v8, v9 }[1], [x3] ; encoding: [0x67,0xa4,0x40,0x4d] +; CHECK: ld3.b { v7, v8, v9 }[13], [x3], x5 ; encoding: [0x67,0x34,0xc5,0x4d] +; CHECK: ld3.h { v7, v8, v9 }[2], [x3], x5 ; encoding: [0x67,0x70,0xc5,0x0d] +; CHECK: ld3.s { v7, v8, v9 }[2], [x3], x5 ; encoding: [0x67,0xa0,0xc5,0x4d] +; CHECK: ld3.d { v7, v8, v9 }[1], [x3], x5 ; encoding: [0x67,0xa4,0xc5,0x4d] +; CHECK: ld3.b { v7, v8, v9 }[13], [x3], #3 ; encoding: [0x67,0x34,0xdf,0x4d] +; CHECK: ld3.h { v7, v8, v9 }[2], [x3], #6 ; encoding: [0x67,0x70,0xdf,0x0d] +; CHECK: ld3.s { v7, v8, v9 }[2], [x3], #12 ; encoding: [0x67,0xa0,0xdf,0x4d] +; CHECK: ld3.d { v7, v8, v9 }[1], [x3], #24 ; encoding: [0x67,0xa4,0xdf,0x4d] +; CHECK: ld4.b { v7, v8, v9, v10 }[13], [x3] ; encoding: [0x67,0x34,0x60,0x4d] +; CHECK: ld4.h { v7, v8, v9, v10 }[2], [x3] ; encoding: [0x67,0x70,0x60,0x0d] +; CHECK: ld4.s { v7, v8, v9, v10 }[2], [x3] ; encoding: [0x67,0xa0,0x60,0x4d] +; CHECK: ld4.d { v7, v8, v9, v10 }[1], [x3] ; encoding: [0x67,0xa4,0x60,0x4d] +; CHECK: ld4.b { v7, v8, v9, v10 }[13], [x3], x5 ; encoding: [0x67,0x34,0xe5,0x4d] +; CHECK: ld4.h { v7, v8, v9, v10 }[2], [x3], x5 ; encoding: [0x67,0x70,0xe5,0x0d] +; CHECK: ld4.s { v7, v8, v9, v10 }[2], [x3], x5 ; encoding: [0x67,0xa0,0xe5,0x4d] +; CHECK: ld4.d { v7, v8, v9, v10 }[1], [x3], x5 ; encoding: [0x67,0xa4,0xe5,0x4d] +; CHECK: ld4.b { v7, v8, v9, v10 }[13], [x3], #4 ; encoding: [0x67,0x34,0xff,0x4d] +; CHECK: ld4.h { v7, v8, v9, v10 }[2], [x3], #8 ; encoding: [0x67,0x70,0xff,0x0d] +; CHECK: ld4.s { v7, v8, v9, v10 }[2], [x3], #16 ; encoding: [0x67,0xa0,0xff,0x4d] +; CHECK: ld4.d { v7, v8, v9, v10 }[1], [x3], #32 ; encoding: [0x67,0xa4,0xff,0x4d] +; CHECK: st1.b { v6 }[13], [x3] ; encoding: [0x66,0x14,0x00,0x4d] +; CHECK: st1.h { v6 }[2], [x3] ; encoding: [0x66,0x50,0x00,0x0d] +; CHECK: st1.s { v6 }[2], [x3] ; encoding: [0x66,0x80,0x00,0x4d] +; CHECK: st1.d { v6 }[1], [x3] ; encoding: [0x66,0x84,0x00,0x4d] +; CHECK: st1.b { v6 }[13], [x3], x5 ; encoding: [0x66,0x14,0x85,0x4d] +; CHECK: st1.h { v6 }[2], [x3], x5 ; encoding: [0x66,0x50,0x85,0x0d] +; CHECK: st1.s { v6 }[2], [x3], x5 ; encoding: [0x66,0x80,0x85,0x4d] +; CHECK: st1.d { v6 }[1], [x3], x5 ; encoding: [0x66,0x84,0x85,0x4d] +; CHECK: st1.b { v6 }[13], [x3], #1 ; encoding: [0x66,0x14,0x9f,0x4d] +; CHECK: st1.h { v6 }[2], [x3], #2 ; encoding: [0x66,0x50,0x9f,0x0d] +; CHECK: st1.s { v6 }[2], [x3], #4 ; encoding: [0x66,0x80,0x9f,0x4d] +; CHECK: st1.d { v6 }[1], [x3], #8 ; encoding: [0x66,0x84,0x9f,0x4d] +; CHECK: st2.b { v5, v6 }[13], [x3] ; encoding: [0x65,0x14,0x20,0x4d] +; CHECK: st2.h { v5, v6 }[2], [x3] ; encoding: [0x65,0x50,0x20,0x0d] +; CHECK: st2.s { v5, v6 }[2], [x3] ; encoding: [0x65,0x80,0x20,0x4d] +; CHECK: st2.d { v5, v6 }[1], [x3] ; encoding: [0x65,0x84,0x20,0x4d] +; CHECK: st2.b { v5, v6 }[13], [x3], x5 ; encoding: [0x65,0x14,0xa5,0x4d] +; CHECK: st2.h { v5, v6 }[2], [x3], x5 ; encoding: [0x65,0x50,0xa5,0x0d] +; CHECK: st2.s { v5, v6 }[2], [x3], x5 ; encoding: [0x65,0x80,0xa5,0x4d] +; CHECK: st2.d { v5, v6 }[1], [x3], x5 ; encoding: [0x65,0x84,0xa5,0x4d] +; CHECK: st2.b { v5, v6 }[13], [x3], #2 ; encoding: [0x65,0x14,0xbf,0x4d] +; CHECK: st2.h { v5, v6 }[2], [x3], #4 ; encoding: [0x65,0x50,0xbf,0x0d] +; CHECK: st2.s { v5, v6 }[2], [x3], #8 ; encoding: [0x65,0x80,0xbf,0x4d] +; CHECK: st2.d { v5, v6 }[1], [x3], #16 ; encoding: [0x65,0x84,0xbf,0x4d] +; CHECK: st3.b { v7, v8, v9 }[13], [x3] ; encoding: [0x67,0x34,0x00,0x4d] +; CHECK: st3.h { v7, v8, v9 }[2], [x3] ; encoding: [0x67,0x70,0x00,0x0d] +; CHECK: st3.s { v7, v8, v9 }[2], [x3] ; encoding: [0x67,0xa0,0x00,0x4d] +; CHECK: st3.d { v7, v8, v9 }[1], [x3] ; encoding: [0x67,0xa4,0x00,0x4d] +; CHECK: st3.b { v7, v8, v9 }[13], [x3], x5 ; encoding: [0x67,0x34,0x85,0x4d] +; CHECK: st3.h { v7, v8, v9 }[2], [x3], x5 ; encoding: [0x67,0x70,0x85,0x0d] +; CHECK: st3.s { v7, v8, v9 }[2], [x3], x5 ; encoding: [0x67,0xa0,0x85,0x4d] +; CHECK: st3.d { v7, v8, v9 }[1], [x3], x5 ; encoding: [0x67,0xa4,0x85,0x4d] +; CHECK: st3.b { v7, v8, v9 }[13], [x3], #3 ; encoding: [0x67,0x34,0x9f,0x4d] +; CHECK: st3.h { v7, v8, v9 }[2], [x3], #6 ; encoding: [0x67,0x70,0x9f,0x0d] +; CHECK: st3.s { v7, v8, v9 }[2], [x3], #12 ; encoding: [0x67,0xa0,0x9f,0x4d] +; CHECK: st3.d { v7, v8, v9 }[1], [x3], #24 ; encoding: [0x67,0xa4,0x9f,0x4d] +; CHECK: st4.b { v7, v8, v9, v10 }[13], [x3] ; encoding: [0x67,0x34,0x20,0x4d] +; CHECK: st4.h { v7, v8, v9, v10 }[2], [x3] ; encoding: [0x67,0x70,0x20,0x0d] +; CHECK: st4.s { v7, v8, v9, v10 }[2], [x3] ; encoding: [0x67,0xa0,0x20,0x4d] +; CHECK: st4.d { v7, v8, v9, v10 }[1], [x3] ; encoding: [0x67,0xa4,0x20,0x4d] +; CHECK: st4.b { v7, v8, v9, v10 }[13], [x3], x5 ; encoding: [0x67,0x34,0xa5,0x4d] +; CHECK: st4.h { v7, v8, v9, v10 }[2], [x3], x5 ; encoding: [0x67,0x70,0xa5,0x0d] +; CHECK: st4.s { v7, v8, v9, v10 }[2], [x3], x5 ; encoding: [0x67,0xa0,0xa5,0x4d] +; CHECK: st4.d { v7, v8, v9, v10 }[1], [x3], x5 ; encoding: [0x67,0xa4,0xa5,0x4d] +; CHECK: st4.b { v7, v8, v9, v10 }[13], [x3], #4 ; encoding: [0x67,0x34,0xbf,0x4d] +; CHECK: st4.h { v7, v8, v9, v10 }[2], [x3], #8 ; encoding: [0x67,0x70,0xbf,0x0d] +; CHECK: st4.s { v7, v8, v9, v10 }[2], [x3], #16 ; encoding: [0x67,0xa0,0xbf,0x4d] +; CHECK: st4.d { v7, v8, v9, v10 }[1], [x3], #32 ; encoding: [0x67,0xa4,0xbf,0x4d] |