From: Richard Sandiford
Sent: 21 January 2021 13:40
To: Richard Biener
Cc: Joel Hutton via Gcc-patches ; Joel Hutton
Subject: Re: [AArch64] Remove backend support for widen-sub
Richard Biener writes:
> On Thu, 21 Jan 2021, Richard Sandiford wrote:
>
>> Joe
Richard Biener writes:
> On Thu, 21 Jan 2021, Richard Sandiford wrote:
>
>> Joel Hutton via Gcc-patches writes:
>> > Hi all,
>> >
>> > This patch removes support for the widening subtract operation in the
>> > aarch64 backend as it is causing a performance regression.
>> >
>> > In the following
, unsigned char
*restrict pix2, int s)
{
for( int y = 0; y < 4; y++ )
{
for( int x = 0; x < 4; x++ )
d[x + y*4] = pix1[x] - pix2[x];
pix1 += 16*s;
pix2 += 16*s;
}
}
so the fix, if, is to fix the bug that mentions this issue
and appropriately classify / vectorize th
in the vectype, so one idea (not worked through)
is to make the vect_build_slp_tree family of routines undo pattern
recognition for widening operations if the group size is less than that.
Richi would know better than me though.
Thanks,
Richard
>
>
> [AArch64] Remove backend support fo
's not analyzed. The fix is clearly not to remove the support
for this pattern but fix
what goes wrong in detecting it.
Richard.
>
> [AArch64] Remove backend support for widen-sub
>
> This patch removes support for the widening subtract operation in the aarch64
> backend
yte->8 short widening subtract operation, which is not
supported.
The issue is documented in PR 98772.
[AArch64] Remove backend support for widen-sub
This patch removes support for the widening subtract operation in the aarch64
backend as it is causing a performance regression.
gcc/