]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
AArch64: update testsuite to account for new zero moves
authorTamar Christina <tamar.christina@arm.com>
Fri, 18 Oct 2024 08:42:46 +0000 (09:42 +0100)
committerTamar Christina <tamar.christina@arm.com>
Fri, 18 Oct 2024 08:42:46 +0000 (09:42 +0100)
The patch series will adjust how zeros are created.  In principal it doesn't
matter the exact lane size a zero gets created on but this makes the tests a
bit fragile.

This preparation patch will update the testsuite to accept multiple variants
of ways to create vector zeros to accept both the current syntax and the one
being transitioned to in the series.

gcc/testsuite/ChangeLog:

* gcc.target/aarch64/ldp_stp_18.c: Update zero regexpr.
* gcc.target/aarch64/memset-corner-cases.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_bf16.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_f16.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_f32.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_f64.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_s16.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_s32.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_s64.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_s8.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_u16.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_u32.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_u64.c: Likewise.
* gcc.target/aarch64/sme/acle-asm/revd_u8.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acge_f16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acge_f32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acge_f64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acgt_f16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acgt_f32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acgt_f64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acle_f16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acle_f32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/acle_f64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/aclt_f16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/aclt_f32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/aclt_f64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/bic_s8.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/bic_u8.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/cmpuo_f16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/cmpuo_f32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/cmpuo_f64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_f16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_f32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_f64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_s16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_s32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_s64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_s8.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_u16.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_u32.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_u64.c: Likewise.
* gcc.target/aarch64/sve/acle/asm/dup_u8.c: Likewise.
* gcc.target/aarch64/sve/const_fold_div_1.c: Likewise.
* gcc.target/aarch64/sve/const_fold_mul_1.c: Likewise.
* gcc.target/aarch64/sve/dup_imm_1.c: Likewise.
* gcc.target/aarch64/sve/fdup_1.c: Likewise.
* gcc.target/aarch64/sve/fold_div_zero.c: Likewise.
* gcc.target/aarch64/sve/fold_mul_zero.c: Likewise.
* gcc.target/aarch64/sve/pcs/args_2.c: Likewise.
* gcc.target/aarch64/sve/pcs/args_3.c: Likewise.
* gcc.target/aarch64/sve/pcs/args_4.c: Likewise.
* gcc.target/aarch64/vect-fmovd-zero.c: Likewise.

52 files changed:
gcc/testsuite/gcc.target/aarch64/ldp_stp_18.c
gcc/testsuite/gcc.target/aarch64/memset-corner-cases.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_bf16.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f16.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f32.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_f64.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s16.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s32.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s64.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_s8.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u16.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u32.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u64.c
gcc/testsuite/gcc.target/aarch64/sme/acle-asm/revd_u8.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acge_f16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acge_f32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acge_f64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acgt_f16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acgt_f32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acgt_f64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acle_f16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acle_f32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/acle_f64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/aclt_f16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/aclt_f32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/aclt_f64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/bic_s8.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/bic_u8.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/cmpuo_f16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/cmpuo_f32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/cmpuo_f64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_f16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_f32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_f64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_s16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_s32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_s64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_s8.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_u16.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_u32.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_u64.c
gcc/testsuite/gcc.target/aarch64/sve/acle/asm/dup_u8.c
gcc/testsuite/gcc.target/aarch64/sve/const_fold_div_1.c
gcc/testsuite/gcc.target/aarch64/sve/const_fold_mul_1.c
gcc/testsuite/gcc.target/aarch64/sve/dup_imm_1.c
gcc/testsuite/gcc.target/aarch64/sve/fdup_1.c
gcc/testsuite/gcc.target/aarch64/sve/fold_div_zero.c
gcc/testsuite/gcc.target/aarch64/sve/fold_mul_zero.c
gcc/testsuite/gcc.target/aarch64/sve/pcs/args_2.c
gcc/testsuite/gcc.target/aarch64/sve/pcs/args_3.c
gcc/testsuite/gcc.target/aarch64/sve/pcs/args_4.c
gcc/testsuite/gcc.target/aarch64/vect-fmovd-zero.c

index eaa855c3859a736012871584b0906bf93bc3d36c..ea9fffc220827f69559259ea04d66e986e5fcd7b 100644 (file)
@@ -15,7 +15,7 @@ CONST_FN (4, double, 0);
 
 /*
 ** const_8_double_0:
-**     movi    v([0-9]+)\.2d, .*
+**     movi    v([0-9]+)\.\d+[bhsd], .*
 **     stp     q\1, q\1, \[x0\]
 **     stp     q\1, q\1, \[x0, #?32\]
 **     ret
index d4c752711f8dd7d5b297d33dd96f39d09048c5aa..0b12c88c99e06bba6e91399eb15f117e296a92ed 100644 (file)
@@ -29,7 +29,7 @@ set0byte (int64_t *src)
 
 /* 35bytes would become 4 scalar instructions.  So favour NEON.
 **set0neon:
-**     movi    v([0-9]+).4s, 0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     stp     q\1, q\1, \[x0\]
 **     str     wzr, \[x0, 31\]
 **     ret
index 6507c5a9c15477de473e077d3a33a866f899fba5..c8f0dc5f02b1eb1a878efb2090b403f05b6f72f5 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_bf16_z_tied1, svbfloat16_t,
 
 /*
 ** revd_bf16_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index 1a2f893d686139b0b396c576ebfc615c42cbf388..a02e2d47f2a33bfd652058f5bd80a30df1bd391a 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_f16_z_tied1, svfloat16_t,
 
 /*
 ** revd_f16_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index 81c77d52460c5734779deb9e1cfe6689cb259600..28cdba50a89121eaa6d7f28cfb3b88f7541367c2 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_f32_z_tied1, svfloat32_t,
 
 /*
 ** revd_f32_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index fce6d6514c73a708f56a5f42d77daa9915631e4c..3f949b87e1c809919753a2d4de55696d44b62978 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_f64_z_tied1, svfloat64_t,
 
 /*
 ** revd_f64_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index a2eba6a609fb23da1bdf7f78cfbcd7d4379bfac3..621ae022592e31fde8b43b9081996c1ba61b89c8 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_s16_z_tied1, svint16_t,
 
 /*
 ** revd_s16_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index cbc0dc0a0b669dbb0bfdf860fd22cb291dc89540..d388108a8c9a37949a3edf689a2b43416d7f1944 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_s32_z_tied1, svint32_t,
 
 /*
 ** revd_s32_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index aa963d388e005d1df80524343a9ef8895f84f017..f5dbbaa44228494f504f0c37e3d5f179c015147e 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_s64_z_tied1, svint64_t,
 
 /*
 ** revd_s64_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index 4291b7197c6491fd6ebe475e4ce83a20105f5622..663cd418b16cd07356bc4442f3243206d995b0ae 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_s8_z_tied1, svint8_t,
 
 /*
 ** revd_s8_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index eaed0d13259e9e2641de9c99a704d22bd3a77f36..83a414d020d3169a9e635cfb5100652b134487dc 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_u16_z_tied1, svuint16_t,
 
 /*
 ** revd_u16_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index 3b76c7000efb99924bf2a50d7d6d43d94342cf19..5ba00cb806532d84164bc0d5ca1b4feb48c03b2b 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_u32_z_tied1, svuint32_t,
 
 /*
 ** revd_u32_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index 4589c4635e7b91536bd2c86f0b5af05a3d28049a..0c016c7c398c9c3e82619b2f6e56715aba0679d7 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_u64_z_tied1, svuint64_t,
 
 /*
 ** revd_u64_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index ac5d749818eeaeda173536b30e9262e3c84a62dd..b9f5935873ac94b9441f3496e29f19153c3c3ea4 100644 (file)
@@ -48,7 +48,7 @@ TEST_UNIFORM_Z (revd_u8_z_tied1, svuint8_t,
 
 /*
 ** revd_u8_z_untied:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     revd    z0\.q, p0/m, z1\.q
 **     ret
 */
index acef17309b72207fe9196755d537faa1c60b7cfc..747b3175feccb5ab4c8fad04161672de9756496f 100644 (file)
@@ -44,9 +44,9 @@ TEST_COMPARE_ZD (acge_h4_f16, svfloat16_t, float16_t,
 
 /*
 ** acge_0_f16:
-**     mov     (z[0-9]+\.h), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
-**     facge   p0\.h, p1/z, z0\.h, \1
+**     facge   p0\.h, p1/z, z0\.h, z\1\.h
 ** |
 **     facle   p0\.h, p1/z, \1, z0\.h
 ** )
index c3d195ab89fd94bad971bd5bf2209a8b94a9f8bc..5bc5a35ed4129fa8dee5b1c7d242d181084e4d5f 100644 (file)
@@ -44,9 +44,9 @@ TEST_COMPARE_ZD (acge_s4_f32, svfloat32_t, float32_t,
 
 /*
 ** acge_0_f32:
-**     mov     (z[0-9]+\.s), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
-**     facge   p0\.s, p1/z, z0\.s, \1
+**     facge   p0\.s, p1/z, z0\.s, z\1\.s
 ** |
 **     facle   p0\.s, p1/z, \1, z0\.s
 ** )
index 207ce93a236a3eea22b8e99038791d66ac7244b6..a51ec69792b59e06192b0117e8a374a96c5c7259 100644 (file)
@@ -44,9 +44,9 @@ TEST_COMPARE_ZD (acge_d4_f64, svfloat64_t, float64_t,
 
 /*
 ** acge_0_f64:
-**     mov     (z[0-9]+\.d), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
-**     facge   p0\.d, p1/z, z0\.d, \1
+**     facge   p0\.d, p1/z, z0\.d, z\1\.d
 ** |
 **     facle   p0\.d, p1/z, \1, z0\.d
 ** )
index 53c63351cf1ababfd1e6b49cfff5fbd72afc8f01..9844dfaa2d6a1d4ffd570a5dfd627234bceadc4d 100644 (file)
@@ -44,9 +44,9 @@ TEST_COMPARE_ZD (acgt_h4_f16, svfloat16_t, float16_t,
 
 /*
 ** acgt_0_f16:
-**     mov     (z[0-9]+\.h), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
-**     facgt   p0\.h, p1/z, z0\.h, \1
+**     facgt   p0\.h, p1/z, z0\.h, z\1\.h
 ** |
 **     faclt   p0\.h, p1/z, \1, z0\.h
 ** )
index d71c84ea611dd4532847d606c9b148bcd680218b..a1ce64dec7ab5557dd425f861fecdd807877ed88 100644 (file)
@@ -44,9 +44,9 @@ TEST_COMPARE_ZD (acgt_s4_f32, svfloat32_t, float32_t,
 
 /*
 ** acgt_0_f32:
-**     mov     (z[0-9]+\.s), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
-**     facgt   p0\.s, p1/z, z0\.s, \1
+**     facgt   p0\.s, p1/z, z0\.s, z\1\.s
 ** |
 **     faclt   p0\.s, p1/z, \1, z0\.s
 ** )
index 15d549e1836e7388752389b907ffa74923c1c7e4..430dc34c12943a5b3eee9412ff79fdb43883d8cf 100644 (file)
@@ -44,9 +44,9 @@ TEST_COMPARE_ZD (acgt_d4_f64, svfloat64_t, float64_t,
 
 /*
 ** acgt_0_f64:
-**     mov     (z[0-9]+\.d), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
-**     facgt   p0\.d, p1/z, z0\.d, \1
+**     facgt   p0\.d, p1/z, z0\.d, z\1\.d
 ** |
 **     faclt   p0\.d, p1/z, \1, z0\.d
 ** )
index ed6721d57194597c417800709fb9faa06995057a..8e15f26110c51c14dfb0539e14b958192d2f7bed 100644 (file)
@@ -44,11 +44,11 @@ TEST_COMPARE_ZD (acle_h4_f16, svfloat16_t, float16_t,
 
 /*
 ** acle_0_f16:
-**     mov     (z[0-9]+\.h), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
 **     facge   p0\.h, p1/z, \1, z0\.h
 ** |
-**     facle   p0\.h, p1/z, z0\.h, \1
+**     facle   p0\.h, p1/z, z0\.h, z\1\.h
 ** )
 **     ret
 */
index 7fc9da701d34586b77f3c1f7ac42d45172337655..21368a6469f730179c23815a3603826b3bfa0fa7 100644 (file)
@@ -44,11 +44,11 @@ TEST_COMPARE_ZD (acle_s4_f32, svfloat32_t, float32_t,
 
 /*
 ** acle_0_f32:
-**     mov     (z[0-9]+\.s), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
 **     facge   p0\.s, p1/z, \1, z0\.s
 ** |
-**     facle   p0\.s, p1/z, z0\.s, \1
+**     facle   p0\.s, p1/z, z0\.s, z\1\.s
 ** )
 **     ret
 */
index ecbb8e5007c365da3f45bd76ef68775cf8e4ea45..26d096f2796df25cf8083bbcf8f7328ac78aa23f 100644 (file)
@@ -44,11 +44,11 @@ TEST_COMPARE_ZD (acle_d4_f64, svfloat64_t, float64_t,
 
 /*
 ** acle_0_f64:
-**     mov     (z[0-9]+\.d), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
 **     facge   p0\.d, p1/z, \1, z0\.d
 ** |
-**     facle   p0\.d, p1/z, z0\.d, \1
+**     facle   p0\.d, p1/z, z0\.d, z\1\.d
 ** )
 **     ret
 */
index e5f5040c7d1b7a35c77b511669d4d53696f2d0eb..f313e5daf1815b9a4372213a7ccbb5ccbe4a5dff 100644 (file)
@@ -44,11 +44,11 @@ TEST_COMPARE_ZD (aclt_h4_f16, svfloat16_t, float16_t,
 
 /*
 ** aclt_0_f16:
-**     mov     (z[0-9]+\.h), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
 **     facgt   p0\.h, p1/z, \1, z0\.h
 ** |
-**     faclt   p0\.h, p1/z, z0\.h, \1
+**     faclt   p0\.h, p1/z, z0\.h, z\1\.h
 ** )
 **     ret
 */
index f40826445f8d50e23c5579b977016332b3797e7d..f2bc5dca0ebe9452a656e0ca1155ebfa7afe7249 100644 (file)
@@ -44,11 +44,11 @@ TEST_COMPARE_ZD (aclt_s4_f32, svfloat32_t, float32_t,
 
 /*
 ** aclt_0_f32:
-**     mov     (z[0-9]+\.s), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
 **     facgt   p0\.s, p1/z, \1, z0\.s
 ** |
-**     faclt   p0\.s, p1/z, z0\.s, \1
+**     faclt   p0\.s, p1/z, z0\.s, z\1\.s
 ** )
 **     ret
 */
index 0170b330700167830f1a2cfa74fc2419f8d08748..03384b0bbf6c6d2c905a50d8e1aea94d33841db3 100644 (file)
@@ -44,11 +44,11 @@ TEST_COMPARE_ZD (aclt_d4_f64, svfloat64_t, float64_t,
 
 /*
 ** aclt_0_f64:
-**     mov     (z[0-9]+\.d), #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 ** (
 **     facgt   p0\.d, p1/z, \1, z0\.d
 ** |
-**     faclt   p0\.d, p1/z, z0\.d, \1
+**     faclt   p0\.d, p1/z, z0\.d, z\1\.d
 ** )
 **     ret
 */
index d1ffefa77ee08c4074abbf01ef61ef38fd03d8cc..75bc26c091c6600b55046137b74d062bfda9f8b6 100644 (file)
@@ -250,7 +250,7 @@ TEST_UNIFORM_Z (bic_128_s8_x, svint8_t,
 
 /*
 ** bic_255_s8_x:
-**     mov     z0\.b, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (bic_255_s8_x, svint8_t,
index b7528ceac336968db9436bbdd34d4b0dce664651..83089d4f1fb4fdd3681d93d06f969eb5e694f9e3 100644 (file)
@@ -250,7 +250,7 @@ TEST_UNIFORM_Z (bic_128_u8_x, svuint8_t,
 
 /*
 ** bic_255_u8_x:
-**     mov     z0\.b, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (bic_255_u8_x, svuint8_t,
index 8f702cddef8073d3dbd63b46a54d18fa3c667f51..21a9454fac2c872e1350b839e9b77205ec3b24ff 100644 (file)
@@ -32,8 +32,8 @@ TEST_COMPARE_ZD (cmpuo_h4_f16, svfloat16_t, float16_t,
 
 /*
 ** cmpuo_0_f16:
-**     mov     (z[0-9]+\.h), #0
-**     fcmuo   p0\.h, p1/z, (z0\.h, \1|\1, z0\.h)
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     fcmuo   p0\.h, p1/z, (z0\.h, z\1\.h|z\1\.h, z0\.h)
 **     ret
 */
 TEST_COMPARE_Z (cmpuo_0_f16, svfloat16_t,
index 8827604aa3f035aaddb1b16004af4482a89cdce6..db4093d77c23d4ac874f70f29876f891d4423b15 100644 (file)
@@ -32,8 +32,8 @@ TEST_COMPARE_ZD (cmpuo_s4_f32, svfloat32_t, float32_t,
 
 /*
 ** cmpuo_0_f32:
-**     mov     (z[0-9]+\.s), #0
-**     fcmuo   p0\.s, p1/z, (z0\.s, \1|\1, z0\.s)
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     fcmuo   p0\.s, p1/z, (z0\.s, z\1\.s|z\1\.s, z0\.s)
 **     ret
 */
 TEST_COMPARE_Z (cmpuo_0_f32, svfloat32_t,
index d7a71eca464d8c5d26c3197538267815a44cc216..9fff531fef0d4607c437503c9f6ac500b3c2785e 100644 (file)
@@ -32,8 +32,8 @@ TEST_COMPARE_ZD (cmpuo_d4_f64, svfloat64_t, float64_t,
 
 /*
 ** cmpuo_0_f64:
-**     mov     (z[0-9]+\.d), #0
-**     fcmuo   p0\.d, p1/z, (z0\.d, \1|\1, z0\.d)
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     fcmuo   p0\.d, p1/z, (z0\.d, z\1\.d|z\1\.d, z0\.d)
 **     ret
 */
 TEST_COMPARE_Z (cmpuo_0_f64, svfloat64_t,
index a90c7118448cdf058db264f57c61a6cc51e89e5e..68e41ab15fd98374a5e2b2a0e910df61303b9380 100644 (file)
@@ -13,7 +13,7 @@ TEST_UNIFORM_Z (dup_1_f16, svfloat16_t,
 
 /*
 ** dup_0_f16:
-**     mov     z0\.h, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f16, svfloat16_t,
@@ -120,7 +120,7 @@ TEST_UNIFORM_Z (dup_1_f16_z, svfloat16_t,
 
 /*
 ** dup_0_f16_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f16_z, svfloat16_t,
@@ -170,7 +170,7 @@ TEST_UNIFORM_Z (dup_1_f16_x, svfloat16_t,
 
 /*
 ** dup_0_f16_x:
-**     mov     z0\.h, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f16_x, svfloat16_t,
index ba23781429c87509606d168d0d96530dd70cc8f2..29f4e520cf92d06031a036789f631a6e5bd616f2 100644 (file)
@@ -13,7 +13,7 @@ TEST_UNIFORM_Z (dup_1_f32, svfloat32_t,
 
 /*
 ** dup_0_f32:
-**     mov     z0\.s, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f32, svfloat32_t,
@@ -118,7 +118,7 @@ TEST_UNIFORM_Z (dup_1_f32_z, svfloat32_t,
 
 /*
 ** dup_0_f32_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f32_z, svfloat32_t,
@@ -166,7 +166,7 @@ TEST_UNIFORM_Z (dup_1_f32_x, svfloat32_t,
 
 /*
 ** dup_0_f32_x:
-**     mov     z0\.s, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f32_x, svfloat32_t,
index b397da885673a565c994415e6d6659f517c71e3a..6501b86fb89c88b61942e4dc3119175925359948 100644 (file)
@@ -13,7 +13,7 @@ TEST_UNIFORM_Z (dup_1_f64, svfloat64_t,
 
 /*
 ** dup_0_f64:
-**     mov     z0\.d, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f64, svfloat64_t,
@@ -118,7 +118,7 @@ TEST_UNIFORM_Z (dup_1_f64_z, svfloat64_t,
 
 /*
 ** dup_0_f64_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f64_z, svfloat64_t,
@@ -166,7 +166,7 @@ TEST_UNIFORM_Z (dup_1_f64_x, svfloat64_t,
 
 /*
 ** dup_0_f64_x:
-**     mov     z0\.d, #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_f64_x, svfloat64_t,
index 9c91a5bbad99ed8ec6b6aac582d44326bb369a10..5bcd3b45751762c15bdc26f5820305eb68f2b8d2 100644 (file)
@@ -612,13 +612,13 @@ TEST_UNIFORM_Z (dup_127_s16_z, svint16_t,
 /*
 ** dup_128_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #128
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #128
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -639,13 +639,13 @@ TEST_UNIFORM_Z (dup_253_s16_z, svint16_t,
 /*
 ** dup_254_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #254
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #254
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -656,13 +656,13 @@ TEST_UNIFORM_Z (dup_254_s16_z, svint16_t,
 /*
 ** dup_255_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #255
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -682,13 +682,13 @@ TEST_UNIFORM_Z (dup_256_s16_z, svint16_t,
 /*
 ** dup_257_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+)\.b, #1
-**     sel     z0\.h, p0, \2\.h, \1\.h
+**     sel     z0\.h, p0, \2\.h, z\1\.h
 ** |
 **     mov     (z[0-9]+)\.b, #1
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3\.h, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3\.h, z\4\.h
 ** )
 **     ret
 */
@@ -727,13 +727,13 @@ TEST_UNIFORM_Z (dup_7ffd_s16_z, svint16_t,
 /*
 ** dup_7ffe_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #32766
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #32766
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -744,13 +744,13 @@ TEST_UNIFORM_Z (dup_7ffe_s16_z, svint16_t,
 /*
 ** dup_7fff_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #32767
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -779,13 +779,13 @@ TEST_UNIFORM_Z (dup_m128_s16_z, svint16_t,
 /*
 ** dup_m129_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-129
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-129
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -806,13 +806,13 @@ TEST_UNIFORM_Z (dup_m254_s16_z, svint16_t,
 /*
 ** dup_m255_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-255
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -832,13 +832,13 @@ TEST_UNIFORM_Z (dup_m256_s16_z, svint16_t,
 /*
 ** dup_m257_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-257
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-257
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -849,13 +849,13 @@ TEST_UNIFORM_Z (dup_m257_s16_z, svint16_t,
 /*
 ** dup_m258_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+)\.b, #-2
-**     sel     z0\.h, p0, \2\.h, \1\.h
+**     sel     z0\.h, p0, \2\.h, z\1\.h
 ** |
 **     mov     (z[0-9]+)\.b, #-2
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3\.h, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3\.h, z\4\.h
 ** )
 **     ret
 */
@@ -889,13 +889,13 @@ TEST_UNIFORM_Z (dup_m7f00_s16_z, svint16_t,
 /*
 ** dup_m7f01_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-32513
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-32513
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -916,13 +916,13 @@ TEST_UNIFORM_Z (dup_m7ffe_s16_z, svint16_t,
 /*
 ** dup_m7fff_s16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-32767
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -941,7 +941,7 @@ TEST_UNIFORM_Z (dup_m8000_s16_z, svint16_t,
 
 /*
 ** dup_0_s16_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_s16_z, svint16_t,
index 1cfecd962a4853b8eb4e42cd1578e4c26106a965..b9cb1e5883d77d35e3c737e9447eb20e7c0adc0b 100644 (file)
@@ -604,13 +604,13 @@ TEST_UNIFORM_Z (dup_127_s32_z, svint32_t,
 /*
 ** dup_128_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #128
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #128
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -631,13 +631,13 @@ TEST_UNIFORM_Z (dup_253_s32_z, svint32_t,
 /*
 ** dup_254_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #254
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #254
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -648,13 +648,13 @@ TEST_UNIFORM_Z (dup_254_s32_z, svint32_t,
 /*
 ** dup_255_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #255
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -707,13 +707,13 @@ TEST_UNIFORM_Z (dup_7ffd_s32_z, svint32_t,
 /*
 ** dup_7ffe_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #32766
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #32766
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -724,13 +724,13 @@ TEST_UNIFORM_Z (dup_7ffe_s32_z, svint32_t,
 /*
 ** dup_7fff_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #32767
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -759,13 +759,13 @@ TEST_UNIFORM_Z (dup_m128_s32_z, svint32_t,
 /*
 ** dup_m129_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-129
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-129
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -786,13 +786,13 @@ TEST_UNIFORM_Z (dup_m254_s32_z, svint32_t,
 /*
 ** dup_m255_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-255
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -812,13 +812,13 @@ TEST_UNIFORM_Z (dup_m256_s32_z, svint32_t,
 /*
 ** dup_m257_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-257
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-257
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -857,13 +857,13 @@ TEST_UNIFORM_Z (dup_m7f00_s32_z, svint32_t,
 /*
 ** dup_m7f01_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-32513
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-32513
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -884,13 +884,13 @@ TEST_UNIFORM_Z (dup_m7ffe_s32_z, svint32_t,
 /*
 ** dup_m7fff_s32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-32767
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -909,7 +909,7 @@ TEST_UNIFORM_Z (dup_m8000_s32_z, svint32_t,
 
 /*
 ** dup_0_s32_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_s32_z, svint32_t,
index 5189dcf590ab5887cee824b878ccc76473f21737..02271848582a16459d726f9eca6fedc9889a665e 100644 (file)
@@ -604,13 +604,13 @@ TEST_UNIFORM_Z (dup_127_s64_z, svint64_t,
 /*
 ** dup_128_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #128
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #128
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -631,13 +631,13 @@ TEST_UNIFORM_Z (dup_253_s64_z, svint64_t,
 /*
 ** dup_254_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #254
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #254
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -648,13 +648,13 @@ TEST_UNIFORM_Z (dup_254_s64_z, svint64_t,
 /*
 ** dup_255_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #255
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -707,13 +707,13 @@ TEST_UNIFORM_Z (dup_7ffd_s64_z, svint64_t,
 /*
 ** dup_7ffe_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #32766
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #32766
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -724,13 +724,13 @@ TEST_UNIFORM_Z (dup_7ffe_s64_z, svint64_t,
 /*
 ** dup_7fff_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #32767
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -759,13 +759,13 @@ TEST_UNIFORM_Z (dup_m128_s64_z, svint64_t,
 /*
 ** dup_m129_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-129
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-129
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -786,13 +786,13 @@ TEST_UNIFORM_Z (dup_m254_s64_z, svint64_t,
 /*
 ** dup_m255_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-255
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -812,13 +812,13 @@ TEST_UNIFORM_Z (dup_m256_s64_z, svint64_t,
 /*
 ** dup_m257_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-257
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-257
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -857,13 +857,13 @@ TEST_UNIFORM_Z (dup_m7f00_s64_z, svint64_t,
 /*
 ** dup_m7f01_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-32513
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-32513
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -884,13 +884,13 @@ TEST_UNIFORM_Z (dup_m7ffe_s64_z, svint64_t,
 /*
 ** dup_m7fff_s64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-32767
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -909,7 +909,7 @@ TEST_UNIFORM_Z (dup_m8000_s64_z, svint64_t,
 
 /*
 ** dup_0_s64_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_s64_z, svint64_t,
index f3c9db8ead70187dd9ce0e0570ce0e499399bded..66c8c92e27cf95ce235efcc2cb450158ec521f51 100644 (file)
@@ -275,7 +275,7 @@ TEST_UNIFORM_Z (dup_m128_s8_z, svint8_t,
 
 /*
 ** dup_0_s8_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_s8_z, svint8_t,
index 09fecd44b882883cebab33c55c594b3dd09d5a7b..284d0476a9d3c1faccf5d7609d5e6be6e4969a5c 100644 (file)
@@ -612,13 +612,13 @@ TEST_UNIFORM_Z (dup_127_u16_z, svuint16_t,
 /*
 ** dup_128_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #128
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #128
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -639,13 +639,13 @@ TEST_UNIFORM_Z (dup_253_u16_z, svuint16_t,
 /*
 ** dup_254_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #254
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #254
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -656,13 +656,13 @@ TEST_UNIFORM_Z (dup_254_u16_z, svuint16_t,
 /*
 ** dup_255_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #255
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -682,13 +682,13 @@ TEST_UNIFORM_Z (dup_256_u16_z, svuint16_t,
 /*
 ** dup_257_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+)\.b, #1
-**     sel     z0\.h, p0, \2\.h, \1\.h
+**     sel     z0\.h, p0, \2\.h, z\1\.h
 ** |
 **     mov     (z[0-9]+)\.b, #1
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3\.h, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3\.h, z\4\.h
 ** )
 **     ret
 */
@@ -727,13 +727,13 @@ TEST_UNIFORM_Z (dup_7ffd_u16_z, svuint16_t,
 /*
 ** dup_7ffe_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #32766
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #32766
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -744,13 +744,13 @@ TEST_UNIFORM_Z (dup_7ffe_u16_z, svuint16_t,
 /*
 ** dup_7fff_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #32767
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -779,13 +779,13 @@ TEST_UNIFORM_Z (dup_m128_u16_z, svuint16_t,
 /*
 ** dup_m129_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-129
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-129
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -806,13 +806,13 @@ TEST_UNIFORM_Z (dup_m254_u16_z, svuint16_t,
 /*
 ** dup_m255_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-255
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -832,13 +832,13 @@ TEST_UNIFORM_Z (dup_m256_u16_z, svuint16_t,
 /*
 ** dup_m257_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-257
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-257
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -849,13 +849,13 @@ TEST_UNIFORM_Z (dup_m257_u16_z, svuint16_t,
 /*
 ** dup_m258_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+)\.b, #-2
-**     sel     z0\.h, p0, \2\.h, \1\.h
+**     sel     z0\.h, p0, \2\.h, z\1\.h
 ** |
 **     mov     (z[0-9]+)\.b, #-2
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3\.h, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3\.h, z\4\.h
 ** )
 **     ret
 */
@@ -889,13 +889,13 @@ TEST_UNIFORM_Z (dup_m7f00_u16_z, svuint16_t,
 /*
 ** dup_m7f01_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-32513
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-32513
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -916,13 +916,13 @@ TEST_UNIFORM_Z (dup_m7ffe_u16_z, svuint16_t,
 /*
 ** dup_m7fff_u16_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.h), #-32767
-**     sel     z0\.h, p0, \2, \1\.h
+**     sel     z0\.h, p0, \2, z\1\.h
 ** |
 **     mov     (z[0-9]+\.h), #-32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.h, p0, \3, \4\.h
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.h, p0, \3, z\4\.h
 ** )
 **     ret
 */
@@ -941,7 +941,7 @@ TEST_UNIFORM_Z (dup_m8000_u16_z, svuint16_t,
 
 /*
 ** dup_0_u16_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_u16_z, svuint16_t,
index 4b7da13a456b8ca050764b2b75b4b12a93b24952..77f39cc267b55f3834a7a9d33172649120769fcd 100644 (file)
@@ -604,13 +604,13 @@ TEST_UNIFORM_Z (dup_127_u32_z, svuint32_t,
 /*
 ** dup_128_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #128
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #128
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -631,13 +631,13 @@ TEST_UNIFORM_Z (dup_253_u32_z, svuint32_t,
 /*
 ** dup_254_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #254
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #254
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -648,13 +648,13 @@ TEST_UNIFORM_Z (dup_254_u32_z, svuint32_t,
 /*
 ** dup_255_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #255
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -707,13 +707,13 @@ TEST_UNIFORM_Z (dup_7ffd_u32_z, svuint32_t,
 /*
 ** dup_7ffe_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #32766
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #32766
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -724,13 +724,13 @@ TEST_UNIFORM_Z (dup_7ffe_u32_z, svuint32_t,
 /*
 ** dup_7fff_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #32767
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -759,13 +759,13 @@ TEST_UNIFORM_Z (dup_m128_u32_z, svuint32_t,
 /*
 ** dup_m129_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-129
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-129
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -786,13 +786,13 @@ TEST_UNIFORM_Z (dup_m254_u32_z, svuint32_t,
 /*
 ** dup_m255_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-255
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -812,13 +812,13 @@ TEST_UNIFORM_Z (dup_m256_u32_z, svuint32_t,
 /*
 ** dup_m257_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-257
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-257
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -857,13 +857,13 @@ TEST_UNIFORM_Z (dup_m7f00_u32_z, svuint32_t,
 /*
 ** dup_m7f01_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-32513
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-32513
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -884,13 +884,13 @@ TEST_UNIFORM_Z (dup_m7ffe_u32_z, svuint32_t,
 /*
 ** dup_m7fff_u32_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.s), #-32767
-**     sel     z0\.s, p0, \2, \1\.s
+**     sel     z0\.s, p0, \2, z\1\.s
 ** |
 **     mov     (z[0-9]+\.s), #-32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.s, p0, \3, \4\.s
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.s, p0, \3, z\4\.s
 ** )
 **     ret
 */
@@ -909,7 +909,7 @@ TEST_UNIFORM_Z (dup_m8000_u32_z, svuint32_t,
 
 /*
 ** dup_0_u32_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_u32_z, svuint32_t,
index 4d64b40a90bc535dbd653e7b8ca05be1dd456ecd..8b5f458085f63b7e085466e4dce1b5be30427210 100644 (file)
@@ -604,13 +604,13 @@ TEST_UNIFORM_Z (dup_127_u64_z, svuint64_t,
 /*
 ** dup_128_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #128
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #128
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -631,13 +631,13 @@ TEST_UNIFORM_Z (dup_253_u64_z, svuint64_t,
 /*
 ** dup_254_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #254
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #254
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -648,13 +648,13 @@ TEST_UNIFORM_Z (dup_254_u64_z, svuint64_t,
 /*
 ** dup_255_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #255
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -707,13 +707,13 @@ TEST_UNIFORM_Z (dup_7ffd_u64_z, svuint64_t,
 /*
 ** dup_7ffe_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #32766
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #32766
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -724,13 +724,13 @@ TEST_UNIFORM_Z (dup_7ffe_u64_z, svuint64_t,
 /*
 ** dup_7fff_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #32767
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -759,13 +759,13 @@ TEST_UNIFORM_Z (dup_m128_u64_z, svuint64_t,
 /*
 ** dup_m129_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-129
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-129
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -786,13 +786,13 @@ TEST_UNIFORM_Z (dup_m254_u64_z, svuint64_t,
 /*
 ** dup_m255_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-255
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-255
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -812,13 +812,13 @@ TEST_UNIFORM_Z (dup_m256_u64_z, svuint64_t,
 /*
 ** dup_m257_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-257
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-257
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -857,13 +857,13 @@ TEST_UNIFORM_Z (dup_m7f00_u64_z, svuint64_t,
 /*
 ** dup_m7f01_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-32513
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-32513
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -884,13 +884,13 @@ TEST_UNIFORM_Z (dup_m7ffe_u64_z, svuint64_t,
 /*
 ** dup_m7fff_u64_z:
 ** (
-**     mov     (z[0-9]+)\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     mov     (z[0-9]+\.d), #-32767
-**     sel     z0\.d, p0, \2, \1\.d
+**     sel     z0\.d, p0, \2, z\1\.d
 ** |
 **     mov     (z[0-9]+\.d), #-32767
-**     mov     (z[0-9]+)\.b, #0
-**     sel     z0\.d, p0, \3, \4\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sel     z0\.d, p0, \3, z\4\.d
 ** )
 **     ret
 */
@@ -909,7 +909,7 @@ TEST_UNIFORM_Z (dup_m8000_u64_z, svuint64_t,
 
 /*
 ** dup_0_u64_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_u64_z, svuint64_t,
index 1bb4cc1bd794ff9a36d52d44bbfcb723e78c01df..8f2be55f23dcccff07dd6c078358839b1467610e 100644 (file)
@@ -275,7 +275,7 @@ TEST_UNIFORM_Z (dup_m128_u8_z, svuint8_t,
 
 /*
 ** dup_0_u8_z:
-**     mov     z0\.[bhsd], #0
+**     movi?   [vdz]0\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 TEST_UNIFORM_Z (dup_0_u8_z, svuint8_t,
index 92e0005c0fee325928b000ef5547446fcd1bf442..0667f47b941c6a73e91c2ed8b21484d3dcff0105 100644 (file)
@@ -15,7 +15,7 @@ svint64_t s64_x_pg (svbool_t pg)
 
 /*
 ** s64_x_pg_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_0 (svbool_t pg)
@@ -25,7 +25,7 @@ svint64_t s64_x_pg_0 (svbool_t pg)
 
 /*
 ** s64_x_pg_by0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_by0 (svbool_t pg)
@@ -45,7 +45,7 @@ svint64_t s64_z_pg (svbool_t pg)
 
 /*
 ** s64_z_pg_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_0 (svbool_t pg)
@@ -55,7 +55,7 @@ svint64_t s64_z_pg_0 (svbool_t pg)
 
 /*
 ** s64_z_pg_by0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_by0 (svbool_t pg)
@@ -117,7 +117,7 @@ svint64_t s64_x_pg_n (svbool_t pg)
 
 /*
 ** s64_x_pg_n_s64_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_n_s64_0 (svbool_t pg)
@@ -127,7 +127,7 @@ svint64_t s64_x_pg_n_s64_0 (svbool_t pg)
 
 /*
 ** s64_x_pg_n_s64_by0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_n_s64_by0 (svbool_t pg)
@@ -147,7 +147,7 @@ svint64_t s64_z_pg_n (svbool_t pg)
 
 /*
 ** s64_z_pg_n_s64_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_n_s64_0 (svbool_t pg)
@@ -157,7 +157,7 @@ svint64_t s64_z_pg_n_s64_0 (svbool_t pg)
 
 /*
 ** s64_z_pg_n_s64_by0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_n_s64_by0 (svbool_t pg)
@@ -209,7 +209,7 @@ svint64_t s64_m_ptrue_n ()
 
 /*
 ** s32_m_ptrue_dupq:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint32_t s32_m_ptrue_dupq ()
index 2a00cab5a79df8ae4e73462d86f567a7675b0d4e..07f161ab5433412c1ffc5e4768a93d487f415d3b 100644 (file)
@@ -15,7 +15,7 @@ svint64_t s64_x_pg (svbool_t pg)
 
 /*
 ** s64_x_pg_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_0 (svbool_t pg)
@@ -35,7 +35,7 @@ svint64_t s64_z_pg (svbool_t pg)
 
 /*
 ** s64_z_pg_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_0 (svbool_t pg)
@@ -97,7 +97,7 @@ svint64_t s64_x_pg_n (svbool_t pg)
 
 /*
 ** s64_x_pg_n_s64_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_n_s64_0 (svbool_t pg)
@@ -117,7 +117,7 @@ svint64_t s64_z_pg_n (svbool_t pg)
 
 /*
 ** s64_z_pg_n_s64_0:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_n_s64_0 (svbool_t pg)
index 3b8854ebc3169565ef3f585969c89935f14d1e87..663e988871c88f60c8ab6f47c495e9089112a118 100644 (file)
@@ -99,7 +99,7 @@ DEF_SET_IMM (int32_t, -32763, imm_m32763)
 
 /* { dg-final { scan-assembler {\tmov\tz[0-9]+\.b, #-1\n} } } */
 
-/* { dg-final { scan-assembler {\tmov\tz[0-9]+\.b, #0\n} } } */
+/* { dg-final { scan-assembler {\tmov(?:i\td|\tz)([0-9]+)(?:\.[bhsd])?, #0\n} } } */
 
 /* { dg-final { scan-assembler {\tmov\tz[0-9]+\.b, #1\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz[0-9]+\.h, #1\n} } } */
index c13efd86919466f193581d14c6a86c0f227a9648..51a5e392b48c74e3f0865307ba082a1aaed25d41 100644 (file)
@@ -47,8 +47,6 @@ DEF_SET_IMM_FP (0x1.1fp-4, imm1fpm4)
 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.s, #3.1e\+1\n} 1 } } */
 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.s, #2.421875e-1\n} 1 } } */
 
-/* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.s, #0\n} 1 } } */
-
 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.d,} 7 } } */
 
 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.d, #1.0e\+0\n} 1 } } */
@@ -59,4 +57,4 @@ DEF_SET_IMM_FP (0x1.1fp-4, imm1fpm4)
 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.d, #3.1e\+1\n} 1 } } */
 /* { dg-final { scan-assembler-times {\tfmov\tz[0-9]+\.d, #2.421875e-1\n} 1 } } */
 
-/* { dg-final { scan-assembler-times {\tmov\tz[0-9]+\.d, #0\n} 1 } } */
+/* { dg-final { scan-assembler-times {\tmov(?:i\td|\tz)([0-9]+)(?:\.[bhsd])?, #0\n} 2 } } */
index 0dcd018cadc8d35b23a796900d821415530ff7b4..f1235fc1755e5b5877e49f94f8e657aed656f80b 100644 (file)
@@ -5,7 +5,7 @@
 
 /*
 ** s64_x_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_op1 (svbool_t pg, svint64_t op2)
@@ -15,7 +15,7 @@ svint64_t s64_x_pg_op1 (svbool_t pg, svint64_t op2)
 
 /*
 ** s64_z_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_op1 (svbool_t pg, svint64_t op2)
@@ -25,7 +25,7 @@ svint64_t s64_z_pg_op1 (svbool_t pg, svint64_t op2)
 
 /*
 ** s64_m_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_m_pg_op1 (svbool_t pg, svint64_t op2)
@@ -35,7 +35,7 @@ svint64_t s64_m_pg_op1 (svbool_t pg, svint64_t op2)
 
 /*
 ** s64_x_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_ptrue_op1 (svint64_t op2)
@@ -45,7 +45,7 @@ svint64_t s64_x_ptrue_op1 (svint64_t op2)
 
 /*
 ** s64_z_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_ptrue_op1 (svint64_t op2)
@@ -55,7 +55,7 @@ svint64_t s64_z_ptrue_op1 (svint64_t op2)
 
 /*
 ** s64_m_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_m_ptrue_op1 (svint64_t op2)
@@ -65,7 +65,7 @@ svint64_t s64_m_ptrue_op1 (svint64_t op2)
 
 /*
 ** s64_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_op2 (svbool_t pg, svint64_t op1)
@@ -75,7 +75,7 @@ svint64_t s64_x_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_op2 (svbool_t pg, svint64_t op1)
@@ -85,8 +85,8 @@ svint64_t s64_z_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_m_pg_op2:
-**     mov     (z[0-9]+)\.b, #0
-**     sdiv    (z[0-9]\.d), p[0-7]/m, \2, \1\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sdiv    (z[0-9]\.d), p[0-7]/m, \2, z\1\.d
 **     ret
 */
 svint64_t s64_m_pg_op2 (svbool_t pg, svint64_t op1)
@@ -96,7 +96,7 @@ svint64_t s64_m_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_ptrue_op2 (svint64_t op1)
@@ -106,7 +106,7 @@ svint64_t s64_x_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_ptrue_op2 (svint64_t op1)
@@ -116,7 +116,7 @@ svint64_t s64_z_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_m_ptrue_op2 (svint64_t op1)
@@ -126,7 +126,7 @@ svint64_t s64_m_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_n_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_x_pg_op2 (svbool_t pg, svint64_t op1)
@@ -136,7 +136,7 @@ svint64_t s64_n_x_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_n_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_z_pg_op2 (svbool_t pg, svint64_t op1)
@@ -146,8 +146,8 @@ svint64_t s64_n_z_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_n_m_pg_op2:
-**     mov     (z[0-9]+)\.b, #0
-**     sdiv    (z[0-9]+\.d), p[0-7]/m, \2, \1\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     sdiv    (z[0-9]+\.d), p[0-7]/m, \2, z\1\.d
 **     ret
 */
 svint64_t s64_n_m_pg_op2 (svbool_t pg, svint64_t op1)
@@ -157,7 +157,7 @@ svint64_t s64_n_m_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_n_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_x_ptrue_op2 (svint64_t op1)
@@ -167,7 +167,7 @@ svint64_t s64_n_x_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_n_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_z_ptrue_op2 (svint64_t op1)
@@ -177,7 +177,7 @@ svint64_t s64_n_z_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_n_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_m_ptrue_op2 (svint64_t op1)
@@ -187,7 +187,7 @@ svint64_t s64_n_m_ptrue_op2 (svint64_t op1)
 
 /*
 ** u64_x_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_pg_op1 (svbool_t pg, svuint64_t op2)
@@ -197,7 +197,7 @@ svuint64_t u64_x_pg_op1 (svbool_t pg, svuint64_t op2)
 
 /*
 ** u64_z_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_pg_op1 (svbool_t pg, svuint64_t op2)
@@ -207,7 +207,7 @@ svuint64_t u64_z_pg_op1 (svbool_t pg, svuint64_t op2)
 
 /*
 ** u64_m_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_m_pg_op1 (svbool_t pg, svuint64_t op2)
@@ -217,7 +217,7 @@ svuint64_t u64_m_pg_op1 (svbool_t pg, svuint64_t op2)
 
 /*
 ** u64_x_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_ptrue_op1 (svuint64_t op2)
@@ -227,7 +227,7 @@ svuint64_t u64_x_ptrue_op1 (svuint64_t op2)
 
 /*
 ** u64_z_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_ptrue_op1 (svuint64_t op2)
@@ -237,7 +237,7 @@ svuint64_t u64_z_ptrue_op1 (svuint64_t op2)
 
 /*
 ** u64_m_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_m_ptrue_op1 (svuint64_t op2)
@@ -247,7 +247,7 @@ svuint64_t u64_m_ptrue_op1 (svuint64_t op2)
 
 /*
 ** u64_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -257,7 +257,7 @@ svuint64_t u64_x_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -267,8 +267,8 @@ svuint64_t u64_z_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_m_pg_op2:
-**     mov     (z[0-9]+)\.b, #0
-**     udiv    (z[0-9]+\.d), p[0-7]/m, \2, \1\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     udiv    (z[0-9]+\.d), p[0-7]/m, \2, z\1\.d
 **     ret
 */
 svuint64_t u64_m_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -278,7 +278,7 @@ svuint64_t u64_m_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_ptrue_op2 (svuint64_t op1)
@@ -288,7 +288,7 @@ svuint64_t u64_x_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_ptrue_op2 (svuint64_t op1)
@@ -298,7 +298,7 @@ svuint64_t u64_z_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_m_ptrue_op2 (svuint64_t op1)
@@ -308,7 +308,7 @@ svuint64_t u64_m_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_n_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_x_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -318,7 +318,7 @@ svuint64_t u64_n_x_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_n_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_z_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -328,8 +328,8 @@ svuint64_t u64_n_z_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_n_m_pg_op2:
-**     mov     (z[0-9]+)\.b, #0
-**     udiv    (z[0-9]+\.d), p[0-7]/m, \2, \1\.d
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
+**     udiv    (z[0-9]+\.d), p[0-7]/m, \2, z\1\.d
 **     ret
 */
 svuint64_t u64_n_m_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -339,7 +339,7 @@ svuint64_t u64_n_m_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_n_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_x_ptrue_op2 (svuint64_t op1)
@@ -349,7 +349,7 @@ svuint64_t u64_n_x_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_n_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_z_ptrue_op2 (svuint64_t op1)
@@ -359,7 +359,7 @@ svuint64_t u64_n_z_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_n_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_m_ptrue_op2 (svuint64_t op1)
index a5674fd4c2fc30606684c1c92b823425b4e139fc..5aa2376fa6146c565a58194a8ccf366854001f60 100644 (file)
@@ -5,7 +5,7 @@
 
 /*
 ** s64_x_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_op1 (svbool_t pg, svint64_t op2)
@@ -15,7 +15,7 @@ svint64_t s64_x_pg_op1 (svbool_t pg, svint64_t op2)
 
 /*
 ** s64_z_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_op1 (svbool_t pg, svint64_t op2)
@@ -25,7 +25,7 @@ svint64_t s64_z_pg_op1 (svbool_t pg, svint64_t op2)
 
 /*
 ** s64_m_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_m_pg_op1 (svbool_t pg, svint64_t op2)
@@ -35,7 +35,7 @@ svint64_t s64_m_pg_op1 (svbool_t pg, svint64_t op2)
 
 /*
 ** s64_x_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_ptrue_op1 (svint64_t op2)
@@ -45,7 +45,7 @@ svint64_t s64_x_ptrue_op1 (svint64_t op2)
 
 /*
 ** s64_z_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_ptrue_op1 (svint64_t op2)
@@ -55,7 +55,7 @@ svint64_t s64_z_ptrue_op1 (svint64_t op2)
 
 /*
 ** s64_m_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_m_ptrue_op1 (svint64_t op2)
@@ -65,7 +65,7 @@ svint64_t s64_m_ptrue_op1 (svint64_t op2)
 
 /*
 ** s64_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_pg_op2 (svbool_t pg, svint64_t op1)
@@ -75,7 +75,7 @@ svint64_t s64_x_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_pg_op2 (svbool_t pg, svint64_t op1)
@@ -95,7 +95,7 @@ svint64_t s64_m_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_x_ptrue_op2 (svint64_t op1)
@@ -105,7 +105,7 @@ svint64_t s64_x_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_z_ptrue_op2 (svint64_t op1)
@@ -115,7 +115,7 @@ svint64_t s64_z_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_m_ptrue_op2 (svint64_t op1)
@@ -125,7 +125,7 @@ svint64_t s64_m_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_n_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_x_pg_op2 (svbool_t pg, svint64_t op1)
@@ -135,7 +135,7 @@ svint64_t s64_n_x_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_n_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_z_pg_op2 (svbool_t pg, svint64_t op1)
@@ -155,7 +155,7 @@ svint64_t s64_n_m_pg_op2 (svbool_t pg, svint64_t op1)
 
 /*
 ** s64_n_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_x_ptrue_op2 (svint64_t op1)
@@ -165,7 +165,7 @@ svint64_t s64_n_x_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_n_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_z_ptrue_op2 (svint64_t op1)
@@ -175,7 +175,7 @@ svint64_t s64_n_z_ptrue_op2 (svint64_t op1)
 
 /*
 ** s64_n_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svint64_t s64_n_m_ptrue_op2 (svint64_t op1)
@@ -185,7 +185,7 @@ svint64_t s64_n_m_ptrue_op2 (svint64_t op1)
 
 /*
 ** u64_x_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_pg_op1 (svbool_t pg, svuint64_t op2)
@@ -195,7 +195,7 @@ svuint64_t u64_x_pg_op1 (svbool_t pg, svuint64_t op2)
 
 /*
 ** u64_z_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_pg_op1 (svbool_t pg, svuint64_t op2)
@@ -205,7 +205,7 @@ svuint64_t u64_z_pg_op1 (svbool_t pg, svuint64_t op2)
 
 /*
 ** u64_m_pg_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_m_pg_op1 (svbool_t pg, svuint64_t op2)
@@ -215,7 +215,7 @@ svuint64_t u64_m_pg_op1 (svbool_t pg, svuint64_t op2)
 
 /*
 ** u64_x_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_ptrue_op1 (svuint64_t op2)
@@ -225,7 +225,7 @@ svuint64_t u64_x_ptrue_op1 (svuint64_t op2)
 
 /*
 ** u64_z_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_ptrue_op1 (svuint64_t op2)
@@ -235,7 +235,7 @@ svuint64_t u64_z_ptrue_op1 (svuint64_t op2)
 
 /*
 ** u64_m_ptrue_op1:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_m_ptrue_op1 (svuint64_t op2)
@@ -245,7 +245,7 @@ svuint64_t u64_m_ptrue_op1 (svuint64_t op2)
 
 /*
 ** u64_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -255,7 +255,7 @@ svuint64_t u64_x_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -275,7 +275,7 @@ svuint64_t u64_m_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_x_ptrue_op2 (svuint64_t op1)
@@ -285,7 +285,7 @@ svuint64_t u64_x_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_z_ptrue_op2 (svuint64_t op1)
@@ -295,7 +295,7 @@ svuint64_t u64_z_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_m_ptrue_op2 (svuint64_t op1)
@@ -305,7 +305,7 @@ svuint64_t u64_m_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_n_x_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_x_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -315,7 +315,7 @@ svuint64_t u64_n_x_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_n_z_pg_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_z_pg_op2 (svbool_t pg, svuint64_t op1)
@@ -335,7 +335,7 @@ svuint64_t u64_n_m_pg_op2 (svbool_t pg, svuint64_t op1)
 
 /*
 ** u64_n_x_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_x_ptrue_op2 (svuint64_t op1)
@@ -345,7 +345,7 @@ svuint64_t u64_n_x_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_n_z_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_z_ptrue_op2 (svuint64_t op1)
@@ -355,7 +355,7 @@ svuint64_t u64_n_z_ptrue_op2 (svuint64_t op1)
 
 /*
 ** u64_n_m_ptrue_op2:
-**     mov     z[0-9]+\.b, #0
+**     movi?   [vdz]([0-9]+)\.?(?:[0-9]*[bhsd])?, #?0
 **     ret
 */
 svuint64_t u64_n_m_ptrue_op2 (svuint64_t op1)
index 3ad4454f8b125beb4bcfd18f25c82d47662b8159..6cc1be01c9f39a24e1d132a58e829a6f2fe1ee17 100644 (file)
@@ -55,7 +55,7 @@ caller_int (int8_t *x0, int16_t *x1, int32_t *x2, int64_t *x3)
              svptrue_pat_b32 (SV_VL3));
 }
 
-/* { dg-final { scan-assembler {\tmov\tz0\.b, #0\n} } } */
+/* { dg-final { scan-assembler {\tmov(\tz0\.b|i\td0), #0\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz1\.h, #1\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz2\.s, #2\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz3\.d, #3\n} } } */
index 56896c93b527dd4b3eeb11de02cc78522704e648..86d820415fdd0a7b6e100b8bb4e64a06d2881734 100644 (file)
@@ -55,7 +55,7 @@ caller_uint (uint8_t *x0, uint16_t *x1, uint32_t *x2, uint64_t *x3)
               svptrue_pat_b32 (SV_VL3));
 }
 
-/* { dg-final { scan-assembler {\tmov\tz0\.b, #0\n} } } */
+/* { dg-final { scan-assembler {\tmov(\tz0\.b|i\td0), #0\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz1\.h, #1\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz2\.s, #2\n} } } */
 /* { dg-final { scan-assembler {\tmov\tz3\.d, #3\n} } } */
index 7213c8695c15db091acc583dffef8c6d76c33c33..5b6120d6f41b71c4936c7bbf48622568cf8ad4f9 100644 (file)
@@ -55,7 +55,7 @@ caller_float (float16_t *x0, float16_t *x1, float32_t *x2, float64_t *x3)
                svptrue_pat_b32 (SV_VL3));
 }
 
-/* { dg-final { scan-assembler {\tmov\tz0\.[bhsd], #0\n} } } */
+/* { dg-final { scan-assembler {\tmov(\tz0\.[bhsd]|i\td0), #0\n} } } */
 /* { dg-final { scan-assembler {\tfmov\tz1\.h, #1\.0} } } */
 /* { dg-final { scan-assembler {\tfmov\tz2\.s, #2\.0} } } */
 /* { dg-final { scan-assembler {\tfmov\tz3\.d, #3\.0} } } */
index a51aa33c2fee95d93db2ab33b05a7db68823739c..f9f7ecf3ccbf8d478d17cf3700267b4a7b751b2f 100644 (file)
@@ -14,5 +14,5 @@ foo (double *output)
     output[i] = 0.0;
 }
 
-/* { dg-final { scan-assembler "movi\\tv\[0-9\]+\\.2d, 0" } } */
+/* { dg-final { scan-assembler {movi\tv[0-9]+\.\d+[bhsd], 0} } } */
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */