On Mar 27, 2007, at 1:22 PM, Bill Wendling wrote:
> +// Some special case pandn patterns.
> +def : Pat<(v1i64 (and (xor VR64:$src1, (bc_v1i64 (v2i32  
> immAllOnesV))),
> +                  VR64:$src2)),
> +          (MMX_PANDNrr VR64:$src1, VR64:$src2)>;
> +def : Pat<(v1i64 (and (xor VR64:$src1, (bc_v1i64 (v4i16  
> immAllOnesV))),
> +                  VR64:$src2)),
> +          (MMX_PANDNrr VR64:$src1, VR64:$src2)>;
> +def : Pat<(v1i64 (and (xor VR64:$src1, (bc_v1i64 (v8i8   
> immAllOnesV))),
> +                  VR64:$src2)),
> +          (MMX_PANDNrr VR64:$src1, VR64:$src2)>;
> +
> +def : Pat<(v1i64 (and (xor VR64:$src1, (bc_v1i64 (v2i32  
> immAllOnesV))),
> +                  (load addr:$src2))),
> +          (MMX_PANDNrm VR64:$src1, addr:$src2)>;
> +def : Pat<(v1i64 (and (xor VR64:$src1, (bc_v1i64 (v4i16  
> immAllOnesV))),
> +                  (load addr:$src2))),
> +          (MMX_PANDNrm VR64:$src1, addr:$src2)>;
> +def : Pat<(v1i64 (and (xor VR64:$src1, (bc_v1i64 (v8i8   
> immAllOnesV))),
> +                  (load addr:$src2))),
> +          (MMX_PANDNrm VR64:$src1, addr:$src2)>;

These shouldn't be needed.  Please get legalize to promote  
"build_vector" to a single vector type like it does for loads.  This  
would eliminate the need for these patterns.

-chris
_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to