From: Ilya Enkovich <enkovich.gnu@gmail.com>
To: Richard Biener <richard.guenther@gmail.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>,
Yuri Rumyantsev <ysrumyan@gmail.com>,
Igor Zamyatin <izamyatin@gmail.com>
Subject: Re: [PATCH, vec-tails 01/10] New compiler options
Date: Mon, 11 Jul 2016 13:37:00 -0000 [thread overview]
Message-ID: <CAMbmDYYbiZsGztwK7EC=rfKqf-ng2F1=KxuVU1tSdmRCCMOVGA@mail.gmail.com> (raw)
In-Reply-To: <20160616134248.GC62320@msticlxl57.ims.intel.com>
Ping
2016-06-16 16:42 GMT+03:00 Ilya Enkovich <enkovich.gnu@gmail.com>:
> On 20 May 14:40, Ilya Enkovich wrote:
>> > Can you make all these --params then? I think to be useful to users we'd want
>> > them to be loop pragmas rather than options.
>>
>> OK, I'll change it to params. I didn't think about control via
>> pragmas but will do now.
>>
>> Thanks,
>> Ilya
>>
>> >
>> > Richard.
>> >
>
> Hi,
>
> Here is a set of params to be used instead of new flags. Does this set looks OK?
> I still use new option for cost model for convenient soct model enum re-use.
>
> Thanks,
> Ilya
> --
> gcc/
>
> 2016-06-16 Ilya Enkovich <ilya.enkovich@intel.com>
>
> * common.opt (fvect-epilogue-cost-model=): New.
> * params.def (PARAM_VECT_EPILOGUES_COMBINE): New.
> (PARAM_VECT_EPILOGUES_MASK): New.
> (PARAM_VECT_EPILOGUES_NOMASK): New.
> (PARAM_VECT_SHORT_LOOPS): New.
> * doc/invoke.texi (-fvect-epilogue-cost-model): New.
>
>
> diff --git a/gcc/common.opt b/gcc/common.opt
> index fccd4b5..10cd75b 100644
> --- a/gcc/common.opt
> +++ b/gcc/common.opt
> @@ -2582,6 +2582,10 @@ fsimd-cost-model=
> Common Joined RejectNegative Enum(vect_cost_model) Var(flag_simd_cost_model) Init(VECT_COST_MODEL_UNLIMITED) Optimization
> Specifies the vectorization cost model for code marked with a simd directive.
>
> +fvect-epilogue-cost-model=
> +Common Joined RejectNegative Enum(vect_cost_model) Var(flag_vect_epilogue_cost_model) Init(VECT_COST_MODEL_DEFAULT) Optimization
> +Specifies the cost model for epilogue vectorization.
> +
> Enum
> Name(vect_cost_model) Type(enum vect_cost_model) UnknownError(unknown vectorizer cost model %qs)
>
> diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
> index ce162a0..ecbd7ce 100644
> --- a/gcc/doc/invoke.texi
> +++ b/gcc/doc/invoke.texi
> @@ -7638,6 +7638,14 @@ or Cilk Plus simd directive. The @var{model} argument should be one of
> have the same meaning as described in @option{-fvect-cost-model} and by
> default a cost model defined with @option{-fvect-cost-model} is used.
>
> +@item -fvect-epilogue-cost-model=@var{model}
> +@opindex fvect-epilogue-cost-model
> +Alter the cost model used for vectorization of loop epilogues. The
> +@var{model} argument should be one of @samp{unlimited}, @samp{dynamic},
> +@samp{cheap}. All values of @var{model} have the same meaning as
> +described in @option{-fvect-cost-model} and by default @samp{dynamic}
> +cost model is used.
> +
> @item -ftree-vrp
> @opindex ftree-vrp
> Perform Value Range Propagation on trees. This is similar to the
> diff --git a/gcc/params.def b/gcc/params.def
> index 62a1e40..3bac68c 100644
> --- a/gcc/params.def
> +++ b/gcc/params.def
> @@ -1220,6 +1220,28 @@ DEFPARAM (PARAM_MAX_SPECULATIVE_DEVIRT_MAYDEFS,
> "Maximum number of may-defs visited when devirtualizing "
> "speculatively", 50, 0, 0)
>
> +DEFPARAM (PARAM_VECT_EPILOGUES_COMBINE,
> + "vect-epilogues-combine",
> + "Enable loop epilogue vectorization by combining it with "
> + "vectorized loop body.",
> + 0, 0, 1)
> +
> +DEFPARAM (PARAM_VECT_EPILOGUES_MASK,
> + "vect-epilogues-mask",
> + "Enable loop epilogue vectorization using the same vector "
> + "size and masking.",
> + 0, 0, 1)
> +
> +DEFPARAM (PARAM_VECT_EPILOGUES_NOMASK,
> + "vect-epilogues-nomask",
> + "Enable loop epilogue vectorization using smaller vector size.",
> + 0, 0, 1)
> +
> +DEFPARAM (PARAM_VECT_SHORT_LOOPS,
> + "vect-short-loops",
> + "Enable vectorization of low trip count loops using masking.",
> + 0, 0, 1)
> +
> /*
>
> Local variables:
prev parent reply other threads:[~2016-07-11 13:37 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-19 19:37 Ilya Enkovich
2016-05-19 20:23 ` Joseph Myers
2016-05-20 9:26 ` Richard Biener
2016-05-20 9:50 ` Ilya Enkovich
2016-05-20 11:17 ` Richard Biener
2016-05-20 11:40 ` Ilya Enkovich
2016-06-09 10:36 ` Ilya Enkovich
2016-06-09 12:19 ` Richard Biener
2016-06-16 5:06 ` Jeff Law
2016-06-17 10:41 ` Ilya Enkovich
2016-06-20 22:33 ` Jeff Law
2016-06-16 13:45 ` Ilya Enkovich
2016-07-11 13:37 ` Ilya Enkovich [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='CAMbmDYYbiZsGztwK7EC=rfKqf-ng2F1=KxuVU1tSdmRCCMOVGA@mail.gmail.com' \
--to=enkovich.gnu@gmail.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=izamyatin@gmail.com \
--cc=richard.guenther@gmail.com \
--cc=ysrumyan@gmail.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).