public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] cleanup: Change LEN_MASK into MASK_LEN
@ 2023-07-20 23:20 Juzhe-Zhong
  2023-07-21  6:19 ` Richard Biener
  0 siblings, 1 reply; 3+ messages in thread
From: Juzhe-Zhong @ 2023-07-20 23:20 UTC (permalink / raw)
  To: gcc-patches; +Cc: jeffreyalaw, rguenther, richard.sandiford, Juzhe-Zhong

Hi.

Since start from LEN_MASK_GATHER_LOAD/LEN_MASK_SCATTER_STORE, COND_LEN_* patterns,
the order of len and mask is {mask,len,bias}.

The reason we make "mask" argument comes before "len" is because we want to keep
the "mask" location same as mask_* or cond_* patterns to make use of current codes flow
of mask_* and cond_*. Otherwise, we will need to change codes much more and make codes
hard to maintain.

Now, we already have COND_LEN_*, it's naturally that we should rename "LEN_MASK" into "MASK_LEN"
to keep name scheme consistent.

This patch only changes the name "LEN_MASK" into "MASK_LEN".
No codes functionality change.

gcc/ChangeLog:

        * config/riscv/autovec.md (len_maskload<mode><vm>): Change LEN_MASK into MASK_LEN.
        (mask_len_load<mode><vm>): Ditto.
        (len_maskstore<mode><vm>): Ditto.
        (mask_len_store<mode><vm>): Ditto.
        (len_mask_gather_load<RATIO64:mode><RATIO64I:mode>): Ditto.
        (mask_len_gather_load<RATIO64:mode><RATIO64I:mode>): Ditto.
        (len_mask_gather_load<RATIO32:mode><RATIO32I:mode>): Ditto.
        (mask_len_gather_load<RATIO32:mode><RATIO32I:mode>): Ditto.
        (len_mask_gather_load<RATIO16:mode><RATIO16I:mode>): Ditto.
        (mask_len_gather_load<RATIO16:mode><RATIO16I:mode>): Ditto.
        (len_mask_gather_load<RATIO8:mode><RATIO8I:mode>): Ditto.
        (mask_len_gather_load<RATIO8:mode><RATIO8I:mode>): Ditto.
        (len_mask_gather_load<RATIO4:mode><RATIO4I:mode>): Ditto.
        (mask_len_gather_load<RATIO4:mode><RATIO4I:mode>): Ditto.
        (len_mask_gather_load<RATIO2:mode><RATIO2I:mode>): Ditto.
        (mask_len_gather_load<RATIO2:mode><RATIO2I:mode>): Ditto.
        (len_mask_gather_load<RATIO1:mode><RATIO1:mode>): Ditto.
        (mask_len_gather_load<RATIO1:mode><RATIO1:mode>): Ditto.
        (len_mask_scatter_store<RATIO64:mode><RATIO64I:mode>): Ditto.
        (mask_len_scatter_store<RATIO64:mode><RATIO64I:mode>): Ditto.
        (len_mask_scatter_store<RATIO32:mode><RATIO32I:mode>): Ditto.
        (mask_len_scatter_store<RATIO32:mode><RATIO32I:mode>): Ditto.
        (len_mask_scatter_store<RATIO16:mode><RATIO16I:mode>): Ditto.
        (mask_len_scatter_store<RATIO16:mode><RATIO16I:mode>): Ditto.
        (len_mask_scatter_store<RATIO8:mode><RATIO8I:mode>): Ditto.
        (mask_len_scatter_store<RATIO8:mode><RATIO8I:mode>): Ditto.
        (len_mask_scatter_store<RATIO4:mode><RATIO4I:mode>): Ditto.
        (mask_len_scatter_store<RATIO4:mode><RATIO4I:mode>): Ditto.
        (len_mask_scatter_store<RATIO2:mode><RATIO2I:mode>): Ditto.
        (mask_len_scatter_store<RATIO2:mode><RATIO2I:mode>): Ditto.
        (len_mask_scatter_store<RATIO1:mode><RATIO1:mode>): Ditto.
        (mask_len_scatter_store<RATIO1:mode><RATIO1:mode>): Ditto.
        * doc/md.texi: Ditto.
        * genopinit.cc (main): Ditto.
        (CMP_NAME): Ditto. Ditto.
        * gimple-fold.cc (arith_overflowed_p): Ditto.
        (gimple_fold_partial_load_store_mem_ref): Ditto.
        (gimple_fold_call): Ditto.
        * internal-fn.cc (len_maskload_direct): Ditto.
        (mask_len_load_direct): Ditto.
        (len_maskstore_direct): Ditto.
        (mask_len_store_direct): Ditto.
        (expand_call_mem_ref): Ditto.
        (expand_len_maskload_optab_fn): Ditto.
        (expand_mask_len_load_optab_fn): Ditto.
        (expand_len_maskstore_optab_fn): Ditto.
        (expand_mask_len_store_optab_fn): Ditto.
        (direct_len_maskload_optab_supported_p): Ditto.
        (direct_mask_len_load_optab_supported_p): Ditto.
        (direct_len_maskstore_optab_supported_p): Ditto.
        (direct_mask_len_store_optab_supported_p): Ditto.
        (internal_load_fn_p): Ditto.
        (internal_store_fn_p): Ditto.
        (internal_gather_scatter_fn_p): Ditto.
        (internal_fn_len_index): Ditto.
        (internal_fn_mask_index): Ditto.
        (internal_fn_stored_value_index): Ditto.
        (internal_len_load_store_bias): Ditto.
        * internal-fn.def (LEN_MASK_GATHER_LOAD): Ditto.
        (MASK_LEN_GATHER_LOAD): Ditto.
        (LEN_MASK_LOAD): Ditto.
        (MASK_LEN_LOAD): Ditto.
        (LEN_MASK_SCATTER_STORE): Ditto.
        (MASK_LEN_SCATTER_STORE): Ditto.
        (LEN_MASK_STORE): Ditto.
        (MASK_LEN_STORE): Ditto.
        * optabs-query.cc (supports_vec_gather_load_p): Ditto.
        (supports_vec_scatter_store_p): Ditto.
        * optabs-tree.cc (target_supports_mask_load_store_p): Ditto.
        (target_supports_len_load_store_p): Ditto.
        * optabs.def (OPTAB_CD): Ditto.
        * tree-ssa-alias.cc (ref_maybe_used_by_call_p_1): Ditto.
        (call_may_clobber_ref_p_1): Ditto.
        * tree-ssa-dse.cc (initialize_ao_ref_for_dse): Ditto.
        (dse_optimize_stmt): Ditto.
        * tree-ssa-loop-ivopts.cc (get_mem_type_for_internal_fn): Ditto.
        (get_alias_ptr_type_for_ptr_address): Ditto.
        * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Ditto.
        * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Ditto.
        * tree-vect-stmts.cc (check_load_store_for_partial_vectors): Ditto.
        (vect_get_strided_load_store_ops): Ditto.
        (vectorizable_store): Ditto.
        (vectorizable_load): Ditto.

gcc/testsuite/ChangeLog:

        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c: Ditto.
        * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: Ditto.
        * gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c: Ditto.

---
 gcc/config/riscv/autovec.md                   | 32 +++++------
 gcc/doc/md.texi                               | 18 +++---
 gcc/genopinit.cc                              |  6 +-
 gcc/gimple-fold.cc                            | 12 ++--
 gcc/internal-fn.cc                            | 56 +++++++++----------
 gcc/internal-fn.def                           | 20 +++----
 gcc/optabs-query.cc                           |  4 +-
 gcc/optabs-tree.cc                            | 20 +++----
 gcc/optabs.def                                |  8 +--
 .../autovec/gather-scatter/gather_load-1.c    |  2 +-
 .../autovec/gather-scatter/gather_load-10.c   |  2 +-
 .../autovec/gather-scatter/gather_load-11.c   |  2 +-
 .../autovec/gather-scatter/gather_load-12.c   |  2 +-
 .../autovec/gather-scatter/gather_load-2.c    |  2 +-
 .../autovec/gather-scatter/gather_load-3.c    |  2 +-
 .../autovec/gather-scatter/gather_load-4.c    |  2 +-
 .../autovec/gather-scatter/gather_load-5.c    |  2 +-
 .../autovec/gather-scatter/gather_load-6.c    |  2 +-
 .../autovec/gather-scatter/gather_load-7.c    |  2 +-
 .../autovec/gather-scatter/gather_load-8.c    |  2 +-
 .../autovec/gather-scatter/gather_load-9.c    |  2 +-
 .../gather-scatter/mask_gather_load-1.c       |  2 +-
 .../gather-scatter/mask_gather_load-10.c      |  2 +-
 .../gather-scatter/mask_gather_load-11.c      |  2 +-
 .../gather-scatter/mask_gather_load-2.c       |  2 +-
 .../gather-scatter/mask_gather_load-3.c       |  2 +-
 .../gather-scatter/mask_gather_load-4.c       |  2 +-
 .../gather-scatter/mask_gather_load-5.c       |  2 +-
 .../gather-scatter/mask_gather_load-6.c       |  2 +-
 .../gather-scatter/mask_gather_load-7.c       |  2 +-
 .../gather-scatter/mask_gather_load-8.c       |  2 +-
 .../gather-scatter/mask_gather_load-9.c       |  2 +-
 .../gather-scatter/mask_scatter_store-1.c     |  2 +-
 .../gather-scatter/mask_scatter_store-10.c    |  2 +-
 .../gather-scatter/mask_scatter_store-2.c     |  2 +-
 .../gather-scatter/mask_scatter_store-3.c     |  2 +-
 .../gather-scatter/mask_scatter_store-4.c     |  2 +-
 .../gather-scatter/mask_scatter_store-5.c     |  2 +-
 .../gather-scatter/mask_scatter_store-6.c     |  2 +-
 .../gather-scatter/mask_scatter_store-7.c     |  2 +-
 .../gather-scatter/mask_scatter_store-8.c     |  2 +-
 .../gather-scatter/mask_scatter_store-9.c     |  2 +-
 .../autovec/gather-scatter/scatter_store-1.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-10.c |  2 +-
 .../autovec/gather-scatter/scatter_store-2.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-3.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-4.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-5.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-6.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-7.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-8.c  |  2 +-
 .../autovec/gather-scatter/scatter_store-9.c  |  2 +-
 .../autovec/gather-scatter/strided_load-1.c   |  2 +-
 .../autovec/gather-scatter/strided_load-2.c   |  2 +-
 .../autovec/gather-scatter/strided_store-1.c  |  2 +-
 .../autovec/gather-scatter/strided_store-2.c  |  2 +-
 .../riscv/rvv/autovec/partial/gimple_fold-1.c |  2 +-
 gcc/tree-ssa-alias.cc                         |  6 +-
 gcc/tree-ssa-dse.cc                           |  4 +-
 gcc/tree-ssa-loop-ivopts.cc                   |  8 +--
 gcc/tree-vect-data-refs.cc                    | 12 ++--
 gcc/tree-vect-patterns.cc                     |  4 +-
 gcc/tree-vect-stmts.cc                        | 34 +++++------
 63 files changed, 170 insertions(+), 170 deletions(-)

diff --git a/gcc/config/riscv/autovec.md b/gcc/config/riscv/autovec.md
index 667a877d009..7eb96d42c18 100644
--- a/gcc/config/riscv/autovec.md
+++ b/gcc/config/riscv/autovec.md
@@ -22,7 +22,7 @@
 ;; == Loads/Stores
 ;; =========================================================================
 
-(define_expand "len_maskload<mode><vm>"
+(define_expand "mask_len_load<mode><vm>"
   [(match_operand:V 0 "register_operand")
    (match_operand:V 1 "memory_operand")
    (match_operand 2 "autovec_length_operand")
@@ -34,7 +34,7 @@
   DONE;
 })
 
-(define_expand "len_maskstore<mode><vm>"
+(define_expand "mask_len_store<mode><vm>"
   [(match_operand:V 0 "memory_operand")
    (match_operand:V 1 "register_operand")
    (match_operand 2 "autovec_length_operand")
@@ -61,7 +61,7 @@
 ;; == Gather Load
 ;; =========================================================================
 
-(define_expand "len_mask_gather_load<RATIO64:mode><RATIO64I:mode>"
+(define_expand "mask_len_gather_load<RATIO64:mode><RATIO64I:mode>"
   [(match_operand:RATIO64 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO64I 2 "register_operand")
@@ -76,7 +76,7 @@
   DONE;
 })
 
-(define_expand "len_mask_gather_load<RATIO32:mode><RATIO32I:mode>"
+(define_expand "mask_len_gather_load<RATIO32:mode><RATIO32I:mode>"
   [(match_operand:RATIO32 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO32I 2 "register_operand")
@@ -91,7 +91,7 @@
   DONE;
 })
 
-(define_expand "len_mask_gather_load<RATIO16:mode><RATIO16I:mode>"
+(define_expand "mask_len_gather_load<RATIO16:mode><RATIO16I:mode>"
   [(match_operand:RATIO16 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO16I 2 "register_operand")
@@ -106,7 +106,7 @@
   DONE;
 })
 
-(define_expand "len_mask_gather_load<RATIO8:mode><RATIO8I:mode>"
+(define_expand "mask_len_gather_load<RATIO8:mode><RATIO8I:mode>"
   [(match_operand:RATIO8 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO8I 2 "register_operand")
@@ -121,7 +121,7 @@
   DONE;
 })
 
-(define_expand "len_mask_gather_load<RATIO4:mode><RATIO4I:mode>"
+(define_expand "mask_len_gather_load<RATIO4:mode><RATIO4I:mode>"
   [(match_operand:RATIO4 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO4I 2 "register_operand")
@@ -136,7 +136,7 @@
   DONE;
 })
 
-(define_expand "len_mask_gather_load<RATIO2:mode><RATIO2I:mode>"
+(define_expand "mask_len_gather_load<RATIO2:mode><RATIO2I:mode>"
   [(match_operand:RATIO2 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO2I 2 "register_operand")
@@ -155,7 +155,7 @@
 ;; larger SEW. Since RVV indexed load/store support zero extend
 ;; implicitly and not support scaling, we should only allow
 ;; operands[3] and operands[4] to be const_1_operand.
-(define_expand "len_mask_gather_load<RATIO1:mode><RATIO1:mode>"
+(define_expand "mask_len_gather_load<RATIO1:mode><RATIO1:mode>"
   [(match_operand:RATIO1 0 "register_operand")
    (match_operand 1 "pmode_reg_or_0_operand")
    (match_operand:RATIO1 2 "register_operand")
@@ -174,7 +174,7 @@
 ;; == Scatter Store
 ;; =========================================================================
 
-(define_expand "len_mask_scatter_store<RATIO64:mode><RATIO64I:mode>"
+(define_expand "mask_len_scatter_store<RATIO64:mode><RATIO64I:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO64I 1 "register_operand")
    (match_operand 2 "<RATIO64:gs_extension>")
@@ -189,7 +189,7 @@
   DONE;
 })
 
-(define_expand "len_mask_scatter_store<RATIO32:mode><RATIO32I:mode>"
+(define_expand "mask_len_scatter_store<RATIO32:mode><RATIO32I:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO32I 1 "register_operand")
    (match_operand 2 "<RATIO32:gs_extension>")
@@ -204,7 +204,7 @@
   DONE;
 })
 
-(define_expand "len_mask_scatter_store<RATIO16:mode><RATIO16I:mode>"
+(define_expand "mask_len_scatter_store<RATIO16:mode><RATIO16I:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO16I 1 "register_operand")
    (match_operand 2 "<RATIO16:gs_extension>")
@@ -219,7 +219,7 @@
   DONE;
 })
 
-(define_expand "len_mask_scatter_store<RATIO8:mode><RATIO8I:mode>"
+(define_expand "mask_len_scatter_store<RATIO8:mode><RATIO8I:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO8I 1 "register_operand")
    (match_operand 2 "<RATIO8:gs_extension>")
@@ -234,7 +234,7 @@
   DONE;
 })
 
-(define_expand "len_mask_scatter_store<RATIO4:mode><RATIO4I:mode>"
+(define_expand "mask_len_scatter_store<RATIO4:mode><RATIO4I:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO4I 1 "register_operand")
    (match_operand 2 "<RATIO4:gs_extension>")
@@ -249,7 +249,7 @@
   DONE;
 })
 
-(define_expand "len_mask_scatter_store<RATIO2:mode><RATIO2I:mode>"
+(define_expand "mask_len_scatter_store<RATIO2:mode><RATIO2I:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO2I 1 "register_operand")
    (match_operand 2 "<RATIO2:gs_extension>")
@@ -268,7 +268,7 @@
 ;; larger SEW. Since RVV indexed load/store support zero extend
 ;; implicitly and not support scaling, we should only allow
 ;; operands[3] and operands[4] to be const_1_operand.
-(define_expand "len_mask_scatter_store<RATIO1:mode><RATIO1:mode>"
+(define_expand "mask_len_scatter_store<RATIO1:mode><RATIO1:mode>"
   [(match_operand 0 "pmode_reg_or_0_operand")
    (match_operand:RATIO1 1 "register_operand")
    (match_operand 2 "<RATIO1:gs_extension>")
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index 6f44e66399d..f864936d54a 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -5040,10 +5040,10 @@ operand 5.  Bit @var{i} of the mask is set if element @var{i}
 of the result should be loaded from memory and clear if element @var{i}
 of the result should be set to zero.
 
-@cindex @code{len_mask_gather_load@var{m}@var{n}} instruction pattern
-@item @samp{len_mask_gather_load@var{m}@var{n}}
+@cindex @code{mask_len_gather_load@var{m}@var{n}} instruction pattern
+@item @samp{mask_len_gather_load@var{m}@var{n}}
 Like @samp{gather_load@var{m}@var{n}}, but takes an extra length operand (operand 5),
-a bias operand (operand 6) as well as a mask operand (operand 7).  Similar to len_maskload,
+a bias operand (operand 6) as well as a mask operand (operand 7).  Similar to mask_len_load,
 the instruction loads at most (operand 5 + operand 6) elements from memory.
 Bit @var{i} of the mask is set if element @var{i} of the result should
 be loaded from memory and clear if element @var{i} of the result should be undefined.
@@ -5078,8 +5078,8 @@ Like @samp{scatter_store@var{m}@var{n}}, but takes an extra mask operand as
 operand 5.  Bit @var{i} of the mask is set if element @var{i}
 of the result should be stored to memory.
 
-@cindex @code{len_mask_scatter_store@var{m}@var{n}} instruction pattern
-@item @samp{len_mask_scatter_store@var{m}@var{n}}
+@cindex @code{mask_len_scatter_store@var{m}@var{n}} instruction pattern
+@item @samp{mask_len_scatter_store@var{m}@var{n}}
 Like @samp{scatter_store@var{m}@var{n}}, but takes an extra length operand (operand 5),
 a bias operand (operand 6) as well as a mask operand (operand 7).  The instruction stores
 at most (operand 5 + operand 6) elements of (operand 4) to memory.
@@ -5321,8 +5321,8 @@ of @code{QI} elements.
 
 This pattern is not allowed to @code{FAIL}.
 
-@cindex @code{len_maskload@var{m}@var{n}} instruction pattern
-@item @samp{len_maskload@var{m}@var{n}}
+@cindex @code{mask_len_load@var{m}@var{n}} instruction pattern
+@item @samp{mask_len_load@var{m}@var{n}}
 Perform a masked load from the memory location pointed to by operand 1
 into register operand 0.  (operand 2 + operand 3) elements are loaded from
 memory and other elements in operand 0 are set to undefined values.
@@ -5348,8 +5348,8 @@ of @code{QI} elements.
 
 This pattern is not allowed to @code{FAIL}.
 
-@cindex @code{len_maskstore@var{m}@var{n}} instruction pattern
-@item @samp{len_maskstore@var{m}@var{n}}
+@cindex @code{mask_len_store@var{m}@var{n}} instruction pattern
+@item @samp{mask_len_store@var{m}@var{n}}
 Perform a masked store from vector register operand 1 into memory operand 0.
 (operand 2 + operand 3) elements are stored to memory
 and leave the other elements of operand 0 unchanged.
diff --git a/gcc/genopinit.cc b/gcc/genopinit.cc
index 2a841006884..a4ba2339fa7 100644
--- a/gcc/genopinit.cc
+++ b/gcc/genopinit.cc
@@ -376,7 +376,7 @@ main (int argc, const char **argv)
   fprintf (s_file,
 	   "/* Returns TRUE if the target supports any of the partial vector\n"
 	   "   optabs: while_ult_optab, len_load_optab, len_store_optab,\n"
-	   "   len_maskload_optab or len_maskstore_optab,\n"
+	   "   mask_len_load_optab or mask_len_store_optab,\n"
 	   "   for any mode.  */\n"
 	   "bool\npartial_vectors_supported_p (void)\n{\n");
   bool any_match = false;
@@ -386,8 +386,8 @@ main (int argc, const char **argv)
     {
 #define CMP_NAME(N) !strncmp (p->name, (N), strlen ((N)))
       if (CMP_NAME("while_ult") || CMP_NAME ("len_load")
-	  || CMP_NAME ("len_store")|| CMP_NAME ("len_maskload")
-	  || CMP_NAME ("len_maskstore"))
+	  || CMP_NAME ("len_store")|| CMP_NAME ("mask_len_load")
+	  || CMP_NAME ("mask_len_store"))
 	{
 	  if (first)
 	    fprintf (s_file, " HAVE_%s", p->name);
diff --git a/gcc/gimple-fold.cc b/gcc/gimple-fold.cc
index de94efbcff7..86b83472a61 100644
--- a/gcc/gimple-fold.cc
+++ b/gcc/gimple-fold.cc
@@ -5370,7 +5370,7 @@ arith_overflowed_p (enum tree_code code, const_tree type,
   return wi::min_precision (wres, sign) > TYPE_PRECISION (type);
 }
 
-/* If IFN_{MASK,LEN,LEN_MASK}_LOAD/STORE call CALL is unconditional,
+/* If IFN_{MASK,LEN,MASK_LEN}_LOAD/STORE call CALL is unconditional,
    return a MEM_REF for the memory it references, otherwise return null.
    VECTYPE is the type of the memory vector.  MASK_P indicates it's for
    MASK if true, otherwise it's for LEN.  */
@@ -5398,15 +5398,15 @@ gimple_fold_partial_load_store_mem_ref (gcall *call, tree vectype, bool mask_p)
 	return NULL_TREE;
       tree bias = gimple_call_arg (call, len_index + 1);
       gcc_assert (TREE_CODE (bias) == INTEGER_CST);
-      /* For LEN_LOAD/LEN_STORE/LEN_MASK_LOAD/LEN_MASK_STORE,
+      /* For LEN_LOAD/LEN_STORE/MASK_LEN_LOAD/MASK_LEN_STORE,
 	 we don't fold when (bias + len) != VF.  */
       if (maybe_ne (wi::to_poly_widest (basic_len) + wi::to_widest (bias),
 		    GET_MODE_NUNITS (TYPE_MODE (vectype))))
 	return NULL_TREE;
 
-      /* For LEN_MASK_{LOAD,STORE}, we should also check whether
+      /* For MASK_LEN_{LOAD,STORE}, we should also check whether
 	  the mask is all ones mask.  */
-      if (ifn == IFN_LEN_MASK_LOAD || ifn == IFN_LEN_MASK_STORE)
+      if (ifn == IFN_MASK_LEN_LOAD || ifn == IFN_MASK_LEN_STORE)
 	{
 	  tree mask = gimple_call_arg (call, internal_fn_mask_index (ifn));
 	  if (!integer_all_onesp (mask))
@@ -5689,11 +5689,11 @@ gimple_fold_call (gimple_stmt_iterator *gsi, bool inplace)
 	  changed |= gimple_fold_partial_store (gsi, stmt, true);
 	  break;
 	case IFN_LEN_LOAD:
-	case IFN_LEN_MASK_LOAD:
+	case IFN_MASK_LEN_LOAD:
 	  changed |= gimple_fold_partial_load (gsi, stmt, false);
 	  break;
 	case IFN_LEN_STORE:
-	case IFN_LEN_MASK_STORE:
+	case IFN_MASK_LEN_STORE:
 	  changed |= gimple_fold_partial_store (gsi, stmt, false);
 	  break;
 	default:
diff --git a/gcc/internal-fn.cc b/gcc/internal-fn.cc
index 2bf4fc492fe..969bfe9ab67 100644
--- a/gcc/internal-fn.cc
+++ b/gcc/internal-fn.cc
@@ -165,7 +165,7 @@ init_internal_fns ()
 #define mask_load_lanes_direct { -1, -1, false }
 #define gather_load_direct { 3, 1, false }
 #define len_load_direct { -1, -1, false }
-#define len_maskload_direct { -1, 4, false }
+#define mask_len_load_direct { -1, 4, false }
 #define mask_store_direct { 3, 2, false }
 #define store_lanes_direct { 0, 0, false }
 #define mask_store_lanes_direct { 0, 0, false }
@@ -173,7 +173,7 @@ init_internal_fns ()
 #define vec_cond_direct { 2, 0, false }
 #define scatter_store_direct { 3, 1, false }
 #define len_store_direct { 3, 3, false }
-#define len_maskstore_direct { 4, 5, false }
+#define mask_len_store_direct { 4, 5, false }
 #define vec_set_direct { 3, 3, false }
 #define vec_extract_direct { 3, 3, false }
 #define unary_direct { 0, 0, true }
@@ -2912,7 +2912,7 @@ expand_call_mem_ref (tree type, gcall *stmt, int index)
   return fold_build2 (MEM_REF, type, addr, build_int_cst (alias_ptr_type, 0));
 }
 
-/* Expand MASK_LOAD{,_LANES}, LEN_MASK_LOAD or LEN_LOAD call STMT using optab
+/* Expand MASK_LOAD{,_LANES}, MASK_LEN_LOAD or LEN_LOAD call STMT using optab
  * OPTAB.  */
 
 static void
@@ -2954,9 +2954,9 @@ expand_partial_load_optab_fn (internal_fn ifn, gcall *stmt, convert_optab optab)
 #define expand_mask_load_optab_fn expand_partial_load_optab_fn
 #define expand_mask_load_lanes_optab_fn expand_mask_load_optab_fn
 #define expand_len_load_optab_fn expand_partial_load_optab_fn
-#define expand_len_maskload_optab_fn expand_partial_load_optab_fn
+#define expand_mask_len_load_optab_fn expand_partial_load_optab_fn
 
-/* Expand MASK_STORE{,_LANES}, LEN_MASK_STORE or LEN_STORE call STMT using optab
+/* Expand MASK_STORE{,_LANES}, MASK_LEN_STORE or LEN_STORE call STMT using optab
  * OPTAB.  */
 
 static void
@@ -2993,7 +2993,7 @@ expand_partial_store_optab_fn (internal_fn ifn, gcall *stmt, convert_optab optab
 #define expand_mask_store_optab_fn expand_partial_store_optab_fn
 #define expand_mask_store_lanes_optab_fn expand_mask_store_optab_fn
 #define expand_len_store_optab_fn expand_partial_store_optab_fn
-#define expand_len_maskstore_optab_fn expand_partial_store_optab_fn
+#define expand_mask_len_store_optab_fn expand_partial_store_optab_fn
 
 /* Expand VCOND, VCONDU and VCONDEQ optab internal functions.
    The expansion of STMT happens based on OPTAB table associated.  */
@@ -3988,7 +3988,7 @@ multi_vector_optab_supported_p (convert_optab optab, tree_pair types,
 #define direct_mask_load_lanes_optab_supported_p multi_vector_optab_supported_p
 #define direct_gather_load_optab_supported_p convert_optab_supported_p
 #define direct_len_load_optab_supported_p direct_optab_supported_p
-#define direct_len_maskload_optab_supported_p convert_optab_supported_p
+#define direct_mask_len_load_optab_supported_p convert_optab_supported_p
 #define direct_mask_store_optab_supported_p convert_optab_supported_p
 #define direct_store_lanes_optab_supported_p multi_vector_optab_supported_p
 #define direct_mask_store_lanes_optab_supported_p multi_vector_optab_supported_p
@@ -3996,7 +3996,7 @@ multi_vector_optab_supported_p (convert_optab optab, tree_pair types,
 #define direct_vec_cond_optab_supported_p convert_optab_supported_p
 #define direct_scatter_store_optab_supported_p convert_optab_supported_p
 #define direct_len_store_optab_supported_p direct_optab_supported_p
-#define direct_len_maskstore_optab_supported_p convert_optab_supported_p
+#define direct_mask_len_store_optab_supported_p convert_optab_supported_p
 #define direct_while_optab_supported_p convert_optab_supported_p
 #define direct_fold_extract_optab_supported_p direct_optab_supported_p
 #define direct_fold_left_optab_supported_p direct_optab_supported_p
@@ -4541,9 +4541,9 @@ internal_load_fn_p (internal_fn fn)
     case IFN_MASK_LOAD_LANES:
     case IFN_GATHER_LOAD:
     case IFN_MASK_GATHER_LOAD:
-    case IFN_LEN_MASK_GATHER_LOAD:
+    case IFN_MASK_LEN_GATHER_LOAD:
     case IFN_LEN_LOAD:
-    case IFN_LEN_MASK_LOAD:
+    case IFN_MASK_LEN_LOAD:
       return true;
 
     default:
@@ -4563,9 +4563,9 @@ internal_store_fn_p (internal_fn fn)
     case IFN_MASK_STORE_LANES:
     case IFN_SCATTER_STORE:
     case IFN_MASK_SCATTER_STORE:
-    case IFN_LEN_MASK_SCATTER_STORE:
+    case IFN_MASK_LEN_SCATTER_STORE:
     case IFN_LEN_STORE:
-    case IFN_LEN_MASK_STORE:
+    case IFN_MASK_LEN_STORE:
       return true;
 
     default:
@@ -4582,10 +4582,10 @@ internal_gather_scatter_fn_p (internal_fn fn)
     {
     case IFN_GATHER_LOAD:
     case IFN_MASK_GATHER_LOAD:
-    case IFN_LEN_MASK_GATHER_LOAD:
+    case IFN_MASK_LEN_GATHER_LOAD:
     case IFN_SCATTER_STORE:
     case IFN_MASK_SCATTER_STORE:
-    case IFN_LEN_MASK_SCATTER_STORE:
+    case IFN_MASK_LEN_SCATTER_STORE:
       return true;
 
     default:
@@ -4603,12 +4603,12 @@ internal_fn_len_index (internal_fn fn)
     {
     case IFN_LEN_LOAD:
     case IFN_LEN_STORE:
-    case IFN_LEN_MASK_LOAD:
-    case IFN_LEN_MASK_STORE:
+    case IFN_MASK_LEN_LOAD:
+    case IFN_MASK_LEN_STORE:
       return 2;
 
-    case IFN_LEN_MASK_GATHER_LOAD:
-    case IFN_LEN_MASK_SCATTER_STORE:
+    case IFN_MASK_LEN_GATHER_LOAD:
+    case IFN_MASK_LEN_SCATTER_STORE:
     case IFN_COND_LEN_FMA:
     case IFN_COND_LEN_FMS:
     case IFN_COND_LEN_FNMA:
@@ -4656,10 +4656,10 @@ internal_fn_mask_index (internal_fn fn)
 
     case IFN_MASK_GATHER_LOAD:
     case IFN_MASK_SCATTER_STORE:
-    case IFN_LEN_MASK_LOAD:
-    case IFN_LEN_MASK_STORE:
-    case IFN_LEN_MASK_GATHER_LOAD:
-    case IFN_LEN_MASK_SCATTER_STORE:
+    case IFN_MASK_LEN_LOAD:
+    case IFN_MASK_LEN_STORE:
+    case IFN_MASK_LEN_GATHER_LOAD:
+    case IFN_MASK_LEN_SCATTER_STORE:
       return 4;
 
     default:
@@ -4680,13 +4680,13 @@ internal_fn_stored_value_index (internal_fn fn)
     case IFN_MASK_STORE_LANES:
     case IFN_SCATTER_STORE:
     case IFN_MASK_SCATTER_STORE:
-    case IFN_LEN_MASK_SCATTER_STORE:
+    case IFN_MASK_LEN_SCATTER_STORE:
       return 3;
 
     case IFN_LEN_STORE:
       return 4;
 
-    case IFN_LEN_MASK_STORE:
+    case IFN_MASK_LEN_STORE:
       return 5;
 
     default:
@@ -4761,13 +4761,13 @@ internal_len_load_store_bias (internal_fn ifn, machine_mode mode)
 	return VECT_PARTIAL_BIAS_UNSUPPORTED;
       if (ifn == IFN_LEN_LOAD)
 	{
-	  /* Try LEN_MASK_LOAD.  */
-	  optab = direct_internal_fn_optab (IFN_LEN_MASK_LOAD);
+	  /* Try MASK_LEN_LOAD.  */
+	  optab = direct_internal_fn_optab (IFN_MASK_LEN_LOAD);
 	}
       else
 	{
-	  /* Try LEN_MASK_STORE.  */
-	  optab = direct_internal_fn_optab (IFN_LEN_MASK_STORE);
+	  /* Try MASK_LEN_STORE.  */
+	  optab = direct_internal_fn_optab (IFN_MASK_LEN_STORE);
 	}
       icode = convert_optab_handler (optab, mode, mask_mode);
     }
diff --git a/gcc/internal-fn.def b/gcc/internal-fn.def
index d3aec51b1f2..04f3812326e 100644
--- a/gcc/internal-fn.def
+++ b/gcc/internal-fn.def
@@ -48,16 +48,16 @@ along with GCC; see the file COPYING3.  If not see
    - mask_load: currently just maskload
    - load_lanes: currently just vec_load_lanes
    - mask_load_lanes: currently just vec_mask_load_lanes
-   - gather_load: used for {mask_,len_mask,}gather_load
+   - gather_load: used for {mask_,mask_len_,}gather_load
    - len_load: currently just len_load
-   - len_maskload: currently just len_maskload
+   - mask_len_load: currently just mask_len_load
 
    - mask_store: currently just maskstore
    - store_lanes: currently just vec_store_lanes
    - mask_store_lanes: currently just vec_mask_store_lanes
-   - scatter_store: used for {mask_,len_mask,}scatter_store
+   - scatter_store: used for {mask_,mask_len_,}scatter_store
    - len_store: currently just len_store
-   - len_maskstore: currently just len_maskstore
+   - mask_len_store: currently just mask_len_store
 
    - unary: a normal unary optab, such as vec_reverse_<mode>
    - binary: a normal binary optab, such as vec_interleave_lo_<mode>
@@ -161,17 +161,17 @@ DEF_INTERNAL_OPTAB_FN (MASK_LOAD_LANES, ECF_PURE,
 DEF_INTERNAL_OPTAB_FN (GATHER_LOAD, ECF_PURE, gather_load, gather_load)
 DEF_INTERNAL_OPTAB_FN (MASK_GATHER_LOAD, ECF_PURE,
 		       mask_gather_load, gather_load)
-DEF_INTERNAL_OPTAB_FN (LEN_MASK_GATHER_LOAD, ECF_PURE,
-		       len_mask_gather_load, gather_load)
+DEF_INTERNAL_OPTAB_FN (MASK_LEN_GATHER_LOAD, ECF_PURE,
+		       mask_len_gather_load, gather_load)
 
 DEF_INTERNAL_OPTAB_FN (LEN_LOAD, ECF_PURE, len_load, len_load)
-DEF_INTERNAL_OPTAB_FN (LEN_MASK_LOAD, ECF_PURE, len_maskload, len_maskload)
+DEF_INTERNAL_OPTAB_FN (MASK_LEN_LOAD, ECF_PURE, mask_len_load, mask_len_load)
 
 DEF_INTERNAL_OPTAB_FN (SCATTER_STORE, 0, scatter_store, scatter_store)
 DEF_INTERNAL_OPTAB_FN (MASK_SCATTER_STORE, 0,
 		       mask_scatter_store, scatter_store)
-DEF_INTERNAL_OPTAB_FN (LEN_MASK_SCATTER_STORE, 0,
-		       len_mask_scatter_store, scatter_store)
+DEF_INTERNAL_OPTAB_FN (MASK_LEN_SCATTER_STORE, 0,
+		       mask_len_scatter_store, scatter_store)
 
 DEF_INTERNAL_OPTAB_FN (MASK_STORE, 0, maskstore, mask_store)
 DEF_INTERNAL_OPTAB_FN (STORE_LANES, ECF_CONST, vec_store_lanes, store_lanes)
@@ -187,7 +187,7 @@ DEF_INTERNAL_OPTAB_FN (VEC_SET, 0, vec_set, vec_set)
 DEF_INTERNAL_OPTAB_FN (VEC_EXTRACT, 0, vec_extract, vec_extract)
 
 DEF_INTERNAL_OPTAB_FN (LEN_STORE, 0, len_store, len_store)
-DEF_INTERNAL_OPTAB_FN (LEN_MASK_STORE, 0, len_maskstore, len_maskstore)
+DEF_INTERNAL_OPTAB_FN (MASK_LEN_STORE, 0, mask_len_store, mask_len_store)
 
 DEF_INTERNAL_OPTAB_FN (WHILE_ULT, ECF_CONST | ECF_NOTHROW, while_ult, while)
 DEF_INTERNAL_OPTAB_FN (SELECT_VL, ECF_CONST | ECF_NOTHROW, select_vl, binary)
diff --git a/gcc/optabs-query.cc b/gcc/optabs-query.cc
index bf1f484e874..947ccef218c 100644
--- a/gcc/optabs-query.cc
+++ b/gcc/optabs-query.cc
@@ -676,7 +676,7 @@ supports_vec_gather_load_p (machine_mode mode)
     this_fn_optabs->supports_vec_gather_load[mode]
       = (supports_vec_convert_optab_p (gather_load_optab, mode)
 	 || supports_vec_convert_optab_p (mask_gather_load_optab, mode)
-	 || supports_vec_convert_optab_p (len_mask_gather_load_optab, mode)
+	 || supports_vec_convert_optab_p (mask_len_gather_load_optab, mode)
 	 ? 1 : -1);
 
   return this_fn_optabs->supports_vec_gather_load[mode] > 0;
@@ -693,7 +693,7 @@ supports_vec_scatter_store_p (machine_mode mode)
     this_fn_optabs->supports_vec_scatter_store[mode]
       = (supports_vec_convert_optab_p (scatter_store_optab, mode)
 	 || supports_vec_convert_optab_p (mask_scatter_store_optab, mode)
-	 || supports_vec_convert_optab_p (len_mask_scatter_store_optab, mode)
+	 || supports_vec_convert_optab_p (mask_len_scatter_store_optab, mode)
 	 ? 1 : -1);
 
   return this_fn_optabs->supports_vec_scatter_store[mode] > 0;
diff --git a/gcc/optabs-tree.cc b/gcc/optabs-tree.cc
index e6ae15939d3..40bfbb1a5ad 100644
--- a/gcc/optabs-tree.cc
+++ b/gcc/optabs-tree.cc
@@ -545,17 +545,17 @@ target_supports_op_p (tree type, enum tree_code code,
 
 /* Return true if the target has support for masked load/store.
    We can support masked load/store by either mask{load,store}
-   or len_mask{load,store}.
+   or mask_len_{load,store}.
    This helper function checks whether target supports masked
    load/store and return corresponding IFN in the last argument
-   (IFN_MASK_{LOAD,STORE} or IFN_LEN_MASK_{LOAD,STORE}).  */
+   (IFN_MASK_{LOAD,STORE} or IFN_MASK_LEN_{LOAD,STORE}).  */
 
 static bool
 target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
 				   bool is_load, internal_fn *ifn)
 {
   optab op = is_load ? maskload_optab : maskstore_optab;
-  optab len_op = is_load ? len_maskload_optab : len_maskstore_optab;
+  optab len_op = is_load ? mask_len_load_optab : mask_len_store_optab;
   if (convert_optab_handler (op, mode, mask_mode) != CODE_FOR_nothing)
     {
       if (ifn)
@@ -565,7 +565,7 @@ target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
   else if (convert_optab_handler (len_op, mode, mask_mode) != CODE_FOR_nothing)
     {
       if (ifn)
-	*ifn = is_load ? IFN_LEN_MASK_LOAD : IFN_LEN_MASK_STORE;
+	*ifn = is_load ? IFN_MASK_LEN_LOAD : IFN_MASK_LEN_STORE;
       return true;
     }
   return false;
@@ -573,7 +573,7 @@ target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
 
 /* Return true if target supports vector masked load/store for mode.
    An additional output in the last argument which is the IFN pointer.
-   We set IFN as MASK_{LOAD,STORE} or LEN_MASK_{LOAD,STORE} according
+   We set IFN as MASK_{LOAD,STORE} or MASK_LEN_{LOAD,STORE} according
    which optab is supported in the target.  */
 
 bool
@@ -615,17 +615,17 @@ can_vec_mask_load_store_p (machine_mode mode,
 
 /* Return true if the target has support for len load/store.
    We can support len load/store by either len_{load,store}
-   or len_mask{load,store}.
+   or mask_len_{load,store}.
    This helper function checks whether target supports len
    load/store and return corresponding IFN in the last argument
-   (IFN_LEN_{LOAD,STORE} or IFN_LEN_MASK_{LOAD,STORE}).  */
+   (IFN_LEN_{LOAD,STORE} or IFN_MASK_LEN_{LOAD,STORE}).  */
 
 static bool
 target_supports_len_load_store_p (machine_mode mode, bool is_load,
 				  internal_fn *ifn)
 {
   optab op = is_load ? len_load_optab : len_store_optab;
-  optab masked_op = is_load ? len_maskload_optab : len_maskstore_optab;
+  optab masked_op = is_load ? mask_len_load_optab : mask_len_store_optab;
 
   if (direct_optab_handler (op, mode))
     {
@@ -638,7 +638,7 @@ target_supports_len_load_store_p (machine_mode mode, bool is_load,
       && convert_optab_handler (masked_op, mode, mask_mode) != CODE_FOR_nothing)
     {
       if (ifn)
-	*ifn = is_load ? IFN_LEN_MASK_LOAD : IFN_LEN_MASK_STORE;
+	*ifn = is_load ? IFN_MASK_LEN_LOAD : IFN_MASK_LEN_STORE;
       return true;
     }
   return false;
@@ -651,7 +651,7 @@ target_supports_len_load_store_p (machine_mode mode, bool is_load,
    As len_{load,store} optabs point out, for the flavor with bytes, we use
    VnQI to wrap the other supportable same size vector modes.
    An additional output in the last argument which is the IFN pointer.
-   We set IFN as LEN_{LOAD,STORE} or LEN_MASK_{LOAD,STORE} according
+   We set IFN as LEN_{LOAD,STORE} or MASK_LEN_{LOAD,STORE} according
    which optab is supported in the target.  */
 
 opt_machine_mode
diff --git a/gcc/optabs.def b/gcc/optabs.def
index 7023392979e..1ea1947b3b5 100644
--- a/gcc/optabs.def
+++ b/gcc/optabs.def
@@ -91,14 +91,14 @@ OPTAB_CD(vec_cmpu_optab, "vec_cmpu$a$b")
 OPTAB_CD(vec_cmpeq_optab, "vec_cmpeq$a$b")
 OPTAB_CD(maskload_optab, "maskload$a$b")
 OPTAB_CD(maskstore_optab, "maskstore$a$b")
-OPTAB_CD(len_maskload_optab, "len_maskload$a$b")
-OPTAB_CD(len_maskstore_optab, "len_maskstore$a$b")
+OPTAB_CD(mask_len_load_optab, "mask_len_load$a$b")
+OPTAB_CD(mask_len_store_optab, "mask_len_store$a$b")
 OPTAB_CD(gather_load_optab, "gather_load$a$b")
 OPTAB_CD(mask_gather_load_optab, "mask_gather_load$a$b")
-OPTAB_CD(len_mask_gather_load_optab, "len_mask_gather_load$a$b")
+OPTAB_CD(mask_len_gather_load_optab, "mask_len_gather_load$a$b")
 OPTAB_CD(scatter_store_optab, "scatter_store$a$b")
 OPTAB_CD(mask_scatter_store_optab, "mask_scatter_store$a$b")
-OPTAB_CD(len_mask_scatter_store_optab, "len_mask_scatter_store$a$b")
+OPTAB_CD(mask_len_scatter_store_optab, "mask_len_scatter_store$a$b")
 OPTAB_CD(vec_extract_optab, "vec_extract$a$b")
 OPTAB_CD(vec_init_optab, "vec_init$a$b")
 
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
index dffe13f6a8a..3b26bf1dec2 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
@@ -33,6 +33,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
index a622e516f06..63949cbe02b 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
index 4692380233d..8dc1da3f4b4 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
@@ -27,6 +27,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
index 71a3dd466fa..6277682e529 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
@@ -105,7 +105,7 @@ TEST_LOOP (float, uint64_t)
 TEST_LOOP (double, uint64_t)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-assembler-not "vluxei64\.v" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
index 785550c4b2d..89e4b40bfd8 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
@@ -33,6 +33,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
index 22aeb889221..02fd37c026d 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
index d74a83415d7..af6a76af7f8 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
index 2b6c0a87c18..bd9a449086e 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
index 407cc8a5a73..6d776af4c5c 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
index 81b31ef26aa..040300a3e2a 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
index 0bfdb8f0acf..9223bf0057d 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
index 46f791105ed..2e06fe6090d 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
index a5de0deccbe..abab3b90af9 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
@@ -34,6 +34,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
index 74a0d05b37d..61ab1fb0021 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
index 98c5b4678b7..e5741812b21 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
@@ -108,7 +108,7 @@ TEST_LOOP (float, uint64_t)
 TEST_LOOP (double, uint64_t)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-assembler-not "vluxei64\.v" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
index 03f84ce962c..cc5f52e0c34 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
@@ -34,6 +34,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
index 8578001ef41..311e25ea199 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
index b273caa0bfe..9223df9c4a2 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
index 5055d886d62..9ec7e60dc68 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
index 2a4ae58588f..ff18009fba1 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
index 31d9414c549..fd05df7b381 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
index 73ed23042fb..a58c1c22042 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
index 2f64e805759..36947db76ba 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
index 623de41267b..0099ed357c4 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
@@ -34,6 +34,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
index 55112b067fa..089ec487c47 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
index 32a572d0064..57a1acec099 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
@@ -34,6 +34,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
index fbaaa9d8a8e..ba89eb35db2 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
index 9b08661f8e6..2d6499fea56 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
index dd26635f2cb..f55db716cd9 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
index fa0206a0ec2..a7ec2796834 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
index 325e86c26a8..b7bd3f415d5 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
index b4b84e9cdda..f2ab86519bd 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
@@ -31,6 +31,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
index a21ccd587c3..42ce1c5364f 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
@@ -36,6 +36,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
index 6a390261cfb..28c4bae01c3 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
@@ -33,6 +33,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
index feb58d7d458..2cd3e7245aa 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
index e4c587fd7bb..ee44f415e8b 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
@@ -33,6 +33,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
index 33ad256d3db..899b05f96ff 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
index 48d305623e6..ff6d90ce404 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
index 83ddc44bf9c..212bd2d9d24 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
index 11eb68bdb13..4b6b39df814 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
index 2e323477258..2415c69a3b0 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
index e6732fe3790..4c2fcb14428 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
index 766a52b4622..0f4f94cc800 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
@@ -30,6 +30,6 @@
 TEST_ALL (TEST_LOOP)
 
 /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
-/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
+/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
index 0c64f3e1a00..b1e6a17543f 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
@@ -40,6 +40,6 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.LEN_MASK_GATHER_LOAD" 66 "optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_GATHER_LOAD" 66 "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
index 0f234209325..ee5f509b9ac 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
@@ -40,6 +40,6 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.LEN_MASK_GATHER_LOAD" 46 "optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_GATHER_LOAD" 46 "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
index 2418a0d74eb..3e6a34029b3 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
@@ -40,6 +40,6 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.LEN_MASK_SCATTER_STORE" 66 "optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_SCATTER_STORE" 66 "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
index 83e101d5688..6906af17d84 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
@@ -40,6 +40,6 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.LEN_MASK_SCATTER_STORE" 44 "optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_SCATTER_STORE" 44 "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
index 23407a2d3f4..7021182f83a 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
@@ -40,4 +40,4 @@ main ()
   RUN_ALL ()
 }
 
-/* { dg-final { scan-tree-dump-times "\.LEN_MASK_STORE" 6 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "\.MASK_LEN_STORE" 6 "optimized" } } */
diff --git a/gcc/tree-ssa-alias.cc b/gcc/tree-ssa-alias.cc
index f31fd042c2a..cf38fe506a8 100644
--- a/gcc/tree-ssa-alias.cc
+++ b/gcc/tree-ssa-alias.cc
@@ -2815,13 +2815,13 @@ ref_maybe_used_by_call_p_1 (gcall *call, ao_ref *ref, bool tbaa_p)
       case IFN_SCATTER_STORE:
       case IFN_MASK_SCATTER_STORE:
       case IFN_LEN_STORE:
-      case IFN_LEN_MASK_STORE:
+      case IFN_MASK_LEN_STORE:
 	return false;
       case IFN_MASK_STORE_LANES:
 	goto process_args;
       case IFN_MASK_LOAD:
       case IFN_LEN_LOAD:
-      case IFN_LEN_MASK_LOAD:
+      case IFN_MASK_LEN_LOAD:
       case IFN_MASK_LOAD_LANES:
 	{
 	  ao_ref rhs_ref;
@@ -3070,7 +3070,7 @@ call_may_clobber_ref_p_1 (gcall *call, ao_ref *ref, bool tbaa_p)
 	return false;
       case IFN_MASK_STORE:
       case IFN_LEN_STORE:
-      case IFN_LEN_MASK_STORE:
+      case IFN_MASK_LEN_STORE:
       case IFN_MASK_STORE_LANES:
 	{
 	  tree rhs = gimple_call_arg (call,
diff --git a/gcc/tree-ssa-dse.cc b/gcc/tree-ssa-dse.cc
index 9c6004cdce8..baf72bf1bd4 100644
--- a/gcc/tree-ssa-dse.cc
+++ b/gcc/tree-ssa-dse.cc
@@ -159,7 +159,7 @@ initialize_ao_ref_for_dse (gimple *stmt, ao_ref *write, bool may_def_ok = false)
 	{
 	case IFN_LEN_STORE:
 	case IFN_MASK_STORE:
-	case IFN_LEN_MASK_STORE:
+	case IFN_MASK_LEN_STORE:
 	  {
 	    internal_fn ifn = gimple_call_internal_fn (stmt);
 	    int stored_value_index = internal_fn_stored_value_index (ifn);
@@ -1517,7 +1517,7 @@ dse_optimize_stmt (function *fun, gimple_stmt_iterator *gsi, sbitmap live_bytes)
 	{
 	case IFN_LEN_STORE:
 	case IFN_MASK_STORE:
-	case IFN_LEN_MASK_STORE:
+	case IFN_MASK_LEN_STORE:
 	  {
 	    enum dse_store_status store_status;
 	    store_status = dse_classify_store (&ref, stmt, false, live_bytes);
diff --git a/gcc/tree-ssa-loop-ivopts.cc b/gcc/tree-ssa-loop-ivopts.cc
index 243ce86dfc4..92fc1c7d734 100644
--- a/gcc/tree-ssa-loop-ivopts.cc
+++ b/gcc/tree-ssa-loop-ivopts.cc
@@ -2442,7 +2442,7 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
     case IFN_MASK_LOAD:
     case IFN_MASK_LOAD_LANES:
     case IFN_LEN_LOAD:
-    case IFN_LEN_MASK_LOAD:
+    case IFN_MASK_LEN_LOAD:
       if (op_p == gimple_call_arg_ptr (call, 0))
 	return TREE_TYPE (gimple_call_lhs (call));
       return NULL_TREE;
@@ -2450,7 +2450,7 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
     case IFN_MASK_STORE:
     case IFN_MASK_STORE_LANES:
     case IFN_LEN_STORE:
-    case IFN_LEN_MASK_STORE:
+    case IFN_MASK_LEN_STORE:
       {
 	if (op_p == gimple_call_arg_ptr (call, 0))
 	  {
@@ -7567,8 +7567,8 @@ get_alias_ptr_type_for_ptr_address (iv_use *use)
     case IFN_MASK_STORE_LANES:
     case IFN_LEN_LOAD:
     case IFN_LEN_STORE:
-    case IFN_LEN_MASK_LOAD:
-    case IFN_LEN_MASK_STORE:
+    case IFN_MASK_LEN_LOAD:
+    case IFN_MASK_LEN_STORE:
       /* The second argument contains the correct alias type.  */
       gcc_assert (use->op_p = gimple_call_arg_ptr (call, 0));
       return TREE_TYPE (gimple_call_arg (call, 1));
diff --git a/gcc/tree-vect-data-refs.cc b/gcc/tree-vect-data-refs.cc
index 9edc8989de9..a3570c45b52 100644
--- a/gcc/tree-vect-data-refs.cc
+++ b/gcc/tree-vect-data-refs.cc
@@ -3878,19 +3878,19 @@ vect_gather_scatter_fn_p (vec_info *vinfo, bool read_p, bool masked_p,
     {
       ifn = masked_p ? IFN_MASK_GATHER_LOAD : IFN_GATHER_LOAD;
       alt_ifn = IFN_MASK_GATHER_LOAD;
-      /* When target supports LEN_MASK_GATHER_LOAD, we always
-	 use LEN_MASK_GATHER_LOAD regardless whether len and
+      /* When target supports MASK_LEN_GATHER_LOAD, we always
+	 use MASK_LEN_GATHER_LOAD regardless whether len and
 	 mask are valid or not.  */
-      alt_ifn2 = IFN_LEN_MASK_GATHER_LOAD;
+      alt_ifn2 = IFN_MASK_LEN_GATHER_LOAD;
     }
   else
     {
       ifn = masked_p ? IFN_MASK_SCATTER_STORE : IFN_SCATTER_STORE;
       alt_ifn = IFN_MASK_SCATTER_STORE;
-      /* When target supports LEN_MASK_SCATTER_STORE, we always
-	 use LEN_MASK_SCATTER_STORE regardless whether len and
+      /* When target supports MASK_LEN_SCATTER_STORE, we always
+	 use MASK_LEN_SCATTER_STORE regardless whether len and
 	 mask are valid or not.  */
-      alt_ifn2 = IFN_LEN_MASK_SCATTER_STORE;
+      alt_ifn2 = IFN_MASK_LEN_SCATTER_STORE;
     }
 
   for (;;)
diff --git a/gcc/tree-vect-patterns.cc b/gcc/tree-vect-patterns.cc
index c0832e8679f..ef806e2346e 100644
--- a/gcc/tree-vect-patterns.cc
+++ b/gcc/tree-vect-patterns.cc
@@ -6106,8 +6106,8 @@ vect_recog_gather_scatter_pattern (vec_info *vinfo,
 					  loop_vinfo);
   else if (gs_info.ifn == IFN_MASK_SCATTER_STORE
 	   || gs_info.ifn == IFN_MASK_GATHER_LOAD
-	   || gs_info.ifn == IFN_LEN_MASK_SCATTER_STORE
-	   || gs_info.ifn == IFN_LEN_MASK_GATHER_LOAD)
+	   || gs_info.ifn == IFN_MASK_LEN_SCATTER_STORE
+	   || gs_info.ifn == IFN_MASK_LEN_GATHER_LOAD)
     mask = build_int_cst (TREE_TYPE (truth_type_for (gs_vectype)), -1);
 
   /* Get the invariant base and non-invariant offset, converting the
diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
index b86e159ae4c..caa4c974cb9 100644
--- a/gcc/tree-vect-stmts.cc
+++ b/gcc/tree-vect-stmts.cc
@@ -1633,8 +1633,8 @@ check_load_store_for_partial_vectors (loop_vec_info loop_vinfo, tree vectype,
 			 ? IFN_MASK_GATHER_LOAD
 			 : IFN_MASK_SCATTER_STORE);
       internal_fn len_ifn = (is_load
-			     ? IFN_LEN_MASK_GATHER_LOAD
-			     : IFN_LEN_MASK_SCATTER_STORE);
+			     ? IFN_MASK_LEN_GATHER_LOAD
+			     : IFN_MASK_LEN_SCATTER_STORE);
       if (internal_gather_scatter_fn_supported_p (ifn, vectype,
 						  gs_info->memory_type,
 						  gs_info->offset_vectype,
@@ -3032,7 +3032,7 @@ vect_get_strided_load_store_ops (stmt_vec_info stmt_info,
     {
       /* _31 = .SELECT_VL (ivtmp_29, POLY_INT_CST [4, 4]);
 	 ivtmp_8 = _31 * 16 (step in bytes);
-	 .LEN_MASK_SCATTER_STORE (vectp_a.9_7, ... );
+	 .MASK_LEN_SCATTER_STORE (vectp_a.9_7, ... );
 	 vectp_a.9_26 = vectp_a.9_7 + ivtmp_8;  */
       tree loop_len
 	= vect_get_loop_len (loop_vinfo, gsi, loop_lens, 1, vectype, 0, 0);
@@ -8870,7 +8870,7 @@ vectorizable_store (vec_info *vinfo,
 		    vec_offset = vec_offsets[vec_num * j + i];
 		  tree scale = size_int (gs_info.scale);
 
-		  if (gs_info.ifn == IFN_LEN_MASK_SCATTER_STORE)
+		  if (gs_info.ifn == IFN_MASK_LEN_SCATTER_STORE)
 		    {
 		      if (loop_lens)
 			final_len
@@ -8894,7 +8894,7 @@ vectorizable_store (vec_info *vinfo,
 		  gcall *call;
 		  if (final_len && final_mask)
 		    call
-		      = gimple_build_call_internal (IFN_LEN_MASK_SCATTER_STORE,
+		      = gimple_build_call_internal (IFN_MASK_LEN_SCATTER_STORE,
 						    7, dataref_ptr, vec_offset,
 						    scale, vec_oprnd, final_mask,
 						    final_len, bias);
@@ -9034,12 +9034,12 @@ vectorizable_store (vec_info *vinfo,
 		    gcc_unreachable ();
 		}
 
-	      if (partial_ifn == IFN_LEN_MASK_STORE)
+	      if (partial_ifn == IFN_MASK_LEN_STORE)
 		{
 		  if (!final_len)
 		    {
 		      /* Pass VF value to 'len' argument of
-		         LEN_MASK_STORE if LOOP_LENS is invalid.  */
+		         MASK_LEN_STORE if LOOP_LENS is invalid.  */
 		      tree iv_type = LOOP_VINFO_RGROUP_IV_TYPE (loop_vinfo);
 		      final_len
 			= build_int_cst (iv_type,
@@ -9048,7 +9048,7 @@ vectorizable_store (vec_info *vinfo,
 		  if (!final_mask)
 		    {
 		      /* Pass all ones value to 'mask' argument of
-			 LEN_MASK_STORE if final_mask is invalid.  */
+			 MASK_LEN_STORE if final_mask is invalid.  */
 		      mask_vectype = truth_type_for (vectype);
 		      final_mask = build_minus_one_cst (mask_vectype);
 		    }
@@ -9084,8 +9084,8 @@ vectorizable_store (vec_info *vinfo,
 		      vec_oprnd = var;
 		    }
 
-		  if (partial_ifn == IFN_LEN_MASK_STORE)
-		    call = gimple_build_call_internal (IFN_LEN_MASK_STORE, 6,
+		  if (partial_ifn == IFN_MASK_LEN_STORE)
+		    call = gimple_build_call_internal (IFN_MASK_LEN_STORE, 6,
 						       dataref_ptr, ptr,
 						       final_len, bias,
 						       final_mask, vec_oprnd);
@@ -10454,7 +10454,7 @@ vectorizable_load (vec_info *vinfo,
 			tree zero = build_zero_cst (vectype);
 			tree scale = size_int (gs_info.scale);
 
-			if (gs_info.ifn == IFN_LEN_MASK_GATHER_LOAD)
+			if (gs_info.ifn == IFN_MASK_LEN_GATHER_LOAD)
 			  {
 			    if (loop_lens)
 			      final_len
@@ -10478,7 +10478,7 @@ vectorizable_load (vec_info *vinfo,
 			gcall *call;
 			if (final_len && final_mask)
 			  call = gimple_build_call_internal (
-			    IFN_LEN_MASK_GATHER_LOAD, 7, dataref_ptr,
+			    IFN_MASK_LEN_GATHER_LOAD, 7, dataref_ptr,
 			    vec_offset, scale, zero, final_mask, final_len,
 			    bias);
 			else if (final_mask)
@@ -10618,12 +10618,12 @@ vectorizable_load (vec_info *vinfo,
 			  gcc_unreachable ();
 		      }
 
-		    if (partial_ifn == IFN_LEN_MASK_LOAD)
+		    if (partial_ifn == IFN_MASK_LEN_LOAD)
 		      {
 			if (!final_len)
 			  {
 			    /* Pass VF value to 'len' argument of
-			       LEN_MASK_LOAD if LOOP_LENS is invalid.  */
+			       MASK_LEN_LOAD if LOOP_LENS is invalid.  */
 			    tree iv_type
 			      = LOOP_VINFO_RGROUP_IV_TYPE (loop_vinfo);
 			    final_len
@@ -10633,7 +10633,7 @@ vectorizable_load (vec_info *vinfo,
 			if (!final_mask)
 			  {
 			    /* Pass all ones value to 'mask' argument of
-			       LEN_MASK_LOAD if final_mask is invalid.  */
+			       MASK_LEN_LOAD if final_mask is invalid.  */
 			    mask_vectype = truth_type_for (vectype);
 			    final_mask = build_minus_one_cst (mask_vectype);
 			  }
@@ -10651,8 +10651,8 @@ vectorizable_load (vec_info *vinfo,
 			tree ptr
 			  = build_int_cst (ref_type, align * BITS_PER_UNIT);
 			gcall *call;
-			if (partial_ifn == IFN_LEN_MASK_LOAD)
-			  call = gimple_build_call_internal (IFN_LEN_MASK_LOAD,
+			if (partial_ifn == IFN_MASK_LEN_LOAD)
+			  call = gimple_build_call_internal (IFN_MASK_LEN_LOAD,
 							     5, dataref_ptr,
 							     ptr, final_len,
 							     bias, final_mask);
-- 
2.36.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] cleanup: Change LEN_MASK into MASK_LEN
  2023-07-20 23:20 [PATCH] cleanup: Change LEN_MASK into MASK_LEN Juzhe-Zhong
@ 2023-07-21  6:19 ` Richard Biener
  2023-07-21  8:36   ` =?gb18030?B?TGVodWEgRGluZw==?=
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Biener @ 2023-07-21  6:19 UTC (permalink / raw)
  To: Juzhe-Zhong; +Cc: gcc-patches, jeffreyalaw, richard.sandiford

On Fri, 21 Jul 2023, Juzhe-Zhong wrote:

> Hi.
> 
> Since start from LEN_MASK_GATHER_LOAD/LEN_MASK_SCATTER_STORE, COND_LEN_* patterns,
> the order of len and mask is {mask,len,bias}.
> 
> The reason we make "mask" argument comes before "len" is because we want to keep
> the "mask" location same as mask_* or cond_* patterns to make use of current codes flow
> of mask_* and cond_*. Otherwise, we will need to change codes much more and make codes
> hard to maintain.
> 
> Now, we already have COND_LEN_*, it's naturally that we should rename "LEN_MASK" into "MASK_LEN"
> to keep name scheme consistent.
> 
> This patch only changes the name "LEN_MASK" into "MASK_LEN".
> No codes functionality change.

OK.

> gcc/ChangeLog:
> 
>         * config/riscv/autovec.md (len_maskload<mode><vm>): Change LEN_MASK into MASK_LEN.
>         (mask_len_load<mode><vm>): Ditto.
>         (len_maskstore<mode><vm>): Ditto.
>         (mask_len_store<mode><vm>): Ditto.
>         (len_mask_gather_load<RATIO64:mode><RATIO64I:mode>): Ditto.
>         (mask_len_gather_load<RATIO64:mode><RATIO64I:mode>): Ditto.
>         (len_mask_gather_load<RATIO32:mode><RATIO32I:mode>): Ditto.
>         (mask_len_gather_load<RATIO32:mode><RATIO32I:mode>): Ditto.
>         (len_mask_gather_load<RATIO16:mode><RATIO16I:mode>): Ditto.
>         (mask_len_gather_load<RATIO16:mode><RATIO16I:mode>): Ditto.
>         (len_mask_gather_load<RATIO8:mode><RATIO8I:mode>): Ditto.
>         (mask_len_gather_load<RATIO8:mode><RATIO8I:mode>): Ditto.
>         (len_mask_gather_load<RATIO4:mode><RATIO4I:mode>): Ditto.
>         (mask_len_gather_load<RATIO4:mode><RATIO4I:mode>): Ditto.
>         (len_mask_gather_load<RATIO2:mode><RATIO2I:mode>): Ditto.
>         (mask_len_gather_load<RATIO2:mode><RATIO2I:mode>): Ditto.
>         (len_mask_gather_load<RATIO1:mode><RATIO1:mode>): Ditto.
>         (mask_len_gather_load<RATIO1:mode><RATIO1:mode>): Ditto.
>         (len_mask_scatter_store<RATIO64:mode><RATIO64I:mode>): Ditto.
>         (mask_len_scatter_store<RATIO64:mode><RATIO64I:mode>): Ditto.
>         (len_mask_scatter_store<RATIO32:mode><RATIO32I:mode>): Ditto.
>         (mask_len_scatter_store<RATIO32:mode><RATIO32I:mode>): Ditto.
>         (len_mask_scatter_store<RATIO16:mode><RATIO16I:mode>): Ditto.
>         (mask_len_scatter_store<RATIO16:mode><RATIO16I:mode>): Ditto.
>         (len_mask_scatter_store<RATIO8:mode><RATIO8I:mode>): Ditto.
>         (mask_len_scatter_store<RATIO8:mode><RATIO8I:mode>): Ditto.
>         (len_mask_scatter_store<RATIO4:mode><RATIO4I:mode>): Ditto.
>         (mask_len_scatter_store<RATIO4:mode><RATIO4I:mode>): Ditto.
>         (len_mask_scatter_store<RATIO2:mode><RATIO2I:mode>): Ditto.
>         (mask_len_scatter_store<RATIO2:mode><RATIO2I:mode>): Ditto.
>         (len_mask_scatter_store<RATIO1:mode><RATIO1:mode>): Ditto.
>         (mask_len_scatter_store<RATIO1:mode><RATIO1:mode>): Ditto.
>         * doc/md.texi: Ditto.
>         * genopinit.cc (main): Ditto.
>         (CMP_NAME): Ditto. Ditto.
>         * gimple-fold.cc (arith_overflowed_p): Ditto.
>         (gimple_fold_partial_load_store_mem_ref): Ditto.
>         (gimple_fold_call): Ditto.
>         * internal-fn.cc (len_maskload_direct): Ditto.
>         (mask_len_load_direct): Ditto.
>         (len_maskstore_direct): Ditto.
>         (mask_len_store_direct): Ditto.
>         (expand_call_mem_ref): Ditto.
>         (expand_len_maskload_optab_fn): Ditto.
>         (expand_mask_len_load_optab_fn): Ditto.
>         (expand_len_maskstore_optab_fn): Ditto.
>         (expand_mask_len_store_optab_fn): Ditto.
>         (direct_len_maskload_optab_supported_p): Ditto.
>         (direct_mask_len_load_optab_supported_p): Ditto.
>         (direct_len_maskstore_optab_supported_p): Ditto.
>         (direct_mask_len_store_optab_supported_p): Ditto.
>         (internal_load_fn_p): Ditto.
>         (internal_store_fn_p): Ditto.
>         (internal_gather_scatter_fn_p): Ditto.
>         (internal_fn_len_index): Ditto.
>         (internal_fn_mask_index): Ditto.
>         (internal_fn_stored_value_index): Ditto.
>         (internal_len_load_store_bias): Ditto.
>         * internal-fn.def (LEN_MASK_GATHER_LOAD): Ditto.
>         (MASK_LEN_GATHER_LOAD): Ditto.
>         (LEN_MASK_LOAD): Ditto.
>         (MASK_LEN_LOAD): Ditto.
>         (LEN_MASK_SCATTER_STORE): Ditto.
>         (MASK_LEN_SCATTER_STORE): Ditto.
>         (LEN_MASK_STORE): Ditto.
>         (MASK_LEN_STORE): Ditto.
>         * optabs-query.cc (supports_vec_gather_load_p): Ditto.
>         (supports_vec_scatter_store_p): Ditto.
>         * optabs-tree.cc (target_supports_mask_load_store_p): Ditto.
>         (target_supports_len_load_store_p): Ditto.
>         * optabs.def (OPTAB_CD): Ditto.
>         * tree-ssa-alias.cc (ref_maybe_used_by_call_p_1): Ditto.
>         (call_may_clobber_ref_p_1): Ditto.
>         * tree-ssa-dse.cc (initialize_ao_ref_for_dse): Ditto.
>         (dse_optimize_stmt): Ditto.
>         * tree-ssa-loop-ivopts.cc (get_mem_type_for_internal_fn): Ditto.
>         (get_alias_ptr_type_for_ptr_address): Ditto.
>         * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Ditto.
>         * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Ditto.
>         * tree-vect-stmts.cc (check_load_store_for_partial_vectors): Ditto.
>         (vect_get_strided_load_store_ops): Ditto.
>         (vectorizable_store): Ditto.
>         (vectorizable_load): Ditto.
> 
> gcc/testsuite/ChangeLog:
> 
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: Ditto.
>         * gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c: Ditto.
> 
> ---
>  gcc/config/riscv/autovec.md                   | 32 +++++------
>  gcc/doc/md.texi                               | 18 +++---
>  gcc/genopinit.cc                              |  6 +-
>  gcc/gimple-fold.cc                            | 12 ++--
>  gcc/internal-fn.cc                            | 56 +++++++++----------
>  gcc/internal-fn.def                           | 20 +++----
>  gcc/optabs-query.cc                           |  4 +-
>  gcc/optabs-tree.cc                            | 20 +++----
>  gcc/optabs.def                                |  8 +--
>  .../autovec/gather-scatter/gather_load-1.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-10.c   |  2 +-
>  .../autovec/gather-scatter/gather_load-11.c   |  2 +-
>  .../autovec/gather-scatter/gather_load-12.c   |  2 +-
>  .../autovec/gather-scatter/gather_load-2.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-3.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-4.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-5.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-6.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-7.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-8.c    |  2 +-
>  .../autovec/gather-scatter/gather_load-9.c    |  2 +-
>  .../gather-scatter/mask_gather_load-1.c       |  2 +-
>  .../gather-scatter/mask_gather_load-10.c      |  2 +-
>  .../gather-scatter/mask_gather_load-11.c      |  2 +-
>  .../gather-scatter/mask_gather_load-2.c       |  2 +-
>  .../gather-scatter/mask_gather_load-3.c       |  2 +-
>  .../gather-scatter/mask_gather_load-4.c       |  2 +-
>  .../gather-scatter/mask_gather_load-5.c       |  2 +-
>  .../gather-scatter/mask_gather_load-6.c       |  2 +-
>  .../gather-scatter/mask_gather_load-7.c       |  2 +-
>  .../gather-scatter/mask_gather_load-8.c       |  2 +-
>  .../gather-scatter/mask_gather_load-9.c       |  2 +-
>  .../gather-scatter/mask_scatter_store-1.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-10.c    |  2 +-
>  .../gather-scatter/mask_scatter_store-2.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-3.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-4.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-5.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-6.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-7.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-8.c     |  2 +-
>  .../gather-scatter/mask_scatter_store-9.c     |  2 +-
>  .../autovec/gather-scatter/scatter_store-1.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-10.c |  2 +-
>  .../autovec/gather-scatter/scatter_store-2.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-3.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-4.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-5.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-6.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-7.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-8.c  |  2 +-
>  .../autovec/gather-scatter/scatter_store-9.c  |  2 +-
>  .../autovec/gather-scatter/strided_load-1.c   |  2 +-
>  .../autovec/gather-scatter/strided_load-2.c   |  2 +-
>  .../autovec/gather-scatter/strided_store-1.c  |  2 +-
>  .../autovec/gather-scatter/strided_store-2.c  |  2 +-
>  .../riscv/rvv/autovec/partial/gimple_fold-1.c |  2 +-
>  gcc/tree-ssa-alias.cc                         |  6 +-
>  gcc/tree-ssa-dse.cc                           |  4 +-
>  gcc/tree-ssa-loop-ivopts.cc                   |  8 +--
>  gcc/tree-vect-data-refs.cc                    | 12 ++--
>  gcc/tree-vect-patterns.cc                     |  4 +-
>  gcc/tree-vect-stmts.cc                        | 34 +++++------
>  63 files changed, 170 insertions(+), 170 deletions(-)
> 
> diff --git a/gcc/config/riscv/autovec.md b/gcc/config/riscv/autovec.md
> index 667a877d009..7eb96d42c18 100644
> --- a/gcc/config/riscv/autovec.md
> +++ b/gcc/config/riscv/autovec.md
> @@ -22,7 +22,7 @@
>  ;; == Loads/Stores
>  ;; =========================================================================
>  
> -(define_expand "len_maskload<mode><vm>"
> +(define_expand "mask_len_load<mode><vm>"
>    [(match_operand:V 0 "register_operand")
>     (match_operand:V 1 "memory_operand")
>     (match_operand 2 "autovec_length_operand")
> @@ -34,7 +34,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_maskstore<mode><vm>"
> +(define_expand "mask_len_store<mode><vm>"
>    [(match_operand:V 0 "memory_operand")
>     (match_operand:V 1 "register_operand")
>     (match_operand 2 "autovec_length_operand")
> @@ -61,7 +61,7 @@
>  ;; == Gather Load
>  ;; =========================================================================
>  
> -(define_expand "len_mask_gather_load<RATIO64:mode><RATIO64I:mode>"
> +(define_expand "mask_len_gather_load<RATIO64:mode><RATIO64I:mode>"
>    [(match_operand:RATIO64 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO64I 2 "register_operand")
> @@ -76,7 +76,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_gather_load<RATIO32:mode><RATIO32I:mode>"
> +(define_expand "mask_len_gather_load<RATIO32:mode><RATIO32I:mode>"
>    [(match_operand:RATIO32 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO32I 2 "register_operand")
> @@ -91,7 +91,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_gather_load<RATIO16:mode><RATIO16I:mode>"
> +(define_expand "mask_len_gather_load<RATIO16:mode><RATIO16I:mode>"
>    [(match_operand:RATIO16 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO16I 2 "register_operand")
> @@ -106,7 +106,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_gather_load<RATIO8:mode><RATIO8I:mode>"
> +(define_expand "mask_len_gather_load<RATIO8:mode><RATIO8I:mode>"
>    [(match_operand:RATIO8 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO8I 2 "register_operand")
> @@ -121,7 +121,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_gather_load<RATIO4:mode><RATIO4I:mode>"
> +(define_expand "mask_len_gather_load<RATIO4:mode><RATIO4I:mode>"
>    [(match_operand:RATIO4 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO4I 2 "register_operand")
> @@ -136,7 +136,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_gather_load<RATIO2:mode><RATIO2I:mode>"
> +(define_expand "mask_len_gather_load<RATIO2:mode><RATIO2I:mode>"
>    [(match_operand:RATIO2 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO2I 2 "register_operand")
> @@ -155,7 +155,7 @@
>  ;; larger SEW. Since RVV indexed load/store support zero extend
>  ;; implicitly and not support scaling, we should only allow
>  ;; operands[3] and operands[4] to be const_1_operand.
> -(define_expand "len_mask_gather_load<RATIO1:mode><RATIO1:mode>"
> +(define_expand "mask_len_gather_load<RATIO1:mode><RATIO1:mode>"
>    [(match_operand:RATIO1 0 "register_operand")
>     (match_operand 1 "pmode_reg_or_0_operand")
>     (match_operand:RATIO1 2 "register_operand")
> @@ -174,7 +174,7 @@
>  ;; == Scatter Store
>  ;; =========================================================================
>  
> -(define_expand "len_mask_scatter_store<RATIO64:mode><RATIO64I:mode>"
> +(define_expand "mask_len_scatter_store<RATIO64:mode><RATIO64I:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO64I 1 "register_operand")
>     (match_operand 2 "<RATIO64:gs_extension>")
> @@ -189,7 +189,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_scatter_store<RATIO32:mode><RATIO32I:mode>"
> +(define_expand "mask_len_scatter_store<RATIO32:mode><RATIO32I:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO32I 1 "register_operand")
>     (match_operand 2 "<RATIO32:gs_extension>")
> @@ -204,7 +204,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_scatter_store<RATIO16:mode><RATIO16I:mode>"
> +(define_expand "mask_len_scatter_store<RATIO16:mode><RATIO16I:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO16I 1 "register_operand")
>     (match_operand 2 "<RATIO16:gs_extension>")
> @@ -219,7 +219,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_scatter_store<RATIO8:mode><RATIO8I:mode>"
> +(define_expand "mask_len_scatter_store<RATIO8:mode><RATIO8I:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO8I 1 "register_operand")
>     (match_operand 2 "<RATIO8:gs_extension>")
> @@ -234,7 +234,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_scatter_store<RATIO4:mode><RATIO4I:mode>"
> +(define_expand "mask_len_scatter_store<RATIO4:mode><RATIO4I:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO4I 1 "register_operand")
>     (match_operand 2 "<RATIO4:gs_extension>")
> @@ -249,7 +249,7 @@
>    DONE;
>  })
>  
> -(define_expand "len_mask_scatter_store<RATIO2:mode><RATIO2I:mode>"
> +(define_expand "mask_len_scatter_store<RATIO2:mode><RATIO2I:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO2I 1 "register_operand")
>     (match_operand 2 "<RATIO2:gs_extension>")
> @@ -268,7 +268,7 @@
>  ;; larger SEW. Since RVV indexed load/store support zero extend
>  ;; implicitly and not support scaling, we should only allow
>  ;; operands[3] and operands[4] to be const_1_operand.
> -(define_expand "len_mask_scatter_store<RATIO1:mode><RATIO1:mode>"
> +(define_expand "mask_len_scatter_store<RATIO1:mode><RATIO1:mode>"
>    [(match_operand 0 "pmode_reg_or_0_operand")
>     (match_operand:RATIO1 1 "register_operand")
>     (match_operand 2 "<RATIO1:gs_extension>")
> diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
> index 6f44e66399d..f864936d54a 100644
> --- a/gcc/doc/md.texi
> +++ b/gcc/doc/md.texi
> @@ -5040,10 +5040,10 @@ operand 5.  Bit @var{i} of the mask is set if element @var{i}
>  of the result should be loaded from memory and clear if element @var{i}
>  of the result should be set to zero.
>  
> -@cindex @code{len_mask_gather_load@var{m}@var{n}} instruction pattern
> -@item @samp{len_mask_gather_load@var{m}@var{n}}
> +@cindex @code{mask_len_gather_load@var{m}@var{n}} instruction pattern
> +@item @samp{mask_len_gather_load@var{m}@var{n}}
>  Like @samp{gather_load@var{m}@var{n}}, but takes an extra length operand (operand 5),
> -a bias operand (operand 6) as well as a mask operand (operand 7).  Similar to len_maskload,
> +a bias operand (operand 6) as well as a mask operand (operand 7).  Similar to mask_len_load,
>  the instruction loads at most (operand 5 + operand 6) elements from memory.
>  Bit @var{i} of the mask is set if element @var{i} of the result should
>  be loaded from memory and clear if element @var{i} of the result should be undefined.
> @@ -5078,8 +5078,8 @@ Like @samp{scatter_store@var{m}@var{n}}, but takes an extra mask operand as
>  operand 5.  Bit @var{i} of the mask is set if element @var{i}
>  of the result should be stored to memory.
>  
> -@cindex @code{len_mask_scatter_store@var{m}@var{n}} instruction pattern
> -@item @samp{len_mask_scatter_store@var{m}@var{n}}
> +@cindex @code{mask_len_scatter_store@var{m}@var{n}} instruction pattern
> +@item @samp{mask_len_scatter_store@var{m}@var{n}}
>  Like @samp{scatter_store@var{m}@var{n}}, but takes an extra length operand (operand 5),
>  a bias operand (operand 6) as well as a mask operand (operand 7).  The instruction stores
>  at most (operand 5 + operand 6) elements of (operand 4) to memory.
> @@ -5321,8 +5321,8 @@ of @code{QI} elements.
>  
>  This pattern is not allowed to @code{FAIL}.
>  
> -@cindex @code{len_maskload@var{m}@var{n}} instruction pattern
> -@item @samp{len_maskload@var{m}@var{n}}
> +@cindex @code{mask_len_load@var{m}@var{n}} instruction pattern
> +@item @samp{mask_len_load@var{m}@var{n}}
>  Perform a masked load from the memory location pointed to by operand 1
>  into register operand 0.  (operand 2 + operand 3) elements are loaded from
>  memory and other elements in operand 0 are set to undefined values.
> @@ -5348,8 +5348,8 @@ of @code{QI} elements.
>  
>  This pattern is not allowed to @code{FAIL}.
>  
> -@cindex @code{len_maskstore@var{m}@var{n}} instruction pattern
> -@item @samp{len_maskstore@var{m}@var{n}}
> +@cindex @code{mask_len_store@var{m}@var{n}} instruction pattern
> +@item @samp{mask_len_store@var{m}@var{n}}
>  Perform a masked store from vector register operand 1 into memory operand 0.
>  (operand 2 + operand 3) elements are stored to memory
>  and leave the other elements of operand 0 unchanged.
> diff --git a/gcc/genopinit.cc b/gcc/genopinit.cc
> index 2a841006884..a4ba2339fa7 100644
> --- a/gcc/genopinit.cc
> +++ b/gcc/genopinit.cc
> @@ -376,7 +376,7 @@ main (int argc, const char **argv)
>    fprintf (s_file,
>  	   "/* Returns TRUE if the target supports any of the partial vector\n"
>  	   "   optabs: while_ult_optab, len_load_optab, len_store_optab,\n"
> -	   "   len_maskload_optab or len_maskstore_optab,\n"
> +	   "   mask_len_load_optab or mask_len_store_optab,\n"
>  	   "   for any mode.  */\n"
>  	   "bool\npartial_vectors_supported_p (void)\n{\n");
>    bool any_match = false;
> @@ -386,8 +386,8 @@ main (int argc, const char **argv)
>      {
>  #define CMP_NAME(N) !strncmp (p->name, (N), strlen ((N)))
>        if (CMP_NAME("while_ult") || CMP_NAME ("len_load")
> -	  || CMP_NAME ("len_store")|| CMP_NAME ("len_maskload")
> -	  || CMP_NAME ("len_maskstore"))
> +	  || CMP_NAME ("len_store")|| CMP_NAME ("mask_len_load")
> +	  || CMP_NAME ("mask_len_store"))
>  	{
>  	  if (first)
>  	    fprintf (s_file, " HAVE_%s", p->name);
> diff --git a/gcc/gimple-fold.cc b/gcc/gimple-fold.cc
> index de94efbcff7..86b83472a61 100644
> --- a/gcc/gimple-fold.cc
> +++ b/gcc/gimple-fold.cc
> @@ -5370,7 +5370,7 @@ arith_overflowed_p (enum tree_code code, const_tree type,
>    return wi::min_precision (wres, sign) > TYPE_PRECISION (type);
>  }
>  
> -/* If IFN_{MASK,LEN,LEN_MASK}_LOAD/STORE call CALL is unconditional,
> +/* If IFN_{MASK,LEN,MASK_LEN}_LOAD/STORE call CALL is unconditional,
>     return a MEM_REF for the memory it references, otherwise return null.
>     VECTYPE is the type of the memory vector.  MASK_P indicates it's for
>     MASK if true, otherwise it's for LEN.  */
> @@ -5398,15 +5398,15 @@ gimple_fold_partial_load_store_mem_ref (gcall *call, tree vectype, bool mask_p)
>  	return NULL_TREE;
>        tree bias = gimple_call_arg (call, len_index + 1);
>        gcc_assert (TREE_CODE (bias) == INTEGER_CST);
> -      /* For LEN_LOAD/LEN_STORE/LEN_MASK_LOAD/LEN_MASK_STORE,
> +      /* For LEN_LOAD/LEN_STORE/MASK_LEN_LOAD/MASK_LEN_STORE,
>  	 we don't fold when (bias + len) != VF.  */
>        if (maybe_ne (wi::to_poly_widest (basic_len) + wi::to_widest (bias),
>  		    GET_MODE_NUNITS (TYPE_MODE (vectype))))
>  	return NULL_TREE;
>  
> -      /* For LEN_MASK_{LOAD,STORE}, we should also check whether
> +      /* For MASK_LEN_{LOAD,STORE}, we should also check whether
>  	  the mask is all ones mask.  */
> -      if (ifn == IFN_LEN_MASK_LOAD || ifn == IFN_LEN_MASK_STORE)
> +      if (ifn == IFN_MASK_LEN_LOAD || ifn == IFN_MASK_LEN_STORE)
>  	{
>  	  tree mask = gimple_call_arg (call, internal_fn_mask_index (ifn));
>  	  if (!integer_all_onesp (mask))
> @@ -5689,11 +5689,11 @@ gimple_fold_call (gimple_stmt_iterator *gsi, bool inplace)
>  	  changed |= gimple_fold_partial_store (gsi, stmt, true);
>  	  break;
>  	case IFN_LEN_LOAD:
> -	case IFN_LEN_MASK_LOAD:
> +	case IFN_MASK_LEN_LOAD:
>  	  changed |= gimple_fold_partial_load (gsi, stmt, false);
>  	  break;
>  	case IFN_LEN_STORE:
> -	case IFN_LEN_MASK_STORE:
> +	case IFN_MASK_LEN_STORE:
>  	  changed |= gimple_fold_partial_store (gsi, stmt, false);
>  	  break;
>  	default:
> diff --git a/gcc/internal-fn.cc b/gcc/internal-fn.cc
> index 2bf4fc492fe..969bfe9ab67 100644
> --- a/gcc/internal-fn.cc
> +++ b/gcc/internal-fn.cc
> @@ -165,7 +165,7 @@ init_internal_fns ()
>  #define mask_load_lanes_direct { -1, -1, false }
>  #define gather_load_direct { 3, 1, false }
>  #define len_load_direct { -1, -1, false }
> -#define len_maskload_direct { -1, 4, false }
> +#define mask_len_load_direct { -1, 4, false }
>  #define mask_store_direct { 3, 2, false }
>  #define store_lanes_direct { 0, 0, false }
>  #define mask_store_lanes_direct { 0, 0, false }
> @@ -173,7 +173,7 @@ init_internal_fns ()
>  #define vec_cond_direct { 2, 0, false }
>  #define scatter_store_direct { 3, 1, false }
>  #define len_store_direct { 3, 3, false }
> -#define len_maskstore_direct { 4, 5, false }
> +#define mask_len_store_direct { 4, 5, false }
>  #define vec_set_direct { 3, 3, false }
>  #define vec_extract_direct { 3, 3, false }
>  #define unary_direct { 0, 0, true }
> @@ -2912,7 +2912,7 @@ expand_call_mem_ref (tree type, gcall *stmt, int index)
>    return fold_build2 (MEM_REF, type, addr, build_int_cst (alias_ptr_type, 0));
>  }
>  
> -/* Expand MASK_LOAD{,_LANES}, LEN_MASK_LOAD or LEN_LOAD call STMT using optab
> +/* Expand MASK_LOAD{,_LANES}, MASK_LEN_LOAD or LEN_LOAD call STMT using optab
>   * OPTAB.  */
>  
>  static void
> @@ -2954,9 +2954,9 @@ expand_partial_load_optab_fn (internal_fn ifn, gcall *stmt, convert_optab optab)
>  #define expand_mask_load_optab_fn expand_partial_load_optab_fn
>  #define expand_mask_load_lanes_optab_fn expand_mask_load_optab_fn
>  #define expand_len_load_optab_fn expand_partial_load_optab_fn
> -#define expand_len_maskload_optab_fn expand_partial_load_optab_fn
> +#define expand_mask_len_load_optab_fn expand_partial_load_optab_fn
>  
> -/* Expand MASK_STORE{,_LANES}, LEN_MASK_STORE or LEN_STORE call STMT using optab
> +/* Expand MASK_STORE{,_LANES}, MASK_LEN_STORE or LEN_STORE call STMT using optab
>   * OPTAB.  */
>  
>  static void
> @@ -2993,7 +2993,7 @@ expand_partial_store_optab_fn (internal_fn ifn, gcall *stmt, convert_optab optab
>  #define expand_mask_store_optab_fn expand_partial_store_optab_fn
>  #define expand_mask_store_lanes_optab_fn expand_mask_store_optab_fn
>  #define expand_len_store_optab_fn expand_partial_store_optab_fn
> -#define expand_len_maskstore_optab_fn expand_partial_store_optab_fn
> +#define expand_mask_len_store_optab_fn expand_partial_store_optab_fn
>  
>  /* Expand VCOND, VCONDU and VCONDEQ optab internal functions.
>     The expansion of STMT happens based on OPTAB table associated.  */
> @@ -3988,7 +3988,7 @@ multi_vector_optab_supported_p (convert_optab optab, tree_pair types,
>  #define direct_mask_load_lanes_optab_supported_p multi_vector_optab_supported_p
>  #define direct_gather_load_optab_supported_p convert_optab_supported_p
>  #define direct_len_load_optab_supported_p direct_optab_supported_p
> -#define direct_len_maskload_optab_supported_p convert_optab_supported_p
> +#define direct_mask_len_load_optab_supported_p convert_optab_supported_p
>  #define direct_mask_store_optab_supported_p convert_optab_supported_p
>  #define direct_store_lanes_optab_supported_p multi_vector_optab_supported_p
>  #define direct_mask_store_lanes_optab_supported_p multi_vector_optab_supported_p
> @@ -3996,7 +3996,7 @@ multi_vector_optab_supported_p (convert_optab optab, tree_pair types,
>  #define direct_vec_cond_optab_supported_p convert_optab_supported_p
>  #define direct_scatter_store_optab_supported_p convert_optab_supported_p
>  #define direct_len_store_optab_supported_p direct_optab_supported_p
> -#define direct_len_maskstore_optab_supported_p convert_optab_supported_p
> +#define direct_mask_len_store_optab_supported_p convert_optab_supported_p
>  #define direct_while_optab_supported_p convert_optab_supported_p
>  #define direct_fold_extract_optab_supported_p direct_optab_supported_p
>  #define direct_fold_left_optab_supported_p direct_optab_supported_p
> @@ -4541,9 +4541,9 @@ internal_load_fn_p (internal_fn fn)
>      case IFN_MASK_LOAD_LANES:
>      case IFN_GATHER_LOAD:
>      case IFN_MASK_GATHER_LOAD:
> -    case IFN_LEN_MASK_GATHER_LOAD:
> +    case IFN_MASK_LEN_GATHER_LOAD:
>      case IFN_LEN_LOAD:
> -    case IFN_LEN_MASK_LOAD:
> +    case IFN_MASK_LEN_LOAD:
>        return true;
>  
>      default:
> @@ -4563,9 +4563,9 @@ internal_store_fn_p (internal_fn fn)
>      case IFN_MASK_STORE_LANES:
>      case IFN_SCATTER_STORE:
>      case IFN_MASK_SCATTER_STORE:
> -    case IFN_LEN_MASK_SCATTER_STORE:
> +    case IFN_MASK_LEN_SCATTER_STORE:
>      case IFN_LEN_STORE:
> -    case IFN_LEN_MASK_STORE:
> +    case IFN_MASK_LEN_STORE:
>        return true;
>  
>      default:
> @@ -4582,10 +4582,10 @@ internal_gather_scatter_fn_p (internal_fn fn)
>      {
>      case IFN_GATHER_LOAD:
>      case IFN_MASK_GATHER_LOAD:
> -    case IFN_LEN_MASK_GATHER_LOAD:
> +    case IFN_MASK_LEN_GATHER_LOAD:
>      case IFN_SCATTER_STORE:
>      case IFN_MASK_SCATTER_STORE:
> -    case IFN_LEN_MASK_SCATTER_STORE:
> +    case IFN_MASK_LEN_SCATTER_STORE:
>        return true;
>  
>      default:
> @@ -4603,12 +4603,12 @@ internal_fn_len_index (internal_fn fn)
>      {
>      case IFN_LEN_LOAD:
>      case IFN_LEN_STORE:
> -    case IFN_LEN_MASK_LOAD:
> -    case IFN_LEN_MASK_STORE:
> +    case IFN_MASK_LEN_LOAD:
> +    case IFN_MASK_LEN_STORE:
>        return 2;
>  
> -    case IFN_LEN_MASK_GATHER_LOAD:
> -    case IFN_LEN_MASK_SCATTER_STORE:
> +    case IFN_MASK_LEN_GATHER_LOAD:
> +    case IFN_MASK_LEN_SCATTER_STORE:
>      case IFN_COND_LEN_FMA:
>      case IFN_COND_LEN_FMS:
>      case IFN_COND_LEN_FNMA:
> @@ -4656,10 +4656,10 @@ internal_fn_mask_index (internal_fn fn)
>  
>      case IFN_MASK_GATHER_LOAD:
>      case IFN_MASK_SCATTER_STORE:
> -    case IFN_LEN_MASK_LOAD:
> -    case IFN_LEN_MASK_STORE:
> -    case IFN_LEN_MASK_GATHER_LOAD:
> -    case IFN_LEN_MASK_SCATTER_STORE:
> +    case IFN_MASK_LEN_LOAD:
> +    case IFN_MASK_LEN_STORE:
> +    case IFN_MASK_LEN_GATHER_LOAD:
> +    case IFN_MASK_LEN_SCATTER_STORE:
>        return 4;
>  
>      default:
> @@ -4680,13 +4680,13 @@ internal_fn_stored_value_index (internal_fn fn)
>      case IFN_MASK_STORE_LANES:
>      case IFN_SCATTER_STORE:
>      case IFN_MASK_SCATTER_STORE:
> -    case IFN_LEN_MASK_SCATTER_STORE:
> +    case IFN_MASK_LEN_SCATTER_STORE:
>        return 3;
>  
>      case IFN_LEN_STORE:
>        return 4;
>  
> -    case IFN_LEN_MASK_STORE:
> +    case IFN_MASK_LEN_STORE:
>        return 5;
>  
>      default:
> @@ -4761,13 +4761,13 @@ internal_len_load_store_bias (internal_fn ifn, machine_mode mode)
>  	return VECT_PARTIAL_BIAS_UNSUPPORTED;
>        if (ifn == IFN_LEN_LOAD)
>  	{
> -	  /* Try LEN_MASK_LOAD.  */
> -	  optab = direct_internal_fn_optab (IFN_LEN_MASK_LOAD);
> +	  /* Try MASK_LEN_LOAD.  */
> +	  optab = direct_internal_fn_optab (IFN_MASK_LEN_LOAD);
>  	}
>        else
>  	{
> -	  /* Try LEN_MASK_STORE.  */
> -	  optab = direct_internal_fn_optab (IFN_LEN_MASK_STORE);
> +	  /* Try MASK_LEN_STORE.  */
> +	  optab = direct_internal_fn_optab (IFN_MASK_LEN_STORE);
>  	}
>        icode = convert_optab_handler (optab, mode, mask_mode);
>      }
> diff --git a/gcc/internal-fn.def b/gcc/internal-fn.def
> index d3aec51b1f2..04f3812326e 100644
> --- a/gcc/internal-fn.def
> +++ b/gcc/internal-fn.def
> @@ -48,16 +48,16 @@ along with GCC; see the file COPYING3.  If not see
>     - mask_load: currently just maskload
>     - load_lanes: currently just vec_load_lanes
>     - mask_load_lanes: currently just vec_mask_load_lanes
> -   - gather_load: used for {mask_,len_mask,}gather_load
> +   - gather_load: used for {mask_,mask_len_,}gather_load
>     - len_load: currently just len_load
> -   - len_maskload: currently just len_maskload
> +   - mask_len_load: currently just mask_len_load
>  
>     - mask_store: currently just maskstore
>     - store_lanes: currently just vec_store_lanes
>     - mask_store_lanes: currently just vec_mask_store_lanes
> -   - scatter_store: used for {mask_,len_mask,}scatter_store
> +   - scatter_store: used for {mask_,mask_len_,}scatter_store
>     - len_store: currently just len_store
> -   - len_maskstore: currently just len_maskstore
> +   - mask_len_store: currently just mask_len_store
>  
>     - unary: a normal unary optab, such as vec_reverse_<mode>
>     - binary: a normal binary optab, such as vec_interleave_lo_<mode>
> @@ -161,17 +161,17 @@ DEF_INTERNAL_OPTAB_FN (MASK_LOAD_LANES, ECF_PURE,
>  DEF_INTERNAL_OPTAB_FN (GATHER_LOAD, ECF_PURE, gather_load, gather_load)
>  DEF_INTERNAL_OPTAB_FN (MASK_GATHER_LOAD, ECF_PURE,
>  		       mask_gather_load, gather_load)
> -DEF_INTERNAL_OPTAB_FN (LEN_MASK_GATHER_LOAD, ECF_PURE,
> -		       len_mask_gather_load, gather_load)
> +DEF_INTERNAL_OPTAB_FN (MASK_LEN_GATHER_LOAD, ECF_PURE,
> +		       mask_len_gather_load, gather_load)
>  
>  DEF_INTERNAL_OPTAB_FN (LEN_LOAD, ECF_PURE, len_load, len_load)
> -DEF_INTERNAL_OPTAB_FN (LEN_MASK_LOAD, ECF_PURE, len_maskload, len_maskload)
> +DEF_INTERNAL_OPTAB_FN (MASK_LEN_LOAD, ECF_PURE, mask_len_load, mask_len_load)
>  
>  DEF_INTERNAL_OPTAB_FN (SCATTER_STORE, 0, scatter_store, scatter_store)
>  DEF_INTERNAL_OPTAB_FN (MASK_SCATTER_STORE, 0,
>  		       mask_scatter_store, scatter_store)
> -DEF_INTERNAL_OPTAB_FN (LEN_MASK_SCATTER_STORE, 0,
> -		       len_mask_scatter_store, scatter_store)
> +DEF_INTERNAL_OPTAB_FN (MASK_LEN_SCATTER_STORE, 0,
> +		       mask_len_scatter_store, scatter_store)
>  
>  DEF_INTERNAL_OPTAB_FN (MASK_STORE, 0, maskstore, mask_store)
>  DEF_INTERNAL_OPTAB_FN (STORE_LANES, ECF_CONST, vec_store_lanes, store_lanes)
> @@ -187,7 +187,7 @@ DEF_INTERNAL_OPTAB_FN (VEC_SET, 0, vec_set, vec_set)
>  DEF_INTERNAL_OPTAB_FN (VEC_EXTRACT, 0, vec_extract, vec_extract)
>  
>  DEF_INTERNAL_OPTAB_FN (LEN_STORE, 0, len_store, len_store)
> -DEF_INTERNAL_OPTAB_FN (LEN_MASK_STORE, 0, len_maskstore, len_maskstore)
> +DEF_INTERNAL_OPTAB_FN (MASK_LEN_STORE, 0, mask_len_store, mask_len_store)
>  
>  DEF_INTERNAL_OPTAB_FN (WHILE_ULT, ECF_CONST | ECF_NOTHROW, while_ult, while)
>  DEF_INTERNAL_OPTAB_FN (SELECT_VL, ECF_CONST | ECF_NOTHROW, select_vl, binary)
> diff --git a/gcc/optabs-query.cc b/gcc/optabs-query.cc
> index bf1f484e874..947ccef218c 100644
> --- a/gcc/optabs-query.cc
> +++ b/gcc/optabs-query.cc
> @@ -676,7 +676,7 @@ supports_vec_gather_load_p (machine_mode mode)
>      this_fn_optabs->supports_vec_gather_load[mode]
>        = (supports_vec_convert_optab_p (gather_load_optab, mode)
>  	 || supports_vec_convert_optab_p (mask_gather_load_optab, mode)
> -	 || supports_vec_convert_optab_p (len_mask_gather_load_optab, mode)
> +	 || supports_vec_convert_optab_p (mask_len_gather_load_optab, mode)
>  	 ? 1 : -1);
>  
>    return this_fn_optabs->supports_vec_gather_load[mode] > 0;
> @@ -693,7 +693,7 @@ supports_vec_scatter_store_p (machine_mode mode)
>      this_fn_optabs->supports_vec_scatter_store[mode]
>        = (supports_vec_convert_optab_p (scatter_store_optab, mode)
>  	 || supports_vec_convert_optab_p (mask_scatter_store_optab, mode)
> -	 || supports_vec_convert_optab_p (len_mask_scatter_store_optab, mode)
> +	 || supports_vec_convert_optab_p (mask_len_scatter_store_optab, mode)
>  	 ? 1 : -1);
>  
>    return this_fn_optabs->supports_vec_scatter_store[mode] > 0;
> diff --git a/gcc/optabs-tree.cc b/gcc/optabs-tree.cc
> index e6ae15939d3..40bfbb1a5ad 100644
> --- a/gcc/optabs-tree.cc
> +++ b/gcc/optabs-tree.cc
> @@ -545,17 +545,17 @@ target_supports_op_p (tree type, enum tree_code code,
>  
>  /* Return true if the target has support for masked load/store.
>     We can support masked load/store by either mask{load,store}
> -   or len_mask{load,store}.
> +   or mask_len_{load,store}.
>     This helper function checks whether target supports masked
>     load/store and return corresponding IFN in the last argument
> -   (IFN_MASK_{LOAD,STORE} or IFN_LEN_MASK_{LOAD,STORE}).  */
> +   (IFN_MASK_{LOAD,STORE} or IFN_MASK_LEN_{LOAD,STORE}).  */
>  
>  static bool
>  target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
>  				   bool is_load, internal_fn *ifn)
>  {
>    optab op = is_load ? maskload_optab : maskstore_optab;
> -  optab len_op = is_load ? len_maskload_optab : len_maskstore_optab;
> +  optab len_op = is_load ? mask_len_load_optab : mask_len_store_optab;
>    if (convert_optab_handler (op, mode, mask_mode) != CODE_FOR_nothing)
>      {
>        if (ifn)
> @@ -565,7 +565,7 @@ target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
>    else if (convert_optab_handler (len_op, mode, mask_mode) != CODE_FOR_nothing)
>      {
>        if (ifn)
> -	*ifn = is_load ? IFN_LEN_MASK_LOAD : IFN_LEN_MASK_STORE;
> +	*ifn = is_load ? IFN_MASK_LEN_LOAD : IFN_MASK_LEN_STORE;
>        return true;
>      }
>    return false;
> @@ -573,7 +573,7 @@ target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
>  
>  /* Return true if target supports vector masked load/store for mode.
>     An additional output in the last argument which is the IFN pointer.
> -   We set IFN as MASK_{LOAD,STORE} or LEN_MASK_{LOAD,STORE} according
> +   We set IFN as MASK_{LOAD,STORE} or MASK_LEN_{LOAD,STORE} according
>     which optab is supported in the target.  */
>  
>  bool
> @@ -615,17 +615,17 @@ can_vec_mask_load_store_p (machine_mode mode,
>  
>  /* Return true if the target has support for len load/store.
>     We can support len load/store by either len_{load,store}
> -   or len_mask{load,store}.
> +   or mask_len_{load,store}.
>     This helper function checks whether target supports len
>     load/store and return corresponding IFN in the last argument
> -   (IFN_LEN_{LOAD,STORE} or IFN_LEN_MASK_{LOAD,STORE}).  */
> +   (IFN_LEN_{LOAD,STORE} or IFN_MASK_LEN_{LOAD,STORE}).  */
>  
>  static bool
>  target_supports_len_load_store_p (machine_mode mode, bool is_load,
>  				  internal_fn *ifn)
>  {
>    optab op = is_load ? len_load_optab : len_store_optab;
> -  optab masked_op = is_load ? len_maskload_optab : len_maskstore_optab;
> +  optab masked_op = is_load ? mask_len_load_optab : mask_len_store_optab;
>  
>    if (direct_optab_handler (op, mode))
>      {
> @@ -638,7 +638,7 @@ target_supports_len_load_store_p (machine_mode mode, bool is_load,
>        && convert_optab_handler (masked_op, mode, mask_mode) != CODE_FOR_nothing)
>      {
>        if (ifn)
> -	*ifn = is_load ? IFN_LEN_MASK_LOAD : IFN_LEN_MASK_STORE;
> +	*ifn = is_load ? IFN_MASK_LEN_LOAD : IFN_MASK_LEN_STORE;
>        return true;
>      }
>    return false;
> @@ -651,7 +651,7 @@ target_supports_len_load_store_p (machine_mode mode, bool is_load,
>     As len_{load,store} optabs point out, for the flavor with bytes, we use
>     VnQI to wrap the other supportable same size vector modes.
>     An additional output in the last argument which is the IFN pointer.
> -   We set IFN as LEN_{LOAD,STORE} or LEN_MASK_{LOAD,STORE} according
> +   We set IFN as LEN_{LOAD,STORE} or MASK_LEN_{LOAD,STORE} according
>     which optab is supported in the target.  */
>  
>  opt_machine_mode
> diff --git a/gcc/optabs.def b/gcc/optabs.def
> index 7023392979e..1ea1947b3b5 100644
> --- a/gcc/optabs.def
> +++ b/gcc/optabs.def
> @@ -91,14 +91,14 @@ OPTAB_CD(vec_cmpu_optab, "vec_cmpu$a$b")
>  OPTAB_CD(vec_cmpeq_optab, "vec_cmpeq$a$b")
>  OPTAB_CD(maskload_optab, "maskload$a$b")
>  OPTAB_CD(maskstore_optab, "maskstore$a$b")
> -OPTAB_CD(len_maskload_optab, "len_maskload$a$b")
> -OPTAB_CD(len_maskstore_optab, "len_maskstore$a$b")
> +OPTAB_CD(mask_len_load_optab, "mask_len_load$a$b")
> +OPTAB_CD(mask_len_store_optab, "mask_len_store$a$b")
>  OPTAB_CD(gather_load_optab, "gather_load$a$b")
>  OPTAB_CD(mask_gather_load_optab, "mask_gather_load$a$b")
> -OPTAB_CD(len_mask_gather_load_optab, "len_mask_gather_load$a$b")
> +OPTAB_CD(mask_len_gather_load_optab, "mask_len_gather_load$a$b")
>  OPTAB_CD(scatter_store_optab, "scatter_store$a$b")
>  OPTAB_CD(mask_scatter_store_optab, "mask_scatter_store$a$b")
> -OPTAB_CD(len_mask_scatter_store_optab, "len_mask_scatter_store$a$b")
> +OPTAB_CD(mask_len_scatter_store_optab, "mask_len_scatter_store$a$b")
>  OPTAB_CD(vec_extract_optab, "vec_extract$a$b")
>  OPTAB_CD(vec_init_optab, "vec_init$a$b")
>  
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
> index dffe13f6a8a..3b26bf1dec2 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
> @@ -33,6 +33,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
> index a622e516f06..63949cbe02b 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
> index 4692380233d..8dc1da3f4b4 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
> @@ -27,6 +27,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
> index 71a3dd466fa..6277682e529 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
> @@ -105,7 +105,7 @@ TEST_LOOP (float, uint64_t)
>  TEST_LOOP (double, uint64_t)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-assembler-not "vluxei64\.v" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
> index 785550c4b2d..89e4b40bfd8 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
> @@ -33,6 +33,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
> index 22aeb889221..02fd37c026d 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
> index d74a83415d7..af6a76af7f8 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
> index 2b6c0a87c18..bd9a449086e 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
> index 407cc8a5a73..6d776af4c5c 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
> index 81b31ef26aa..040300a3e2a 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
> index 0bfdb8f0acf..9223bf0057d 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
> index 46f791105ed..2e06fe6090d 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
> index a5de0deccbe..abab3b90af9 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
> @@ -34,6 +34,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
> index 74a0d05b37d..61ab1fb0021 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
> index 98c5b4678b7..e5741812b21 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
> @@ -108,7 +108,7 @@ TEST_LOOP (float, uint64_t)
>  TEST_LOOP (double, uint64_t)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-assembler-not "vluxei64\.v" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
> index 03f84ce962c..cc5f52e0c34 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
> @@ -34,6 +34,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
> index 8578001ef41..311e25ea199 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
> index b273caa0bfe..9223df9c4a2 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
> index 5055d886d62..9ec7e60dc68 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
> index 2a4ae58588f..ff18009fba1 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
> index 31d9414c549..fd05df7b381 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
> index 73ed23042fb..a58c1c22042 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
> index 2f64e805759..36947db76ba 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
> index 623de41267b..0099ed357c4 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
> @@ -34,6 +34,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
> index 55112b067fa..089ec487c47 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
> index 32a572d0064..57a1acec099 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
> @@ -34,6 +34,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
> index fbaaa9d8a8e..ba89eb35db2 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
> index 9b08661f8e6..2d6499fea56 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
> index dd26635f2cb..f55db716cd9 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
> index fa0206a0ec2..a7ec2796834 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
> index 325e86c26a8..b7bd3f415d5 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
> index b4b84e9cdda..f2ab86519bd 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
> @@ -31,6 +31,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
> index a21ccd587c3..42ce1c5364f 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
> @@ -36,6 +36,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
> index 6a390261cfb..28c4bae01c3 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
> @@ -33,6 +33,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
> index feb58d7d458..2cd3e7245aa 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
> index e4c587fd7bb..ee44f415e8b 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
> @@ -33,6 +33,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
> index 33ad256d3db..899b05f96ff 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
> index 48d305623e6..ff6d90ce404 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
> index 83ddc44bf9c..212bd2d9d24 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
> index 11eb68bdb13..4b6b39df814 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
> index 2e323477258..2415c69a3b0 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
> index e6732fe3790..4c2fcb14428 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
> index 766a52b4622..0f4f94cc800 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
> @@ -30,6 +30,6 @@
>  TEST_ALL (TEST_LOOP)
>  
>  /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
> -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
> +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
> index 0c64f3e1a00..b1e6a17543f 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
> @@ -40,6 +40,6 @@
>  
>  TEST_ALL (TEST_LOOP)
>  
> -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_GATHER_LOAD" 66 "optimized" } } */
> +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_GATHER_LOAD" 66 "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
> index 0f234209325..ee5f509b9ac 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
> @@ -40,6 +40,6 @@
>  
>  TEST_ALL (TEST_LOOP)
>  
> -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_GATHER_LOAD" 46 "optimized" } } */
> +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_GATHER_LOAD" 46 "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
> index 2418a0d74eb..3e6a34029b3 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
> @@ -40,6 +40,6 @@
>  
>  TEST_ALL (TEST_LOOP)
>  
> -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_SCATTER_STORE" 66 "optimized" } } */
> +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_SCATTER_STORE" 66 "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
> index 83e101d5688..6906af17d84 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
> @@ -40,6 +40,6 @@
>  
>  TEST_ALL (TEST_LOOP)
>  
> -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_SCATTER_STORE" 44 "optimized" } } */
> +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_SCATTER_STORE" 44 "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
>  /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
> diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
> index 23407a2d3f4..7021182f83a 100644
> --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
> +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
> @@ -40,4 +40,4 @@ main ()
>    RUN_ALL ()
>  }
>  
> -/* { dg-final { scan-tree-dump-times "\.LEN_MASK_STORE" 6 "optimized" } } */
> +/* { dg-final { scan-tree-dump-times "\.MASK_LEN_STORE" 6 "optimized" } } */
> diff --git a/gcc/tree-ssa-alias.cc b/gcc/tree-ssa-alias.cc
> index f31fd042c2a..cf38fe506a8 100644
> --- a/gcc/tree-ssa-alias.cc
> +++ b/gcc/tree-ssa-alias.cc
> @@ -2815,13 +2815,13 @@ ref_maybe_used_by_call_p_1 (gcall *call, ao_ref *ref, bool tbaa_p)
>        case IFN_SCATTER_STORE:
>        case IFN_MASK_SCATTER_STORE:
>        case IFN_LEN_STORE:
> -      case IFN_LEN_MASK_STORE:
> +      case IFN_MASK_LEN_STORE:
>  	return false;
>        case IFN_MASK_STORE_LANES:
>  	goto process_args;
>        case IFN_MASK_LOAD:
>        case IFN_LEN_LOAD:
> -      case IFN_LEN_MASK_LOAD:
> +      case IFN_MASK_LEN_LOAD:
>        case IFN_MASK_LOAD_LANES:
>  	{
>  	  ao_ref rhs_ref;
> @@ -3070,7 +3070,7 @@ call_may_clobber_ref_p_1 (gcall *call, ao_ref *ref, bool tbaa_p)
>  	return false;
>        case IFN_MASK_STORE:
>        case IFN_LEN_STORE:
> -      case IFN_LEN_MASK_STORE:
> +      case IFN_MASK_LEN_STORE:
>        case IFN_MASK_STORE_LANES:
>  	{
>  	  tree rhs = gimple_call_arg (call,
> diff --git a/gcc/tree-ssa-dse.cc b/gcc/tree-ssa-dse.cc
> index 9c6004cdce8..baf72bf1bd4 100644
> --- a/gcc/tree-ssa-dse.cc
> +++ b/gcc/tree-ssa-dse.cc
> @@ -159,7 +159,7 @@ initialize_ao_ref_for_dse (gimple *stmt, ao_ref *write, bool may_def_ok = false)
>  	{
>  	case IFN_LEN_STORE:
>  	case IFN_MASK_STORE:
> -	case IFN_LEN_MASK_STORE:
> +	case IFN_MASK_LEN_STORE:
>  	  {
>  	    internal_fn ifn = gimple_call_internal_fn (stmt);
>  	    int stored_value_index = internal_fn_stored_value_index (ifn);
> @@ -1517,7 +1517,7 @@ dse_optimize_stmt (function *fun, gimple_stmt_iterator *gsi, sbitmap live_bytes)
>  	{
>  	case IFN_LEN_STORE:
>  	case IFN_MASK_STORE:
> -	case IFN_LEN_MASK_STORE:
> +	case IFN_MASK_LEN_STORE:
>  	  {
>  	    enum dse_store_status store_status;
>  	    store_status = dse_classify_store (&ref, stmt, false, live_bytes);
> diff --git a/gcc/tree-ssa-loop-ivopts.cc b/gcc/tree-ssa-loop-ivopts.cc
> index 243ce86dfc4..92fc1c7d734 100644
> --- a/gcc/tree-ssa-loop-ivopts.cc
> +++ b/gcc/tree-ssa-loop-ivopts.cc
> @@ -2442,7 +2442,7 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
>      case IFN_MASK_LOAD:
>      case IFN_MASK_LOAD_LANES:
>      case IFN_LEN_LOAD:
> -    case IFN_LEN_MASK_LOAD:
> +    case IFN_MASK_LEN_LOAD:
>        if (op_p == gimple_call_arg_ptr (call, 0))
>  	return TREE_TYPE (gimple_call_lhs (call));
>        return NULL_TREE;
> @@ -2450,7 +2450,7 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
>      case IFN_MASK_STORE:
>      case IFN_MASK_STORE_LANES:
>      case IFN_LEN_STORE:
> -    case IFN_LEN_MASK_STORE:
> +    case IFN_MASK_LEN_STORE:
>        {
>  	if (op_p == gimple_call_arg_ptr (call, 0))
>  	  {
> @@ -7567,8 +7567,8 @@ get_alias_ptr_type_for_ptr_address (iv_use *use)
>      case IFN_MASK_STORE_LANES:
>      case IFN_LEN_LOAD:
>      case IFN_LEN_STORE:
> -    case IFN_LEN_MASK_LOAD:
> -    case IFN_LEN_MASK_STORE:
> +    case IFN_MASK_LEN_LOAD:
> +    case IFN_MASK_LEN_STORE:
>        /* The second argument contains the correct alias type.  */
>        gcc_assert (use->op_p = gimple_call_arg_ptr (call, 0));
>        return TREE_TYPE (gimple_call_arg (call, 1));
> diff --git a/gcc/tree-vect-data-refs.cc b/gcc/tree-vect-data-refs.cc
> index 9edc8989de9..a3570c45b52 100644
> --- a/gcc/tree-vect-data-refs.cc
> +++ b/gcc/tree-vect-data-refs.cc
> @@ -3878,19 +3878,19 @@ vect_gather_scatter_fn_p (vec_info *vinfo, bool read_p, bool masked_p,
>      {
>        ifn = masked_p ? IFN_MASK_GATHER_LOAD : IFN_GATHER_LOAD;
>        alt_ifn = IFN_MASK_GATHER_LOAD;
> -      /* When target supports LEN_MASK_GATHER_LOAD, we always
> -	 use LEN_MASK_GATHER_LOAD regardless whether len and
> +      /* When target supports MASK_LEN_GATHER_LOAD, we always
> +	 use MASK_LEN_GATHER_LOAD regardless whether len and
>  	 mask are valid or not.  */
> -      alt_ifn2 = IFN_LEN_MASK_GATHER_LOAD;
> +      alt_ifn2 = IFN_MASK_LEN_GATHER_LOAD;
>      }
>    else
>      {
>        ifn = masked_p ? IFN_MASK_SCATTER_STORE : IFN_SCATTER_STORE;
>        alt_ifn = IFN_MASK_SCATTER_STORE;
> -      /* When target supports LEN_MASK_SCATTER_STORE, we always
> -	 use LEN_MASK_SCATTER_STORE regardless whether len and
> +      /* When target supports MASK_LEN_SCATTER_STORE, we always
> +	 use MASK_LEN_SCATTER_STORE regardless whether len and
>  	 mask are valid or not.  */
> -      alt_ifn2 = IFN_LEN_MASK_SCATTER_STORE;
> +      alt_ifn2 = IFN_MASK_LEN_SCATTER_STORE;
>      }
>  
>    for (;;)
> diff --git a/gcc/tree-vect-patterns.cc b/gcc/tree-vect-patterns.cc
> index c0832e8679f..ef806e2346e 100644
> --- a/gcc/tree-vect-patterns.cc
> +++ b/gcc/tree-vect-patterns.cc
> @@ -6106,8 +6106,8 @@ vect_recog_gather_scatter_pattern (vec_info *vinfo,
>  					  loop_vinfo);
>    else if (gs_info.ifn == IFN_MASK_SCATTER_STORE
>  	   || gs_info.ifn == IFN_MASK_GATHER_LOAD
> -	   || gs_info.ifn == IFN_LEN_MASK_SCATTER_STORE
> -	   || gs_info.ifn == IFN_LEN_MASK_GATHER_LOAD)
> +	   || gs_info.ifn == IFN_MASK_LEN_SCATTER_STORE
> +	   || gs_info.ifn == IFN_MASK_LEN_GATHER_LOAD)
>      mask = build_int_cst (TREE_TYPE (truth_type_for (gs_vectype)), -1);
>  
>    /* Get the invariant base and non-invariant offset, converting the
> diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
> index b86e159ae4c..caa4c974cb9 100644
> --- a/gcc/tree-vect-stmts.cc
> +++ b/gcc/tree-vect-stmts.cc
> @@ -1633,8 +1633,8 @@ check_load_store_for_partial_vectors (loop_vec_info loop_vinfo, tree vectype,
>  			 ? IFN_MASK_GATHER_LOAD
>  			 : IFN_MASK_SCATTER_STORE);
>        internal_fn len_ifn = (is_load
> -			     ? IFN_LEN_MASK_GATHER_LOAD
> -			     : IFN_LEN_MASK_SCATTER_STORE);
> +			     ? IFN_MASK_LEN_GATHER_LOAD
> +			     : IFN_MASK_LEN_SCATTER_STORE);
>        if (internal_gather_scatter_fn_supported_p (ifn, vectype,
>  						  gs_info->memory_type,
>  						  gs_info->offset_vectype,
> @@ -3032,7 +3032,7 @@ vect_get_strided_load_store_ops (stmt_vec_info stmt_info,
>      {
>        /* _31 = .SELECT_VL (ivtmp_29, POLY_INT_CST [4, 4]);
>  	 ivtmp_8 = _31 * 16 (step in bytes);
> -	 .LEN_MASK_SCATTER_STORE (vectp_a.9_7, ... );
> +	 .MASK_LEN_SCATTER_STORE (vectp_a.9_7, ... );
>  	 vectp_a.9_26 = vectp_a.9_7 + ivtmp_8;  */
>        tree loop_len
>  	= vect_get_loop_len (loop_vinfo, gsi, loop_lens, 1, vectype, 0, 0);
> @@ -8870,7 +8870,7 @@ vectorizable_store (vec_info *vinfo,
>  		    vec_offset = vec_offsets[vec_num * j + i];
>  		  tree scale = size_int (gs_info.scale);
>  
> -		  if (gs_info.ifn == IFN_LEN_MASK_SCATTER_STORE)
> +		  if (gs_info.ifn == IFN_MASK_LEN_SCATTER_STORE)
>  		    {
>  		      if (loop_lens)
>  			final_len
> @@ -8894,7 +8894,7 @@ vectorizable_store (vec_info *vinfo,
>  		  gcall *call;
>  		  if (final_len && final_mask)
>  		    call
> -		      = gimple_build_call_internal (IFN_LEN_MASK_SCATTER_STORE,
> +		      = gimple_build_call_internal (IFN_MASK_LEN_SCATTER_STORE,
>  						    7, dataref_ptr, vec_offset,
>  						    scale, vec_oprnd, final_mask,
>  						    final_len, bias);
> @@ -9034,12 +9034,12 @@ vectorizable_store (vec_info *vinfo,
>  		    gcc_unreachable ();
>  		}
>  
> -	      if (partial_ifn == IFN_LEN_MASK_STORE)
> +	      if (partial_ifn == IFN_MASK_LEN_STORE)
>  		{
>  		  if (!final_len)
>  		    {
>  		      /* Pass VF value to 'len' argument of
> -		         LEN_MASK_STORE if LOOP_LENS is invalid.  */
> +		         MASK_LEN_STORE if LOOP_LENS is invalid.  */
>  		      tree iv_type = LOOP_VINFO_RGROUP_IV_TYPE (loop_vinfo);
>  		      final_len
>  			= build_int_cst (iv_type,
> @@ -9048,7 +9048,7 @@ vectorizable_store (vec_info *vinfo,
>  		  if (!final_mask)
>  		    {
>  		      /* Pass all ones value to 'mask' argument of
> -			 LEN_MASK_STORE if final_mask is invalid.  */
> +			 MASK_LEN_STORE if final_mask is invalid.  */
>  		      mask_vectype = truth_type_for (vectype);
>  		      final_mask = build_minus_one_cst (mask_vectype);
>  		    }
> @@ -9084,8 +9084,8 @@ vectorizable_store (vec_info *vinfo,
>  		      vec_oprnd = var;
>  		    }
>  
> -		  if (partial_ifn == IFN_LEN_MASK_STORE)
> -		    call = gimple_build_call_internal (IFN_LEN_MASK_STORE, 6,
> +		  if (partial_ifn == IFN_MASK_LEN_STORE)
> +		    call = gimple_build_call_internal (IFN_MASK_LEN_STORE, 6,
>  						       dataref_ptr, ptr,
>  						       final_len, bias,
>  						       final_mask, vec_oprnd);
> @@ -10454,7 +10454,7 @@ vectorizable_load (vec_info *vinfo,
>  			tree zero = build_zero_cst (vectype);
>  			tree scale = size_int (gs_info.scale);
>  
> -			if (gs_info.ifn == IFN_LEN_MASK_GATHER_LOAD)
> +			if (gs_info.ifn == IFN_MASK_LEN_GATHER_LOAD)
>  			  {
>  			    if (loop_lens)
>  			      final_len
> @@ -10478,7 +10478,7 @@ vectorizable_load (vec_info *vinfo,
>  			gcall *call;
>  			if (final_len && final_mask)
>  			  call = gimple_build_call_internal (
> -			    IFN_LEN_MASK_GATHER_LOAD, 7, dataref_ptr,
> +			    IFN_MASK_LEN_GATHER_LOAD, 7, dataref_ptr,
>  			    vec_offset, scale, zero, final_mask, final_len,
>  			    bias);
>  			else if (final_mask)
> @@ -10618,12 +10618,12 @@ vectorizable_load (vec_info *vinfo,
>  			  gcc_unreachable ();
>  		      }
>  
> -		    if (partial_ifn == IFN_LEN_MASK_LOAD)
> +		    if (partial_ifn == IFN_MASK_LEN_LOAD)
>  		      {
>  			if (!final_len)
>  			  {
>  			    /* Pass VF value to 'len' argument of
> -			       LEN_MASK_LOAD if LOOP_LENS is invalid.  */
> +			       MASK_LEN_LOAD if LOOP_LENS is invalid.  */
>  			    tree iv_type
>  			      = LOOP_VINFO_RGROUP_IV_TYPE (loop_vinfo);
>  			    final_len
> @@ -10633,7 +10633,7 @@ vectorizable_load (vec_info *vinfo,
>  			if (!final_mask)
>  			  {
>  			    /* Pass all ones value to 'mask' argument of
> -			       LEN_MASK_LOAD if final_mask is invalid.  */
> +			       MASK_LEN_LOAD if final_mask is invalid.  */
>  			    mask_vectype = truth_type_for (vectype);
>  			    final_mask = build_minus_one_cst (mask_vectype);
>  			  }
> @@ -10651,8 +10651,8 @@ vectorizable_load (vec_info *vinfo,
>  			tree ptr
>  			  = build_int_cst (ref_type, align * BITS_PER_UNIT);
>  			gcall *call;
> -			if (partial_ifn == IFN_LEN_MASK_LOAD)
> -			  call = gimple_build_call_internal (IFN_LEN_MASK_LOAD,
> +			if (partial_ifn == IFN_MASK_LEN_LOAD)
> +			  call = gimple_build_call_internal (IFN_MASK_LEN_LOAD,
>  							     5, dataref_ptr,
>  							     ptr, final_len,
>  							     bias, final_mask);
> 

-- 
Richard Biener <rguenther@suse.de>
SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg,
Germany; GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman;
HRB 36809 (AG Nuernberg)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] cleanup: Change LEN_MASK into MASK_LEN
  2023-07-21  6:19 ` Richard Biener
@ 2023-07-21  8:36   ` =?gb18030?B?TGVodWEgRGluZw==?=
  0 siblings, 0 replies; 3+ messages in thread
From: =?gb18030?B?TGVodWEgRGluZw==?= @ 2023-07-21  8:36 UTC (permalink / raw)
  To: =?gb18030?B?UmljaGFyZCBCaWVuZXI=?=, =?gb18030?B?SnV6aGUtWmhvbmc=?=
  Cc: =?gb18030?B?Z2NjLXBhdGNoZXM=?=, =?gb18030?B?amVmZnJleWFsYXc=?=,
	=?gb18030?B?cmljaGFyZC5zYW5kaWZvcmQ=?=

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="gb18030", Size: 118211 bytes --]

Commited, thanks Richard.




------------------&nbsp;Original&nbsp;------------------
From:                                                                                                                        "Richard Biener"                                                                                    <gcc-patches@gcc.gnu.org&gt;;
Date:&nbsp;Fri, Jul 21, 2023 02:19 PM
To:&nbsp;"Juzhe-Zhong"<juzhe.zhong@rivai.ai&gt;;
Cc:&nbsp;"gcc-patches"<gcc-patches@gcc.gnu.org&gt;;"jeffreyalaw"<jeffreyalaw@gmail.com&gt;;"richard.sandiford"<richard.sandiford@arm.com&gt;;
Subject:&nbsp;Re: [PATCH] cleanup: Change LEN_MASK into MASK_LEN



On Fri, 21 Jul 2023, Juzhe-Zhong wrote:

&gt; Hi.
&gt; 
&gt; Since start from LEN_MASK_GATHER_LOAD/LEN_MASK_SCATTER_STORE, COND_LEN_* patterns,
&gt; the order of len and mask is {mask,len,bias}.
&gt; 
&gt; The reason we make "mask" argument comes before "len" is because we want to keep
&gt; the "mask" location same as mask_* or cond_* patterns to make use of current codes flow
&gt; of mask_* and cond_*. Otherwise, we will need to change codes much more and make codes
&gt; hard to maintain.
&gt; 
&gt; Now, we already have COND_LEN_*, it's naturally that we should rename "LEN_MASK" into "MASK_LEN"
&gt; to keep name scheme consistent.
&gt; 
&gt; This patch only changes the name "LEN_MASK" into "MASK_LEN".
&gt; No codes functionality change.

OK.

&gt; gcc/ChangeLog:
&gt; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * config/riscv/autovec.md (len_maskload<mode&gt;<vm&gt;): Change LEN_MASK into MASK_LEN.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_load<mode&gt;<vm&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_maskstore<mode&gt;<vm&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_store<mode&gt;<vm&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO64:mode&gt;<RATIO64I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO64:mode&gt;<RATIO64I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO32:mode&gt;<RATIO32I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO32:mode&gt;<RATIO32I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO16:mode&gt;<RATIO16I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO16:mode&gt;<RATIO16I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO8:mode&gt;<RATIO8I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO8:mode&gt;<RATIO8I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO4:mode&gt;<RATIO4I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO4:mode&gt;<RATIO4I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO2:mode&gt;<RATIO2I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO2:mode&gt;<RATIO2I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_gather_load<RATIO1:mode&gt;<RATIO1:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_gather_load<RATIO1:mode&gt;<RATIO1:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO64:mode&gt;<RATIO64I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO64:mode&gt;<RATIO64I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO32:mode&gt;<RATIO32I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO32:mode&gt;<RATIO32I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO16:mode&gt;<RATIO16I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO16:mode&gt;<RATIO16I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO8:mode&gt;<RATIO8I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO8:mode&gt;<RATIO8I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO4:mode&gt;<RATIO4I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO4:mode&gt;<RATIO4I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO2:mode&gt;<RATIO2I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO2:mode&gt;<RATIO2I:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_mask_scatter_store<RATIO1:mode&gt;<RATIO1:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_scatter_store<RATIO1:mode&gt;<RATIO1:mode&gt;): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * doc/md.texi: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * genopinit.cc (main): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (CMP_NAME): Ditto. Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gimple-fold.cc (arith_overflowed_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (gimple_fold_partial_load_store_mem_ref): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (gimple_fold_call): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * internal-fn.cc (len_maskload_direct): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_load_direct): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (len_maskstore_direct): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mask_len_store_direct): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (expand_call_mem_ref): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (expand_len_maskload_optab_fn): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (expand_mask_len_load_optab_fn): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (expand_len_maskstore_optab_fn): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (expand_mask_len_store_optab_fn): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (direct_len_maskload_optab_supported_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (direct_mask_len_load_optab_supported_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (direct_len_maskstore_optab_supported_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (direct_mask_len_store_optab_supported_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_load_fn_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_store_fn_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_gather_scatter_fn_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_fn_len_index): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_fn_mask_index): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_fn_stored_value_index): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (internal_len_load_store_bias): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * internal-fn.def (LEN_MASK_GATHER_LOAD): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (MASK_LEN_GATHER_LOAD): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (LEN_MASK_LOAD): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (MASK_LEN_LOAD): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (LEN_MASK_SCATTER_STORE): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (MASK_LEN_SCATTER_STORE): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (LEN_MASK_STORE): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (MASK_LEN_STORE): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * optabs-query.cc (supports_vec_gather_load_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (supports_vec_scatter_store_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * optabs-tree.cc (target_supports_mask_load_store_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (target_supports_len_load_store_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * optabs.def (OPTAB_CD): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * tree-ssa-alias.cc (ref_maybe_used_by_call_p_1): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (call_may_clobber_ref_p_1): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * tree-ssa-dse.cc (initialize_ao_ref_for_dse): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (dse_optimize_stmt): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * tree-ssa-loop-ivopts.cc (get_mem_type_for_internal_fn): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (get_alias_ptr_type_for_ptr_address): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * tree-vect-data-refs.cc (vect_gather_scatter_fn_p): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * tree-vect-patterns.cc (vect_recog_gather_scatter_pattern): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * tree-vect-stmts.cc (check_load_store_for_partial_vectors): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vect_get_strided_load_store_ops): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vectorizable_store): Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vectorizable_load): Ditto.
&gt; 
&gt; gcc/testsuite/ChangeLog:
&gt; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: Ditto.
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c: Ditto.
&gt; 
&gt; ---
&gt;&nbsp; gcc/config/riscv/autovec.md&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 32 +++++------
&gt;&nbsp; gcc/doc/md.texi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 18 +++---
&gt;&nbsp; gcc/genopinit.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 6 +-
&gt;&nbsp; gcc/gimple-fold.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 12 ++--
&gt;&nbsp; gcc/internal-fn.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 56 +++++++++----------
&gt;&nbsp; gcc/internal-fn.def&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 20 +++----
&gt;&nbsp; gcc/optabs-query.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 4 +-
&gt;&nbsp; gcc/optabs-tree.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 20 +++----
&gt;&nbsp; gcc/optabs.def&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 8 +--
&gt;&nbsp; .../autovec/gather-scatter/gather_load-1.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-10.c&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-11.c&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-12.c&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-2.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-3.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-4.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-5.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-6.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-7.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-8.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/gather_load-9.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-1.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-10.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-11.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-2.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-3.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-4.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-5.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-6.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-7.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-8.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_gather_load-9.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-1.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-10.c&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-2.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-3.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-4.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-5.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-6.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-7.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-8.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../gather-scatter/mask_scatter_store-9.c&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-1.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-10.c |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-2.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-3.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-4.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-5.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-6.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-7.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-8.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/scatter_store-9.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/strided_load-1.c&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/strided_load-2.c&nbsp;&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/strided_store-1.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../autovec/gather-scatter/strided_store-2.c&nbsp; |&nbsp; 2 +-
&gt;&nbsp; .../riscv/rvv/autovec/partial/gimple_fold-1.c |&nbsp; 2 +-
&gt;&nbsp; gcc/tree-ssa-alias.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 6 +-
&gt;&nbsp; gcc/tree-ssa-dse.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 4 +-
&gt;&nbsp; gcc/tree-ssa-loop-ivopts.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 8 +--
&gt;&nbsp; gcc/tree-vect-data-refs.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 12 ++--
&gt;&nbsp; gcc/tree-vect-patterns.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp; 4 +-
&gt;&nbsp; gcc/tree-vect-stmts.cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 34 +++++------
&gt;&nbsp; 63 files changed, 170 insertions(+), 170 deletions(-)
&gt; 
&gt; diff --git a/gcc/config/riscv/autovec.md b/gcc/config/riscv/autovec.md
&gt; index 667a877d009..7eb96d42c18 100644
&gt; --- a/gcc/config/riscv/autovec.md
&gt; +++ b/gcc/config/riscv/autovec.md
&gt; @@ -22,7 +22,7 @@
&gt;&nbsp; ;; == Loads/Stores
&gt;&nbsp; ;; =========================================================================
&gt;&nbsp; 
&gt; -(define_expand "len_maskload<mode&gt;<vm&gt;"
&gt; +(define_expand "mask_len_load<mode&gt;<vm&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:V 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:V 1 "memory_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "autovec_length_operand")
&gt; @@ -34,7 +34,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_maskstore<mode&gt;<vm&gt;"
&gt; +(define_expand "mask_len_store<mode&gt;<vm&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:V 0 "memory_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:V 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "autovec_length_operand")
&gt; @@ -61,7 +61,7 @@
&gt;&nbsp; ;; == Gather Load
&gt;&nbsp; ;; =========================================================================
&gt;&nbsp; 
&gt; -(define_expand "len_mask_gather_load<RATIO64:mode&gt;<RATIO64I:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO64:mode&gt;<RATIO64I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO64 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO64I 2 "register_operand")
&gt; @@ -76,7 +76,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_gather_load<RATIO32:mode&gt;<RATIO32I:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO32:mode&gt;<RATIO32I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO32 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO32I 2 "register_operand")
&gt; @@ -91,7 +91,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_gather_load<RATIO16:mode&gt;<RATIO16I:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO16:mode&gt;<RATIO16I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO16 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO16I 2 "register_operand")
&gt; @@ -106,7 +106,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_gather_load<RATIO8:mode&gt;<RATIO8I:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO8:mode&gt;<RATIO8I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO8 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO8I 2 "register_operand")
&gt; @@ -121,7 +121,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_gather_load<RATIO4:mode&gt;<RATIO4I:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO4:mode&gt;<RATIO4I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO4 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO4I 2 "register_operand")
&gt; @@ -136,7 +136,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_gather_load<RATIO2:mode&gt;<RATIO2I:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO2:mode&gt;<RATIO2I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO2 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO2I 2 "register_operand")
&gt; @@ -155,7 +155,7 @@
&gt;&nbsp; ;; larger SEW. Since RVV indexed load/store support zero extend
&gt;&nbsp; ;; implicitly and not support scaling, we should only allow
&gt;&nbsp; ;; operands[3] and operands[4] to be const_1_operand.
&gt; -(define_expand "len_mask_gather_load<RATIO1:mode&gt;<RATIO1:mode&gt;"
&gt; +(define_expand "mask_len_gather_load<RATIO1:mode&gt;<RATIO1:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand:RATIO1 0 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 1 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO1 2 "register_operand")
&gt; @@ -174,7 +174,7 @@
&gt;&nbsp; ;; == Scatter Store
&gt;&nbsp; ;; =========================================================================
&gt;&nbsp; 
&gt; -(define_expand "len_mask_scatter_store<RATIO64:mode&gt;<RATIO64I:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO64:mode&gt;<RATIO64I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO64I 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO64:gs_extension&gt;")
&gt; @@ -189,7 +189,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_scatter_store<RATIO32:mode&gt;<RATIO32I:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO32:mode&gt;<RATIO32I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO32I 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO32:gs_extension&gt;")
&gt; @@ -204,7 +204,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_scatter_store<RATIO16:mode&gt;<RATIO16I:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO16:mode&gt;<RATIO16I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO16I 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO16:gs_extension&gt;")
&gt; @@ -219,7 +219,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_scatter_store<RATIO8:mode&gt;<RATIO8I:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO8:mode&gt;<RATIO8I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO8I 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO8:gs_extension&gt;")
&gt; @@ -234,7 +234,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_scatter_store<RATIO4:mode&gt;<RATIO4I:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO4:mode&gt;<RATIO4I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO4I 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO4:gs_extension&gt;")
&gt; @@ -249,7 +249,7 @@
&gt;&nbsp;&nbsp;&nbsp; DONE;
&gt;&nbsp; })
&gt;&nbsp; 
&gt; -(define_expand "len_mask_scatter_store<RATIO2:mode&gt;<RATIO2I:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO2:mode&gt;<RATIO2I:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO2I 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO2:gs_extension&gt;")
&gt; @@ -268,7 +268,7 @@
&gt;&nbsp; ;; larger SEW. Since RVV indexed load/store support zero extend
&gt;&nbsp; ;; implicitly and not support scaling, we should only allow
&gt;&nbsp; ;; operands[3] and operands[4] to be const_1_operand.
&gt; -(define_expand "len_mask_scatter_store<RATIO1:mode&gt;<RATIO1:mode&gt;"
&gt; +(define_expand "mask_len_scatter_store<RATIO1:mode&gt;<RATIO1:mode&gt;"
&gt;&nbsp;&nbsp;&nbsp; [(match_operand 0 "pmode_reg_or_0_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand:RATIO1 1 "register_operand")
&gt;&nbsp;&nbsp;&nbsp;&nbsp; (match_operand 2 "<RATIO1:gs_extension&gt;")
&gt; diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
&gt; index 6f44e66399d..f864936d54a 100644
&gt; --- a/gcc/doc/md.texi
&gt; +++ b/gcc/doc/md.texi
&gt; @@ -5040,10 +5040,10 @@ operand 5.&nbsp; Bit @var{i} of the mask is set if element @var{i}
&gt;&nbsp; of the result should be loaded from memory and clear if element @var{i}
&gt;&nbsp; of the result should be set to zero.
&gt;&nbsp; 
&gt; -@cindex @code{len_mask_gather_load@var{m}@var{n}} instruction pattern
&gt; -@item @samp{len_mask_gather_load@var{m}@var{n}}
&gt; +@cindex @code{mask_len_gather_load@var{m}@var{n}} instruction pattern
&gt; +@item @samp{mask_len_gather_load@var{m}@var{n}}
&gt;&nbsp; Like @samp{gather_load@var{m}@var{n}}, but takes an extra length operand (operand 5),
&gt; -a bias operand (operand 6) as well as a mask operand (operand 7).&nbsp; Similar to len_maskload,
&gt; +a bias operand (operand 6) as well as a mask operand (operand 7).&nbsp; Similar to mask_len_load,
&gt;&nbsp; the instruction loads at most (operand 5 + operand 6) elements from memory.
&gt;&nbsp; Bit @var{i} of the mask is set if element @var{i} of the result should
&gt;&nbsp; be loaded from memory and clear if element @var{i} of the result should be undefined.
&gt; @@ -5078,8 +5078,8 @@ Like @samp{scatter_store@var{m}@var{n}}, but takes an extra mask operand as
&gt;&nbsp; operand 5.&nbsp; Bit @var{i} of the mask is set if element @var{i}
&gt;&nbsp; of the result should be stored to memory.
&gt;&nbsp; 
&gt; -@cindex @code{len_mask_scatter_store@var{m}@var{n}} instruction pattern
&gt; -@item @samp{len_mask_scatter_store@var{m}@var{n}}
&gt; +@cindex @code{mask_len_scatter_store@var{m}@var{n}} instruction pattern
&gt; +@item @samp{mask_len_scatter_store@var{m}@var{n}}
&gt;&nbsp; Like @samp{scatter_store@var{m}@var{n}}, but takes an extra length operand (operand 5),
&gt;&nbsp; a bias operand (operand 6) as well as a mask operand (operand 7).&nbsp; The instruction stores
&gt;&nbsp; at most (operand 5 + operand 6) elements of (operand 4) to memory.
&gt; @@ -5321,8 +5321,8 @@ of @code{QI} elements.
&gt;&nbsp; 
&gt;&nbsp; This pattern is not allowed to @code{FAIL}.
&gt;&nbsp; 
&gt; -@cindex @code{len_maskload@var{m}@var{n}} instruction pattern
&gt; -@item @samp{len_maskload@var{m}@var{n}}
&gt; +@cindex @code{mask_len_load@var{m}@var{n}} instruction pattern
&gt; +@item @samp{mask_len_load@var{m}@var{n}}
&gt;&nbsp; Perform a masked load from the memory location pointed to by operand 1
&gt;&nbsp; into register operand 0.&nbsp; (operand 2 + operand 3) elements are loaded from
&gt;&nbsp; memory and other elements in operand 0 are set to undefined values.
&gt; @@ -5348,8 +5348,8 @@ of @code{QI} elements.
&gt;&nbsp; 
&gt;&nbsp; This pattern is not allowed to @code{FAIL}.
&gt;&nbsp; 
&gt; -@cindex @code{len_maskstore@var{m}@var{n}} instruction pattern
&gt; -@item @samp{len_maskstore@var{m}@var{n}}
&gt; +@cindex @code{mask_len_store@var{m}@var{n}} instruction pattern
&gt; +@item @samp{mask_len_store@var{m}@var{n}}
&gt;&nbsp; Perform a masked store from vector register operand 1 into memory operand 0.
&gt;&nbsp; (operand 2 + operand 3) elements are stored to memory
&gt;&nbsp; and leave the other elements of operand 0 unchanged.
&gt; diff --git a/gcc/genopinit.cc b/gcc/genopinit.cc
&gt; index 2a841006884..a4ba2339fa7 100644
&gt; --- a/gcc/genopinit.cc
&gt; +++ b/gcc/genopinit.cc
&gt; @@ -376,7 +376,7 @@ main (int argc, const char **argv)
&gt;&nbsp;&nbsp;&nbsp; fprintf (s_file,
&gt;&nbsp; 	&nbsp;&nbsp; "/* Returns TRUE if the target supports any of the partial vector\n"
&gt;&nbsp; 	&nbsp;&nbsp; "&nbsp;&nbsp; optabs: while_ult_optab, len_load_optab, len_store_optab,\n"
&gt; -	&nbsp;&nbsp; "&nbsp;&nbsp; len_maskload_optab or len_maskstore_optab,\n"
&gt; +	&nbsp;&nbsp; "&nbsp;&nbsp; mask_len_load_optab or mask_len_store_optab,\n"
&gt;&nbsp; 	&nbsp;&nbsp; "&nbsp;&nbsp; for any mode.&nbsp; */\n"
&gt;&nbsp; 	&nbsp;&nbsp; "bool\npartial_vectors_supported_p (void)\n{\n");
&gt;&nbsp;&nbsp;&nbsp; bool any_match = false;
&gt; @@ -386,8 +386,8 @@ main (int argc, const char **argv)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; #define CMP_NAME(N) !strncmp (p-&gt;name, (N), strlen ((N)))
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (CMP_NAME("while_ult") || CMP_NAME ("len_load")
&gt; -	&nbsp; || CMP_NAME ("len_store")|| CMP_NAME ("len_maskload")
&gt; -	&nbsp; || CMP_NAME ("len_maskstore"))
&gt; +	&nbsp; || CMP_NAME ("len_store")|| CMP_NAME ("mask_len_load")
&gt; +	&nbsp; || CMP_NAME ("mask_len_store"))
&gt;&nbsp; 	{
&gt;&nbsp; 	&nbsp; if (first)
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; fprintf (s_file, " HAVE_%s", p-&gt;name);
&gt; diff --git a/gcc/gimple-fold.cc b/gcc/gimple-fold.cc
&gt; index de94efbcff7..86b83472a61 100644
&gt; --- a/gcc/gimple-fold.cc
&gt; +++ b/gcc/gimple-fold.cc
&gt; @@ -5370,7 +5370,7 @@ arith_overflowed_p (enum tree_code code, const_tree type,
&gt;&nbsp;&nbsp;&nbsp; return wi::min_precision (wres, sign) &gt; TYPE_PRECISION (type);
&gt;&nbsp; }
&gt;&nbsp; 
&gt; -/* If IFN_{MASK,LEN,LEN_MASK}_LOAD/STORE call CALL is unconditional,
&gt; +/* If IFN_{MASK,LEN,MASK_LEN}_LOAD/STORE call CALL is unconditional,
&gt;&nbsp;&nbsp;&nbsp;&nbsp; return a MEM_REF for the memory it references, otherwise return null.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; VECTYPE is the type of the memory vector.&nbsp; MASK_P indicates it's for
&gt;&nbsp;&nbsp;&nbsp;&nbsp; MASK if true, otherwise it's for LEN.&nbsp; */
&gt; @@ -5398,15 +5398,15 @@ gimple_fold_partial_load_store_mem_ref (gcall *call, tree vectype, bool mask_p)
&gt;&nbsp; 	return NULL_TREE;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tree bias = gimple_call_arg (call, len_index + 1);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gcc_assert (TREE_CODE (bias) == INTEGER_CST);
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* For LEN_LOAD/LEN_STORE/LEN_MASK_LOAD/LEN_MASK_STORE,
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* For LEN_LOAD/LEN_STORE/MASK_LEN_LOAD/MASK_LEN_STORE,
&gt;&nbsp; 	 we don't fold when (bias + len) != VF.&nbsp; */
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (maybe_ne (wi::to_poly_widest (basic_len) + wi::to_widest (bias),
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; GET_MODE_NUNITS (TYPE_MODE (vectype))))
&gt;&nbsp; 	return NULL_TREE;
&gt;&nbsp; 
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* For LEN_MASK_{LOAD,STORE}, we should also check whether
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* For MASK_LEN_{LOAD,STORE}, we should also check whether
&gt;&nbsp; 	&nbsp; the mask is all ones mask.&nbsp; */
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ifn == IFN_LEN_MASK_LOAD || ifn == IFN_LEN_MASK_STORE)
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ifn == IFN_MASK_LEN_LOAD || ifn == IFN_MASK_LEN_STORE)
&gt;&nbsp; 	{
&gt;&nbsp; 	&nbsp; tree mask = gimple_call_arg (call, internal_fn_mask_index (ifn));
&gt;&nbsp; 	&nbsp; if (!integer_all_onesp (mask))
&gt; @@ -5689,11 +5689,11 @@ gimple_fold_call (gimple_stmt_iterator *gsi, bool inplace)
&gt;&nbsp; 	&nbsp; changed |= gimple_fold_partial_store (gsi, stmt, true);
&gt;&nbsp; 	&nbsp; break;
&gt;&nbsp; 	case IFN_LEN_LOAD:
&gt; -	case IFN_LEN_MASK_LOAD:
&gt; +	case IFN_MASK_LEN_LOAD:
&gt;&nbsp; 	&nbsp; changed |= gimple_fold_partial_load (gsi, stmt, false);
&gt;&nbsp; 	&nbsp; break;
&gt;&nbsp; 	case IFN_LEN_STORE:
&gt; -	case IFN_LEN_MASK_STORE:
&gt; +	case IFN_MASK_LEN_STORE:
&gt;&nbsp; 	&nbsp; changed |= gimple_fold_partial_store (gsi, stmt, false);
&gt;&nbsp; 	&nbsp; break;
&gt;&nbsp; 	default:
&gt; diff --git a/gcc/internal-fn.cc b/gcc/internal-fn.cc
&gt; index 2bf4fc492fe..969bfe9ab67 100644
&gt; --- a/gcc/internal-fn.cc
&gt; +++ b/gcc/internal-fn.cc
&gt; @@ -165,7 +165,7 @@ init_internal_fns ()
&gt;&nbsp; #define mask_load_lanes_direct { -1, -1, false }
&gt;&nbsp; #define gather_load_direct { 3, 1, false }
&gt;&nbsp; #define len_load_direct { -1, -1, false }
&gt; -#define len_maskload_direct { -1, 4, false }
&gt; +#define mask_len_load_direct { -1, 4, false }
&gt;&nbsp; #define mask_store_direct { 3, 2, false }
&gt;&nbsp; #define store_lanes_direct { 0, 0, false }
&gt;&nbsp; #define mask_store_lanes_direct { 0, 0, false }
&gt; @@ -173,7 +173,7 @@ init_internal_fns ()
&gt;&nbsp; #define vec_cond_direct { 2, 0, false }
&gt;&nbsp; #define scatter_store_direct { 3, 1, false }
&gt;&nbsp; #define len_store_direct { 3, 3, false }
&gt; -#define len_maskstore_direct { 4, 5, false }
&gt; +#define mask_len_store_direct { 4, 5, false }
&gt;&nbsp; #define vec_set_direct { 3, 3, false }
&gt;&nbsp; #define vec_extract_direct { 3, 3, false }
&gt;&nbsp; #define unary_direct { 0, 0, true }
&gt; @@ -2912,7 +2912,7 @@ expand_call_mem_ref (tree type, gcall *stmt, int index)
&gt;&nbsp;&nbsp;&nbsp; return fold_build2 (MEM_REF, type, addr, build_int_cst (alias_ptr_type, 0));
&gt;&nbsp; }
&gt;&nbsp; 
&gt; -/* Expand MASK_LOAD{,_LANES}, LEN_MASK_LOAD or LEN_LOAD call STMT using optab
&gt; +/* Expand MASK_LOAD{,_LANES}, MASK_LEN_LOAD or LEN_LOAD call STMT using optab
&gt;&nbsp;&nbsp; * OPTAB.&nbsp; */
&gt;&nbsp; 
&gt;&nbsp; static void
&gt; @@ -2954,9 +2954,9 @@ expand_partial_load_optab_fn (internal_fn ifn, gcall *stmt, convert_optab optab)
&gt;&nbsp; #define expand_mask_load_optab_fn expand_partial_load_optab_fn
&gt;&nbsp; #define expand_mask_load_lanes_optab_fn expand_mask_load_optab_fn
&gt;&nbsp; #define expand_len_load_optab_fn expand_partial_load_optab_fn
&gt; -#define expand_len_maskload_optab_fn expand_partial_load_optab_fn
&gt; +#define expand_mask_len_load_optab_fn expand_partial_load_optab_fn
&gt;&nbsp; 
&gt; -/* Expand MASK_STORE{,_LANES}, LEN_MASK_STORE or LEN_STORE call STMT using optab
&gt; +/* Expand MASK_STORE{,_LANES}, MASK_LEN_STORE or LEN_STORE call STMT using optab
&gt;&nbsp;&nbsp; * OPTAB.&nbsp; */
&gt;&nbsp; 
&gt;&nbsp; static void
&gt; @@ -2993,7 +2993,7 @@ expand_partial_store_optab_fn (internal_fn ifn, gcall *stmt, convert_optab optab
&gt;&nbsp; #define expand_mask_store_optab_fn expand_partial_store_optab_fn
&gt;&nbsp; #define expand_mask_store_lanes_optab_fn expand_mask_store_optab_fn
&gt;&nbsp; #define expand_len_store_optab_fn expand_partial_store_optab_fn
&gt; -#define expand_len_maskstore_optab_fn expand_partial_store_optab_fn
&gt; +#define expand_mask_len_store_optab_fn expand_partial_store_optab_fn
&gt;&nbsp; 
&gt;&nbsp; /* Expand VCOND, VCONDU and VCONDEQ optab internal functions.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; The expansion of STMT happens based on OPTAB table associated.&nbsp; */
&gt; @@ -3988,7 +3988,7 @@ multi_vector_optab_supported_p (convert_optab optab, tree_pair types,
&gt;&nbsp; #define direct_mask_load_lanes_optab_supported_p multi_vector_optab_supported_p
&gt;&nbsp; #define direct_gather_load_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_len_load_optab_supported_p direct_optab_supported_p
&gt; -#define direct_len_maskload_optab_supported_p convert_optab_supported_p
&gt; +#define direct_mask_len_load_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_mask_store_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_store_lanes_optab_supported_p multi_vector_optab_supported_p
&gt;&nbsp; #define direct_mask_store_lanes_optab_supported_p multi_vector_optab_supported_p
&gt; @@ -3996,7 +3996,7 @@ multi_vector_optab_supported_p (convert_optab optab, tree_pair types,
&gt;&nbsp; #define direct_vec_cond_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_scatter_store_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_len_store_optab_supported_p direct_optab_supported_p
&gt; -#define direct_len_maskstore_optab_supported_p convert_optab_supported_p
&gt; +#define direct_mask_len_store_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_while_optab_supported_p convert_optab_supported_p
&gt;&nbsp; #define direct_fold_extract_optab_supported_p direct_optab_supported_p
&gt;&nbsp; #define direct_fold_left_optab_supported_p direct_optab_supported_p
&gt; @@ -4541,9 +4541,9 @@ internal_load_fn_p (internal_fn fn)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LOAD_LANES:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_GATHER_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_GATHER_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_GATHER_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_GATHER_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:
&gt; @@ -4563,9 +4563,9 @@ internal_store_fn_p (internal_fn fn)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE_LANES:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_SCATTER_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_SCATTER_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:
&gt; @@ -4582,10 +4582,10 @@ internal_gather_scatter_fn_p (internal_fn fn)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_GATHER_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_GATHER_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_GATHER_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_GATHER_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_SCATTER_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_SCATTER_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:
&gt; @@ -4603,12 +4603,12 @@ internal_fn_len_index (internal_fn fn)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 2;
&gt;&nbsp; 
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_GATHER_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_SCATTER_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_GATHER_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_COND_LEN_FMA:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_COND_LEN_FMS:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_COND_LEN_FNMA:
&gt; @@ -4656,10 +4656,10 @@ internal_fn_mask_index (internal_fn fn)
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_GATHER_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_SCATTER_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_GATHER_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_SCATTER_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_GATHER_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 4;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:
&gt; @@ -4680,13 +4680,13 @@ internal_fn_stored_value_index (internal_fn fn)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE_LANES:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_SCATTER_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_SCATTER_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 3;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 4;
&gt;&nbsp; 
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 5;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; default:
&gt; @@ -4761,13 +4761,13 @@ internal_len_load_store_bias (internal_fn ifn, machine_mode mode)
&gt;&nbsp; 	return VECT_PARTIAL_BIAS_UNSUPPORTED;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ifn == IFN_LEN_LOAD)
&gt;&nbsp; 	{
&gt; -	&nbsp; /* Try LEN_MASK_LOAD.&nbsp; */
&gt; -	&nbsp; optab = direct_internal_fn_optab (IFN_LEN_MASK_LOAD);
&gt; +	&nbsp; /* Try MASK_LEN_LOAD.&nbsp; */
&gt; +	&nbsp; optab = direct_internal_fn_optab (IFN_MASK_LEN_LOAD);
&gt;&nbsp; 	}
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else
&gt;&nbsp; 	{
&gt; -	&nbsp; /* Try LEN_MASK_STORE.&nbsp; */
&gt; -	&nbsp; optab = direct_internal_fn_optab (IFN_LEN_MASK_STORE);
&gt; +	&nbsp; /* Try MASK_LEN_STORE.&nbsp; */
&gt; +	&nbsp; optab = direct_internal_fn_optab (IFN_MASK_LEN_STORE);
&gt;&nbsp; 	}
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; icode = convert_optab_handler (optab, mode, mask_mode);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt; diff --git a/gcc/internal-fn.def b/gcc/internal-fn.def
&gt; index d3aec51b1f2..04f3812326e 100644
&gt; --- a/gcc/internal-fn.def
&gt; +++ b/gcc/internal-fn.def
&gt; @@ -48,16 +48,16 @@ along with GCC; see the file COPYING3.&nbsp; If not see
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - mask_load: currently just maskload
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - load_lanes: currently just vec_load_lanes
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - mask_load_lanes: currently just vec_mask_load_lanes
&gt; -&nbsp;&nbsp; - gather_load: used for {mask_,len_mask,}gather_load
&gt; +&nbsp;&nbsp; - gather_load: used for {mask_,mask_len_,}gather_load
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - len_load: currently just len_load
&gt; -&nbsp;&nbsp; - len_maskload: currently just len_maskload
&gt; +&nbsp;&nbsp; - mask_len_load: currently just mask_len_load
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - mask_store: currently just maskstore
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - store_lanes: currently just vec_store_lanes
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - mask_store_lanes: currently just vec_mask_store_lanes
&gt; -&nbsp;&nbsp; - scatter_store: used for {mask_,len_mask,}scatter_store
&gt; +&nbsp;&nbsp; - scatter_store: used for {mask_,mask_len_,}scatter_store
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - len_store: currently just len_store
&gt; -&nbsp;&nbsp; - len_maskstore: currently just len_maskstore
&gt; +&nbsp;&nbsp; - mask_len_store: currently just mask_len_store
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - unary: a normal unary optab, such as vec_reverse_<mode&gt;
&gt;&nbsp;&nbsp;&nbsp;&nbsp; - binary: a normal binary optab, such as vec_interleave_lo_<mode&gt;
&gt; @@ -161,17 +161,17 @@ DEF_INTERNAL_OPTAB_FN (MASK_LOAD_LANES, ECF_PURE,
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (GATHER_LOAD, ECF_PURE, gather_load, gather_load)
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (MASK_GATHER_LOAD, ECF_PURE,
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mask_gather_load, gather_load)
&gt; -DEF_INTERNAL_OPTAB_FN (LEN_MASK_GATHER_LOAD, ECF_PURE,
&gt; -		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; len_mask_gather_load, gather_load)
&gt; +DEF_INTERNAL_OPTAB_FN (MASK_LEN_GATHER_LOAD, ECF_PURE,
&gt; +		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mask_len_gather_load, gather_load)
&gt;&nbsp; 
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (LEN_LOAD, ECF_PURE, len_load, len_load)
&gt; -DEF_INTERNAL_OPTAB_FN (LEN_MASK_LOAD, ECF_PURE, len_maskload, len_maskload)
&gt; +DEF_INTERNAL_OPTAB_FN (MASK_LEN_LOAD, ECF_PURE, mask_len_load, mask_len_load)
&gt;&nbsp; 
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (SCATTER_STORE, 0, scatter_store, scatter_store)
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (MASK_SCATTER_STORE, 0,
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mask_scatter_store, scatter_store)
&gt; -DEF_INTERNAL_OPTAB_FN (LEN_MASK_SCATTER_STORE, 0,
&gt; -		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; len_mask_scatter_store, scatter_store)
&gt; +DEF_INTERNAL_OPTAB_FN (MASK_LEN_SCATTER_STORE, 0,
&gt; +		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mask_len_scatter_store, scatter_store)
&gt;&nbsp; 
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (MASK_STORE, 0, maskstore, mask_store)
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (STORE_LANES, ECF_CONST, vec_store_lanes, store_lanes)
&gt; @@ -187,7 +187,7 @@ DEF_INTERNAL_OPTAB_FN (VEC_SET, 0, vec_set, vec_set)
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (VEC_EXTRACT, 0, vec_extract, vec_extract)
&gt;&nbsp; 
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (LEN_STORE, 0, len_store, len_store)
&gt; -DEF_INTERNAL_OPTAB_FN (LEN_MASK_STORE, 0, len_maskstore, len_maskstore)
&gt; +DEF_INTERNAL_OPTAB_FN (MASK_LEN_STORE, 0, mask_len_store, mask_len_store)
&gt;&nbsp; 
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (WHILE_ULT, ECF_CONST | ECF_NOTHROW, while_ult, while)
&gt;&nbsp; DEF_INTERNAL_OPTAB_FN (SELECT_VL, ECF_CONST | ECF_NOTHROW, select_vl, binary)
&gt; diff --git a/gcc/optabs-query.cc b/gcc/optabs-query.cc
&gt; index bf1f484e874..947ccef218c 100644
&gt; --- a/gcc/optabs-query.cc
&gt; +++ b/gcc/optabs-query.cc
&gt; @@ -676,7 +676,7 @@ supports_vec_gather_load_p (machine_mode mode)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this_fn_optabs-&gt;supports_vec_gather_load[mode]
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = (supports_vec_convert_optab_p (gather_load_optab, mode)
&gt;&nbsp; 	 || supports_vec_convert_optab_p (mask_gather_load_optab, mode)
&gt; -	 || supports_vec_convert_optab_p (len_mask_gather_load_optab, mode)
&gt; +	 || supports_vec_convert_optab_p (mask_len_gather_load_optab, mode)
&gt;&nbsp; 	 ? 1 : -1);
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp; return this_fn_optabs-&gt;supports_vec_gather_load[mode] &gt; 0;
&gt; @@ -693,7 +693,7 @@ supports_vec_scatter_store_p (machine_mode mode)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this_fn_optabs-&gt;supports_vec_scatter_store[mode]
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = (supports_vec_convert_optab_p (scatter_store_optab, mode)
&gt;&nbsp; 	 || supports_vec_convert_optab_p (mask_scatter_store_optab, mode)
&gt; -	 || supports_vec_convert_optab_p (len_mask_scatter_store_optab, mode)
&gt; +	 || supports_vec_convert_optab_p (mask_len_scatter_store_optab, mode)
&gt;&nbsp; 	 ? 1 : -1);
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp; return this_fn_optabs-&gt;supports_vec_scatter_store[mode] &gt; 0;
&gt; diff --git a/gcc/optabs-tree.cc b/gcc/optabs-tree.cc
&gt; index e6ae15939d3..40bfbb1a5ad 100644
&gt; --- a/gcc/optabs-tree.cc
&gt; +++ b/gcc/optabs-tree.cc
&gt; @@ -545,17 +545,17 @@ target_supports_op_p (tree type, enum tree_code code,
&gt;&nbsp; 
&gt;&nbsp; /* Return true if the target has support for masked load/store.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; We can support masked load/store by either mask{load,store}
&gt; -&nbsp;&nbsp; or len_mask{load,store}.
&gt; +&nbsp;&nbsp; or mask_len_{load,store}.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; This helper function checks whether target supports masked
&gt;&nbsp;&nbsp;&nbsp;&nbsp; load/store and return corresponding IFN in the last argument
&gt; -&nbsp;&nbsp; (IFN_MASK_{LOAD,STORE} or IFN_LEN_MASK_{LOAD,STORE}).&nbsp; */
&gt; +&nbsp;&nbsp; (IFN_MASK_{LOAD,STORE} or IFN_MASK_LEN_{LOAD,STORE}).&nbsp; */
&gt;&nbsp; 
&gt;&nbsp; static bool
&gt;&nbsp; target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
&gt;&nbsp; 				&nbsp;&nbsp; bool is_load, internal_fn *ifn)
&gt;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp; optab op = is_load ? maskload_optab : maskstore_optab;
&gt; -&nbsp; optab len_op = is_load ? len_maskload_optab : len_maskstore_optab;
&gt; +&nbsp; optab len_op = is_load ? mask_len_load_optab : mask_len_store_optab;
&gt;&nbsp;&nbsp;&nbsp; if (convert_optab_handler (op, mode, mask_mode) != CODE_FOR_nothing)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ifn)
&gt; @@ -565,7 +565,7 @@ target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
&gt;&nbsp;&nbsp;&nbsp; else if (convert_optab_handler (len_op, mode, mask_mode) != CODE_FOR_nothing)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ifn)
&gt; -	*ifn = is_load ? IFN_LEN_MASK_LOAD : IFN_LEN_MASK_STORE;
&gt; +	*ifn = is_load ? IFN_MASK_LEN_LOAD : IFN_MASK_LEN_STORE;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt;&nbsp;&nbsp;&nbsp; return false;
&gt; @@ -573,7 +573,7 @@ target_supports_mask_load_store_p (machine_mode mode, machine_mode mask_mode,
&gt;&nbsp; 
&gt;&nbsp; /* Return true if target supports vector masked load/store for mode.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; An additional output in the last argument which is the IFN pointer.
&gt; -&nbsp;&nbsp; We set IFN as MASK_{LOAD,STORE} or LEN_MASK_{LOAD,STORE} according
&gt; +&nbsp;&nbsp; We set IFN as MASK_{LOAD,STORE} or MASK_LEN_{LOAD,STORE} according
&gt;&nbsp;&nbsp;&nbsp;&nbsp; which optab is supported in the target.&nbsp; */
&gt;&nbsp; 
&gt;&nbsp; bool
&gt; @@ -615,17 +615,17 @@ can_vec_mask_load_store_p (machine_mode mode,
&gt;&nbsp; 
&gt;&nbsp; /* Return true if the target has support for len load/store.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; We can support len load/store by either len_{load,store}
&gt; -&nbsp;&nbsp; or len_mask{load,store}.
&gt; +&nbsp;&nbsp; or mask_len_{load,store}.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; This helper function checks whether target supports len
&gt;&nbsp;&nbsp;&nbsp;&nbsp; load/store and return corresponding IFN in the last argument
&gt; -&nbsp;&nbsp; (IFN_LEN_{LOAD,STORE} or IFN_LEN_MASK_{LOAD,STORE}).&nbsp; */
&gt; +&nbsp;&nbsp; (IFN_LEN_{LOAD,STORE} or IFN_MASK_LEN_{LOAD,STORE}).&nbsp; */
&gt;&nbsp; 
&gt;&nbsp; static bool
&gt;&nbsp; target_supports_len_load_store_p (machine_mode mode, bool is_load,
&gt;&nbsp; 				&nbsp; internal_fn *ifn)
&gt;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp; optab op = is_load ? len_load_optab : len_store_optab;
&gt; -&nbsp; optab masked_op = is_load ? len_maskload_optab : len_maskstore_optab;
&gt; +&nbsp; optab masked_op = is_load ? mask_len_load_optab : mask_len_store_optab;
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp; if (direct_optab_handler (op, mode))
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt; @@ -638,7 +638,7 @@ target_supports_len_load_store_p (machine_mode mode, bool is_load,
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;&amp; convert_optab_handler (masked_op, mode, mask_mode) != CODE_FOR_nothing)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ifn)
&gt; -	*ifn = is_load ? IFN_LEN_MASK_LOAD : IFN_LEN_MASK_STORE;
&gt; +	*ifn = is_load ? IFN_MASK_LEN_LOAD : IFN_MASK_LEN_STORE;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt;&nbsp;&nbsp;&nbsp; return false;
&gt; @@ -651,7 +651,7 @@ target_supports_len_load_store_p (machine_mode mode, bool is_load,
&gt;&nbsp;&nbsp;&nbsp;&nbsp; As len_{load,store} optabs point out, for the flavor with bytes, we use
&gt;&nbsp;&nbsp;&nbsp;&nbsp; VnQI to wrap the other supportable same size vector modes.
&gt;&nbsp;&nbsp;&nbsp;&nbsp; An additional output in the last argument which is the IFN pointer.
&gt; -&nbsp;&nbsp; We set IFN as LEN_{LOAD,STORE} or LEN_MASK_{LOAD,STORE} according
&gt; +&nbsp;&nbsp; We set IFN as LEN_{LOAD,STORE} or MASK_LEN_{LOAD,STORE} according
&gt;&nbsp;&nbsp;&nbsp;&nbsp; which optab is supported in the target.&nbsp; */
&gt;&nbsp; 
&gt;&nbsp; opt_machine_mode
&gt; diff --git a/gcc/optabs.def b/gcc/optabs.def
&gt; index 7023392979e..1ea1947b3b5 100644
&gt; --- a/gcc/optabs.def
&gt; +++ b/gcc/optabs.def
&gt; @@ -91,14 +91,14 @@ OPTAB_CD(vec_cmpu_optab, "vec_cmpu$a$b")
&gt;&nbsp; OPTAB_CD(vec_cmpeq_optab, "vec_cmpeq$a$b")
&gt;&nbsp; OPTAB_CD(maskload_optab, "maskload$a$b")
&gt;&nbsp; OPTAB_CD(maskstore_optab, "maskstore$a$b")
&gt; -OPTAB_CD(len_maskload_optab, "len_maskload$a$b")
&gt; -OPTAB_CD(len_maskstore_optab, "len_maskstore$a$b")
&gt; +OPTAB_CD(mask_len_load_optab, "mask_len_load$a$b")
&gt; +OPTAB_CD(mask_len_store_optab, "mask_len_store$a$b")
&gt;&nbsp; OPTAB_CD(gather_load_optab, "gather_load$a$b")
&gt;&nbsp; OPTAB_CD(mask_gather_load_optab, "mask_gather_load$a$b")
&gt; -OPTAB_CD(len_mask_gather_load_optab, "len_mask_gather_load$a$b")
&gt; +OPTAB_CD(mask_len_gather_load_optab, "mask_len_gather_load$a$b")
&gt;&nbsp; OPTAB_CD(scatter_store_optab, "scatter_store$a$b")
&gt;&nbsp; OPTAB_CD(mask_scatter_store_optab, "mask_scatter_store$a$b")
&gt; -OPTAB_CD(len_mask_scatter_store_optab, "len_mask_scatter_store$a$b")
&gt; +OPTAB_CD(mask_len_scatter_store_optab, "mask_len_scatter_store$a$b")
&gt;&nbsp; OPTAB_CD(vec_extract_optab, "vec_extract$a$b")
&gt;&nbsp; OPTAB_CD(vec_init_optab, "vec_init$a$b")
&gt;&nbsp; 
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
&gt; index dffe13f6a8a..3b26bf1dec2 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-1.c
&gt; @@ -33,6 +33,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
&gt; index a622e516f06..63949cbe02b 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-10.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
&gt; index 4692380233d..8dc1da3f4b4 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-11.c
&gt; @@ -27,6 +27,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
&gt; index 71a3dd466fa..6277682e529 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-12.c
&gt; @@ -105,7 +105,7 @@ TEST_LOOP (float, uint64_t)
&gt;&nbsp; TEST_LOOP (double, uint64_t)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-assembler-not "vluxei64\.v" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
&gt; index 785550c4b2d..89e4b40bfd8 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-2.c
&gt; @@ -33,6 +33,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
&gt; index 22aeb889221..02fd37c026d 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-3.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
&gt; index d74a83415d7..af6a76af7f8 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-4.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
&gt; index 2b6c0a87c18..bd9a449086e 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-5.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
&gt; index 407cc8a5a73..6d776af4c5c 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-6.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
&gt; index 81b31ef26aa..040300a3e2a 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-7.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
&gt; index 0bfdb8f0acf..9223bf0057d 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-8.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
&gt; index 46f791105ed..2e06fe6090d 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load-9.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
&gt; index a5de0deccbe..abab3b90af9 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-1.c
&gt; @@ -34,6 +34,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
&gt; index 74a0d05b37d..61ab1fb0021 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-10.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
&gt; index 98c5b4678b7..e5741812b21 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-11.c
&gt; @@ -108,7 +108,7 @@ TEST_LOOP (float, uint64_t)
&gt;&nbsp; TEST_LOOP (double, uint64_t)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-assembler-not "vluxei64\.v" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
&gt; index 03f84ce962c..cc5f52e0c34 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-2.c
&gt; @@ -34,6 +34,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
&gt; index 8578001ef41..311e25ea199 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-3.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
&gt; index b273caa0bfe..9223df9c4a2 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-4.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
&gt; index 5055d886d62..9ec7e60dc68 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-5.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
&gt; index 2a4ae58588f..ff18009fba1 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-6.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
&gt; index 31d9414c549..fd05df7b381 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-7.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
&gt; index 73ed23042fb..a58c1c22042 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-8.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
&gt; index 2f64e805759..36947db76ba 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_gather_load-9.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_GATHER_LOAD" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
&gt; index 623de41267b..0099ed357c4 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-1.c
&gt; @@ -34,6 +34,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
&gt; index 55112b067fa..089ec487c47 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-10.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
&gt; index 32a572d0064..57a1acec099 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-2.c
&gt; @@ -34,6 +34,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
&gt; index fbaaa9d8a8e..ba89eb35db2 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-3.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
&gt; index 9b08661f8e6..2d6499fea56 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-4.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
&gt; index dd26635f2cb..f55db716cd9 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-5.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
&gt; index fa0206a0ec2..a7ec2796834 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-6.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
&gt; index 325e86c26a8..b7bd3f415d5 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-7.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
&gt; index b4b84e9cdda..f2ab86519bd 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-8.c
&gt; @@ -31,6 +31,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
&gt; index a21ccd587c3..42ce1c5364f 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/mask_scatter_store-9.c
&gt; @@ -36,6 +36,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
&gt; index 6a390261cfb..28c4bae01c3 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-1.c
&gt; @@ -33,6 +33,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
&gt; index feb58d7d458..2cd3e7245aa 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-10.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
&gt; index e4c587fd7bb..ee44f415e8b 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-2.c
&gt; @@ -33,6 +33,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
&gt; index 33ad256d3db..899b05f96ff 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-3.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
&gt; index 48d305623e6..ff6d90ce404 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-4.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
&gt; index 83ddc44bf9c..212bd2d9d24 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-5.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
&gt; index 11eb68bdb13..4b6b39df814 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-6.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
&gt; index 2e323477258..2415c69a3b0 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-7.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
&gt; index e6732fe3790..4c2fcb14428 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-8.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
&gt; index 766a52b4622..0f4f94cc800 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/scatter_store-9.c
&gt; @@ -30,6 +30,6 @@
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt;&nbsp; /* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 11 "vect" } } */
&gt; -/* { dg-final { scan-tree-dump " \.LEN_MASK_SCATTER_STORE" "vect" } } */
&gt; +/* { dg-final { scan-tree-dump " \.MASK_LEN_SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "vect" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "vect" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
&gt; index 0c64f3e1a00..b1e6a17543f 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
&gt; @@ -40,6 +40,6 @@
&gt;&nbsp; 
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt; -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_GATHER_LOAD" 66 "optimized" } } */
&gt; +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_GATHER_LOAD" 66 "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
&gt; index 0f234209325..ee5f509b9ac 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
&gt; @@ -40,6 +40,6 @@
&gt;&nbsp; 
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt; -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_GATHER_LOAD" 46 "optimized" } } */
&gt; +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_GATHER_LOAD" 46 "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
&gt; index 2418a0d74eb..3e6a34029b3 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
&gt; @@ -40,6 +40,6 @@
&gt;&nbsp; 
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt; -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_SCATTER_STORE" 66 "optimized" } } */
&gt; +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_SCATTER_STORE" 66 "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
&gt; index 83e101d5688..6906af17d84 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
&gt; @@ -40,6 +40,6 @@
&gt;&nbsp; 
&gt;&nbsp; TEST_ALL (TEST_LOOP)
&gt;&nbsp; 
&gt; -/* { dg-final { scan-tree-dump-times " \.LEN_MASK_SCATTER_STORE" 44 "optimized" } } */
&gt; +/* { dg-final { scan-tree-dump-times " \.MASK_LEN_SCATTER_STORE" 44 "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
&gt;&nbsp; /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
&gt; diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c b/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
&gt; index 23407a2d3f4..7021182f83a 100644
&gt; --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
&gt; +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c
&gt; @@ -40,4 +40,4 @@ main ()
&gt;&nbsp;&nbsp;&nbsp; RUN_ALL ()
&gt;&nbsp; }
&gt;&nbsp; 
&gt; -/* { dg-final { scan-tree-dump-times "\.LEN_MASK_STORE" 6 "optimized" } } */
&gt; +/* { dg-final { scan-tree-dump-times "\.MASK_LEN_STORE" 6 "optimized" } } */
&gt; diff --git a/gcc/tree-ssa-alias.cc b/gcc/tree-ssa-alias.cc
&gt; index f31fd042c2a..cf38fe506a8 100644
&gt; --- a/gcc/tree-ssa-alias.cc
&gt; +++ b/gcc/tree-ssa-alias.cc
&gt; @@ -2815,13 +2815,13 @@ ref_maybe_used_by_call_p_1 (gcall *call, ao_ref *ref, bool tbaa_p)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_SCATTER_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp; 	return false;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE_LANES:
&gt;&nbsp; 	goto process_args;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_LOAD:
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_LOAD:
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LOAD_LANES:
&gt;&nbsp; 	{
&gt;&nbsp; 	&nbsp; ao_ref rhs_ref;
&gt; @@ -3070,7 +3070,7 @@ call_may_clobber_ref_p_1 (gcall *call, ao_ref *ref, bool tbaa_p)
&gt;&nbsp; 	return false;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE_LANES:
&gt;&nbsp; 	{
&gt;&nbsp; 	&nbsp; tree rhs = gimple_call_arg (call,
&gt; diff --git a/gcc/tree-ssa-dse.cc b/gcc/tree-ssa-dse.cc
&gt; index 9c6004cdce8..baf72bf1bd4 100644
&gt; --- a/gcc/tree-ssa-dse.cc
&gt; +++ b/gcc/tree-ssa-dse.cc
&gt; @@ -159,7 +159,7 @@ initialize_ao_ref_for_dse (gimple *stmt, ao_ref *write, bool may_def_ok = false)
&gt;&nbsp; 	{
&gt;&nbsp; 	case IFN_LEN_STORE:
&gt;&nbsp; 	case IFN_MASK_STORE:
&gt; -	case IFN_LEN_MASK_STORE:
&gt; +	case IFN_MASK_LEN_STORE:
&gt;&nbsp; 	&nbsp; {
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; internal_fn ifn = gimple_call_internal_fn (stmt);
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; int stored_value_index = internal_fn_stored_value_index (ifn);
&gt; @@ -1517,7 +1517,7 @@ dse_optimize_stmt (function *fun, gimple_stmt_iterator *gsi, sbitmap live_bytes)
&gt;&nbsp; 	{
&gt;&nbsp; 	case IFN_LEN_STORE:
&gt;&nbsp; 	case IFN_MASK_STORE:
&gt; -	case IFN_LEN_MASK_STORE:
&gt; +	case IFN_MASK_LEN_STORE:
&gt;&nbsp; 	&nbsp; {
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; enum dse_store_status store_status;
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; store_status = dse_classify_store (&amp;ref, stmt, false, live_bytes);
&gt; diff --git a/gcc/tree-ssa-loop-ivopts.cc b/gcc/tree-ssa-loop-ivopts.cc
&gt; index 243ce86dfc4..92fc1c7d734 100644
&gt; --- a/gcc/tree-ssa-loop-ivopts.cc
&gt; +++ b/gcc/tree-ssa-loop-ivopts.cc
&gt; @@ -2442,7 +2442,7 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_LOAD_LANES:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (op_p == gimple_call_arg_ptr (call, 0))
&gt;&nbsp; 	return TREE_TYPE (gimple_call_lhs (call));
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return NULL_TREE;
&gt; @@ -2450,7 +2450,7 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE_LANES:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; 	if (op_p == gimple_call_arg_ptr (call, 0))
&gt;&nbsp; 	&nbsp; {
&gt; @@ -7567,8 +7567,8 @@ get_alias_ptr_type_for_ptr_address (iv_use *use)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_MASK_STORE_LANES:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_LOAD:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case IFN_LEN_STORE:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_LOAD:
&gt; -&nbsp;&nbsp;&nbsp; case IFN_LEN_MASK_STORE:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_LOAD:
&gt; +&nbsp;&nbsp;&nbsp; case IFN_MASK_LEN_STORE:
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* The second argument contains the correct alias type.&nbsp; */
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gcc_assert (use-&gt;op_p = gimple_call_arg_ptr (call, 0));
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return TREE_TYPE (gimple_call_arg (call, 1));
&gt; diff --git a/gcc/tree-vect-data-refs.cc b/gcc/tree-vect-data-refs.cc
&gt; index 9edc8989de9..a3570c45b52 100644
&gt; --- a/gcc/tree-vect-data-refs.cc
&gt; +++ b/gcc/tree-vect-data-refs.cc
&gt; @@ -3878,19 +3878,19 @@ vect_gather_scatter_fn_p (vec_info *vinfo, bool read_p, bool masked_p,
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ifn = masked_p ? IFN_MASK_GATHER_LOAD : IFN_GATHER_LOAD;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alt_ifn = IFN_MASK_GATHER_LOAD;
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* When target supports LEN_MASK_GATHER_LOAD, we always
&gt; -	 use LEN_MASK_GATHER_LOAD regardless whether len and
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* When target supports MASK_LEN_GATHER_LOAD, we always
&gt; +	 use MASK_LEN_GATHER_LOAD regardless whether len and
&gt;&nbsp; 	 mask are valid or not.&nbsp; */
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alt_ifn2 = IFN_LEN_MASK_GATHER_LOAD;
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alt_ifn2 = IFN_MASK_LEN_GATHER_LOAD;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt;&nbsp;&nbsp;&nbsp; else
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ifn = masked_p ? IFN_MASK_SCATTER_STORE : IFN_SCATTER_STORE;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alt_ifn = IFN_MASK_SCATTER_STORE;
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* When target supports LEN_MASK_SCATTER_STORE, we always
&gt; -	 use LEN_MASK_SCATTER_STORE regardless whether len and
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* When target supports MASK_LEN_SCATTER_STORE, we always
&gt; +	 use MASK_LEN_SCATTER_STORE regardless whether len and
&gt;&nbsp; 	 mask are valid or not.&nbsp; */
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alt_ifn2 = IFN_LEN_MASK_SCATTER_STORE;
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alt_ifn2 = IFN_MASK_LEN_SCATTER_STORE;
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp; for (;;)
&gt; diff --git a/gcc/tree-vect-patterns.cc b/gcc/tree-vect-patterns.cc
&gt; index c0832e8679f..ef806e2346e 100644
&gt; --- a/gcc/tree-vect-patterns.cc
&gt; +++ b/gcc/tree-vect-patterns.cc
&gt; @@ -6106,8 +6106,8 @@ vect_recog_gather_scatter_pattern (vec_info *vinfo,
&gt;&nbsp; 					&nbsp; loop_vinfo);
&gt;&nbsp;&nbsp;&nbsp; else if (gs_info.ifn == IFN_MASK_SCATTER_STORE
&gt;&nbsp; 	&nbsp;&nbsp; || gs_info.ifn == IFN_MASK_GATHER_LOAD
&gt; -	&nbsp;&nbsp; || gs_info.ifn == IFN_LEN_MASK_SCATTER_STORE
&gt; -	&nbsp;&nbsp; || gs_info.ifn == IFN_LEN_MASK_GATHER_LOAD)
&gt; +	&nbsp;&nbsp; || gs_info.ifn == IFN_MASK_LEN_SCATTER_STORE
&gt; +	&nbsp;&nbsp; || gs_info.ifn == IFN_MASK_LEN_GATHER_LOAD)
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mask = build_int_cst (TREE_TYPE (truth_type_for (gs_vectype)), -1);
&gt;&nbsp; 
&gt;&nbsp;&nbsp;&nbsp; /* Get the invariant base and non-invariant offset, converting the
&gt; diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
&gt; index b86e159ae4c..caa4c974cb9 100644
&gt; --- a/gcc/tree-vect-stmts.cc
&gt; +++ b/gcc/tree-vect-stmts.cc
&gt; @@ -1633,8 +1633,8 @@ check_load_store_for_partial_vectors (loop_vec_info loop_vinfo, tree vectype,
&gt;&nbsp; 			 ? IFN_MASK_GATHER_LOAD
&gt;&nbsp; 			 : IFN_MASK_SCATTER_STORE);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; internal_fn len_ifn = (is_load
&gt; -			&nbsp;&nbsp;&nbsp;&nbsp; ? IFN_LEN_MASK_GATHER_LOAD
&gt; -			&nbsp;&nbsp;&nbsp;&nbsp; : IFN_LEN_MASK_SCATTER_STORE);
&gt; +			&nbsp;&nbsp;&nbsp;&nbsp; ? IFN_MASK_LEN_GATHER_LOAD
&gt; +			&nbsp;&nbsp;&nbsp;&nbsp; : IFN_MASK_LEN_SCATTER_STORE);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (internal_gather_scatter_fn_supported_p (ifn, vectype,
&gt;&nbsp; 						&nbsp; gs_info-&gt;memory_type,
&gt;&nbsp; 						&nbsp; gs_info-&gt;offset_vectype,
&gt; @@ -3032,7 +3032,7 @@ vect_get_strided_load_store_ops (stmt_vec_info stmt_info,
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* _31 = .SELECT_VL (ivtmp_29, POLY_INT_CST [4, 4]);
&gt;&nbsp; 	 ivtmp_8 = _31 * 16 (step in bytes);
&gt; -	 .LEN_MASK_SCATTER_STORE (vectp_a.9_7, ... );
&gt; +	 .MASK_LEN_SCATTER_STORE (vectp_a.9_7, ... );
&gt;&nbsp; 	 vectp_a.9_26 = vectp_a.9_7 + ivtmp_8;&nbsp; */
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tree loop_len
&gt;&nbsp; 	= vect_get_loop_len (loop_vinfo, gsi, loop_lens, 1, vectype, 0, 0);
&gt; @@ -8870,7 +8870,7 @@ vectorizable_store (vec_info *vinfo,
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; vec_offset = vec_offsets[vec_num * j + i];
&gt;&nbsp; 		&nbsp; tree scale = size_int (gs_info.scale);
&gt;&nbsp; 
&gt; -		&nbsp; if (gs_info.ifn == IFN_LEN_MASK_SCATTER_STORE)
&gt; +		&nbsp; if (gs_info.ifn == IFN_MASK_LEN_SCATTER_STORE)
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (loop_lens)
&gt;&nbsp; 			final_len
&gt; @@ -8894,7 +8894,7 @@ vectorizable_store (vec_info *vinfo,
&gt;&nbsp; 		&nbsp; gcall *call;
&gt;&nbsp; 		&nbsp; if (final_len &amp;&amp; final_mask)
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; call
&gt; -		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = gimple_build_call_internal (IFN_LEN_MASK_SCATTER_STORE,
&gt; +		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = gimple_build_call_internal (IFN_MASK_LEN_SCATTER_STORE,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp; 7, dataref_ptr, vec_offset,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp; scale, vec_oprnd, final_mask,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp; final_len, bias);
&gt; @@ -9034,12 +9034,12 @@ vectorizable_store (vec_info *vinfo,
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; gcc_unreachable ();
&gt;&nbsp; 		}
&gt;&nbsp; 
&gt; -	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (partial_ifn == IFN_LEN_MASK_STORE)
&gt; +	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (partial_ifn == IFN_MASK_LEN_STORE)
&gt;&nbsp; 		{
&gt;&nbsp; 		&nbsp; if (!final_len)
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* Pass VF value to 'len' argument of
&gt; -		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LEN_MASK_STORE if LOOP_LENS is invalid.&nbsp; */
&gt; +		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MASK_LEN_STORE if LOOP_LENS is invalid.&nbsp; */
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tree iv_type = LOOP_VINFO_RGROUP_IV_TYPE (loop_vinfo);
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final_len
&gt;&nbsp; 			= build_int_cst (iv_type,
&gt; @@ -9048,7 +9048,7 @@ vectorizable_store (vec_info *vinfo,
&gt;&nbsp; 		&nbsp; if (!final_mask)
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* Pass all ones value to 'mask' argument of
&gt; -			 LEN_MASK_STORE if final_mask is invalid.&nbsp; */
&gt; +			 MASK_LEN_STORE if final_mask is invalid.&nbsp; */
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mask_vectype = truth_type_for (vectype);
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final_mask = build_minus_one_cst (mask_vectype);
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; }
&gt; @@ -9084,8 +9084,8 @@ vectorizable_store (vec_info *vinfo,
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vec_oprnd = var;
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp; }
&gt;&nbsp; 
&gt; -		&nbsp; if (partial_ifn == IFN_LEN_MASK_STORE)
&gt; -		&nbsp;&nbsp;&nbsp; call = gimple_build_call_internal (IFN_LEN_MASK_STORE, 6,
&gt; +		&nbsp; if (partial_ifn == IFN_MASK_LEN_STORE)
&gt; +		&nbsp;&nbsp;&nbsp; call = gimple_build_call_internal (IFN_MASK_LEN_STORE, 6,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dataref_ptr, ptr,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final_len, bias,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final_mask, vec_oprnd);
&gt; @@ -10454,7 +10454,7 @@ vectorizable_load (vec_info *vinfo,
&gt;&nbsp; 			tree zero = build_zero_cst (vectype);
&gt;&nbsp; 			tree scale = size_int (gs_info.scale);
&gt;&nbsp; 
&gt; -			if (gs_info.ifn == IFN_LEN_MASK_GATHER_LOAD)
&gt; +			if (gs_info.ifn == IFN_MASK_LEN_GATHER_LOAD)
&gt;&nbsp; 			&nbsp; {
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; if (loop_lens)
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final_len
&gt; @@ -10478,7 +10478,7 @@ vectorizable_load (vec_info *vinfo,
&gt;&nbsp; 			gcall *call;
&gt;&nbsp; 			if (final_len &amp;&amp; final_mask)
&gt;&nbsp; 			&nbsp; call = gimple_build_call_internal (
&gt; -			&nbsp;&nbsp;&nbsp; IFN_LEN_MASK_GATHER_LOAD, 7, dataref_ptr,
&gt; +			&nbsp;&nbsp;&nbsp; IFN_MASK_LEN_GATHER_LOAD, 7, dataref_ptr,
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; vec_offset, scale, zero, final_mask, final_len,
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; bias);
&gt;&nbsp; 			else if (final_mask)
&gt; @@ -10618,12 +10618,12 @@ vectorizable_load (vec_info *vinfo,
&gt;&nbsp; 			&nbsp; gcc_unreachable ();
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt;&nbsp; 
&gt; -		&nbsp;&nbsp;&nbsp; if (partial_ifn == IFN_LEN_MASK_LOAD)
&gt; +		&nbsp;&nbsp;&nbsp; if (partial_ifn == IFN_MASK_LEN_LOAD)
&gt;&nbsp; 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; 			if (!final_len)
&gt;&nbsp; 			&nbsp; {
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; /* Pass VF value to 'len' argument of
&gt; -			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LEN_MASK_LOAD if LOOP_LENS is invalid.&nbsp; */
&gt; +			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MASK_LEN_LOAD if LOOP_LENS is invalid.&nbsp; */
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; tree iv_type
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = LOOP_VINFO_RGROUP_IV_TYPE (loop_vinfo);
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; final_len
&gt; @@ -10633,7 +10633,7 @@ vectorizable_load (vec_info *vinfo,
&gt;&nbsp; 			if (!final_mask)
&gt;&nbsp; 			&nbsp; {
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; /* Pass all ones value to 'mask' argument of
&gt; -			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LEN_MASK_LOAD if final_mask is invalid.&nbsp; */
&gt; +			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MASK_LEN_LOAD if final_mask is invalid.&nbsp; */
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; mask_vectype = truth_type_for (vectype);
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp; final_mask = build_minus_one_cst (mask_vectype);
&gt;&nbsp; 			&nbsp; }
&gt; @@ -10651,8 +10651,8 @@ vectorizable_load (vec_info *vinfo,
&gt;&nbsp; 			tree ptr
&gt;&nbsp; 			&nbsp; = build_int_cst (ref_type, align * BITS_PER_UNIT);
&gt;&nbsp; 			gcall *call;
&gt; -			if (partial_ifn == IFN_LEN_MASK_LOAD)
&gt; -			&nbsp; call = gimple_build_call_internal (IFN_LEN_MASK_LOAD,
&gt; +			if (partial_ifn == IFN_MASK_LEN_LOAD)
&gt; +			&nbsp; call = gimple_build_call_internal (IFN_MASK_LEN_LOAD,
&gt;&nbsp; 							&nbsp;&nbsp;&nbsp;&nbsp; 5, dataref_ptr,
&gt;&nbsp; 							&nbsp;&nbsp;&nbsp;&nbsp; ptr, final_len,
&gt;&nbsp; 							&nbsp;&nbsp;&nbsp;&nbsp; bias, final_mask);
&gt; 

-- 
Richard Biener <rguenther@suse.de&gt;
SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg,
Germany; GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman;
HRB 36809 (AG Nuernberg)

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-07-21  8:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-20 23:20 [PATCH] cleanup: Change LEN_MASK into MASK_LEN Juzhe-Zhong
2023-07-21  6:19 ` Richard Biener
2023-07-21  8:36   ` =?gb18030?B?TGVodWEgRGluZw==?=

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).