[i386, avx2] Fix representation of the 256-bit vpblendw

Jakub Jelinek jakub@redhat.com
Fri Oct 7 21:53:00 GMT 2011


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



More information about the Gcc-patches mailing list