This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][ARM] NEON DImode neg
- From: Richard Earnshaw <rearnsha at arm dot com>
- To: Andrew Stubbs <ams at codesourcery dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "patches at linaro dot org" <patches at linaro dot org>
- Date: Thu, 12 Apr 2012 17:43:29 +0100
- Subject: Re: [PATCH][ARM] NEON DImode neg
- References: <4F4D12C5.9070805@codesourcery.com> <4F704189.4010302@codesourcery.com> <4F86F932.60606@arm.com> <4F86FFE7.6060706@codesourcery.com>
On 12/04/12 17:16, Andrew Stubbs wrote:
> On 12/04/12 16:48, Richard Earnshaw wrote:
>> If negation in Neon needs a scratch register, it seems to me to be
>> somewhat odd that we're disparaging the ARM version.
>
> Good point, I'm really meaning to provide missing functionality in NEON
> to prevent unnecessary moves, rather than cause them, so I should remove
> the '?'s.
>
> It probably doesn't need disparaging on A8, etiher?
Possibly not. Which then begs the question as to whether we need an A8
variant at all.
>
>> Also, wouldn't it be sensible to support a variant that was
>> early-clobber on operand 0, but loaded immediate zero into that value first:
>>
>> vmov Dd, #0
>> vsub Dd, Dd, Dm
>>
>> That way you'll never need more than two registers, whereas today you
>> want three.
>
> That does seem like a good option. I'll have a go and see what happens.
>
> Andrew
>