This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [i386, avx2] Fix representation of the 256-bit vpblendw
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 7 Oct 2011 23:40:54 +0200
- Subject: Re: [i386, avx2] Fix representation of the 256-bit vpblendw
- References: <4E8F6B84.3070901@redhat.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Fri, Oct 07, 2011 at 02:13:40PM -0700, Richard Henderson wrote:
> +(define_insn "*avx2_pblendw"
> + [(set (match_operand:V16HI 0 "register_operand" "=x")
> + (vec_merge:V16HI
> + (match_operand:V16HI 2 "nonimmediate_operand" "xm")
> + (match_operand:V16HI 1 "register_operand" "x")
> + (match_operand:SI 3 "avx2_pblendw_operand" "n")))]
> + "TARGET_SSE4_1"
TARGET_AVX2 instead?
> +{
> + operands[3] = GEN_INT (INTVAL (operands[3]) & 0xff);
> + return "vpblendw\t{%3, %2, %1, %0|%0, %1, %2, %3}";
> +}
> + [(set_attr "type" "ssemov")
> + (set_attr "prefix_extra" "1")
> + (set_attr "length_immediate" "1")
> + (set_attr "prefix" "vex")
> + (set_attr "mode" "OI")])
>
> (define_insn "avx2_pblendd<mode>"
> [(set (match_operand:VI4_AVX2 0 "register_operand" "=x")
Jakub