From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ua1-x935.google.com (mail-ua1-x935.google.com [IPv6:2607:f8b0:4864:20::935]) by sourceware.org (Postfix) with ESMTPS id 199A0385417E for ; Thu, 23 Mar 2023 03:28:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 199A0385417E 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-ua1-x935.google.com with SMTP id s23so14115374uae.5 for ; Wed, 22 Mar 2023 20:28:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1679542113; 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=LQjWPc9z/dhPeijgQh2fS1uaHxSpluuXguGkhGz7+gY=; b=h64oizFbUMIlzPpuFPdiSORxDaYXt4W60BfYZ25iztkLxgz3pBDT13tS6bkyCvyndx Wcr7a9FBjrkKD7FG8Eq6bT4cvSowymxG/Ny9n8Ob4TI+7gK4OmOSsYp6ulWSjtBPghjL aTF5GzwaIAS1rkFBTK3AUzn39poNHQGZQ2VPtnrDIzu9kHVTfpTbVJ+n2sTFgMcydSWC Qbas5IgSmivCaDuKsadVWOys5Mk1/790vEdwsRYKNei4DFyDZVikASgdATwjvPes3DZL PLlF8e7PcrCM8hg3b6KHS3zB26b+KBBm4D7LlG5Oe/Y/SzP8ruVGQTKxuwXFaUAWjW1g 700A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679542113; 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=LQjWPc9z/dhPeijgQh2fS1uaHxSpluuXguGkhGz7+gY=; b=aHpFZVfr7XAA3EsM9FSpoE3CuTFvjukuzoU3Y+eW1XkP8Tu5qll+9Bra9gHo/A/lzI fIj3MAC9Vg9QU2ww8sBSPh7skKNgqu/jWDEyy1JLswVJ04Fw7Uzi2GdYBDMm9kJFwRlr R+Cw4uC/mBLDsBtX3rkmHZaC+pSkMDBgkJDE/yJktM1NUN9fBCq+pABfgNgdDYFebfx9 gYm0qeW3jCwuWQlxbGDTOtizxomlUBjl6fu3qMpx/Dy9TxHEy4jy6zWeUa9IhBRFQeNv s1xLg7sMTfB34DKKPDIWktrWO0o/br/grFdVi8rx648+Bv+FmJAjZZ505UchR4UR6sbE ulDQ== X-Gm-Message-State: AAQBX9dZulTWkVc2iTrOvpnOmpJ/z9/O00kaM51oaafWHlOkR3oqZrdq TuOsyKn5SrUwnsPPj8RmaPSgf32L/so7L6ws9bR5uXcrpdYKzA== X-Google-Smtp-Source: AKy350YxDBYpD7b+krmJhNYnaOvXjMHJRHez/tsDAHFo3n7MI6RZe1zGrRPi2cm78pBfiUsiw92iqdwmQHRkDrsnnY8= X-Received: by 2002:a05:6130:a6:b0:68b:9eed:1c7c with SMTP id x38-20020a05613000a600b0068b9eed1c7cmr4678857uaf.0.1679542112509; Wed, 22 Mar 2023 20:28:32 -0700 (PDT) MIME-Version: 1.0 References: <20230320042915.140622-1-juzhe.zhong@rivai.ai> In-Reply-To: <20230320042915.140622-1-juzhe.zhong@rivai.ai> From: Kito Cheng Date: Thu, 23 Mar 2023 11:28:21 +0800 Message-ID: Subject: Re: [PATCH] RISC-V: Fix RVV ICE && runtine fail To: juzhe.zhong@rivai.ai Cc: gcc-patches@gcc.gnu.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,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: committd as https://gcc.gnu.org/git/?p=3Dgcc.git;a=3Dcommit;h=3Da481eed8fd0= 1837cdf011ea9a17853505080a888 with comment tweaks On Mon, Mar 20, 2023 at 12:30=E2=80=AFPM wrote: > > From: Ju-Zhe Zhong > > gcc/ChangeLog: > > * config/riscv/riscv-vsetvl.cc (eliminate_insn): Fix bugs. > (insert_vsetvl): Ditto. > (pass_vsetvl::emit_local_forward_vsetvls): Ditto. > * config/riscv/riscv-vsetvl.h (enum vsetvl_type): Ditto. > * config/riscv/vector.md: Ditto. > > gcc/testsuite/ChangeLog: > > * g++.target/riscv/rvv/base/bug-16.C: New test. > * g++.target/riscv/rvv/base/bug-17.C: New test. > > --- > gcc/config/riscv/riscv-vsetvl.cc | 31 +- > gcc/config/riscv/riscv-vsetvl.h | 1 + > gcc/config/riscv/vector.md | 4 +- > .../g++.target/riscv/rvv/base/bug-16.C | 443 ++++++++++++++++++ > .../g++.target/riscv/rvv/base/bug-17.C | 406 ++++++++++++++++ > 5 files changed, 876 insertions(+), 9 deletions(-) > create mode 100644 gcc/testsuite/g++.target/riscv/rvv/base/bug-16.C > create mode 100644 gcc/testsuite/g++.target/riscv/rvv/base/bug-17.C > > diff --git a/gcc/config/riscv/riscv-vsetvl.cc b/gcc/config/riscv/riscv-vs= etvl.cc > index f4c1773da0d..b5f5301ea43 100644 > --- a/gcc/config/riscv/riscv-vsetvl.cc > +++ b/gcc/config/riscv/riscv-vsetvl.cc > @@ -686,7 +686,7 @@ eliminate_insn (rtx_insn *rinsn) > delete_insn (rinsn); > } > > -static void > +static vsetvl_type > insert_vsetvl (enum emit_type emit_type, rtx_insn *rinsn, > const vector_insn_info &info, const vector_insn_info &prev= _info) > { > @@ -697,14 +697,14 @@ insert_vsetvl (enum emit_type emit_type, rtx_insn *= rinsn, > { > emit_vsetvl_insn (VSETVL_VTYPE_CHANGE_ONLY, emit_type, info, NULL_= RTX, > rinsn); > - return; > + return VSETVL_VTYPE_CHANGE_ONLY; > } > > if (info.has_avl_imm ()) > { > emit_vsetvl_insn (VSETVL_DISCARD_RESULT, emit_type, info, NULL_RTX= , > rinsn); > - return; > + return VSETVL_DISCARD_RESULT; > } > > if (info.has_avl_no_reg ()) > @@ -716,14 +716,14 @@ insert_vsetvl (enum emit_type emit_type, rtx_insn *= rinsn, > { > emit_vsetvl_insn (VSETVL_VTYPE_CHANGE_ONLY, emit_type, info, NU= LL_RTX, > rinsn); > - return; > + return VSETVL_VTYPE_CHANGE_ONLY; > } > /* Otherwise use an AVL of 0 to avoid depending on previous vl. *= / > vl_vtype_info new_info =3D info; > new_info.set_avl_info (avl_info (const0_rtx, nullptr)); > emit_vsetvl_insn (VSETVL_DISCARD_RESULT, emit_type, new_info, NULL= _RTX, > rinsn); > - return; > + return VSETVL_DISCARD_RESULT; > } > > /* Use X0 as the DestReg unless AVLReg is X0. We also need to change t= he > @@ -735,7 +735,7 @@ insert_vsetvl (enum emit_type emit_type, rtx_insn *ri= nsn, > rtx vl_op =3D info.get_avl_reg_rtx (); > gcc_assert (!vlmax_avl_p (vl_op)); > emit_vsetvl_insn (VSETVL_NORMAL, emit_type, info, vl_op, rinsn); > - return; > + return VSETVL_NORMAL; > } > > emit_vsetvl_insn (VSETVL_DISCARD_RESULT, emit_type, info, NULL_RTX, ri= nsn); > @@ -745,6 +745,7 @@ insert_vsetvl (enum emit_type emit_type, rtx_insn *ri= nsn, > fprintf (dump_file, "Update VL/VTYPE info, previous info=3D"); > prev_info.dump (dump_file); > } > + return VSETVL_DISCARD_RESULT; > } > > /* If X contains any LABEL_REF's, add REG_LABEL_OPERAND notes for them > @@ -2760,6 +2761,7 @@ pass_vsetvl::emit_local_forward_vsetvls (const bb_i= nfo *bb) > for (insn_info *insn : bb->real_nondebug_insns ()) > { > const vector_insn_info prev_info =3D curr_info; > + enum vsetvl_type type =3D NUM_VSETVL_TYPE; > transfer_before (curr_info, insn); > > if (has_vtype_op (insn->rtl ())) > @@ -2771,10 +2773,25 @@ pass_vsetvl::emit_local_forward_vsetvls (const bb= _info *bb) > =3D m_vector_manager->vector_insn_infos[insn->uid ()]; > if (!require.compatible_p ( > static_cast (prev_info))) > - insert_vsetvl (EMIT_BEFORE, insn->rtl (), require, prev_i= nfo); > + type =3D insert_vsetvl (EMIT_BEFORE, insn->rtl (), requir= e, > + prev_info); > } > } > > + /* Fix the issue of following sequence: > + vsetivli zero, 5 > + .... > + vsetvli zero, zero > + vmv.x.s (demand AVL =3D 8). > + .... > + incorrect: vsetvli zero, zero =3D=3D=3D> Since the curr_info is = AVL =3D 8. > + correct: vsetivli zero, 8 > + vadd (demand AVL =3D 8). */ > + if (type =3D=3D VSETVL_VTYPE_CHANGE_ONLY) > + { > + /* Update the curr_info to be real correct AVL. */ > + curr_info.set_avl_info (prev_info.get_avl_info ()); > + } > transfer_after (curr_info, insn); > } > > diff --git a/gcc/config/riscv/riscv-vsetvl.h b/gcc/config/riscv/riscv-vse= tvl.h > index 887ff1bdec8..237381f7026 100644 > --- a/gcc/config/riscv/riscv-vsetvl.h > +++ b/gcc/config/riscv/riscv-vsetvl.h > @@ -31,6 +31,7 @@ enum vsetvl_type > VSETVL_NORMAL, > VSETVL_VTYPE_CHANGE_ONLY, > VSETVL_DISCARD_RESULT, > + NUM_VSETVL_TYPE > }; > > enum emit_type > diff --git a/gcc/config/riscv/vector.md b/gcc/config/riscv/vector.md > index c100407d9fa..96dc1af5a3d 100644 > --- a/gcc/config/riscv/vector.md > +++ b/gcc/config/riscv/vector.md > @@ -6999,7 +6999,7 @@ > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > (match_operand:VI_QHS 2 "vector_merge_operand" " vu, 0, vu, = 0") > (match_operand:VI_QHS 3 "register_operand" " vr, vr, vr, v= r") > - (match_operand: 4 "reg_or_0_operand" " rK, rK, rK, r= K")] VSLIDES1))] > + (match_operand: 4 "reg_or_0_operand" " rJ, rJ, rJ, r= J")] VSLIDES1))] > "TARGET_VECTOR" > "vslide.vx\t%0,%3,%z4%p1" > [(set_attr "type" "vislide") > @@ -7040,7 +7040,7 @@ > (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) > (match_operand:VI_D 2 "vector_merge_operand" " vu, 0, vu, = 0") > (match_operand:VI_D 3 "register_operand" " vr, vr, vr, v= r") > - (match_operand: 4 "reg_or_0_operand" " rK, rK, rK, r= K")] VSLIDES1))] > + (match_operand: 4 "reg_or_0_operand" " rJ, rJ, rJ, r= J")] VSLIDES1))] > "TARGET_VECTOR" > "vslide.vx\t%0,%3,%z4%p1" > [(set_attr "type" "vislide") > diff --git a/gcc/testsuite/g++.target/riscv/rvv/base/bug-16.C b/gcc/tests= uite/g++.target/riscv/rvv/base/bug-16.C > new file mode 100644 > index 00000000000..cc5d7fe9398 > --- /dev/null > +++ b/gcc/testsuite/g++.target/riscv/rvv/base/bug-16.C > @@ -0,0 +1,443 @@ > +/* { dg-do run } */ > +/* { dg-options "-O2" } */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include"riscv_vector.h" > +using std::addressof; > +using std::cerr; > +using std::endl; > +using std::int8_t; > +using std::int16_t; > +using std::int32_t; > +using std::int64_t; > +using std::uint8_t; > +using std::uint16_t; > +using std::uint32_t; > +using std::uint64_t; > +using std::ptrdiff_t; > +using std::size_t; > +using float16_t =3D _Float16; > +using float32_t =3D float; > +using float64_t =3D double; > + > +template > +constexpr T uint_to_float(T2 val) noexcept > +{ > + return *reinterpret_cast(&val); > +} > + > +constexpr const auto &f16(uint_to_float); > +constexpr const auto &f32(uint_to_float); > +constexpr const auto &f64(uint_to_float); > + > +template > +struct To_uint > +{ > + using type =3D std::conditional_t< > + sizeof(T) =3D=3D 1, uint8_t, std::conditional_t< > + sizeof(T) =3D=3D 2, uint16_t, std::conditional_t< > + sizeof(T) =3D=3D 4, uint32_t, std::conditional_t< > + sizeof(T) =3D=3D 8, uint64_t, void > + > > + > > + > > + >; > +}; > + > +// isnan() does not support half type > +template > +struct To_float > +{ > + using type =3D std::conditional_t< > + std::is_same::value, float, std::conditional_t< > + std::is_same::value, float, std::conditional_t< > + std::is_same::value, double, float > + > > + > > + >; > +}; > + > +template > +using To_uint_t =3D typename To_uint::type; > + > +template > +using To_isnan_float =3D typename To_float::type; > + > +template > +void print_float(std::ostream &os, T val) > +{ > + using std::setw; > + os << std::hex << std::setfill('0') << setw(sizeof(T) * 2) << *reinter= pret_cast*>(addressof(val)) << setw(0) << std::dec; > +} > + > +template > +bool __attribute__((noinline)) > +check(const T *a, const T *b, size_t size) > +{ > + bool rv =3D true; > + for (size_t i =3D 0; i < (size / sizeof(T)); ++i) { > + if (reinterpret_cast *>(a)[i] =3D=3D > + reinterpret_cast *>(b)[i]) > + continue; > + // floating negative zero =3D=3D positive zero > + if ((std::is_floating_point_v || std::is_same::valu= e) && > + (a[i] =3D=3D b[i])) > + continue; > + // if both result are NaN, return true > + if ((std::is_same::value || std::is_floating_point_v) && > + std::isnan(static_cast>(a[i])) && > + std::isnan(static_cast>(b[i]))) > + continue; > + > + if (std::is_same::value) { > + cerr << std::hex << std::setfill('0') << std::setw(sizeof(T) * 2) = << "[" > + << i > + << "] result/golden:" << reinterpret_cast = *>(a)[i] > + << " !=3D " << reinterpret_cast *>(b)[i] > + << std::setw(0) << std::dec << endl; > + } else if constexpr (std::is_floating_point_v) { > + cerr << "[" << i << "] result/golden:" << a[i] << "("; > + print_float(cerr, a[i]); > + cerr << ") !=3D " << b[i] << "("; > + print_float(cerr, b[i]); > + cerr << ")" << endl; > + } else if constexpr (std::is_unsigned_v) { > + cerr << "[" << i << "] result/golden: " << static_cast(= a[i]) > + << " !=3D " << static_cast(b[i]) << endl; > + } else { > + cerr << "[" << i << "] result/golden:" << static_cast(a[= i]) > + << " !=3D " << static_cast(b[i]) << endl; > + } > + rv =3D false; > + } > + return rv; > +} > + > +template > +bool __attribute__((noinline)) > +check(const T a, const T golden) > +{ > + return check(addressof(a), addressof(golden), sizeof(T)); > +} > + > +int main() > +{ > +int return_value =3D 0; > + > +size_t var_134 =3D 120u; > +int8_t var_133 [] =3D {15, -2, 0, 0, -1, 0, 0, -2, 18, 0, 1, 0, 2, 10, 2= , 0, 0, -9, 0, 0, 0, 0, 1, 0, 31, 2, 0, -5, 0, 3, -2, -17, -12, 0, 0, -1, 1= , 47, -1, 0, 0, -1, 33, 0, 0, 1, 0, 0, -10, 0, 0, 61, 18, -3, 0, -1, 0, 0, = 0, 14, 0, 3, 0, 0, 0, 0, 0, 0, -59, 0, 0, 55, 0, 11, 14, 0, 0, 0, 1, 0, 0, = 0, -1, 17, 0, 2, 0, 0, -5, -1, 1, 0, 1, 6, 0, 0, 107, 0, 7, 0, 0, 0, 5, 7, = 0, 0, 0, -1, 0, 0, -8, 0, 0, 0, -1, 0, -8, 1, 0, 0}; > +size_t var_131 =3D 9u; > +int8_t var_130 [] =3D {60, -103, -44, -1, -43, 1, 0, -107, 72}; > +size_t var_128 =3D 38u; > +int8_t var_127 [] =3D {44, 40, 108, -73, 76, -34, -25, 4, 54, 94, -10, -= 29, 12, 116, -121, -32, 30, 61, 127, 16, -34, -95, -90, 124, -4, 12, 124, 1= 8, 123, -37, -56, -119, 9, 12, 57, 30, -20, 29}; > +size_t var_125 =3D 98u; > +uint8_t var_124 [] =3D {53u, 28u, 220u, 181u, 243u, 150u, 238u, 37u, 119= u, 182u, 29u, 252u, 15u, 156u, 34u, 201u, 75u, 149u, 173u, 112u, 255u, 58u,= 51u, 176u, 22u, 103u, 44u, 150u, 225u, 31u, 190u, 70u, 125u, 112u, 57u, 3u= , 191u, 131u, 48u, 89u, 168u, 58u, 104u, 228u, 15u, 80u, 128u, 101u, 161u, = 132u, 24u, 17u, 113u, 126u, 25u, 23u, 93u, 18u, 241u, 203u, 255u, 142u, 113= u, 233u, 129u, 137u, 248u, 173u, 40u, 23u, 161u, 100u, 242u, 77u, 206u, 18u= , 162u, 57u, 44u, 215u, 2u, 43u, 61u, 116u, 166u, 21u, 188u, 74u, 234u, 245= u, 45u, 44u, 17u, 240u, 46u, 58u, 89u, 254u}; > +size_t var_122 =3D 31u; > +int8_t var_121 [] =3D {41, 69, -57, 102, 86, 103, -128, 4, -118, -1, 109= , 40, 7, 27, 79, -63, 35, 73, 1, 42, -85, 126, 107, 53, -114, 39, 53, 10, -= 94, -20, 125}; > +int8_t var_119 [] =3D {-52, 85, -58, 27, 110, -67, -54, 4, -100, 95, -74= , -42, -123, -17, -71, -112, 119, -22, -4, -77, -118, -10, 30, -74, 0, 103,= -122, 124, 59, -99, 78, -46, -52, 94, 14, -74, -97, 25, -59, 3, 68, -15, -= 60, 83, 80, -113, -90, -118, 7, -38, -57, -114, 88, -76, 8, 44, 45, 12, -27= , 83, 43, 77, -93, 79, 6, -17, 93, 33, 22, 6, 113, -5, -13, 20, -106, -36, = -57, -21, -127, -89, 102, -62, -92, -124, 73, 118, 41, -120, 94, -100, 13, = -34, -86, -103, 26, -57, -16, 22, -48, -71, 15, 40, 27, -125, -94, -93, -93= , -3, -33, 60, 15, -29, -16, 70, -15, 30, 108, -105, 30, -65}; > +uint8_t var_118 [] =3D {197u, 206u, 42u, 228u, 104u, 250u, 255u, 186u}; > +uint8_t var_117 [] =3D {72u, 6u, 85u, 22u, 128u, 73u, 137u, 137u}; > +int8_t var_116 [] =3D {-120, -102, 100, 49, -110, -76, -69, -31}; > +float64_t var_115 [] =3D {f64(323207751474600524u), f64(1112891795445475= 562u), f64(6854607033647765885u), f64(832190058329784671u), f64(11148526509= 635847059u), f64(12649416344049588294u), f64(4028395243010811234u), f64(144= 77107254519158798u)}; > +// 4.6405235952544706e-287, 2.796915483405209e-234, 1.683358637102254e+1= 50, 4.864756940016232e-253, -5.6687651516926024e-180, -1.1703726495306743e-= 79, 2.1797047987439956e-39, -1.7434285356776356e+43 > + > +float64_t var_114 [] =3D {f64(6662394577642063664u), f64(531118669325289= 3574u), f64(703524307981821023u), f64(10715555053454551221u), f64(139737071= 3219650317u), f64(2519636160457044144u), f64(2428017200744904391u), f64(887= 1119969217150037u)}; > +// 2.509669398494079e+137, 1.2060594553171986e+47, 1.2334815861468122e-2= 61, -6.478620247525537e-209, 2.967271500782844e-215, 3.089416451843403e-140= , 2.258590162692108e-146, 1.061330842742021e+285 > + > +uint32_t var_113 [] =3D {2501167418u, 4078952301u, 1289692095u, 32888513= 77u, 1031645594u, 2454418038u, 4057122694u, 4195826215u}; > +uint32_t var_112 [] =3D {997394066u, 745676460u, 1302867668u, 2496350675= u, 681303275u, 2256531569u, 197606396u, 782587620u}; > +int32_t var_111 [] =3D {-1370843403, -1083808177, -2046227556, 124821026= 7, -995484329, 1657636018, 139507966, -406999593}; > +int8_t var_110 [] =3D {41, 69, -57, 102, 86, 103, -128, 4, -118, -1, 109= , 40, 7, 27, 79, -63, 35, 73, 1, 42, -85, 126, 107, 53, -114, 39, 53, 10, -= 94, -20, 125}; > +int8_t var_109 [] =3D {92, 35, 58, -53, 94, -103, 114, 32, 39, 76, 104, = 103, -20, 29, -103, -123, 4, -107, -21, 127, 58, -93, 14, 68, -77, -65, 101= , 20, -75, 72, 5}; > +int8_t var_108 [] =3D {-50, -3, -122, 11, -110, -106, -120, -117, -27, 4= 9, 99, -33, 2, -37, -91, -10, 101, -24, -95, -24, 115, 84, -114, 67, 27, -4= 4, -122, -28, 108, 107, 41}; > +int8_t var_107 [] =3D {-78, 56, -90, 72, 16, 80, -71, -95, 3, 65, -116, = 44, 54, 69, 22, -23, -10, 79, -1, 31, 114, 87, -57, -65, -61, 15, 32, 68, 7= 6, 1, -46}; > +uint8_t var_106 [] =3D {53u, 28u, 220u, 181u, 243u, 150u, 238u, 37u, 119= u, 182u, 29u, 252u, 15u, 156u, 34u, 201u, 75u, 149u, 173u, 112u, 255u, 58u,= 51u, 176u, 22u, 103u, 44u, 150u, 225u, 31u, 190u, 70u, 125u, 112u, 57u, 3u= , 191u, 131u, 48u, 89u, 168u, 58u, 104u, 228u, 15u, 80u, 128u, 101u, 161u, = 132u, 24u, 17u, 113u, 126u, 25u, 23u, 93u, 18u, 241u, 203u, 255u, 142u, 113= u, 233u, 129u, 137u, 248u, 173u, 40u, 23u, 161u, 100u, 242u, 77u, 206u, 18u= , 162u, 57u, 44u, 215u, 2u, 43u, 61u, 116u, 166u, 21u, 188u, 74u, 234u, 245= u, 45u, 44u, 17u, 240u, 46u, 58u, 89u, 254u}; > +uint8_t var_105 [] =3D {209u, 83u, 95u, 215u, 76u, 0u, 235u, 22u, 155u, = 169u, 210u, 242u, 234u, 53u, 32u, 126u, 93u, 184u, 196u, 33u, 22u, 134u, 22= 7u, 172u, 199u, 228u, 214u, 157u, 66u, 115u, 127u, 221u, 124u, 108u, 92u, 1= 62u, 252u, 129u, 63u, 134u, 158u, 250u, 204u, 112u, 21u, 16u, 226u, 178u, 9= 2u, 168u, 144u, 59u, 51u, 112u, 132u, 84u, 199u, 149u, 212u, 177u, 93u, 15u= , 191u, 34u, 226u, 61u, 116u, 240u, 144u, 157u, 35u, 0u, 253u, 152u, 16u, 1= 30u, 93u, 228u, 212u, 34u, 175u, 77u, 11u, 228u, 138u, 216u, 215u, 154u, 16= u, 55u, 130u, 241u, 70u, 88u, 202u, 232u, 167u, 227u}; > +uint8_t var_104 [] =3D {51u, 198u, 54u, 22u, 54u, 109u, 241u, 76u, 225u,= 21u, 43u, 183u, 71u, 250u, 207u, 44u, 152u, 213u, 120u, 189u, 216u, 199u, = 160u, 137u, 139u, 156u, 242u, 195u, 203u, 157u, 173u, 238u, 36u, 236u, 14u,= 66u, 233u, 220u, 212u, 206u, 88u, 160u, 94u, 235u, 46u, 107u, 124u, 71u, 2= 44u, 166u, 151u, 133u, 4u, 253u, 133u, 158u, 21u, 209u, 239u, 228u, 236u, 1= 53u, 230u, 9u, 68u, 166u, 227u, 8u, 188u, 160u, 107u, 71u, 176u, 135u, 33u,= 234u, 227u, 37u, 237u, 185u, 136u, 79u, 111u, 252u, 190u, 236u, 95u, 246u,= 251u, 46u, 114u, 142u, 231u, 150u, 52u, 158u, 216u, 61u}; > +int8_t var_103 [] =3D {44, 40, 108, -73, 76, -34, -25, 4, 54, 94, -10, -= 29, 12, 116, -121, -32, 30, 61, 127, 16, -34, -95, -90, 124, -4, 12, 124, 1= 8, 123, -37, -56, -119, 9, 12, 57, 30, -20, 29}; > +int8_t var_102 [] =3D {-58, -3, 95, -113, -26, 109, 85, 110, -122, -108,= 101, -113, 126, 80, -87, 88, 60, 124, -63, -128, -21, 118, 81, 124, 60, -1= 03, 127, 70, 57, -19, 53, 51, -120, 33, -64, 119, 43, -34}; > +int8_t var_101 [] =3D {-22, -28, 99, -74, 40, -90, 17, -3, -110, -53, 80= , -84, -114, 82, 112, 77, -54, -113, -87, 64, 106, 92, 120, 48, 25, -14, -1= 9, 81, -98, -124, -58, -80, 6, 58, 108, 83, -69, -112}; > +int8_t var_100 [] =3D {46, 12, 5, 10, 55, 46, -54, -96, -12, -10, 121, -= 30, -5, 60, -76, -51, -87, 107, -54, -18, 112, -64, 46, 120, -5, -119, 30, = -48, -51, 53, 108}; > +uint8_t var_99 [] =3D {130u, 12u, 38u, 148u, 237u, 176u, 183u, 136u, 155= u, 156u, 201u, 58u, 26u, 167u, 105u, 117u, 25u, 125u, 29u, 163u, 29u, 169u,= 151u, 180u, 73u, 173u, 94u, 121u, 183u, 48u, 208u}; > +uint8_t var_98 [] =3D {106u, 19u, 146u, 9u, 203u, 31u, 179u, 218u, 11u, = 232u, 232u, 222u, 18u, 225u, 23u, 42u, 106u, 243u, 33u, 148u, 255u, 162u, 1= 55u, 141u, 69u, 223u, 200u, 252u, 15u, 137u, 148u}; > +uint8_t var_97 [] =3D {169u, 101u, 247u, 228u, 25u, 209u, 126u, 155u, 25= 0u, 136u, 194u, 138u, 145u, 248u, 73u, 129u, 113u, 84u, 187u, 38u, 199u, 24= 6u, 203u, 87u, 216u, 198u, 112u, 192u, 134u, 171u, 42u, 93u, 133u, 7u, 224u= , 21u, 201u, 53u, 23u, 53u, 115u, 218u, 190u, 133u, 200u, 46u, 173u, 144u, = 159u, 21u, 11u, 146u, 13u, 76u, 255u, 107u, 126u, 108u, 27u, 163u, 113u, 57= u, 85u, 237u, 243u, 47u, 242u, 40u, 206u, 107u, 191u, 11u, 34u, 210u, 143u,= 214u, 164u, 192u, 59u, 144u, 78u, 91u, 2u, 105u, 109u, 58u, 63u, 204u, 39u= , 66u, 158u, 135u, 205u, 68u, 114u, 10u, 233u, 113u, 181u, 184u, 16u, 170u,= 226u, 212u, 91u, 136u, 41u, 159u, 143u, 78u, 26u, 246u, 63u, 221u, 192u, 1= 50u, 238u, 128u, 128u, 46u}; > +int8_t var_96 [] =3D {-4, -35, -62, -104, -17, -25, -117, 125, -44, 20, = 37, 46, 40, -95, 41, 70, 1, 71, -35, -60, 107, -68, 102, -102, -71, 52, 34,= -111, -120, 107, -56, -103, 77, -63, -48, 90, 46, -111, -68, -38, 3, -110,= 104, 82, -85, -102, 63, 54, 85, -7, 38, -36, 70, -95, 99, -78, 33, -86, 10= 9, 2, -45, -83, -90, 16, -43, 101, -99, -32, -97, 73, -28, 90, -103, -34, -= 107, -51, 126, -98, -11, 0, 41, -83, 92, -10, -38, 97, -65, -27, -92, 17, 1= 27, -127, 81, -6, -45, -38, -48, 30, 33, 35, 106, -44, 122, -8, 84, 1, -13,= -67, -78, 90, -68, 92, 97, -103, -68, -17, 10, 28, -54, 9}; > +int8_t var_95 [] =3D {-90, -98, -55, 68, -7, -5, -21, -60, 92, -66, 103,= 39, -50, 35, -28, -110, -23, 114, -40, -125, -123, -83, -59, 33, -56, 56, = -19, -15, 33, 69, -76, -28, 97, 107, 55, -126, 61, 25, -69, 44, 65, -61, 14= , -62, -121, -82, -106, -28, 17, 109, 66, -114, 74, -40, -94, 69, 19, -96, = 88, -59, -68, -86, -97, -6, -107, 27, 26, 10, 95, -9, 80, -80, 19, -31, 102= , 29, 37, -88, -86, 38, 59, 77, 110, 101, -126, -1, -28, -96, -25, 74, 76, = 48, 77, 127, 100, 82, -64, 50, 22, -87, -17, 122, 106, 65, 36, 121, -38, 20= , 123, -118, 0, -124, 30, 122, 79, -91, 107, -126, -113, -126}; > +int8_t var_94 [] =3D {-16, 42, -87, 90, 66, -72, 84, -76, -107, 14, -58,= 48, 86, 89, -10, -122, -2, 39, 42, 124, 120, 105, 100, -121, 20, 56, -25, = 65, 57, -30, -109, 8, 22, -52, 126, -30, -6, 101, -22, -14, 41, 41, 118, -1= 24, -83, -42, 47, -105, -10, -34, -83, 25, 66, 125, -17, 125, -41, 69, 116,= 39, -73, -76, -44, 107, -32, -90, 86, 108, -101, 35, 100, 55, 2, -123, 87,= -57, 6, -120, -93, -45, -115, -37, -18, 3, -9, -41, 64, 79, 0, -109, 15, 8= 6, 28, -98, 118, -95, 36, 71, -123, -14, 68, 120, 118, -123, 118, 54, -59, = 63, 118, 6, -1, -48, 32, 84, -76, -67, 67, 101, -61, -3}; > +int8_t var_93 [] =3D {60, -103, -44, 107, -43, -39, -85, -107, 72, 37, 1= , -30, 3, 77, 110, -21, -1, -69, -4, 55, 63, -104, -12, 107, 122, 79, -62, = -38, 21, 24, -52, -34, -94, 67, -127, 0, 74, 93, -85, -12, -15, -10, 65, -8= 9, -104, 122, 19, -29, -78, -12, 104, 121, 73, -111, -40, -57, 82, -74, -72= , 54, -102, 105, 54, -106, 39, 127, -67, -53, -59, -3, 67, 55, -40, 11, 114= , -59, -57, -123, -28, -8, -106, -65, -37, 33, 54, 96, 66, -27, -37, -47, 3= 5, -55, 52, 102, 110, 107, 107, 89, 107, 93, 3, -6, 84, 113, -82, 57, 17, -= 3, 59, -125, -17, 47, -93, -80, -99, 111, -125, 18, 36, 75}; > +int8_t var_92 [] =3D {-90, 39, -97, 115, -95, -84, -45, -93, -13, -1, -1= 19, -61, 125, -78, -3, -35, 19, 28, -109, 83, -10, 103, -77, -13, -17, 91, = -108, -64, -106, 49, 75, 85, 63, -49, -41, 102, 103, -22, 43, -29, -79, -45= , -63, 9, -85, -92, 66, 23, 88, 29, -16, -35, 14, 62, -79, 26, -83, 38, 88,= -103, -39, 84, -2, 125, 20, -15, -68, -31, -104, -99, -2, -125, -36, -101,= -101, -89, 58, -1, -127, 124, 19, 1, 94, 30, 102, -43, 56, 26, 89, 121, 61= , -7, 92, 109, 108, 5, -93, -123, 43, -23, -42, 76, -89, -95, -14, -91, 43,= 98, 104, -53, 9, 77, 36, 113, -6, -100, 98, 84, 75, 35}; > +int8_t var_91 [] =3D {90, -121, -65, 27, -14, 45, 4, -40, -70, -94, 20, = 70, -121, -49, -23, 16, 124, -65, -74, 104, 77, 47, 71, 80, -35, -123, 59, = -94, -43, -4, 127, -33, 88, 2, 53, 22, 101, -21, -10, -15, -41, 126, 66, 10= 8, 27, 117, 1, -83, 89, 109, 114, -31, -107, 27, -77, 101, 16, 88, 93, -74,= 99, -11, 32, -35, 124, 31, 118, 124, -87, 4, 13, -64, -26, -98, -10, 8, -1= 01, -37, 121, 28, 1, 49, 36, 97, 29, -3, 65, 28, -96, 72, -67, -92, 126, -1= 5, 53, -90, -124, 11, 59, -91, -127, -112, -111, 125, 98, 51, 45, -127, -11= 5, 13, -107, 25, 28, 74, -53, 76, -28, 108, 18, -94}; > +int8_t var_90 [] =3D {11, 85, -127, 49, 107, -37, 66, 124, 60, -100, 5, = 79, 15, -91, 56, -52, -115, 112, -28, -128, -43, -48, 77, 106, 17, 81, 118,= 29, -120, -20, 44, 75, 81, -54, -4, -17, 82, 44, 92, 8, -106, 54, 32, -105= , -32, 53, -102, -79, 89, -100, -80, -118, 35, 13, -47, 25, 111, -59, -50, = 19, -47, -83, 52, -79, -1, 90, 120, -46, 42, 97, -76, 43, -16, -127, 94, 11= 2, -14, -22, -86, 120, -116, 124, 108, 82, -99, 54, 84, -92, 38, 33, 46, -3= , 0, -78, -92, -52, 63, -29, 55, -90, -26, -117, 125, 63, 113, 110, 71, -92= , -13, -118, 53, 53, 123, -83, 122, -76, 44, 21, 32, -34}; > +int8_t var_89 [] =3D {-75, -70, 31, 76, 120, 116, -76, 95, -96}; > +int8_t var_88 [] =3D {6, 65, 93, -102, 118, -75, 24, -9, 111}; > +uint8_t var_87 [] =3D {120u, 177u, 163u, 176u, 160u, 16u, 235u, 224u, 16= 8u, 198u, 166u, 121u, 182u, 42u, 113u, 93u, 16u, 123u, 174u, 42u, 43u, 205u= , 132u, 40u, 88u, 190u, 96u, 11u, 144u, 187u, 111u, 246u, 235u, 75u, 163u, = 20u, 163u, 231u, 163u, 94u, 30u, 186u, 167u, 88u, 123u, 130u, 230u, 8u, 203= u, 208u, 222u, 231u, 25u, 143u, 40u, 176u, 44u, 182u, 75u, 184u, 167u, 143u= , 237u, 182u, 235u, 32u, 81u, 127u, 85u, 219u, 38u, 4u, 45u, 117u, 219u, 23= 4u, 11u, 231u, 103u, 33u, 199u, 214u, 100u, 166u, 23u, 64u, 37u, 234u, 59u,= 81u, 111u, 100u, 241u, 204u, 159u, 44u, 196u, 60u, 92u, 90u, 30u, 61u, 252= u, 45u, 8u, 121u, 139u, 4u, 144u, 113u, 39u, 28u, 194u, 227u, 98u, 82u, 237= u, 15u, 44u, 96u}; > +uint8_t var_86 [] =3D {98u, 184u, 61u, 239u, 240u, 91u, 79u, 194u, 158u,= 234u, 4u, 89u, 239u, 124u, 241u, 245u, 124u, 143u, 92u, 94u, 84u, 167u, 22= 3u, 198u, 177u, 178u, 246u, 91u, 22u, 131u, 231u, 12u, 206u, 85u, 215u, 46u= , 58u, 146u, 2u, 225u, 251u, 206u, 200u, 104u, 78u, 12u, 189u, 38u, 186u, 1= 62u, 194u, 48u, 75u, 42u, 131u, 81u, 195u, 207u, 58u, 209u, 239u, 164u, 207= u, 113u, 87u, 198u, 201u, 40u, 195u, 146u, 5u, 8u, 254u, 248u, 61u, 44u, 25= 4u, 195u, 254u, 100u, 109u, 142u, 156u, 197u, 78u, 169u, 121u, 72u, 158u, 3= 1u, 39u, 235u, 141u, 48u, 205u, 242u, 109u, 113u}; > +uint8_t var_85 [] =3D {128u, 227u, 109u, 98u, 165u, 57u, 151u, 127u, 141= u, 112u, 125u, 27u, 13u, 104u, 216u, 83u, 225u, 180u, 211u, 113u, 32u, 194u= , 151u, 47u, 81u, 223u, 51u, 145u, 133u, 6u, 120u, 56u, 252u, 40u, 47u, 145= u, 214u, 159u, 80u, 253u, 16u, 33u, 36u, 69u, 82u, 20u, 222u, 113u, 144u, 6= 8u, 204u, 207u, 7u, 128u, 142u, 38u, 3u, 142u, 149u, 25u, 91u, 91u, 153u, 6= 4u, 227u, 135u, 222u, 165u, 120u, 56u, 120u, 249u, 233u, 100u, 204u, 127u, = 200u, 213u, 145u, 193u, 237u, 3u, 204u, 214u, 116u, 115u, 251u, 64u, 45u, 5= 2u, 72u, 5u, 188u, 219u, 228u, 36u, 238u, 195u}; > +int8_t var_84 [] =3D {87, 92, -88, 10, 92, 105, -7, -9, -62, -103, -20, = 10, -44, -98, 69, 54, 29, -99, 46, 19, -13, 57, 50, -93, -87, 112, -14, 65,= -62, -75, 27, 119, 54, -42, -98, 9, 29, 16, 32, 90, -126, 87, 28, -96, 21,= -11, 9, 60, -58, -126, -58, 103, 15, 108, -38, 100, -42, 70, 125, -92, -11= 8, -101, -18, -61, -115, 0, -29, 94, 113, 107, 86, 121, -96, -27, -45, 101,= 89, 60, -6, -61, -78, -18, -76, 43, 122, -19, -47, 42, -4, 100, -59, 77, -= 110, 74, -42, 0, 126, -25, 95, 120, 47, -94, -77, 48, 47, -55, 82, -127, -9= 9, -79, -101, -16, 117, 46, -67, 39, 60, 61, 16, 93}; > +int8_t var_83 [] =3D {97, 57, 34, -38, 36, -74, -60, 124, -6, 0, -40, 53= , 75, -72, -69, -52, 115, -49, -115, -101, -7, 107, -37, 7, -55, 7, 39, -16= , -7, -34, -44, -31, -126, -82, -7, -43, 109, -93, 103, 90, 114, -127, 125,= -95, -1, 61, 109, -118, 21, 6, -81, 87, 79, -73, -89, 5, 93, 92, -52, 86, = 11, 99, 91, 2, 88, -38, 110, 17, -27, -93, 124, 85, 34, 46, -101, 35, 58, 4= 7, -29, 49, -12, 26, -1, 64, 27, 96, -77, 109, -127, -106, -46, -109, -37, = 111, -116, -53, 126, 67, 32, 62, 56, -42, -123, 119, -28, 11, -49, -29, -74= , -95, 39, -50, -123, 13, -12, 56, -89, 74, -64, -111}; > +int8_t var_82 [] =3D {110, -40, -24, 36, -44, 2, 46, -123, -3, -47, 61, = 100, 35, 101, 67, 47, -1, 125, -71, 67, 81, -108, -16, 15, -71, -66, 19, -6= 8, -101, 42, -51, 64, 54, 106, 64, 9, -26, -25, -63, -13, -23, -72, 19, -36= , -16, 69, -89, 80, 92, 44, -110, 1, 59, -23, 84, 87, -120, -108, 69, 93, 1= 22, 47, -37, 9, 28, -65, 37, -59, -95, -76, 78, 32, 100, 17, 108, -70, -115= , -118, 16, 43, 11, 40, -40, 39, 71, -51, 14, 19, -38, 33, 44, 49, -19, 8, = 95, 70, -93, -87}; > +int8_t var_81 [] =3D {-88, -43, 94, -41, -57, 97, -45, -100, 35, 17, -10= 1, -117, 70, 26, -14, 14, 69, 67, -27, 120, -71, 73, 79, 124, 100, -80, 67,= 105, -72, 82, -42, -96, -108, -10, 45, -29, -83, 113, 115, -49, -6, -20, -= 112, 0, 40, 70, -126, -87, -99, -14, -106, -96, 114, 65, 65, -65, -58, -87,= 21, 3, -17, -29, 13, -53, -76, 41, 87, 12, -83, 27, -11, -43, 4, 66, -87, = 116, 23, -28, 11, -52, 6, -67, -3, 54, 79, 60, -26, -76, -10, 32, 23, -2, 4= 2, 30, 66, 26, 91, -125}; > +int8_t var_80 =3D 118; > +int8_t var_79 =3D -73; > +uint8_t var_78 =3D 99u; > +uint8_t var_77 =3D 17u; > +size_t var_76 =3D 24u; > +uint8_t var_75 =3D 204u; > +int8_t var_74 =3D 17; > +int32_t var_73 =3D -305525697; > +uint8_t var_72 =3D 9u; > +int8_t var_71 =3D 5; > +int8_t var_70 =3D -5; > +int8_t var_69 =3D 126; > +__riscv_vsetvl_e8m8(120); > +vint8m8_t var_0 =3D __riscv_vle8_v_i8m8(var_119, 120); > +// -52, 85, -58, 27, 110, -67, -54, 4, -100, 95, -74, -42, -123, -17, -7= 1, -112, 119, -22, -4, -77, -118, -10, 30, -74, 0, 103, -122, 124, 59, -99,= 78, -46, -52, 94, 14, -74, -97, 25, -59, 3, 68, -15, -60, 83, 80, -113, -9= 0, -118, 7, -38, -57, -114, 88, -76, 8, 44, 45, 12, -27, 83, 43, 77, -93, 7= 9, 6, -17, 93, 33, 22, 6, 113, -5, -13, 20, -106, -36, -57, -21, -127, -89,= 102, -62, -92, -124, 73, 118, 41, -120, 94, -100, 13, -34, -86, -103, 26, = -57, -16, 22, -48, -71, 15, 40, 27, -125, -94, -93, -93, -3, -33, 60, 15, -= 29, -16, 70, -15, 30, 108, -105, 30, -65 > + > +__riscv_vsetvl_e8mf2(8); > +vuint8mf2_t var_21 =3D __riscv_vle8_v_u8mf2(var_118, 8); > +// 197, 206, 42, 228, 104, 250, 255, 186 > + > +vuint8mf2_t var_22 =3D __riscv_vle8_v_u8mf2(var_117, 8); > +// 72, 6, 85, 22, 128, 73, 137, 137 > + > +vint8mf2_t var_23 =3D __riscv_vle8_v_i8mf2(var_116, 8); > +// -120, -102, 100, 49, -110, -76, -69, -31 > + > +vfloat64m4_t var_26 =3D __riscv_vle64_v_f64m4(var_115, 8); > +// 4.6405235952544706e-287, 2.796915483405209e-234, 1.683358637102254e+1= 50, 4.864756940016232e-253, -5.6687651516926024e-180, -1.1703726495306743e-= 79, 2.1797047987439956e-39, -1.7434285356776356e+43 > + > +vfloat64m4_t var_27 =3D __riscv_vle64_v_f64m4(var_114, 8); > +// 2.509669398494079e+137, 1.2060594553171986e+47, 1.2334815861468122e-2= 61, -6.478620247525537e-209, 2.967271500782844e-215, 3.089416451843403e-140= , 2.258590162692108e-146, 1.061330842742021e+285 > + > +vuint32m2_t var_28 =3D __riscv_vle32_v_u32m2(var_113, 8); > +// 2501167418, 4078952301, 1289692095, 3288851377, 1031645594, 245441803= 8, 4057122694, 4195826215 > + > +vuint32m2_t var_29 =3D __riscv_vle32_v_u32m2(var_112, 8); > +// 997394066, 745676460, 1302867668, 2496350675, 681303275, 2256531569, = 197606396, 782587620 > + > +vint32m2_t var_30 =3D __riscv_vle32_v_i32m2(var_111, 8); > +// -1370843403, -1083808177, -2046227556, 1248210267, -995484329, 165763= 6018, 139507966, -406999593 > + > +__riscv_vsetvl_e8m8(31); > +vint8m8_t var_32 =3D __riscv_vle8_v_i8m8(var_110, 31); > +// 41, 69, -57, 102, 86, 103, -128, 4, -118, -1, 109, 40, 7, 27, 79, -63= , 35, 73, 1, 42, -85, 126, 107, 53, -114, 39, 53, 10, -94, -20, 125 > + > +vint8m8_t var_34 =3D __riscv_vle8_v_i8m8(var_108, 31); > +// -50, -3, -122, 11, -110, -106, -120, -117, -27, 49, 99, -33, 2, -37, = -91, -10, 101, -24, -95, -24, 115, 84, -114, 67, 27, -44, -122, -28, 108, 1= 07, 41 > + > +vint8m8_t var_35 =3D __riscv_vle8_v_i8m8(var_107, 31); > +// -78, 56, -90, 72, 16, 80, -71, -95, 3, 65, -116, 44, 54, 69, 22, -23,= -10, 79, -1, 31, 114, 87, -57, -65, -61, 15, 32, 68, 76, 1, -46 > + > +__riscv_vsetvl_e8m8(98); > +vuint8m8_t var_36 =3D __riscv_vle8_v_u8m8(var_106, 98); > +// 53, 28, 220, 181, 243, 150, 238, 37, 119, 182, 29, 252, 15, 156, 34, = 201, 75, 149, 173, 112, 255, 58, 51, 176, 22, 103, 44, 150, 225, 31, 190, 7= 0, 125, 112, 57, 3, 191, 131, 48, 89, 168, 58, 104, 228, 15, 80, 128, 101, = 161, 132, 24, 17, 113, 126, 25, 23, 93, 18, 241, 203, 255, 142, 113, 233, 1= 29, 137, 248, 173, 40, 23, 161, 100, 242, 77, 206, 18, 162, 57, 44, 215, 2,= 43, 61, 116, 166, 21, 188, 74, 234, 245, 45, 44, 17, 240, 46, 58, 89, 254 > + > +vuint8m8_t var_37 =3D __riscv_vle8_v_u8m8(var_105, 98); > +// 209, 83, 95, 215, 76, 0, 235, 22, 155, 169, 210, 242, 234, 53, 32, 12= 6, 93, 184, 196, 33, 22, 134, 227, 172, 199, 228, 214, 157, 66, 115, 127, 2= 21, 124, 108, 92, 162, 252, 129, 63, 134, 158, 250, 204, 112, 21, 16, 226, = 178, 92, 168, 144, 59, 51, 112, 132, 84, 199, 149, 212, 177, 93, 15, 191, 3= 4, 226, 61, 116, 240, 144, 157, 35, 0, 253, 152, 16, 130, 93, 228, 212, 34,= 175, 77, 11, 228, 138, 216, 215, 154, 16, 55, 130, 241, 70, 88, 202, 232, = 167, 227 > + > +__riscv_vsetvl_e8m8(38); > +vint8m8_t var_39 =3D __riscv_vle8_v_i8m8(var_103, 38); > +// 44, 40, 108, -73, 76, -34, -25, 4, 54, 94, -10, -29, 12, 116, -121, -= 32, 30, 61, 127, 16, -34, -95, -90, 124, -4, 12, 124, 18, 123, -37, -56, -1= 19, 9, 12, 57, 30, -20, 29 > + > +vint8m8_t var_40 =3D __riscv_vle8_v_i8m8(var_102, 38); > +// -58, -3, 95, -113, -26, 109, 85, 110, -122, -108, 101, -113, 126, 80,= -87, 88, 60, 124, -63, -128, -21, 118, 81, 124, 60, -103, 127, 70, 57, -19= , 53, 51, -120, 33, -64, 119, 43, -34 > + > +__riscv_vsetvl_e8m8(31); > +vint8m8_t var_43 =3D __riscv_vle8_v_i8m8(var_100, 31); > +// 46, 12, 5, 10, 55, 46, -54, -96, -12, -10, 121, -30, -5, 60, -76, -51= , -87, 107, -54, -18, 112, -64, 46, 120, -5, -119, 30, -48, -51, 53, 108 > + > +vuint8m8_t var_44 =3D __riscv_vle8_v_u8m8(var_99, 31); > +// 130, 12, 38, 148, 237, 176, 183, 136, 155, 156, 201, 58, 26, 167, 105= , 117, 25, 125, 29, 163, 29, 169, 151, 180, 73, 173, 94, 121, 183, 48, 208 > + > +vuint8m8_t var_45 =3D __riscv_vle8_v_u8m8(var_98, 31); > +// 106, 19, 146, 9, 203, 31, 179, 218, 11, 232, 232, 222, 18, 225, 23, 4= 2, 106, 243, 33, 148, 255, 162, 155, 141, 69, 223, 200, 252, 15, 137, 148 > + > +__riscv_vsetvl_e8m8(120); > +vuint8m8_t var_48 =3D __riscv_vle8_v_u8m8(var_97, 120); > +// 169, 101, 247, 228, 25, 209, 126, 155, 250, 136, 194, 138, 145, 248, = 73, 129, 113, 84, 187, 38, 199, 246, 203, 87, 216, 198, 112, 192, 134, 171,= 42, 93, 133, 7, 224, 21, 201, 53, 23, 53, 115, 218, 190, 133, 200, 46, 173= , 144, 159, 21, 11, 146, 13, 76, 255, 107, 126, 108, 27, 163, 113, 57, 85, = 237, 243, 47, 242, 40, 206, 107, 191, 11, 34, 210, 143, 214, 164, 192, 59, = 144, 78, 91, 2, 105, 109, 58, 63, 204, 39, 66, 158, 135, 205, 68, 114, 10, = 233, 113, 181, 184, 16, 170, 226, 212, 91, 136, 41, 159, 143, 78, 26, 246, = 63, 221, 192, 150, 238, 128, 128, 46 > + > +vint8m8_t var_49 =3D __riscv_vle8_v_i8m8(var_96, 120); > +// -4, -35, -62, -104, -17, -25, -117, 125, -44, 20, 37, 46, 40, -95, 41= , 70, 1, 71, -35, -60, 107, -68, 102, -102, -71, 52, 34, -111, -120, 107, -= 56, -103, 77, -63, -48, 90, 46, -111, -68, -38, 3, -110, 104, 82, -85, -102= , 63, 54, 85, -7, 38, -36, 70, -95, 99, -78, 33, -86, 109, 2, -45, -83, -90= , 16, -43, 101, -99, -32, -97, 73, -28, 90, -103, -34, -107, -51, 126, -98,= -11, 0, 41, -83, 92, -10, -38, 97, -65, -27, -92, 17, 127, -127, 81, -6, -= 45, -38, -48, 30, 33, 35, 106, -44, 122, -8, 84, 1, -13, -67, -78, 90, -68,= 92, 97, -103, -68, -17, 10, 28, -54, 9 > + > +vint8m8_t var_50 =3D __riscv_vle8_v_i8m8(var_95, 120); > +// -90, -98, -55, 68, -7, -5, -21, -60, 92, -66, 103, 39, -50, 35, -28, = -110, -23, 114, -40, -125, -123, -83, -59, 33, -56, 56, -19, -15, 33, 69, -= 76, -28, 97, 107, 55, -126, 61, 25, -69, 44, 65, -61, 14, -62, -121, -82, -= 106, -28, 17, 109, 66, -114, 74, -40, -94, 69, 19, -96, 88, -59, -68, -86, = -97, -6, -107, 27, 26, 10, 95, -9, 80, -80, 19, -31, 102, 29, 37, -88, -86,= 38, 59, 77, 110, 101, -126, -1, -28, -96, -25, 74, 76, 48, 77, 127, 100, 8= 2, -64, 50, 22, -87, -17, 122, 106, 65, 36, 121, -38, 20, 123, -118, 0, -12= 4, 30, 122, 79, -91, 107, -126, -113, -126 > + > +vint8m8_t var_51 =3D __riscv_vle8_v_i8m8(var_94, 120); > +// -16, 42, -87, 90, 66, -72, 84, -76, -107, 14, -58, 48, 86, 89, -10, -= 122, -2, 39, 42, 124, 120, 105, 100, -121, 20, 56, -25, 65, 57, -30, -109, = 8, 22, -52, 126, -30, -6, 101, -22, -14, 41, 41, 118, -124, -83, -42, 47, -= 105, -10, -34, -83, 25, 66, 125, -17, 125, -41, 69, 116, 39, -73, -76, -44,= 107, -32, -90, 86, 108, -101, 35, 100, 55, 2, -123, 87, -57, 6, -120, -93,= -45, -115, -37, -18, 3, -9, -41, 64, 79, 0, -109, 15, 86, 28, -98, 118, -9= 5, 36, 71, -123, -14, 68, 120, 118, -123, 118, 54, -59, 63, 118, 6, -1, -48= , 32, 84, -76, -67, 67, 101, -61, -3 > + > +vint8m8_t var_53 =3D __riscv_vle8_v_i8m8(var_93, 120); > +// 60, -103, -44, 107, -43, -39, -85, -107, 72, 37, 1, -30, 3, 77, 110, = -21, -1, -69, -4, 55, 63, -104, -12, 107, 122, 79, -62, -38, 21, 24, -52, -= 34, -94, 67, -127, 0, 74, 93, -85, -12, -15, -10, 65, -89, -104, 122, 19, -= 29, -78, -12, 104, 121, 73, -111, -40, -57, 82, -74, -72, 54, -102, 105, 54= , -106, 39, 127, -67, -53, -59, -3, 67, 55, -40, 11, 114, -59, -57, -123, -= 28, -8, -106, -65, -37, 33, 54, 96, 66, -27, -37, -47, 35, -55, 52, 102, 11= 0, 107, 107, 89, 107, 93, 3, -6, 84, 113, -82, 57, 17, -3, 59, -125, -17, 4= 7, -93, -80, -99, 111, -125, 18, 36, 75 > + > +vint8m8_t var_54 =3D __riscv_vle8_v_i8m8(var_92, 120); > +// -90, 39, -97, 115, -95, -84, -45, -93, -13, -1, -119, -61, 125, -78, = -3, -35, 19, 28, -109, 83, -10, 103, -77, -13, -17, 91, -108, -64, -106, 49= , 75, 85, 63, -49, -41, 102, 103, -22, 43, -29, -79, -45, -63, 9, -85, -92,= 66, 23, 88, 29, -16, -35, 14, 62, -79, 26, -83, 38, 88, -103, -39, 84, -2,= 125, 20, -15, -68, -31, -104, -99, -2, -125, -36, -101, -101, -89, 58, -1,= -127, 124, 19, 1, 94, 30, 102, -43, 56, 26, 89, 121, 61, -7, 92, 109, 108,= 5, -93, -123, 43, -23, -42, 76, -89, -95, -14, -91, 43, 98, 104, -53, 9, 7= 7, 36, 113, -6, -100, 98, 84, 75, 35 > + > +vint8m8_t var_55 =3D __riscv_vle8_v_i8m8(var_91, 120); > +// 90, -121, -65, 27, -14, 45, 4, -40, -70, -94, 20, 70, -121, -49, -23,= 16, 124, -65, -74, 104, 77, 47, 71, 80, -35, -123, 59, -94, -43, -4, 127, = -33, 88, 2, 53, 22, 101, -21, -10, -15, -41, 126, 66, 108, 27, 117, 1, -83,= 89, 109, 114, -31, -107, 27, -77, 101, 16, 88, 93, -74, 99, -11, 32, -35, = 124, 31, 118, 124, -87, 4, 13, -64, -26, -98, -10, 8, -101, -37, 121, 28, 1= , 49, 36, 97, 29, -3, 65, 28, -96, 72, -67, -92, 126, -15, 53, -90, -124, 1= 1, 59, -91, -127, -112, -111, 125, 98, 51, 45, -127, -115, 13, -107, 25, 28= , 74, -53, 76, -28, 108, 18, -94 > + > +vint8m8_t var_56 =3D __riscv_vle8_v_i8m8(var_90, 120); > +// 11, 85, -127, 49, 107, -37, 66, 124, 60, -100, 5, 79, 15, -91, 56, -5= 2, -115, 112, -28, -128, -43, -48, 77, 106, 17, 81, 118, 29, -120, -20, 44,= 75, 81, -54, -4, -17, 82, 44, 92, 8, -106, 54, 32, -105, -32, 53, -102, -7= 9, 89, -100, -80, -118, 35, 13, -47, 25, 111, -59, -50, 19, -47, -83, 52, -= 79, -1, 90, 120, -46, 42, 97, -76, 43, -16, -127, 94, 112, -14, -22, -86, 1= 20, -116, 124, 108, 82, -99, 54, 84, -92, 38, 33, 46, -3, 0, -78, -92, -52,= 63, -29, 55, -90, -26, -117, 125, 63, 113, 110, 71, -92, -13, -118, 53, 53= , 123, -83, 122, -76, 44, 21, 32, -34 > + > +__riscv_vsetvl_e8m8(9); > +vint8m8_t var_57 =3D __riscv_vle8_v_i8m8(var_89, 9); > +// -75, -70, 31, 76, 120, 116, -76, 95, -96 > + > +__riscv_vsetvl_e8m8(120); > +vuint8m8_t var_59 =3D __riscv_vle8_v_u8m8(var_87, 120); > +// 120, 177, 163, 176, 160, 16, 235, 224, 168, 198, 166, 121, 182, 42, 1= 13, 93, 16, 123, 174, 42, 43, 205, 132, 40, 88, 190, 96, 11, 144, 187, 111,= 246, 235, 75, 163, 20, 163, 231, 163, 94, 30, 186, 167, 88, 123, 130, 230,= 8, 203, 208, 222, 231, 25, 143, 40, 176, 44, 182, 75, 184, 167, 143, 237, = 182, 235, 32, 81, 127, 85, 219, 38, 4, 45, 117, 219, 234, 11, 231, 103, 33,= 199, 214, 100, 166, 23, 64, 37, 234, 59, 81, 111, 100, 241, 204, 159, 44, = 196, 60, 92, 90, 30, 61, 252, 45, 8, 121, 139, 4, 144, 113, 39, 28, 194, 22= 7, 98, 82, 237, 15, 44, 96 > + > +__riscv_vsetvl_e8m8(98); > +vuint8m8_t var_61 =3D __riscv_vle8_v_u8m8(var_86, 98); > +// 98, 184, 61, 239, 240, 91, 79, 194, 158, 234, 4, 89, 239, 124, 241, 2= 45, 124, 143, 92, 94, 84, 167, 223, 198, 177, 178, 246, 91, 22, 131, 231, 1= 2, 206, 85, 215, 46, 58, 146, 2, 225, 251, 206, 200, 104, 78, 12, 189, 38, = 186, 162, 194, 48, 75, 42, 131, 81, 195, 207, 58, 209, 239, 164, 207, 113, = 87, 198, 201, 40, 195, 146, 5, 8, 254, 248, 61, 44, 254, 195, 254, 100, 109= , 142, 156, 197, 78, 169, 121, 72, 158, 31, 39, 235, 141, 48, 205, 242, 109= , 113 > + > +vuint8m8_t var_62 =3D __riscv_vle8_v_u8m8(var_85, 98); > +// 128, 227, 109, 98, 165, 57, 151, 127, 141, 112, 125, 27, 13, 104, 216= , 83, 225, 180, 211, 113, 32, 194, 151, 47, 81, 223, 51, 145, 133, 6, 120, = 56, 252, 40, 47, 145, 214, 159, 80, 253, 16, 33, 36, 69, 82, 20, 222, 113, = 144, 68, 204, 207, 7, 128, 142, 38, 3, 142, 149, 25, 91, 91, 153, 64, 227, = 135, 222, 165, 120, 56, 120, 249, 233, 100, 204, 127, 200, 213, 145, 193, 2= 37, 3, 204, 214, 116, 115, 251, 64, 45, 52, 72, 5, 188, 219, 228, 36, 238, = 195 > + > +__riscv_vsetvl_e8m8(120); > +vint8m8_t var_65 =3D __riscv_vle8_v_i8m8(var_83, 120); > +// 97, 57, 34, -38, 36, -74, -60, 124, -6, 0, -40, 53, 75, -72, -69, -52= , 115, -49, -115, -101, -7, 107, -37, 7, -55, 7, 39, -16, -7, -34, -44, -31= , -126, -82, -7, -43, 109, -93, 103, 90, 114, -127, 125, -95, -1, 61, 109, = -118, 21, 6, -81, 87, 79, -73, -89, 5, 93, 92, -52, 86, 11, 99, 91, 2, 88, = -38, 110, 17, -27, -93, 124, 85, 34, 46, -101, 35, 58, 47, -29, 49, -12, 26= , -1, 64, 27, 96, -77, 109, -127, -106, -46, -109, -37, 111, -116, -53, 126= , 67, 32, 62, 56, -42, -123, 119, -28, 11, -49, -29, -74, -95, 39, -50, -12= 3, 13, -12, 56, -89, 74, -64, -111 > + > +__riscv_vsetvl_e8m8(98); > +vint8m8_t var_67 =3D __riscv_vle8_v_i8m8(var_82, 98); > +// 110, -40, -24, 36, -44, 2, 46, -123, -3, -47, 61, 100, 35, 101, 67, 4= 7, -1, 125, -71, 67, 81, -108, -16, 15, -71, -66, 19, -68, -101, 42, -51, 6= 4, 54, 106, 64, 9, -26, -25, -63, -13, -23, -72, 19, -36, -16, 69, -89, 80,= 92, 44, -110, 1, 59, -23, 84, 87, -120, -108, 69, 93, 122, 47, -37, 9, 28,= -65, 37, -59, -95, -76, 78, 32, 100, 17, 108, -70, -115, -118, 16, 43, 11,= 40, -40, 39, 71, -51, 14, 19, -38, 33, 44, 49, -19, 8, 95, 70, -93, -87 > + > +vint8m8_t var_68 =3D __riscv_vle8_v_i8m8(var_81, 98); > +// -88, -43, 94, -41, -57, 97, -45, -100, 35, 17, -101, -117, 70, 26, -1= 4, 14, 69, 67, -27, 120, -71, 73, 79, 124, 100, -80, 67, 105, -72, 82, -42,= -96, -108, -10, 45, -29, -83, 113, 115, -49, -6, -20, -112, 0, 40, 70, -12= 6, -87, -99, -14, -106, -96, 114, 65, 65, -65, -58, -87, 21, 3, -17, -29, 1= 3, -53, -76, 41, 87, 12, -83, 27, -11, -43, 4, 66, -87, 116, 23, -28, 11, -= 52, 6, -67, -3, 54, 79, 60, -26, -76, -10, 32, 23, -2, 42, 30, 66, 26, 91, = -125 > + > +__riscv_vsetvl_e8mf2(8); > +vbool16_t var_20 =3D __riscv_vmadc_vx_i8mf2_b16(var_23, var_74, 8); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +vbool16_t var_25 =3D __riscv_vmsleu_vv_u32m2_b16(var_28, var_29, 8); > +// 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +vbool16_t var_24 =3D __riscv_vmsge_vx_i32m2_b16(var_30, var_73, 8); > +// 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8m8(31); > +vbool1_t var_31 =3D __riscv_vmsne_vv_i8m8_b1(var_34, var_35, 31); > +// 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1 > + > +vbool1_t var_42 =3D __riscv_vmsltu_vx_u8m8_b1(var_45, var_72, 31); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8m8(120); > +vbool1_t var_47 =3D __riscv_vmseq_vv_i8m8_b1(var_49, var_50, 120); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +vbool1_t var_46 =3D __riscv_vmsne_vx_i8m8_b1(var_51, var_71, 120); > +// 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 > + > +vbool1_t var_52 =3D __riscv_vmsbc_vv_i8m8_b1(var_55, var_56, 120); > +// 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, = 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, = 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, = 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, = 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1 > + > +__riscv_vsetvl_e8m8(98); > +vbool1_t var_60 =3D __riscv_vmseq_vv_u8m8_b1(var_61, var_62, 98); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8m8(120); > +vbool1_t var_63 =3D __riscv_vmadc_vx_i8m8_b1(var_65, var_70, 120); > +// 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 > + > +__riscv_vsetvl_e8m8(98); > +vbool1_t var_66 =3D __riscv_vmseq_vx_i8m8_b1(var_68, var_69, 98); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8mf2(8); > +vuint8mf2_t var_19 =3D __riscv_vasubu_vx_u8mf2_tumu(var_20, var_21, var_= 22, var_75, 8); > +// 197, 206, 42, 228, 104, 250, 255, 186 > + > +vbool16_t var_18 =3D __riscv_vmfle_vv_f64m4_b16_mu(var_24, var_25, var_2= 6, var_27, 8); > +// 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8m8(120); > +vbool1_t var_11 =3D __riscv_vmsne_vx_u8m8_b1_mu(var_46, var_47, var_48, = var_78, 120); > +// 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 > + > +vint8m8_t var_10 =3D __riscv_vdiv_vx_i8m8_tumu(var_52, var_53, var_54, v= ar_79, 120); > +// 60, -103, -44, -1, -43, 1, 0, -107, 72, 37, 1, 0, 3, 77, 110, 0, 0, -= 69, 1, -1, 0, -1, 1, 0, 122, 79, 1, -38, 21, 24, -52, -34, -94, 0, 0, -1, 7= 4, 93, -85, -12, -15, -10, 65, 0, 1, 122, 0, 0, -78, 0, 0, 121, 73, -111, 1= , -57, 1, 0, -1, 54, 0, 105, 0, -106, 0, 0, 0, 0, -59, 1, 0, 55, 0, 11, 114= , 1, 0, 0, 1, -1, 0, 0, -1, 33, -1, 96, 0, 0, -37, -47, 35, 0, 52, 102, -1,= 0, 107, 1, 107, 0, 0, -6, 84, 113, 0, 1, 0, -1, -1, 0, -17, -1, 0, -1, -99= , 1, -125, 18, -1, 0 > + > +__riscv_vsetvl_e8mf2(8); > +vuint8mf2_t var_15 =3D __riscv_vmulhu_vv_u8mf2_tumu(var_18, var_19, var_= 19, var_19, 8); > +// 197, 206, 6, 228, 104, 244, 255, 186 > + > +__riscv_vsetvl_e8m8(98); > +vint8m8_t var_3 =3D __riscv_vnmsub_vv_i8m8_tumu(var_66, var_0, var_10, v= ar_67, 98); > +// -52, 85, -58, 27, 110, -67, -54, 4, -100, 95, -74, -42, -123, -17, -7= 1, -112, 119, -22, -4, -77, -118, -10, 30, -74, 0, 103, -122, 124, 59, -99,= 78, -46, -52, 94, 14, -74, -97, 25, -59, 3, 68, -15, -60, 83, 80, -113, -9= 0, -118, 7, -38, -57, -114, 88, -76, 8, 44, 45, 12, -27, 83, 43, 77, -93, 7= 9, 6, -17, 93, 33, 22, 6, 113, -5, -13, 20, -106, -36, -57, -21, -127, -89,= 102, -62, -92, -124, 73, 118, 41, -120, 94, -100, 13, -34, -86, -103, 26, = -57, -16, 22, -48, -71, 15, 40, 27, -125, -94, -93, -93, -3, -33, 60, 15, -= 29, -16, 70, -15, 30, 108, -105, 30, -65 > + > +int8_t var_7 =3D __riscv_vmv_x_s_i8m8_i8(var_10); > +// 60 > + > +__riscv_vsetvl_e8m8(120); > +vint8m8_t var_2 =3D __riscv_vrem_vv_i8m8_tumu(var_11, var_10, var_10, va= r_10, 120); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8mf2(8); > +uint8_t var_13 =3D __riscv_vmv_x_s_u8mf2_u8(var_15); > +// 197 > + > +__riscv_vsetvl_e8m8(31); > +vint8m8_t var_12 =3D __riscv_vsll_vv_i8m8_tumu(var_42, var_3, var_43, va= r_44, 31); > +// -52, 85, -58, 27, 110, -67, -54, 4, -100, 95, -74, -42, -123, -17, -7= 1, -112, 119, -22, -4, -77, -118, -10, 30, -74, 0, 103, -122, 124, 59, -99,= 78, -46, -52, 94, 14, -74, -97, 25, -59, 3, 68, -15, -60, 83, 80, -113, -9= 0, -118, 7, -38, -57, -114, 88, -76, 8, 44, 45, 12, -27, 83, 43, 77, -93, 7= 9, 6, -17, 93, 33, 22, 6, 113, -5, -13, 20, -106, -36, -57, -21, -127, -89,= 102, -62, -92, -124, 73, 118, 41, -120, 94, -100, 13, -34, -86, -103, 26, = -57, -16, 22, -48, -71, 15, 40, 27, -125, -94, -93, -93, -3, -33, 60, 15, -= 29, -16, 70, -15, 30, 108, -105, 30, -65 > + > +__riscv_vsetvl_e8m8(98); > +vint8m8_t var_5 =3D __riscv_vsbc_vxm_i8m8(var_3, var_7, var_60, 98); > +// -112, 25, -118, -33, 50, -127, -114, -56, 96, 35, 122, -102, 73, -77,= 125, 84, 59, -82, -64, 119, 78, -70, -30, 122, -60, 43, 74, 64, -1, 97, 18= , -106, -112, 34, -46, 122, 99, -35, -119, -57, 8, -75, -120, 23, 20, 83, 1= 06, 78, -53, -98, -117, 82, 28, 120, -52, -16, -15, -48, -87, 23, -17, 17, = 103, 19, -54, -77, 33, -27, -38, -54, 53, -65, -73, -40, 90, -96, -117, -81= , 69, 107, 42, -122, 104, 72, 13, 58, -19, 76, 34, 96, -47, -94, 110, 93, -= 34, -117, -76, -38 > + > +__riscv_vsetvl_e8m8(120); > +vint8m8_t var_1 =3D __riscv_vxor_vv_i8m8_tumu(var_11, var_0, var_2, var_= 2, 120); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +vuint8m8_t var_8 =3D __riscv_vasubu_vx_u8m8(var_59, var_13, 120); > +// 218, 246, 239, 246, 238, 166, 19, 14, 242, 1, 241, 218, 249, 179, 214= , 204, 166, 219, 245, 179, 179, 4, 224, 178, 202, 253, 206, 163, 230, 251, = 213, 25, 19, 195, 239, 168, 239, 17, 239, 205, 173, 251, 241, 202, 219, 223= , 17, 162, 3, 6, 13, 17, 170, 229, 178, 246, 180, 249, 195, 250, 241, 229, = 20, 249, 19, 174, 198, 221, 200, 11, 177, 160, 180, 216, 11, 19, 163, 17, 2= 09, 174, 1, 9, 208, 241, 169, 190, 176, 19, 187, 198, 213, 208, 22, 4, 237,= 180, 0, 188, 204, 203, 173, 188, 28, 180, 162, 218, 227, 160, 230, 214, 17= 7, 172, 255, 15, 207, 199, 20, 165, 180, 206 > + > +__riscv_vsetvl_e8m8(31); > +vint8m8_t var_17 =3D __riscv_vssra_vx_i8m8_tumu(var_31, var_12, var_32, = var_76, 31); > +// 41, 69, -57, 102, 86, 103, -128, 4, -118, -1, 109, 40, 7, 27, 79, -63= , 35, 73, 1, 42, -85, 126, 107, 53, -114, 39, 53, 10, -94, -20, 125, -46, -= 52, 94, 14, -74, -97, 25, -59, 3, 68, -15, -60, 83, 80, -113, -90, -118, 7,= -38, -57, -114, 88, -76, 8, 44, 45, 12, -27, 83, 43, 77, -93, 79, 6, -17, = 93, 33, 22, 6, 113, -5, -13, 20, -106, -36, -57, -21, -127, -89, 102, -62, = -92, -124, 73, 118, 41, -120, 94, -100, 13, -34, -86, -103, 26, -57, -16, 2= 2, -48, -71, 15, 40, 27, -125, -94, -93, -93, -3, -33, 60, 15, -29, -16, 70= , -15, 30, 108, -105, 30, -65 > + > +__riscv_vsetvl_e8m8(98); > +vbool1_t var_6 =3D __riscv_vmseq_vv_i8m8_b1(var_5, var_10, 98); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8m8(120); > +vint8m8_t var_4 =3D __riscv_vssra_vv_i8m8_tumu(var_63, var_1, var_10, va= r_8, 120); > +// 15, -2, 0, 0, -1, 0, 0, -2, 18, 0, 1, 0, 2, 10, 2, 0, 0, -9, 0, 0, 0,= 0, 1, 0, 31, 2, 0, -5, 0, 3, -2, -17, -12, 0, 0, -1, 1, 47, -1, 0, 0, -1, = 33, 0, 0, 1, 0, 0, -10, 0, 0, 61, 18, -3, 0, -1, 0, 0, 0, 14, 0, 3, 0, 0, 0= , 0, 0, 0, -59, 0, 0, 55, 0, 11, 14, 0, 0, 0, 1, 0, 0, 0, -1, 17, 0, 2, 0, = 0, -5, -1, 1, 0, 1, 6, 0, 0, 107, 0, 7, 0, 0, 0, 5, 7, 0, 0, 0, -1, 0, 0, -= 8, 0, 0, 0, -1, 0, -8, 1, 0, 0 > + > +__riscv_vsetvl_e8m8(31); > +__riscv_vse8_v_i8m8(var_109, var_17, 31); > +__riscv_vsetvl_e8m8(9); > +vint8m8_t var_9 =3D __riscv_vmacc_vx_i8m8_tumu(var_6, var_10, var_80, va= r_57, 9); > +// 60, -103, -44, -1, -43, 1, 0, -107, 72, 37, 1, 0, 3, 77, 110, 0, 0, -= 69, 1, -1, 0, -1, 1, 0, 122, 79, 1, -38, 21, 24, -52, -34, -94, 0, 0, -1, 7= 4, 93, -85, -12, -15, -10, 65, 0, 1, 122, 0, 0, -78, 0, 0, 121, 73, -111, 1= , -57, 1, 0, -1, 54, 0, 105, 0, -106, 0, 0, 0, 0, -59, 1, 0, 55, 0, 11, 114= , 1, 0, 0, 1, -1, 0, 0, -1, 33, -1, 96, 0, 0, -37, -47, 35, 0, 52, 102, -1,= 0, 107, 1, 107, 0, 0, -6, 84, 113, 0, 1, 0, -1, -1, 0, -17, -1, 0, -1, -99= , 1, -125, 18, -1, 0 > + > +__riscv_vsetvl_e8m8(38); > +vint8m8_t var_14 =3D __riscv_vmerge_vvm_i8m8(var_39, var_40, var_6, 38); > +// 44, 40, 108, -73, 76, -34, -25, 4, 54, 94, -10, -29, 12, 116, -121, -= 32, 30, 61, 127, 16, -34, -95, -90, 124, -4, 12, 124, 18, 123, -37, -56, -1= 19, 9, 12, 57, 30, -20, 29 > + > +__riscv_vsetvl_e8m8(98); > +vuint8m8_t var_16 =3D __riscv_vslide1down_vx_u8m8_tumu(var_6, var_36, va= r_37, var_77, 98); > +// 53, 28, 220, 181, 243, 150, 238, 37, 119, 182, 29, 252, 15, 156, 34, = 201, 75, 149, 173, 112, 255, 58, 51, 176, 22, 103, 44, 150, 225, 31, 190, 7= 0, 125, 112, 57, 3, 191, 131, 48, 89, 168, 58, 104, 228, 15, 80, 128, 101, = 161, 132, 24, 17, 113, 126, 25, 23, 93, 18, 241, 203, 255, 142, 113, 233, 1= 29, 137, 248, 173, 40, 23, 161, 100, 242, 77, 206, 18, 162, 57, 44, 215, 2,= 43, 61, 116, 166, 21, 188, 74, 234, 245, 45, 44, 17, 240, 46, 58, 89, 254 > + > +__riscv_vsetvl_e8m8(120); > +__riscv_vse8_v_i8m8(var_84, var_4, 120); > +if(!check(var_109, var_121, var_122)) {cerr << "check 120 fails" << endl= ; return_value =3D 1;} > +__riscv_vsetvl_e8m8(9); > +__riscv_vse8_v_i8m8(var_88, var_9, 9); > +__riscv_vsetvl_e8m8(38); > +__riscv_vse8_v_i8m8(var_101, var_14, 38); > +__riscv_vsetvl_e8m8(98); > +__riscv_vse8_v_u8m8(var_104, var_16, 98); > +if(!check(var_84, var_133, var_134)) {cerr << "check 132 fails" << endl;= return_value =3D 1;} > +if(!check(var_88, var_130, var_131)) {cerr << "check 129 fails" << endl;= return_value =3D 1;} > +if(!check(var_101, var_127, var_128)) {cerr << "check 126 fails" << endl= ; return_value =3D 1;} > +if(!check(var_104, var_124, var_125)) {cerr << "check 123 fails" << endl= ; return_value =3D 1;} > +if (return_value) > + __builtin_abort (); > +return return_value; > +} > diff --git a/gcc/testsuite/g++.target/riscv/rvv/base/bug-17.C b/gcc/tests= uite/g++.target/riscv/rvv/base/bug-17.C > new file mode 100644 > index 00000000000..816e703f87b > --- /dev/null > +++ b/gcc/testsuite/g++.target/riscv/rvv/base/bug-17.C > @@ -0,0 +1,406 @@ > +/* { dg-do run } */ > +/* { dg-options "-O2" } */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +using std::addressof; > +using std::cerr; > +using std::endl; > +using std::int8_t; > +using std::int16_t; > +using std::int32_t; > +using std::int64_t; > +using std::uint8_t; > +using std::uint16_t; > +using std::uint32_t; > +using std::uint64_t; > +using std::ptrdiff_t; > +using std::size_t; > +using float16_t =3D _Float16; > +using float32_t =3D float; > +using float64_t =3D double; > + > +template > +constexpr T uint_to_float(T2 val) noexcept > +{ > + return *reinterpret_cast(&val); > +} > + > +constexpr const auto &f16(uint_to_float); > +constexpr const auto &f32(uint_to_float); > +constexpr const auto &f64(uint_to_float); > + > +template > +struct To_uint > +{ > + using type =3D std::conditional_t< > + sizeof(T) =3D=3D 1, uint8_t, std::conditional_t< > + sizeof(T) =3D=3D 2, uint16_t, std::conditional_t< > + sizeof(T) =3D=3D 4, uint32_t, std::conditional_t< > + sizeof(T) =3D=3D 8, uint64_t, void > + > > + > > + > > + >; > +}; > + > +// isnan() does not support half type > +template > +struct To_float > +{ > + using type =3D std::conditional_t< > + std::is_same::value, float, std::conditional_t< > + std::is_same::value, float, std::conditional_t< > + std::is_same::value, double, float > + > > + > > + >; > +}; > + > +template > +using To_uint_t =3D typename To_uint::type; > + > +template > +using To_isnan_float =3D typename To_float::type; > + > +template > +void print_float(std::ostream &os, T val) > +{ > + using std::setw; > + os << std::hex << std::setfill('0') << setw(sizeof(T) * 2) << *reinter= pret_cast*>(addressof(val)) << setw(0) << std::dec; > +} > + > +template > +bool __attribute__((noinline)) > +check(const T *a, const T *b, size_t size) > +{ > + bool rv =3D true; > + for (size_t i =3D 0; i < (size / sizeof(T)); ++i) { > + if (reinterpret_cast *>(a)[i] =3D=3D > + reinterpret_cast *>(b)[i]) > + continue; > + // floating negative zero =3D=3D positive zero > + if ((std::is_floating_point_v || std::is_same::valu= e) && > + (a[i] =3D=3D b[i])) > + continue; > + // if both result are NaN, return true > + if ((std::is_same::value || std::is_floating_point_v) && > + std::isnan(static_cast>(a[i])) && > + std::isnan(static_cast>(b[i]))) > + continue; > + > + if (std::is_same::value) { > + cerr << std::hex << std::setfill('0') << std::setw(sizeof(T) * 2) = << "[" > + << i > + << "] result/golden:" << reinterpret_cast = *>(a)[i] > + << " !=3D " << reinterpret_cast *>(b)[i] > + << std::setw(0) << std::dec << endl; > + } else if constexpr (std::is_floating_point_v) { > + cerr << "[" << i << "] result/golden:" << a[i] << "("; > + print_float(cerr, a[i]); > + cerr << ") !=3D " << b[i] << "("; > + print_float(cerr, b[i]); > + cerr << ")" << endl; > + } else if constexpr (std::is_unsigned_v) { > + cerr << "[" << i << "] result/golden: " << static_cast(= a[i]) > + << " !=3D " << static_cast(b[i]) << endl; > + } else { > + cerr << "[" << i << "] result/golden:" << static_cast(a[= i]) > + << " !=3D " << static_cast(b[i]) << endl; > + } > + rv =3D false; > + } > + return rv; > +} > + > +template > +bool __attribute__((noinline)) > +check(const T a, const T golden) > +{ > + return check(addressof(a), addressof(golden), sizeof(T)); > +} > + > +#if defined(__riscv_xsfvfhbfmin) || defined(__riscv_xsfvfwmaccqqq) > +#define vle16_v_bf16mf4(p, vl) vreinterpret_v_u16mf4_bf16mf4(vle16_v_u16= mf4(p, vl)) > +#define vle16_v_bf16mf2(p, vl) vreinterpret_v_u16mf2_bf16mf2(vle16_v_u16= mf2(p, vl)) > +#define vle16_v_bf16m1(p, vl) vreinterpret_v_u16m1_bf16m1(vle16_v_u16m1(= p, vl)) > +#define vle16_v_bf16m2(p, vl) vreinterpret_v_u16m2_bf16m2(vle16_v_u16m2(= p, vl)) > +#define vle16_v_bf16m4(p, vl) vreinterpret_v_u16m4_bf16m4(vle16_v_u16m4(= p, vl)) > +#define vle16_v_bf16m8(p, vl) vreinterpret_v_u16m8_bf16m8(vle16_v_u16m8(= p, vl)) > +#define __riscv_vse16_v_bf16mf4(p, v, vl) __riscv_vse16_v_u16mf4(p, vrei= nterpret_v_bf16mf4_u16mf4(v), vl) > +#define __riscv_vse16_v_bf16mf2(p, v, vl) __riscv_vse16_v_u16mf2(p, vrei= nterpret_v_bf16mf2_u16mf2(v), vl) > +#define __riscv_vse16_v_bf16m1(p, v, vl) __riscv_vse16_v_u16m1(p, vreint= erpret_v_bf16m1_u16m1(v), vl) > +#define __riscv_vse16_v_bf16m2(p, v, vl) __riscv_vse16_v_u16m2(p, vreint= erpret_v_bf16m2_u16m2(v), vl) > +#define __riscv_vse16_v_bf16m4(p, v, vl) __riscv_vse16_v_u16m4(p, vreint= erpret_v_bf16m4_u16m4(v), vl) > +#define __riscv_vse16_v_bf16m8(p,v , vl) __riscv_vse16_v_u16m8(p, vreint= erpret_v_bf16m8_u16m8(v), vl) > +#endif > + > +int main() > +{ > +int return_value =3D 0; > + > +size_t var_115 =3D 16u; > +uint16_t var_114 [] =3D {2331u, 50321u, 25359u, 51650u, 44823u, 43544u, = 34732u, 58047u}; > +size_t var_112 =3D 1u; > +int8_t var_111 [] =3D {-16}; > +size_t var_109 =3D 2u; > +uint16_t var_108 [] =3D {68u}; > +size_t var_106 =3D 2u; > +uint16_t var_105 [] =3D {30389u}; > +size_t var_103 =3D 8u; > +float64_t var_102 [] =3D {f64(4183473977970130944u)}; > +// 4.841275101341818e-29 > + > +size_t var_100 =3D 1u; > +int8_t var_99 [] =3D {-108}; > +uint16_t var_97 [] =3D {65012u, 55190u, 46514u, 28875u, 36594u, 43727u, = 7586u, 1367u}; > +int8_t var_96 [] =3D {-75, 96, 39, -9, -69, -46, 1, -22, 111, 11, -76, 5= 9, -24, 24, -1, 89}; > +uint16_t var_94 [] =3D {7u, 14u, 13u, 0u, 6u, 14u, 2u, 8u}; > +int8_t var_92 [] =3D {-108, 37, -34}; > +int8_t var_91 [] =3D {125, 112, -29}; > +int8_t var_90 [] =3D {-115, -124, 14}; > +int8_t var_89 [] =3D {66}; > +float32_t var_88 [] =3D {f32(2346361110u), f32(2274765554u), f32(4170636= 865u), f32(1255137954u), f32(770048131u)}; > +// -8.421292075547953e-32, -2.2594732521906944e-34, -2.4479761673212445e= +34, 6811985.0, 2.614819992474704e-11 > + > +float32_t var_87 [] =3D {f32(1690833471u), f32(1611751969u), f32(3039507= 657u), f32(1499035410u), f32(3666009633u)}; > +// 2.9525308674865006e+22, 4.190388786840365e+19, -6.377927661560534e-07= , 3825686821208064.0, -1.841799014383616e+16 > + > +uint64_t var_86 [] =3D {3425713696681443193u, 5039499209058164190u, 6049= 277984953311932u, 8873752123271114414u, 9754200587838842769u}; > +float64_t var_85 [] =3D {f64(2476498982022245897u)}; > +// 3.8813899938074913e-143 > + > +uint16_t var_84 [] =3D {19327u, 36695u, 50674u, 17467u}; > +uint16_t var_83 [] =3D {22045u, 32601u, 55272u, 26559u}; > +uint16_t var_82 [] =3D {3815u}; > +uint8_t var_81 [] =3D {116u, 85u, 204u, 9u, 205u, 156u, 44u, 95u}; > +uint16_t var_80 [] =3D {125u, 11200u, 34490u, 18374u, 4588u, 35391u, 634= 95u, 10305u}; > +uint16_t var_79 [] =3D {15332u}; > +uint16_t var_78 [] =3D {1453u, 28298u, 2362u, 23807u, 62748u, 52974u, 59= 001u, 40770u}; > +uint16_t var_77 [] =3D {46274u, 10845u, 29681u, 59897u, 19443u, 17522u, = 9033u, 21769u}; > +uint8_t var_76 [] =3D {51u, 70u, 115u, 250u, 97u, 187u, 167u, 45u}; > +int32_t var_75 [] =3D {228679613, 1651811947, -2100244616, -2082713800, = 634254738, -390199277, 1417009460, -1348998711}; > +int32_t var_74 [] =3D {-1513452368, 349133221, -405006840, -217144520, 1= 959356346, -1224636336, -576064041, -1037028305}; > +int32_t var_73 [] =3D {1249999099, 991531407, -1993434062, -274053194, 1= 121453020, 2040089161, 170172760, 983679859}; > +uint16_t var_72 [] =3D {48382u, 12539u, 64301u, 45250u, 42097u, 26733u, = 49161u, 59749u}; > +uint16_t var_71 [] =3D {8893u, 30107u, 19590u, 37346u, 19495u, 6196u, 41= 086u, 17234u}; > +uint16_t var_70 [] =3D {49157u, 58982u, 14107u, 53921u, 28458u, 3999u, 4= 2377u, 16999u}; > +int8_t var_69 [] =3D {51, 63, 26, 58, 61, 59}; > +int8_t var_68 [] =3D {-16, -106, -123, 82, 33, -21}; > +int8_t var_67 [] =3D {40, -112, 39, -51, -120, -5}; > +int8_t var_66 [] =3D {3}; > +uint8_t var_65 [] =3D {249u, 156u, 104u, 248u, 181u, 207u, 205u, 28u}; > +uint16_t var_64 [] =3D {58047u, 8278u, 15783u, 9954u, 32465u, 59765u, 43= 410u, 64808u}; > +uint16_t var_63 [] =3D {53522u, 2331u, 50321u, 25359u, 51650u, 44823u, 4= 3544u, 34732u}; > +int8_t var_62 [] =3D {-69, 99, -93, 118, 114, -30, 108, 104}; > +int8_t var_61 [] =3D {88, -96, 119, 5, -125, 104, 122, -42}; > +uint8_t var_60 =3D 45u; > +float32_t var_59 =3D f32(276134744u); > +// 4.841275101341818e-29 > + > +float32_t var_58 =3D f32(2996294259u); > +// -1.7674414820589845e-08 > + > +uint64_t var_57 =3D 6032944606398802016u; > +uint8_t var_56 =3D 242u; > +int32_t var_55 =3D -1832850957; > +__riscv_vsetvl_e16m1(8); > +vuint16m1_t var_93 =3D __riscv_vle16_v_u16m1(var_94, 8); > +// 7, 14, 13, 0, 6, 14, 2, 8 > + > +__riscv_vsetvl_e8mf2(3); > +vint8mf2_t var_20 =3D __riscv_vle8_v_i8mf2(var_92, 3); > +// -108, 37, -34 > + > +vint8mf2_t var_21 =3D __riscv_vle8_v_i8mf2(var_91, 3); > +// 125, 112, -29 > + > +vint8mf2_t var_22 =3D __riscv_vle8_v_i8mf2(var_90, 3); > +// -115, -124, 14 > + > +__riscv_vsetvl_e32m2(5); > +vfloat32m2_t var_25 =3D __riscv_vle32_v_f32m2(var_88, 5); > +// -8.421292075547953e-32, -2.2594732521906944e-34, -2.4479761673212445e= +34, 6811985.0, 2.614819992474704e-11 > + > +vfloat32m2_t var_26 =3D __riscv_vle32_v_f32m2(var_87, 5); > +// 2.9525308674865006e+22, 4.190388786840365e+19, -6.377927661560534e-07= , 3825686821208064.0, -1.841799014383616e+16 > + > +vuint64m4_t var_27 =3D __riscv_vle64_v_u64m4(var_86, 5); > +// 3425713696681443193, 5039499209058164190, 6049277984953311932, 887375= 2123271114414, 9754200587838842769 > + > +__riscv_vsetvl_e16m1(4); > +vuint16m1_t var_29 =3D __riscv_vle16_v_u16m1(var_84, 4); > +// 19327, 36695, 50674, 17467 > + > +vuint16m1_t var_30 =3D __riscv_vle16_v_u16m1(var_83, 4); > +// 22045, 32601, 55272, 26559 > + > +__riscv_vsetvl_e8mf2(8); > +vuint8mf2_t var_32 =3D __riscv_vle8_v_u8mf2(var_81, 8); > +// 116, 85, 204, 9, 205, 156, 44, 95 > + > +vuint16m1_t var_33 =3D __riscv_vle16_v_u16m1(var_80, 8); > +// 125, 11200, 34490, 18374, 4588, 35391, 63495, 10305 > + > +vuint16m1_t var_36 =3D __riscv_vle16_v_u16m1(var_78, 8); > +// 1453, 28298, 2362, 23807, 62748, 52974, 59001, 40770 > + > +vuint16m1_t var_37 =3D __riscv_vle16_v_u16m1(var_77, 8); > +// 46274, 10845, 29681, 59897, 19443, 17522, 9033, 21769 > + > +vuint8mf2_t var_38 =3D __riscv_vle8_v_u8mf2(var_76, 8); > +// 51, 70, 115, 250, 97, 187, 167, 45 > + > +__riscv_vsetvl_e32m8(8); > +vint32m8_t var_39 =3D __riscv_vle32_v_i32m8(var_75, 8); > +// 228679613, 1651811947, -2100244616, -2082713800, 634254738, -39019927= 7, 1417009460, -1348998711 > + > +__riscv_vsetvl_e32m2(8); > +vint32m2_t var_40 =3D __riscv_vle32_v_i32m2(var_74, 8); > +// -1513452368, 349133221, -405006840, -217144520, 1959356346, -12246363= 36, -576064041, -1037028305 > + > +vint32m2_t var_42 =3D __riscv_vle32_v_i32m2(var_73, 8); > +// 1249999099, 991531407, -1993434062, -274053194, 1121453020, 204008916= 1, 170172760, 983679859 > + > +vuint16m1_t var_43 =3D __riscv_vle16_v_u16m1(var_72, 8); > +// 48382, 12539, 64301, 45250, 42097, 26733, 49161, 59749 > + > +vuint16m1_t var_44 =3D __riscv_vle16_v_u16m1(var_71, 8); > +// 8893, 30107, 19590, 37346, 19495, 6196, 41086, 17234 > + > +vuint16m1_t var_45 =3D __riscv_vle16_v_u16m1(var_70, 8); > +// 49157, 58982, 14107, 53921, 28458, 3999, 42377, 16999 > + > +__riscv_vsetvl_e8m2(6); > +vint8m2_t var_46 =3D __riscv_vle8_v_i8m2(var_69, 6); > +// 51, 63, 26, 58, 61, 59 > + > +__riscv_vsetvl_e8mf2(6); > +vint8mf2_t var_47 =3D __riscv_vle8_v_i8mf2(var_68, 6); > +// -16, -106, -123, 82, 33, -21 > + > +vint8mf2_t var_48 =3D __riscv_vle8_v_i8mf2(var_67, 6); > +// 40, -112, 39, -51, -120, -5 > + > +__riscv_vsetvl_e8mf2(8); > +vuint8mf2_t var_50 =3D __riscv_vle8_v_u8mf2(var_65, 8); > +// 249, 156, 104, 248, 181, 207, 205, 28 > + > +__riscv_vsetvl_e16m4(8); > +vuint16m4_t var_51 =3D __riscv_vle16_v_u16m4(var_64, 8); > +// 58047, 8278, 15783, 9954, 32465, 59765, 43410, 64808 > + > +__riscv_vsetvl_e16m1(8); > +vuint16m1_t var_52 =3D __riscv_vle16_v_u16m1(var_63, 8); > +// 53522, 2331, 50321, 25359, 51650, 44823, 43544, 34732 > + > +vint8mf2_t var_53 =3D __riscv_vle8_v_i8mf2(var_62, 8); > +// -69, 99, -93, 118, 114, -30, 108, 104 > + > +vint8mf2_t var_54 =3D __riscv_vle8_v_i8mf2(var_61, 8); > +// 88, -96, 119, 5, -125, 104, 122, -42 > + > +__riscv_vsetvl_e32m2(5); > +vfloat32m2_t var_16 =3D __riscv_vfmv_v_f_f32m2(var_59, 5); > +// 4.841275101341818e-29, 4.841275101341818e-29, 4.841275101341818e-29, = 4.841275101341818e-29, 4.841275101341818e-29 > + > +vbool16_t var_24 =3D __riscv_vmsltu_vx_u64m4_b16(var_27, var_57, 5); > +// 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8mf2(8); > +vuint8mf2_t var_14 =3D __riscv_vmv_s_x_u8mf2_tu(var_32, var_60, 8); > +// 45, 85, 204, 9, 205, 156, 44, 95 > + > +vbool16_t var_35 =3D __riscv_vmsbc_vx_u8mf2_b16(var_38, var_56, 8); > +// 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e32m8(8); > +int32_t var_10 =3D __riscv_vmv_x_s_i32m8_i32(var_39); > +// 228679613 > + > +__riscv_vsetvl_e32m2(8); > +vbool16_t var_41 =3D __riscv_vmsge_vx_i32m2_b16(var_42, var_55, 8); > +// 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e8m2(6); > +int8_t var_7 =3D __riscv_vmv_x_s_i8m2_i8(var_46); > +// 51 > + > +__riscv_vsetvl_e16m4(8); > +uint16_t var_4 =3D __riscv_vmv_x_s_u16m4_u16(var_51); > +// 58047 > + > +__riscv_vsetvl_e32m2(5); > +vfloat32m2_t var_18 =3D __riscv_vfnmsac_vf_f32m2_tumu(var_24, var_25, va= r_58, var_26, 5); > +// 521842552995840.0, 740626726912.0, -2.4479761673212445e+34, 6811985.0= , 2.614819992474704e-11 > + > +__riscv_vsetvl_e8mf2(1); > +vbool16_t var_5 =3D __riscv_vmadc_vv_u8mf2_b16(var_14, var_50, 1); > +// 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +__riscv_vsetvl_e32m2(8); > +vint32m2_t var_9 =3D __riscv_vsbc_vxm_i32m2(var_40, var_10, var_41, 8); > +// -1742131982, 120453607, -633686453, -445824134, 1730676732, -14533159= 50, -804743655, -1265707919 > + > +vuint16m1_t var_2 =3D __riscv_vslide1down_vx_u16m1(var_52, var_4, 8); > +// 2331, 50321, 25359, 51650, 44823, 43544, 34732, 58047 > + > +vbool16_t var_3 =3D __riscv_vmadc_vv_i32m2_b16(var_9, var_9, 8); > +// 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, = 0, 0, 0, 0, 0 > + > +__riscv_vse16_v_u16m1(var_97, var_2, 8); > +vint8mf2_t var_0 =3D __riscv_vloxei16_v_i8mf2_tumu(var_3, var_54, var_96= , var_93, 8); > +// -22, -96, 24, -75, -125, -1, 39, 111 > + > +if(!check(var_97, var_114, var_115)) {cerr << "check 113 fails" << endl;= return_value =3D 1;} > +__riscv_vsetvl_e8mf2(1); > +vbool16_t var_1 =3D __riscv_vmsle_vv_i8mf2_b16_mu(var_3, var_5, var_0, v= ar_53, 1); > +// 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > + > +vint8mf2_t var_6 =3D __riscv_vslide1down_vx_i8mf2_tumu(var_1, var_47, va= r_48, var_7, 1); > +// -16, -106, -123, 82, 33, -21 > + > +vuint16m1_t var_8 =3D __riscv_vor_vv_u16m1_tumu(var_1, var_43, var_44, v= ar_45, 1); > +// 48382, 12539, 64301, 45250, 42097, 26733, 49161, 59749 > + > +vfloat32m2_t var_12 =3D __riscv_vfdiv_vv_f32m2_tumu(var_1, var_16, var_1= 6, var_18, 1); > +// 4.841275101341818e-29, 4.841275101341818e-29, 4.841275101341818e-29, = 4.841275101341818e-29, 4.841275101341818e-29 > + > +vint8mf2_t var_19 =3D __riscv_vaadd_vv_i8mf2_tumu(var_1, var_20, var_21,= var_22, 1); > +// -108, 37, -34 > + > +__riscv_vse8_v_i8mf2(var_66, var_6, 1); > +vuint16m1_t var_11 =3D __riscv_vmacc_vv_u16m1_tumu(var_35, var_8, var_36= , var_37, 1); > +// 44568, 12539, 64301, 45250, 42097, 26733, 49161, 59749 > + > +vfloat64m4_t var_17 =3D __riscv_vfwcvt_f_f_v_f64m4(var_12, 1); > +// 4.841275101341818e-29 > + > +__riscv_vse8_v_i8mf2(var_89, var_19, 1); > +if(!check(var_66, var_111, var_112)) {cerr << "check 110 fails" << endl;= return_value =3D 1;} > +vuint16m1_t var_13 =3D __riscv_vremu_vv_u16m1(var_11, var_33, 1); > +// 68 > + > +vuint16m1_t var_15 =3D __riscv_vnmsac_vv_u16m1(var_11, var_29, var_30, 1= ); > +// 30389, 12539, 64301, 45250, 42097, 26733, 49161, 59749 > + > +__riscv_vse64_v_f64m4(var_85, var_17, 1); > +if(!check(var_89, var_99, var_100)) {cerr << "check 98 fails" << endl; r= eturn_value =3D 1;} > +__riscv_vse16_v_u16m1(var_79, var_13, 1); > +__riscv_vse16_v_u16m1(var_82, var_15, 1); > +if(!check(var_85, var_102, var_103)) {cerr << "check 101 fails" << endl;= return_value =3D 1;} > +if(!check(var_79, var_108, var_109)) {cerr << "check 107 fails" << endl;= return_value =3D 1;} > +if(!check(var_82, var_105, var_106)) {cerr << "check 104 fails" << endl;= return_value =3D 1;} > +if (return_value) > + __builtin_abort (); > +return return_value; > +} > -- > 2.36.1 >