This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Move targetm.units_per_simd_word to largest_simd_mode
- From: Richard Henderson <rth at redhat dot com>
- To: Richard Guenther <rguenther at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org, richard dot earnshaw at arm dot com, rdsandiford at googlemail dot com, edelsohn at gnu dot org
- Date: Tue, 05 Oct 2010 09:16:19 -0700
- Subject: Re: [PATCH] Move targetm.units_per_simd_word to largest_simd_mode
- References: <alpine.LNX.2.00.1010051747540.8982@zhemvz.fhfr.qr>
On 10/05/2010 09:02 AM, Richard Guenther wrote:
> ! static unsigned int arm_largest_simd_mode (enum machine_mode);
> ! static unsigned int sparc_largest_simd_mode (enum machine_mode);
> ! static unsigned int rs6000_largest_simd_mode (enum machine_mode);
Bad prototypes.
> + simd_mode = targetm.vectorize.largest_simd_mode (inner_mode);
> +
> /* FORNOW: Only a single vector size per mode
> (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD) is expected. */
> ! nunits = GET_MODE_SIZE (simd_mode) / nbytes;
> ! if (nunits <= 1)
> ! return NULL_TREE;
I assume the wrongness of this comment is handled be one of the
other two patches you mentioned?
> ! if (TARGET_ALTIVEC)
> ! switch (mode)
> ! {
> ! case SFmode:
> ! return V4SFmode;
> ! default:;
> ! }
Integer modes are missing for altivec.
r~