From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 6D6FF3858C60 for ; Mon, 10 Jan 2022 14:21:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6D6FF3858C60 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1DEB82B; Mon, 10 Jan 2022 06:21:46 -0800 (PST) Received: from localhost (unknown [10.32.98.88]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7F2683F766; Mon, 10 Jan 2022 06:21:45 -0800 (PST) From: Richard Sandiford To: Robin Dapp Mail-Followup-To: Robin Dapp , "Kewen.Lin" , GCC Patches , richard.sandiford@arm.com Cc: "Kewen.Lin" , GCC Patches Subject: Re: [PATCH] vect: Add bias parameter for partial vectorization References: <440687a0-d6e5-50e0-7105-7914b910c8c6@linux.ibm.com> <3977d753-2bb4-3c47-22d2-b4948ddc38bd@linux.ibm.com> Date: Mon, 10 Jan 2022 14:21:44 +0000 In-Reply-To: (Robin Dapp's message of "Mon, 10 Jan 2022 13:53:22 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-6.5 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jan 2022 14:21:47 -0000 Robin Dapp writes: > Hi Richard, > >> I think it would be better to fold this into the existing documentation >> a bit more: > [..] > > done. > > Fixed the remaining nits in the attached v5. > > Bootstrap and regtest are good on s390x, Power9 and i386. > > Regards > Robin > > -- > > gcc/ChangeLog: > > * config/rs6000/vsx.md: Use const0 bias predicate. > * doc/md.texi: Document bias value. > * internal-fn.c (expand_partial_load_optab_fn): Add bias. > (expand_partial_store_optab_fn): Likewise. > (internal_len_load_store_bias): New function. > * internal-fn.h (VECT_PARTIAL_BIAS_UNSUPPORTED): New define. > (internal_len_load_store_bias): New function. > * tree-vect-loop-manip.c (vect_set_loop_controls_directly): Set > bias. > (vect_set_loop_condition_partial_vectors): Add header_seq parameter. > * tree-vect-loop.c (vect_verify_loop_lens): Verify bias. > (vect_estimate_min_profitable_iters): Account for bias. > (vect_get_loop_len): Add bias-adjusted length. > * tree-vect-stmts.c (vectorizable_store): Use. > (vectorizable_load): Use. > * tree-vectorizer.h (struct rgroup_controls): Add bias-adjusted > length. > (LOOP_VINFO_PARTIAL_LOAD_STORE_BIAS): New macro. OK, thanks! Richard