Richard Biener <rguent...@suse.de> writes:
> On Thu, 17 Jun 2021, Uros Bizjak wrote:
>
>> On Thu, Jun 17, 2021 at 11:44 AM Richard Biener <rguent...@suse.de> wrote:
>> >
>> > This addds SLP pattern recognition for the SSE3/AVX [v]addsubp{ds} v0, v1
>> > instructions which compute { v0[0] - v1[0], v0[1], + v1[1], ... }
>> > thus subtract, add alternating on lanes, starting with subtract.
>> >
>> > It adds a corresponding optab and direct internal function,
>> > vec_subadd$a3 and at the moment to make the i386 backend changes
>> > "obvious", duplicates the existing avx_addsubv4df3 pattern with
>> > the new canonical name (CODE_FOR_* and gen_* are used throughout the
>> > intrinsic code, so the actual change to rename all existing patterns
>> > will be quite a bit bigger).  I expect some bike-shedding on
>> > subadd vs. addsub so I delay that change ;)
>> 
>> Well, the pattern is called addsub in the x86 world because highpart
>> does add and lowpart does sub. In left-to-right writing systems
>> highpart comes before lowpart, so you have addsub.
>
> The other targets mentioned do not seem to agree but I can live
> with that, thus I'll change back to addsub.

FWIW, subadd sounds clearer to me too.  It seems surprising to put
imaginary before real when interpreting something as complex, for example.

Putting the highpart first feels especially odd on an LE system like x86…

Richard

Reply via email to