public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: =?gb18030?B?TGVodWEgRGluZw==?= <lehua.ding@rivai.ai>
To: =?gb18030?B?UmljaGFyZCBCaWVuZXI=?= <rguenther@suse.de>,
	=?gb18030?B?SnV6aGUtWmhvbmc=?= <juzhe.zhong@rivai.ai>
Cc: =?gb18030?B?Z2NjLXBhdGNoZXM=?= <gcc-patches@gcc.gnu.org>,
	=?gb18030?B?cmljaGFyZC5zYW5kaWZvcmQ=?=
	<richard.sandiford@arm.com>
Subject: Re: [PATCH] cleanup: Change condition order
Date: Fri, 21 Jul 2023 16:38:13 +0800	[thread overview]
Message-ID: <15F521193F69D012+tencent_85EB9D193864DC7A9A5D3E4E34BBE20FBD07@qq.com> (raw)
In-Reply-To: <nycvar.YFH.7.77.849.2307210620350.12935@jbgna.fhfr.qr>

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

Commited, thanks Richard.


Bootstrap and regression passed.




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



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

&gt; Hi, Richard and Richi.
&gt; 
&gt; I have double check the recent codes for len &amp;&amp; mask support again.
&gt; 
&gt; Some places code structure:
&gt; 
&gt; if (len_mask_fn)
&gt; ...
&gt; else if (mask_fn)
&gt; ...
&gt; 
&gt; some places code structure:
&gt; 
&gt; if (mask_len_fn)
&gt; ...
&gt; else if (mask)
&gt; 
&gt; Base on previous review comment from Richi:
&gt; https://gcc.gnu.org/pipermail/gcc-patches/2023-July/625067.html
&gt; 
&gt; len mask stuff should be checked before mask.
&gt; 
&gt; So I reorder all condition order to check LEN MASK stuff before MASK.
&gt; 
&gt; This is the last clean up patch.
&gt; 
&gt; Boostrap and Regression is on the way.

OK.

&gt; gcc/ChangeLog:
&gt; 
&gt; 	* tree-vect-stmts.cc (check_load_store_for_partial_vectors): Change condition order.
&gt; 	(vectorizable_operation): Ditto.
&gt; 
&gt; ---
&gt;&nbsp; gcc/tree-vect-stmts.cc | 24 ++++++++++++------------
&gt;&nbsp; 1 file changed, 12 insertions(+), 12 deletions(-)
&gt; 
&gt; diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
&gt; index d5b4f020332..2fe856db9ab 100644
&gt; --- a/gcc/tree-vect-stmts.cc
&gt; +++ b/gcc/tree-vect-stmts.cc
&gt; @@ -1635,17 +1635,17 @@ check_load_store_for_partial_vectors (loop_vec_info loop_vinfo, tree vectype,
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; internal_fn len_ifn = (is_load
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp;&nbsp; ? IFN_MASK_LEN_GATHER_LOAD
&gt;&nbsp; 			&nbsp;&nbsp;&nbsp;&nbsp; : IFN_MASK_LEN_SCATTER_STORE);
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (internal_gather_scatter_fn_supported_p (ifn, vectype,
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (internal_gather_scatter_fn_supported_p (len_ifn, vectype,
&gt;&nbsp; 						&nbsp; gs_info-&gt;memory_type,
&gt;&nbsp; 						&nbsp; gs_info-&gt;offset_vectype,
&gt;&nbsp; 						&nbsp; gs_info-&gt;scale))
&gt; -	vect_record_loop_mask (loop_vinfo, masks, nvectors, vectype,
&gt; -			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scalar_mask);
&gt; -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else if (internal_gather_scatter_fn_supported_p (len_ifn, vectype,
&gt; +	vect_record_loop_len (loop_vinfo, lens, nvectors, vectype, 1);
&gt; +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else if (internal_gather_scatter_fn_supported_p (ifn, vectype,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gs_info-&gt;memory_type,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gs_info-&gt;offset_vectype,
&gt;&nbsp; 						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gs_info-&gt;scale))
&gt; -	vect_record_loop_len (loop_vinfo, lens, nvectors, vectype, 1);
&gt; +	vect_record_loop_mask (loop_vinfo, masks, nvectors, vectype,
&gt; +			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scalar_mask);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else
&gt;&nbsp; 	{
&gt;&nbsp; 	&nbsp; if (dump_enabled_p ())
&gt; @@ -6596,16 +6596,16 @@ vectorizable_operation (vec_info *vinfo,
&gt;&nbsp; 	&nbsp; &amp;&amp; LOOP_VINFO_CAN_USE_PARTIAL_VECTORS_P (loop_vinfo)
&gt;&nbsp; 	&nbsp; &amp;&amp; mask_out_inactive)
&gt;&nbsp; 	{
&gt; -	&nbsp; if (cond_fn != IFN_LAST
&gt; -	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;&amp; direct_internal_fn_supported_p (cond_fn, vectype,
&gt; +	&nbsp; if (cond_len_fn != IFN_LAST
&gt; +	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;&amp; direct_internal_fn_supported_p (cond_len_fn, vectype,
&gt;&nbsp; 						 OPTIMIZE_FOR_SPEED))
&gt; -	&nbsp;&nbsp;&nbsp; vect_record_loop_mask (loop_vinfo, masks, ncopies * vec_num,
&gt; -				&nbsp;&nbsp; vectype, NULL);
&gt; -	&nbsp; else if (cond_len_fn != IFN_LAST
&gt; -		&nbsp;&nbsp; &amp;&amp; direct_internal_fn_supported_p (cond_len_fn, vectype,
&gt; -						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OPTIMIZE_FOR_SPEED))
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; vect_record_loop_len (loop_vinfo, lens, ncopies * vec_num, vectype,
&gt;&nbsp; 				&nbsp; 1);
&gt; +	&nbsp; else if (cond_fn != IFN_LAST
&gt; +		&nbsp;&nbsp; &amp;&amp; direct_internal_fn_supported_p (cond_fn, vectype,
&gt; +						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OPTIMIZE_FOR_SPEED))
&gt; +	&nbsp;&nbsp;&nbsp; vect_record_loop_mask (loop_vinfo, masks, ncopies * vec_num,
&gt; +				&nbsp;&nbsp; vectype, NULL);
&gt;&nbsp; 	&nbsp; else
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp; {
&gt;&nbsp; 	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (dump_enabled_p ())
&gt; 

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

      reply	other threads:[~2023-07-21  8:38 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-21  2:23 Juzhe-Zhong
2023-07-21  6:20 ` Richard Biener
2023-07-21  8:38   ` =?gb18030?B?TGVodWEgRGluZw==?= [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=15F521193F69D012+tencent_85EB9D193864DC7A9A5D3E4E34BBE20FBD07@qq.com \
    --to=lehua.ding@rivai.ai \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=juzhe.zhong@rivai.ai \
    --cc=rguenther@suse.de \
    --cc=richard.sandiford@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).