[llvm-commits] patch: x86 vector udiv
Peter Cooper
peter_cooper at apple.com
Wed Nov 2 17:57:04 PDT 2011
I've written a version in InstCombine which is now working.
Please have a look and see if its at the right stage of compilation.
Cheers,
Pete
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 8429.patch
Type: application/octet-stream
Size: 2153 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20111102/85d5b1a8/attachment.obj>
-------------- next part --------------
On Nov 2, 2011, at 5:23 PM, Chris Lattner wrote:
>
> On Nov 1, 2011, at 6:04 PM, Eli Friedman wrote:
>
>> On Tue, Nov 1, 2011 at 5:40 PM, Peter Cooper <peter_cooper at apple.com> wrote:
>>> Hi
>>>
>>> Please review this patch for pr8429 to turn vector udiv into vector shrl instructions when dividing by powers of 2. This was already done on scalars but not on vectors.
>>>
>>> I also found that vector shifts were always scalarised on x86 even with SSE on so i turned these into the equivalent intrinsics.
>>
>> The change to X86ISelLowering.cpp is wrong; the psrld instruction is
>> not equivalent to ISD::SRL in the general case.
>>
>> For the rest of the changes, it would be better to handle this
>> transformation in instcombine.
>
> I agree - this is a generally useful canonicalization that should be done early.
>
> -Chris
More information about the llvm-commits
mailing list