[llvm-commits] [PATCH] ARM: Add vaddl/vsubl intrinsics

Pete Couperus pjcoup at gmail.com
Thu Dec 20 19:59:51 PST 2012


Hi all,

I'm replying a little late here.  One of my motivations was to make
sure vaddl was used for lowering another intrinsic, but you're right
that it turns out it isn't needed.  I now verified vaddl gets
generated when I lay out the target independent sequence.
Sorry for the bother, and thanks for clarifying that these omissions
are by design.

Pete


On Thu, Dec 20, 2012 at 1:11 PM, Bob Wilson <bob.wilson at apple.com> wrote:
> OK.  I've reverted it in r170765.
>
> On Dec 20, 2012, at 11:35 AM, Renato Golin <rengolin at systemcall.org> wrote:
>
>> Yes, now I see them. My bad, I should have checked before committing.
>>
>> Feel free to revert the patch.
>>
>> cheers,
>> --renato
>>
>> On 20 December 2012 19:25, Bob Wilson <bob.wilson at apple.com> wrote:
>>>
>>> On Dec 20, 2012, at 11:06 AM, Renato Golin <rengolin at systemcall.org> wrote:
>>>
>>>> On 20 December 2012 17:53, Bob Wilson <bob.wilson at apple.com> wrote:
>>>>> Sorry that I'm a bit behind in reviewing patches, but I don't think this is the right way to go.  We intentionally omitted those intrinsics because there is no need for them.  We can already represent those operations as combinations with vmovl.  Look at clang's <arm_neon.h> to see how they are implemented.
>>>>
>>>> Hi Bob,
>>>>
>>>> These are good points. It's been a while since I generated NEON
>>>> instructions from IR and I quite forgot that most extensions work by
>>>> pattern matching. I have no objection on reverting the patch, it's
>>>> quite non-invasive and doesn't change anything.
>>>>
>>>> Do we have tests for those patterns? If not, we should.
>>>
>>> Yes, there are lots of them in test/CodeGen/ARM, e.g., in vadd.ll and vsub.ll.
>>>
>>>>
>>>> Pete,
>>>>
>>>> Can you generate those instructions as Bob described? I suggest we
>>>> revert the patch now and you try to generate them as patterns, and
>>>> create some tests to make sure they are correctly generated and don't
>>>> regress in the future.
>>>>
>>>> --
>>>> cheers,
>>>> --renato
>>>>
>>>> http://systemcall.org/
>>>
>>
>>
>>
>> --
>> cheers,
>> --renato
>>
>> http://systemcall.org/
>




More information about the llvm-commits mailing list