[PATCH 3/6] Implement interleave via permutation.
Hans-Peter Nilsson
hp@bitrange.com
Fri Oct 28 22:18:00 GMT 2011
On Mon, 24 Oct 2011, Richard Henderson wrote:
> From: Richard Henderson <rth@twiddle.net>
> + /* Certain vector operations can be implemented with vector permutation. */
> + if (VECTOR_MODE_P (mode))
> + {
> + enum tree_code tcode = ERROR_MARK;
> + rtx sel;
> +
> + if (binoptab == vec_interleave_high_optab)
> + tcode = VEC_INTERLEAVE_HIGH_EXPR;
> + else if (binoptab == vec_interleave_low_optab)
> + tcode = VEC_INTERLEAVE_LOW_EXPR;
> + else if (binoptab == vec_extract_even_optab)
> + tcode = VEC_EXTRACT_EVEN_EXPR;
> + else if (binoptab == vec_extract_odd_optab)
> + tcode = VEC_EXTRACT_ODD_EXPR;
Also VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO_EXPR, and
VEC_PACK_TRUNC_EXPR to mention some.
brgds, H-P
More information about the Gcc-patches
mailing list