This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][AArch64] Change aarch64 vector cost to match vectorizer
- From: James Greenhalgh <james dot greenhalgh at arm dot com>
- To: Pawel Kupidura <Pawel dot Kupidura at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "richard dot guenther at gmail dot com" <richard dot guenther at gmail dot com>
- Date: Mon, 3 Aug 2015 17:26:12 +0100
- Subject: Re: [PATCH][AArch64] Change aarch64 vector cost to match vectorizer
- Authentication-results: sourceware.org; auth=none
- References: <55B630A1 dot 2030802 at arm dot com>
On Mon, Jul 27, 2015 at 02:22:41PM +0100, Pawel Kupidura wrote:
> diff --git a/gcc/ChangeLog b/gcc/ChangeLog
> index 10df325..ffafc3f 100644
> --- a/gcc/ChangeLog
> +++ b/gcc/ChangeLog
> @@ -1,3 +1,7 @@
> +2015-07-27 Pawel Kupidura <pawel.kupidura@arm.com>
Two spaces between your name and your email address, like so:
2015-07-27 Pawel Kupidura <pawel.kupidura@arm.com>
> +
> + * config/aarch64/aarch64.c: Changed inner loop statement cost
> + to be consistent with vectorizer code.
> +
s/Changed/Change
> 2015-07-26 Uros Bizjak <ubizjak@gmail.com>
>
> * config/alpha/alpha.c: Use SUBREG_P predicate.
> diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
> index 020f63c..3b6f8c5 100644
> --- a/gcc/config/aarch64/aarch64.c
> +++ b/gcc/config/aarch64/aarch64.c
> @@ -7079,15 +7079,9 @@ aarch64_add_stmt_cost (void *data, int count,
> enum vect_cost_for_stmt kind,
>
> /* Statements in an inner loop relative to the loop being
> vectorized are weighted more heavily. The value here is
> - a function (linear for now) of the loop nest level. */
> + arbitrary and could potentially be improved with analysis. */
Your mail client has mangled the tabs in this diff, so the patch will
not apply in this form. Could you try posting again having resolved the
issues with your mail client?
> if (where == vect_body && stmt_info && stmt_in_inner_loop_p
> (stmt_info))
> - {
> - loop_vec_info loop_info = STMT_VINFO_LOOP_VINFO (stmt_info);
> - struct loop *loop = LOOP_VINFO_LOOP (loop_info);
> - unsigned nest_level = loop_depth (loop);
> -
> - count *= nest_level;
> - }
> + count *= 50; /* FIXME */
Likewise here.
Thanks,
James