On 11/17/2017 08:15 AM, Richard Sandiford wrote:
> This patch adds a hook to control whether we avoid executing masked
> (predicated) stores when the mask is all false.  We don't want to do
> that by default for SVE.
> 
> Tested on aarch64-linux-gnu (with and without SVE), x86_64-linux-gnu
> and powerpc64le-linux-gnu.  OK to install?
> 
> Richard
> 
> 
> 2017-11-17  Richard Sandiford  <richard.sandif...@linaro.org>
>           Alan Hayward  <alan.hayw...@arm.com>
>           David Sherwood  <david.sherw...@arm.com>
> 
> gcc/
>       * target.def (empty_mask_is_expensive): New hook.
>       * doc/tm.texi.in (TARGET_VECTORIZE_EMPTY_MASK_IS_EXPENSIVE): New hook.
>       * doc/tm.texi: Regenerate.
>       * targhooks.h (default_empty_mask_is_expensive): Declare.
>       * targhooks.c (default_empty_mask_is_expensive): New function.
>       * tree-vectorizer.c (vectorize_loops): Only call optimize_mask_stores
>       if the target says that empty masks are expensive.
>       * config/aarch64/aarch64.c (aarch64_empty_mask_is_expensive):
>       New function.
>       (TARGET_VECTORIZE_EMPTY_MASK_IS_EXPENSIVE): Redefine.
OK.
jeff

Reply via email to