[PATCH] X86: Allow pextr to use a memory destination
Adam Nemet
anemet at apple.com
Tue Feb 4 13:56:53 PST 2014
Hi,
This patch (my first to llvm :) is an attempt to resolve the following FIXME:
-// FIXME:
-// There's an AssertZext in the way of writing the store pattern
-// (store (i8 (trunc (X86pextrb (v16i8 VR128:$src1), imm:$src2))), addr:$dst)
My approach is to introduce the assertzext operation to .td and then include that in the pattern. Conveniently, assertzext is already defined in AArch64.td so I just expose that to all targets.
The test widen_load-2.ll requires a slight change because with the stores gone, the remaining instructions are scheduled in a different order.
I’ve tested with llvm/test and llvm-test on x86_64.
Adam
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pextr-2.patch
Type: application/octet-stream
Size: 4800 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140204/736a9fde/attachment.obj>
More information about the llvm-commits
mailing list