On Tue, 30 Jan 2024, Andre Vieira wrote:

> 
> This patch adds stmt_vec_info to TARGET_SIMD_CLONE_USABLE to make sure the
> target can reject a simd_clone based on the vector mode it is using.
> This is needed because for VLS SVE vectorization the vectorizer accepts
> Advanced SIMD simd clones when vectorizing using SVE types because the 
> simdlens
> might match.  This will cause type errors later on.
> 
> Other targets do not currently need to use this argument.

Can you instead pass down the mode?

> gcc/ChangeLog:
> 
>       * target.def (TARGET_SIMD_CLONE_USABLE): Add argument.
>       * tree-vect-stmts.cc (vectorizable_simd_clone_call): Pass stmt_info to
>       call TARGET_SIMD_CLONE_USABLE.
>       * config/aarch64/aarch64.cc (aarch64_simd_clone_usable): Add argument
>       and use it to reject the use of SVE simd clones with Advanced SIMD
>       modes.
>       * config/gcn/gcn.cc (gcn_simd_clone_usable): Add unused argument.
>       * config/i386/i386.cc (ix86_simd_clone_usable): Likewise.
> 
> 

-- 
Richard Biener <rguent...@suse.de>
SUSE Software Solutions Germany GmbH,
Frankenstrasse 146, 90461 Nuernberg, Germany;
GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)

Reply via email to