[llvm-commits] XOP Intrinsics patch

Craig Topper craig.topper at gmail.com
Tue Jan 3 13:23:01 PST 2012


On Tue, Jan 3, 2012 at 12:00 PM, Jan Sjodin <jan_sjodin at yahoo.com> wrote:

> >All integer vector loads in patterns need to be memopv2i64(!28-bit) or
> memopv4i64(256-bit) and bitcasted to the correct type because all integer
> vector loads are promoted to v2i64 or v4i64. So for instance
>
> >
> >+def : Pat<(int_x86_xop_vphsubwd (alignedloadv8i16 addr:$src1)),
> >+          (VPHSUBWDrm addr:$src1)>;
> >
> >Needs to be
> >
> >+def : Pat<(int_x86_xop_vphsubwd (bc_v8i16 (memopv2i64 addr:$src1))),
> >+          (VPHSUBWDrm addr:$src1)>;
> >
>
> If the promotion always happens, maybe it would be best to remove patterns
> like:
>
> def memopv8i16 : PatFrag<(ops node:$ptr), (v8i16 (memop node:$ptr))>;
> def memopv16i8 : PatFrag<(ops node:$ptr), (v16i8 (memop node:$ptr))>;
>
>
> - Jan
>
>
I had meant to do that after I was sure they were all gone. I'll try to
check on that tonight and see if they can be removed now.

-- 
~Craig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120103/6c85f878/attachment.html>


More information about the llvm-commits mailing list