From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vk1-xa31.google.com (mail-vk1-xa31.google.com [IPv6:2607:f8b0:4864:20::a31]) by sourceware.org (Postfix) with ESMTPS id E471F3857724 for ; Mon, 18 Sep 2023 08:19:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E471F3857724 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-vk1-xa31.google.com with SMTP id 71dfb90a1353d-495e049a28bso1778245e0c.1 for ; Mon, 18 Sep 2023 01:19:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695025165; x=1695629965; darn=gcc.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=CnwMfumpox8ibCm6L7E4G6H68i1EBLQSwKQx7L8BSj0=; b=G3S5vOPQsk2dgDWFOHYqA0KCR7qHT5DTiWLGLIPcyykuZEQ6ljdLt08Sd4WVQPke7a gDhSUVwS9MUqIlMKnJqn1/74ii+jC3xn763/0S+sdX6RfHYUU03m6mVpA69ANhTWfjRD OllrBRGPUWrDQ1JljaeXXPPQoKeMysk6pQg1uLKlB7ZTZuLi8cTojGQiovOj6AcG+KH0 g+fJeXS+/8GC3xP+CJdmGX43EotgDJJYLj7H0nN86XPsghlaBPddqOzmnPgnQV7yNLVf nda1FbRFCSK9T/3Dbi1+YO6To+8ImGC80NwejDavX5PWdYVDWSS/ReyagvHtoh4E9khE KMig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695025165; x=1695629965; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CnwMfumpox8ibCm6L7E4G6H68i1EBLQSwKQx7L8BSj0=; b=WsSlyhgwTEa67RqMlsR6y7BkuL9TmYdRAfTHprP5qsPa4N/TqaK7dN8qRUezV97c+P t58yqebpUpajjfv4ArZK0GHDKtisj4QvWh8MytaNtWbN+iljg73imwxlRzkFHsKjU9gn f84D2oRzQjpKJhfMWCoWut6ELqXSmlF3CnCBOMIyIvgx500PsybYClBzKZdQCKKGqTii VcOn6Rcsw3d7eg9eTstXa7/79RrZTusJVagMlPe+WuGQ8+ENImanBqO86EL0UANI84O+ quimp6Ylr7wmky+alxcvEgCkCxQFs9TgP2C5Q9XV0Ea6Gz2q9oqzShLL9y3US7A5zoXa syjw== X-Gm-Message-State: AOJu0YyKn7YoxdnBAouEsqnxKklF+VuVqcsZg3gM2n9xVVWKvEdhSWMm 4sIBpU4IgREdmlkz0FclaRbKuZk9uJDT7Q4yIiU= X-Google-Smtp-Source: AGHT+IGFlNspLy65Y63wEBbL8XBc99K/02OwdrZvw+/ETLJZyZZPFaN305y0bUa0t9FC1UK3WDvRqHKFCFAxsXCp23M= X-Received: by 2002:a1f:cc01:0:b0:48f:e2eb:6dd9 with SMTP id c1-20020a1fcc01000000b0048fe2eb6dd9mr5847899vkg.8.1695025164266; Mon, 18 Sep 2023 01:19:24 -0700 (PDT) MIME-Version: 1.0 References: <20230915035309.579545-1-juzhe.zhong@rivai.ai> In-Reply-To: <20230915035309.579545-1-juzhe.zhong@rivai.ai> From: Kito Cheng Date: Mon, 18 Sep 2023 16:19:12 +0800 Message-ID: Subject: Re: [PATCH] RISC-V: Support VLS modes vec_init auto-vectorization To: Juzhe-Zhong Cc: gcc-patches@gcc.gnu.org, kito.cheng@sifive.com, jeffreyalaw@gmail.com, rdapp.gcc@gmail.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-6.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,KAM_ASCII_DIVIDERS,KAM_SHORT,RCVD_IN_DNSWL_NONE,SCC_10_SHORT_WORD_LINES,SCC_20_SHORT_WORD_LINES,SCC_35_SHORT_WORD_LINES,SCC_5_SHORT_WORD_LINES,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: LGTM On Fri, Sep 15, 2023 at 11:57=E2=80=AFAM Juzhe-Zhong = wrote: > > There are multiple SLP dump FAILs in vect testsuite. > After analysis, confirm we are missing vec_init for VLS modes. > This patch is not sufficient to fix those FAILs (We need more VLS pattern= s will send them soon). > > This patch is the prerequsite patch for fixing those SLP FAILs. > > Finish the whole regression. > Ok for trunk ? > > gcc/ChangeLog: > > * config/riscv/autovec.md: Extend VLS modes. > * config/riscv/vector.md: Ditto. > > gcc/testsuite/ChangeLog: > > * gcc.target/riscv/rvv/autovec/vls/def.h: Add VLS vec_init tests. > * gcc.target/riscv/rvv/autovec/vls/init-1.c: New test. > * gcc.target/riscv/rvv/autovec/vls/init-2.c: New test. > * gcc.target/riscv/rvv/autovec/vls/init-3.c: New test. > * gcc.target/riscv/rvv/autovec/vls/init-4.c: New test. > * gcc.target/riscv/rvv/autovec/vls/init-5.c: New test. > * gcc.target/riscv/rvv/autovec/vls/init-6.c: New test. > * gcc.target/riscv/rvv/autovec/vls/init-7.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-1.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-2.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-3.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-4.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-5.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-6.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-7.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-8.c: New test. > * gcc.target/riscv/rvv/autovec/vls/repeat-9.c: New test. > > --- > gcc/config/riscv/autovec.md | 2 +- > gcc/config/riscv/vector.md | 68 +- > .../gcc.target/riscv/rvv/autovec/vls/def.h | 143 ++++ > .../gcc.target/riscv/rvv/autovec/vls/init-1.c | 46 ++ > .../gcc.target/riscv/rvv/autovec/vls/init-2.c | 48 ++ > .../gcc.target/riscv/rvv/autovec/vls/init-3.c | 27 + > .../gcc.target/riscv/rvv/autovec/vls/init-4.c | 48 ++ > .../gcc.target/riscv/rvv/autovec/vls/init-5.c | 26 + > .../gcc.target/riscv/rvv/autovec/vls/init-6.c | 48 ++ > .../gcc.target/riscv/rvv/autovec/vls/init-7.c | 26 + > .../riscv/rvv/autovec/vls/repeat-1.c | 654 ++++++++++++++++++ > .../riscv/rvv/autovec/vls/repeat-2.c | 654 ++++++++++++++++++ > .../riscv/rvv/autovec/vls/repeat-3.c | 337 +++++++++ > .../riscv/rvv/autovec/vls/repeat-4.c | 337 +++++++++ > .../riscv/rvv/autovec/vls/repeat-5.c | 178 +++++ > .../riscv/rvv/autovec/vls/repeat-6.c | 178 +++++ > .../riscv/rvv/autovec/vls/repeat-7.c | 53 ++ > .../riscv/rvv/autovec/vls/repeat-8.c | 337 +++++++++ > .../riscv/rvv/autovec/vls/repeat-9.c | 178 +++++ > 19 files changed, 3353 insertions(+), 35 deletions(-) > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-1= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-2= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-3= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-4= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-5= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-6= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-7= .c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -1.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -2.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -3.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -4.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -5.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -6.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -7.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -8.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat= -9.c > > diff --git a/gcc/config/riscv/autovec.md b/gcc/config/riscv/autovec.md > index 0a60f45301b..1e0dae0d7f5 100644 > --- a/gcc/config/riscv/autovec.md > +++ b/gcc/config/riscv/autovec.md > @@ -373,7 +373,7 @@ > ;; ---------------------------------------------------------------------= ---- > > (define_expand "vec_init" > - [(match_operand:V 0 "register_operand") > + [(match_operand:V_VLS 0 "register_operand") > (match_operand 1 "")] > "TARGET_VECTOR" > { > diff --git a/gcc/config/riscv/vector.md b/gcc/config/riscv/vector.md > index fb0c8abd995..d3df983c580 100644 > --- a/gcc/config/riscv/vector.md > +++ b/gcc/config/riscv/vector.md > @@ -1607,40 +1607,40 @@ > (set_attr "mode" "")]) > > (define_insn "@pred_merge_scalar" > - [(set (match_operand:VI_QHS 0 "register_operand" "=3Dvd,vd") > - (if_then_else:VI_QHS > + [(set (match_operand:V_VLSI_QHS 0 "register_operand" "=3Dvd,vd") > + (if_then_else:V_VLSI_QHS > (unspec: > [(match_operand 5 "vector_length_operand" " rK,rK") > (match_operand 6 "const_int_operand" " i, i") > (match_operand 7 "const_int_operand" " i, i") > (reg:SI VL_REGNUM) > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > - (vec_merge:VI_QHS > - (vec_duplicate:VI_QHS > + (vec_merge:V_VLSI_QHS > + (vec_duplicate:V_VLSI_QHS > (match_operand: 3 "register_operand" " r, r")) > - (match_operand:VI_QHS 2 "register_operand" " vr,vr") > + (match_operand:V_VLSI_QHS 2 "register_operand" " vr,vr") > (match_operand: 4 "register_operand" " vm,vm")) > - (match_operand:VI_QHS 1 "vector_merge_operand" " vu, 0")))] > + (match_operand:V_VLSI_QHS 1 "vector_merge_operand" " vu, 0")))] > "TARGET_VECTOR" > "vmerge.vxm\t%0,%2,%3,%4" > [(set_attr "type" "vimerge") > (set_attr "mode" "")]) > > (define_expand "@pred_merge_scalar" > - [(set (match_operand:VI_D 0 "register_operand") > - (if_then_else:VI_D > + [(set (match_operand:V_VLSI_D 0 "register_operand") > + (if_then_else:V_VLSI_D > (unspec: > [(match_operand 5 "vector_length_operand") > (match_operand 6 "const_int_operand") > (match_operand 7 "const_int_operand") > (reg:SI VL_REGNUM) > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > - (vec_merge:VI_D > - (vec_duplicate:VI_D > + (vec_merge:V_VLSI_D > + (vec_duplicate:V_VLSI_D > (match_operand: 3 "reg_or_int_operand")) > - (match_operand:VI_D 2 "register_operand") > + (match_operand:V_VLSI_D 2 "register_operand") > (match_operand: 4 "register_operand")) > - (match_operand:VI_D 1 "vector_merge_operand")))] > + (match_operand:V_VLSI_D 1 "vector_merge_operand")))] > "TARGET_VECTOR" > { > if (riscv_vector::sew64_scalar_helper ( > @@ -1658,41 +1658,41 @@ > }) > > (define_insn "*pred_merge_scalar" > - [(set (match_operand:VI_D 0 "register_operand" "=3Dvd,vd") > - (if_then_else:VI_D > + [(set (match_operand:V_VLSI_D 0 "register_operand" "=3Dvd,vd") > + (if_then_else:V_VLSI_D > (unspec: > [(match_operand 5 "vector_length_operand" " rK,rK") > (match_operand 6 "const_int_operand" " i, i") > (match_operand 7 "const_int_operand" " i, i") > (reg:SI VL_REGNUM) > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > - (vec_merge:VI_D > - (vec_duplicate:VI_D > + (vec_merge:V_VLSI_D > + (vec_duplicate:V_VLSI_D > (match_operand: 3 "register_operand" " r, r")) > - (match_operand:VI_D 2 "register_operand" " vr,vr") > + (match_operand:V_VLSI_D 2 "register_operand" " vr,vr") > (match_operand: 4 "register_operand" " vm,vm")) > - (match_operand:VI_D 1 "vector_merge_operand" " vu, 0")))] > + (match_operand:V_VLSI_D 1 "vector_merge_operand" " vu, 0")))] > "TARGET_VECTOR" > "vmerge.vxm\t%0,%2,%3,%4" > [(set_attr "type" "vimerge") > (set_attr "mode" "")]) > > (define_insn "*pred_merge_extended_scalar" > - [(set (match_operand:VI_D 0 "register_operand" "=3Dvd,vd") > - (if_then_else:VI_D > + [(set (match_operand:V_VLSI_D 0 "register_operand" "=3Dvd,vd") > + (if_then_else:V_VLSI_D > (unspec: > [(match_operand 5 "vector_length_operand" " rK,rK") > (match_operand 6 "const_int_operand" " i, i") > (match_operand 7 "const_int_operand" " i, i") > (reg:SI VL_REGNUM) > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > - (vec_merge:VI_D > - (vec_duplicate:VI_D > + (vec_merge:V_VLSI_D > + (vec_duplicate:V_VLSI_D > (sign_extend: > (match_operand: 3 "register_operand" " r, r"))) > - (match_operand:VI_D 2 "register_operand" " vr,vr") > + (match_operand:V_VLSI_D 2 "register_operand" " vr,vr") > (match_operand: 4 "register_operand" " vm,vm")) > - (match_operand:VI_D 1 "vector_merge_operand" " vu, 0")))] > + (match_operand:V_VLSI_D 1 "vector_merge_operand" " vu, 0")))= ] > "TARGET_VECTOR" > "vmerge.vxm\t%0,%2,%3,%4" > [(set_attr "type" "vimerge") > @@ -7422,20 +7422,20 @@ > ;; ---------------------------------------------------------------------= ---------- > > (define_insn "@pred_merge_scalar" > - [(set (match_operand:VF 0 "register_operand" "=3Dvd,vd") > - (if_then_else:VF > + [(set (match_operand:V_VLSF 0 "register_operand" "=3Dvd,vd") > + (if_then_else:V_VLSF > (unspec: > [(match_operand 5 "vector_length_operand" " rK,rK") > (match_operand 6 "const_int_operand" " i, i") > (match_operand 7 "const_int_operand" " i, i") > (reg:SI VL_REGNUM) > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > - (vec_merge:VF > - (vec_duplicate:VF > + (vec_merge:V_VLSF > + (vec_duplicate:V_VLSF > (match_operand: 3 "register_operand" " f, f")) > - (match_operand:VF 2 "register_operand" " vr,vr") > + (match_operand:V_VLSF 2 "register_operand" " vr,vr") > (match_operand: 4 "register_operand" " vm,vm")) > - (match_operand:VF 1 "vector_merge_operand" " vu, 0")))] > + (match_operand:V_VLSF 1 "vector_merge_operand" " vu, 0")))] > "TARGET_VECTOR" > "vfmerge.vfm\t%0,%2,%3,%4" > [(set_attr "type" "vfmerge") > @@ -8044,8 +8044,8 @@ > > ;; vfslide1 instructions > (define_insn "@pred_slide" > - [(set (match_operand:VF 0 "register_operand" "") > - (unspec:VF > + [(set (match_operand:V_VLSF 0 "register_operand" "") > + (unspec:V_VLSF > [(unspec: > [(match_operand: 1 "vector_mask_operand" " vm, vm,Wc1,Wc= 1") > (match_operand 5 "vector_length_operand" " rK, rK, rK, r= K") > @@ -8054,8 +8054,8 @@ > (match_operand 8 "const_int_operand" " i, i, i, = i") > (reg:SI VL_REGNUM) > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > - (match_operand:VF 2 "vector_merge_operand" " vu, 0, vu, = 0") > - (match_operand:VF 3 "register_operand" " vr, vr, vr, v= r") > + (match_operand:V_VLSF 2 "vector_merge_operand" " vu, 0, vu, = 0") > + (match_operand:V_VLSF 3 "register_operand" " vr, vr, vr, v= r") > (match_operand: 4 "register_operand" " f, f, f, = f")] VFSLIDES1))] > "TARGET_VECTOR" > "vfslide.vf\t%0,%3,%4%p1" > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/def.h b/gcc/t= estsuite/gcc.target/riscv/rvv/autovec/vls/def.h > index 1edc1910920..a0fe2f6f2f5 100644 > --- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/def.h > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/def.h > @@ -258,3 +258,146 @@ typedef double v512df __attribute__ ((vector_size (= 4096))); > for (int i =3D 0; i < NUM; ++i) = \ > a[i] =3D (b[i] > c[i]) OP (d[i] < e[i]); = \ > } > + > +#define VARS2(TYPE, NUM1, NUM2) TYPE var##NUM1, TYPE var##NUM2 > +#define VARS4(TYPE, NUM1, NUM2, NUM3, NUM4) = \ > + VARS2 (TYPE, NUM1, NUM2), VARS2 (TYPE, NUM3, NUM4) > +#define VARS8(TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8) = \ > + VARS4 (TYPE, NUM1, NUM2, NUM3, NUM4), VARS4 (TYPE, NUM5, NUM6, NUM7, N= UM8) > +#define VARS16(TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM= 9, \ > + NUM10, NUM11, NUM12, NUM13, NUM14, NUM15, NUM16) = \ > + VARS8 (TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8), = \ > + VARS8 (TYPE, NUM9, NUM10, NUM11, NUM12, NUM13, NUM14, NUM15, NUM16) > +#define VARS32(TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM= 9, \ > + NUM10, NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NU= M18, \ > + NUM19, NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NU= M27, \ > + NUM28, NUM29, NUM30, NUM31, NUM32) = \ > + VARS16 (TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NU= M10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16), = \ > + VARS16 (TYPE, NUM17, NUM18, NUM19, NUM20, NUM21, NUM22, NUM23, NUM24= , \ > + NUM25, NUM26, NUM27, NUM28, NUM29, NUM30, NUM31, NUM32) > +#define VARS64(TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM= 9, \ > + NUM10, NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NU= M18, \ > + NUM19, NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NU= M27, \ > + NUM28, NUM29, NUM30, NUM31, NUM32, NUM33, NUM34, NUM35, NU= M36, \ > + NUM37, NUM38, NUM39, NUM40, NUM41, NUM42, NUM43, NUM44, NU= M45, \ > + NUM46, NUM47, NUM48, NUM49, NUM50, NUM51, NUM52, NUM53, NU= M54, \ > + NUM55, NUM56, NUM57, NUM58, NUM59, NUM60, NUM61, NUM62, NU= M63, \ > + NUM64) = \ > + VARS32 (TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NU= M10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, NUM19, = \ > + NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, NUM28, = \ > + NUM29, NUM30, NUM31, NUM32), = \ > + VARS32 (TYPE, NUM33, NUM34, NUM35, NUM36, NUM37, NUM38, NUM39, NUM40= , \ > + NUM41, NUM42, NUM43, NUM44, NUM45, NUM46, NUM47, NUM48, NUM49= , \ > + NUM50, NUM51, NUM52, NUM53, NUM54, NUM55, NUM56, NUM57, NUM58= , \ > + NUM59, NUM60, NUM61, NUM62, NUM63, NUM64) > +#define VARS128(TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NU= M9, \ > + NUM10, NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, N= UM18, \ > + NUM19, NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, N= UM27, \ > + NUM28, NUM29, NUM30, NUM31, NUM32, NUM33, NUM34, NUM35, N= UM36, \ > + NUM37, NUM38, NUM39, NUM40, NUM41, NUM42, NUM43, NUM44, N= UM45, \ > + NUM46, NUM47, NUM48, NUM49, NUM50, NUM51, NUM52, NUM53, N= UM54, \ > + NUM55, NUM56, NUM57, NUM58, NUM59, NUM60, NUM61, NUM62, N= UM63, \ > + NUM64, NUM65, NUM66, NUM67, NUM68, NUM69, NUM70, NUM71, N= UM72, \ > + NUM73, NUM74, NUM75, NUM76, NUM77, NUM78, NUM79, NUM80, N= UM81, \ > + NUM82, NUM83, NUM84, NUM85, NUM86, NUM87, NUM88, NUM89, N= UM90, \ > + NUM91, NUM92, NUM93, NUM94, NUM95, NUM96, NUM97, NUM98, N= UM99, \ > + NUM100, NUM101, NUM102, NUM103, NUM104, NUM105, NUM106, = \ > + NUM107, NUM108, NUM109, NUM110, NUM111, NUM112, NUM113, = \ > + NUM114, NUM115, NUM116, NUM117, NUM118, NUM119, NUM120, = \ > + NUM121, NUM122, NUM123, NUM124, NUM125, NUM126, NUM127, = \ > + NUM128) = \ > + VARS64 (TYPE, NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NU= M10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, NUM19, = \ > + NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, NUM28, = \ > + NUM29, NUM30, NUM31, NUM32, NUM33, NUM34, NUM35, NUM36, NUM37, = \ > + NUM38, NUM39, NUM40, NUM41, NUM42, NUM43, NUM44, NUM45, NUM46, = \ > + NUM47, NUM48, NUM49, NUM50, NUM51, NUM52, NUM53, NUM54, NUM55, = \ > + NUM56, NUM57, NUM58, NUM59, NUM60, NUM61, NUM62, NUM63, NUM64),= \ > + VARS64 (TYPE, NUM65, NUM66, NUM67, NUM68, NUM69, NUM70, NUM71, NUM72= , \ > + NUM73, NUM74, NUM75, NUM76, NUM77, NUM78, NUM79, NUM80, NUM81= , \ > + NUM82, NUM83, NUM84, NUM85, NUM86, NUM87, NUM88, NUM89, NUM90= , \ > + NUM91, NUM92, NUM93, NUM94, NUM95, NUM96, NUM97, NUM98, NUM99= , \ > + NUM100, NUM101, NUM102, NUM103, NUM104, NUM105, NUM106, NUM10= 7, \ > + NUM108, NUM109, NUM110, NUM111, NUM112, NUM113, NUM114, NUM11= 5, \ > + NUM116, NUM117, NUM118, NUM119, NUM120, NUM121, NUM122, NUM12= 3, \ > + NUM124, NUM125, NUM126, NUM127, NUM128) > + > +#define INIT2(NUM1, NUM2) var##NUM1, var##NUM2 > +#define INIT4(NUM1, NUM2, NUM3, NUM4) INIT2 (NUM1, NUM2), INIT2 (NUM3, N= UM4) > +#define INIT8(NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8) = \ > + INIT4 (NUM1, NUM2, NUM3, NUM4), INIT4 (NUM5, NUM6, NUM7, NUM8) > +#define INIT16(NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NUM= 10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16) = \ > + INIT4 (NUM1, NUM2, NUM3, NUM4), INIT4 (NUM5, NUM6, NUM7, NUM8) > +#define INIT32(NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NUM= 10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, NU= M19, \ > + NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, NU= M28, \ > + NUM29, NUM30, NUM31, NUM32) = \ > + INIT16 (NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NUM10, N= UM11, \ > + NUM12, NUM13, NUM14, NUM15, NUM16), = \ > + INIT16 (NUM17, NUM18, NUM19, NUM20, NUM21, NUM22, NUM23, NUM24, NUM2= 5, \ > + NUM26, NUM27, NUM28, NUM29, NUM30, NUM31, NUM32) > +#define INIT64(NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NUM= 10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, NU= M19, \ > + NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, NU= M28, \ > + NUM29, NUM30, NUM31, NUM32, NUM33, NUM34, NUM35, NUM36, NU= M37, \ > + NUM38, NUM39, NUM40, NUM41, NUM42, NUM43, NUM44, NUM45, NU= M46, \ > + NUM47, NUM48, NUM49, NUM50, NUM51, NUM52, NUM53, NUM54, NU= M55, \ > + NUM56, NUM57, NUM58, NUM59, NUM60, NUM61, NUM62, NUM63, NU= M64) \ > + INIT32 (NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NUM10, N= UM11, \ > + NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, NUM19, NUM20, = \ > + NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, NUM28, NUM29, = \ > + NUM30, NUM31, NUM32), = \ > + INIT32 (NUM33, NUM34, NUM35, NUM36, NUM37, NUM38, NUM39, NUM40, NUM4= 1, \ > + NUM42, NUM43, NUM44, NUM45, NUM46, NUM47, NUM48, NUM49, NUM50= , \ > + NUM51, NUM52, NUM53, NUM54, NUM55, NUM56, NUM57, NUM58, NUM59= , \ > + NUM60, NUM61, NUM62, NUM63, NUM64) > +#define INIT128(NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NU= M10, \ > + NUM11, NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, N= UM19, \ > + NUM20, NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, N= UM28, \ > + NUM29, NUM30, NUM31, NUM32, NUM33, NUM34, NUM35, NUM36, N= UM37, \ > + NUM38, NUM39, NUM40, NUM41, NUM42, NUM43, NUM44, NUM45, N= UM46, \ > + NUM47, NUM48, NUM49, NUM50, NUM51, NUM52, NUM53, NUM54, N= UM55, \ > + NUM56, NUM57, NUM58, NUM59, NUM60, NUM61, NUM62, NUM63, N= UM64, \ > + NUM65, NUM66, NUM67, NUM68, NUM69, NUM70, NUM71, NUM72, N= UM73, \ > + NUM74, NUM75, NUM76, NUM77, NUM78, NUM79, NUM80, NUM81, N= UM82, \ > + NUM83, NUM84, NUM85, NUM86, NUM87, NUM88, NUM89, NUM90, N= UM91, \ > + NUM92, NUM93, NUM94, NUM95, NUM96, NUM97, NUM98, NUM99, = \ > + NUM100, NUM101, NUM102, NUM103, NUM104, NUM105, NUM106, = \ > + NUM107, NUM108, NUM109, NUM110, NUM111, NUM112, NUM113, = \ > + NUM114, NUM115, NUM116, NUM117, NUM118, NUM119, NUM120, = \ > + NUM121, NUM122, NUM123, NUM124, NUM125, NUM126, NUM127, = \ > + NUM128) = \ > + INIT64 (NUM1, NUM2, NUM3, NUM4, NUM5, NUM6, NUM7, NUM8, NUM9, NUM10, N= UM11, \ > + NUM12, NUM13, NUM14, NUM15, NUM16, NUM17, NUM18, NUM19, NUM20, = \ > + NUM21, NUM22, NUM23, NUM24, NUM25, NUM26, NUM27, NUM28, NUM29, = \ > + NUM30, NUM31, NUM32, NUM33, NUM34, NUM35, NUM36, NUM37, NUM38, = \ > + NUM39, NUM40, NUM41, NUM42, NUM43, NUM44, NUM45, NUM46, NUM47, = \ > + NUM48, NUM49, NUM50, NUM51, NUM52, NUM53, NUM54, NUM55, NUM56, = \ > + NUM57, NUM58, NUM59, NUM60, NUM61, NUM62, NUM63, NUM64), = \ > + INIT64 (NUM65, NUM66, NUM67, NUM68, NUM69, NUM70, NUM71, NUM72, NUM7= 3, \ > + NUM74, NUM75, NUM76, NUM77, NUM78, NUM79, NUM80, NUM81, NUM82= , \ > + NUM83, NUM84, NUM85, NUM86, NUM87, NUM88, NUM89, NUM90, NUM91= , \ > + NUM92, NUM93, NUM94, NUM95, NUM96, NUM97, NUM98, NUM99, NUM10= 0, \ > + NUM101, NUM102, NUM103, NUM104, NUM105, NUM106, NUM107, NUM10= 8, \ > + NUM109, NUM110, NUM111, NUM112, NUM113, NUM114, NUM115, NUM11= 6, \ > + NUM117, NUM118, NUM119, NUM120, NUM121, NUM122, NUM123, NUM12= 4, \ > + NUM125, NUM126, NUM127, NUM128) > + > +#define DEF_INIT(TYPE1, TYPE2, NUM, ...) = \ > + void init_##TYPE1##_##TYPE2##_##NUM (VARS##NUM (TYPE2, __VA_ARGS__), = \ > + TYPE2 *__restrict out) = \ > + { = \ > + TYPE1 v =3D {INIT##NUM (__VA_ARGS__)}; = \ > + *(TYPE1 *) out =3D v; = \ > + } > + > +#define DEF_REPEAT(TYPE1, TYPE2, NUM, ...) = \ > + void init_##TYPE1##_##TYPE2##_##NUM (TYPE2 var0, TYPE2 var1, = \ > + TYPE2 *__restrict out) = \ > + { = \ > + TYPE1 v =3D {__VA_ARGS__}; = \ > + *(TYPE1 *) out =3D v; = \ > + } > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-1.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-1.c > new file mode 100644 > index 00000000000..aec2c6e5e5f > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-1.c > @@ -0,0 +1,46 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh -mabi=3Dlp64d -O3 --param=3Driscv= -autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2qi, int8_t, 2, 0, 1) > +DEF_INIT (v4qi, int8_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8qi, int8_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16qi, int8_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1= 3, 14, > + 15) > +DEF_INIT (v32qi, int8_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1= 3, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64qi, int8_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1= 3, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128qi, int8_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,= 65, > + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,= 82, > + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,= 99, > + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112= , 113, > + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126= , 127) > +DEF_INIT (v2uqi, uint8_t, 2, 0, 1) > +DEF_INIT (v4uqi, uint8_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8uqi, uint8_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16uqi, uint8_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15) > +DEF_INIT (v32uqi, uint8_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64uqi, uint8_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128uqi, uint8_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 1= 2, 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > + > +/* { dg-final { scan-assembler-times {vslide1down\.vx} 494 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-2.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-2.c > new file mode 100644 > index 00000000000..f9c58aef553 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-2.c > @@ -0,0 +1,48 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl256b -mabi=3Dlp64d -O3 --param= =3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2hi, int16_t, 2, 0, 1) > +DEF_INIT (v4hi, int16_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8hi, int16_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16hi, int16_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15) > +DEF_INIT (v32hi, int16_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64hi, int16_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128hi, int16_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > +DEF_INIT (v2uhi, uint16_t, 2, 0, 1) > +DEF_INIT (v4uhi, uint16_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8uhi, uint16_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16uhi, uint16_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15) > +DEF_INIT (v32uhi, uint16_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31) > +DEF_INIT (v64uhi, uint16_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128uhi, uint16_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, = 12, 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > + > +/* { dg-final { scan-assembler-times {vslide1down\.vx} 494 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-3.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-3.c > new file mode 100644 > index 00000000000..eb970c7b042 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-3.c > @@ -0,0 +1,27 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl256b -mabi=3Dlp64d -O3 --param= =3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2hf, _Float16, 2, 0, 1) > +DEF_INIT (v4hf, _Float16, 4, 0, 1, 2, 3) > +DEF_INIT (v8hf, _Float16, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16hf, _Float16, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15) > +DEF_INIT (v32hf, _Float16, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64hf, _Float16, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128hf, _Float16, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 1= 2, 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > + > +/* { dg-final { scan-assembler-times {vfslide1down\.vf} 247 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-4.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-4.c > new file mode 100644 > index 00000000000..fedeb445a2b > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-4.c > @@ -0,0 +1,48 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl512b -mabi=3Dlp64d -O3 --param= =3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2si, int32_t, 2, 0, 1) > +DEF_INIT (v4si, int32_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8si, int32_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16si, int32_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15) > +DEF_INIT (v32si, int32_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64si, int32_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128si, int32_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > +DEF_INIT (v2usi, uint32_t, 2, 0, 1) > +DEF_INIT (v4usi, uint32_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8usi, uint32_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16usi, uint32_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15) > +DEF_INIT (v32usi, uint32_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31) > +DEF_INIT (v64usi, uint32_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128usi, uint32_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, = 12, 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > + > +/* { dg-final { scan-assembler-times {vslide1down\.vx} 494 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-5.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-5.c > new file mode 100644 > index 00000000000..c93ac524c88 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-5.c > @@ -0,0 +1,26 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl512b -mabi=3Dlp64d -O3 --param= =3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2sf, float, 2, 0, 1) > +DEF_INIT (v4sf, float, 4, 0, 1, 2, 3) > +DEF_INIT (v8sf, float, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16sf, float, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13= , 14, > + 15) > +DEF_INIT (v32sf, float, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13= , 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64sf, float, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13= , 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128sf, float, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,= 65, > + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,= 82, > + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,= 99, > + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112= , 113, > + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126= , 127) > + > +/* { dg-final { scan-assembler-times {vfslide1down\.vf} 247 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-6.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-6.c > new file mode 100644 > index 00000000000..304539f4868 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-6.c > @@ -0,0 +1,48 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl1024b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2di, int64_t, 2, 0, 1) > +DEF_INIT (v4di, int64_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8di, int64_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16di, int64_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15) > +DEF_INIT (v32di, int64_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64di, int64_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, = 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128di, int64_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > +DEF_INIT (v2udi, uint64_t, 2, 0, 1) > +DEF_INIT (v4udi, uint64_t, 4, 0, 1, 2, 3) > +DEF_INIT (v8udi, uint64_t, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16udi, uint64_t, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15) > +DEF_INIT (v32udi, uint64_t, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31) > +DEF_INIT (v64udi, uint64_t, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12= , 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128udi, uint64_t, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, = 12, 13, > + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,= 30, > + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,= 47, > + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,= 64, > + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,= 81, > + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,= 98, > + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,= 112, > + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125= , 126, > + 127) > + > +/* { dg-final { scan-assembler-times {vslide1down\.vx} 494 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-7.c b/gc= c/testsuite/gcc.target/riscv/rvv/autovec/vls/init-7.c > new file mode 100644 > index 00000000000..4b966010dca > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/init-7.c > @@ -0,0 +1,26 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl1024b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_INIT (v2df, double, 2, 0, 1) > +DEF_INIT (v4df, double, 4, 0, 1, 2, 3) > +DEF_INIT (v8df, double, 8, 0, 1, 2, 3, 4, 5, 6, 7) > +DEF_INIT (v16df, double, 16, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1= 3, 14, > + 15) > +DEF_INIT (v32df, double, 32, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1= 3, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31) > +DEF_INIT (v64df, double, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1= 3, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) > +DEF_INIT (v128df, double, 128, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,= 13, 14, > + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,= 31, > + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,= 48, > + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,= 65, > + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,= 82, > + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98,= 99, > + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112= , 113, > + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126= , 127) > + > +/* { dg-final { scan-assembler-times {vfslide1down\.vf} 247 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-1.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-1.c > new file mode 100644 > index 00000000000..2c831f9f228 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-1.c > @@ -0,0 +1,654 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4qi, int8_t, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8qi, int8_t, 8, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT (v16qi, int8_t, 16, var0, var1, var0, var1, var0, var1, var0,= var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32qi, int8_t, 32, var0, var1, var0, var1, var0, var1, var0,= var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64qi, int8_t, 64, var0, var1, var0, var1, var0, var1, var0,= var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128qi, int8_t, 128, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v256qi, int8_t, 256, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512qi, int8_t, 512, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024qi, int8_t, 1024, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1) > +DEF_REPEAT ( > + v2048qi, int8_t, 2048, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v4096qi, int8_t, 4096, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 11 } } */ > +/* { dg-final { scan-assembler-not {vslide1down\.vx} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-2.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-2.c > new file mode 100644 > index 00000000000..a465bb6ea64 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-2.c > @@ -0,0 +1,654 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4uqi, uint8_t, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8uqi, uint8_t, 8, var0, var1, var0, var1, var0, var1, var0,= var1) > +DEF_REPEAT (v16uqi, uint8_t, 16, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32uqi, uint8_t, 32, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64uqi, uint8_t, 64, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128uqi, uint8_t, 128, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256uqi, uint8_t, 256, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512uqi, uint8_t, 512, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024uqi, uint8_t, 1024, var0, var1, var0, var1, var0, var1, var0, var= 1, var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1) > +DEF_REPEAT ( > + v2048uqi, uint8_t, 2048, var0, var1, var0, var1, var0, var1, var0, var= 1, var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v4096uqi, uint8_t, 4096, var0, var1, var0, var1, var0, var1, var0, var= 1, var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 11 } } */ > +/* { dg-final { scan-assembler-not {vslide1down\.vx} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-3.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-3.c > new file mode 100644 > index 00000000000..9c9899b31dd > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-3.c > @@ -0,0 +1,337 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4hi, int16_t, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8hi, int16_t, 8, var0, var1, var0, var1, var0, var1, var0, = var1) > +DEF_REPEAT (v16hi, int16_t, 16, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32hi, int16_t, 32, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64hi, int16_t, 64, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128hi, int16_t, 128, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256hi, int16_t, 256, var0, var1, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512hi, int16_t, 512, var0, var1, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024hi, int16_t, 1024, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1) > +DEF_REPEAT ( > + v2048hi, int16_t, 2048, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 10 } } */ > +/* { dg-final { scan-assembler-not {vslide1down\.vx} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-4.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-4.c > new file mode 100644 > index 00000000000..17bc31367d6 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-4.c > @@ -0,0 +1,337 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4uhi, uint16_t, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8uhi, uint16_t, 8, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT (v16uhi, uint16_t, 16, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32uhi, uint16_t, 32, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1) > +DEF_REPEAT (v64uhi, uint16_t, 64, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v128uhi, uint16_t, 128, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256uhi, uint16_t, 256, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512uhi, uint16_t, 512, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024uhi, uint16_t, 1024, var0, var1, var0, var1, var0, var1, var0, va= r1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1) > +DEF_REPEAT ( > + v2048uhi, uint16_t, 2048, var0, var1, var0, var1, var0, var1, var0, va= r1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= ) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 10 } } */ > +/* { dg-final { scan-assembler-not {vslide1down\.vx} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-5.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-5.c > new file mode 100644 > index 00000000000..6398f2476ad > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-5.c > @@ -0,0 +1,178 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4si, int32_t, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8si, int32_t, 8, var0, var1, var0, var1, var0, var1, var0, = var1) > +DEF_REPEAT (v16si, int32_t, 16, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32si, int32_t, 32, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64si, int32_t, 64, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128si, int32_t, 128, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256si, int32_t, 256, var0, var1, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512si, int32_t, 512, var0, var1, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024si, int32_t, 1024, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 9 } } */ > +/* { dg-final { scan-assembler-not {vslide1down\.vx} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-6.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-6.c > new file mode 100644 > index 00000000000..960a164112f > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-6.c > @@ -0,0 +1,178 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4usi, uint32_t, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8usi, uint32_t, 8, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT (v16usi, uint32_t, 16, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32usi, uint32_t, 32, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1) > +DEF_REPEAT (v64usi, uint32_t, 64, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v128usi, uint32_t, 128, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256usi, uint32_t, 256, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512usi, uint32_t, 512, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024usi, uint32_t, 1024, var0, var1, var0, var1, var0, var1, var0, va= r1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 9 } } */ > +/* { dg-final { scan-assembler-not {vslide1down\.vx} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-7.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-7.c > new file mode 100644 > index 00000000000..98be878daed > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-7.c > @@ -0,0 +1,53 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v16di, int64_t, 16, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32di, int64_t, 32, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64di, int64_t, 64, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128di, int64_t, 128, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256di, int64_t, 256, var0, var1, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > + > +/* { dg-final { scan-assembler-times {vmerge\.vxm} 5 } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-8.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-8.c > new file mode 100644 > index 00000000000..b8d952ef6ad > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-8.c > @@ -0,0 +1,337 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4hf, _Float16, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8hf, _Float16, 8, var0, var1, var0, var1, var0, var1, var0,= var1) > +DEF_REPEAT (v16hf, _Float16, 16, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32hf, _Float16, 32, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64hf, _Float16, 64, var0, var1, var0, var1, var0, var1, var= 0, var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128hf, _Float16, 128, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256hf, _Float16, 256, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512hf, _Float16, 512, var0, var1, var0, var1, var0, var1, var0, var1,= var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024hf, _Float16, 1024, var0, var1, var0, var1, var0, var1, var0, var= 1, var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1) > +DEF_REPEAT ( > + v2048hf, _Float16, 2048, var0, var1, var0, var1, var0, var1, var0, var= 1, var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 10 } } */ > +/* { dg-final { scan-assembler-not {vfslide1down\.vf} } } */ > diff --git a/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-9.c b/= gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-9.c > new file mode 100644 > index 00000000000..1db68fcf3fe > --- /dev/null > +++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/vls/repeat-9.c > @@ -0,0 +1,178 @@ > +/* { dg-do compile } */ > +/* { dg-options "-march=3Drv64gcv_zvfh_zvl4096b -mabi=3Dlp64d -O3 --para= m=3Driscv-autovec-lmul=3Dm8" } */ > + > +#include "def.h" > + > +DEF_REPEAT (v4sf, float, 4, var0, var1, var0, var1) > +DEF_REPEAT (v8sf, float, 8, var0, var1, var0, var1, var0, var1, var0, va= r1) > +DEF_REPEAT (v16sf, float, 16, var0, var1, var0, var1, var0, var1, var0, = var1, > + var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT (v32sf, float, 32, var0, var1, var0, var1, var0, var1, var0, = var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1) > +DEF_REPEAT (v64sf, float, 64, var0, var1, var0, var1, var0, var1, var0, = var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1) > +DEF_REPEAT (v128sf, float, 128, var0, var1, var0, var1, var0, var1, var0= , > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, v= ar0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, v= ar1) > +DEF_REPEAT ( > + v256sf, float, 256, var0, var1, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1) > +DEF_REPEAT ( > + v512sf, float, 512, var0, var1, var0, var1, var0, var1, var0, var1, va= r0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1) > +DEF_REPEAT ( > + v1024sf, float, 1024, var0, var1, var0, var1, var0, var1, var0, var1, = var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0= , var1, > + var0, var1, var0, var1, var0, var1, var0, var1, var0, var1, var0, var1= , var0, > + var1) > + > +/* { dg-final { scan-assembler-times {vmv\.v\.x} 9 } } */ > +/* { dg-final { scan-assembler-not {vfslide1down\.vf} } } */ > -- > 2.36.3 >