[PATCH] AArch64: Remove EMAG ifuncs
Adhemerval Zanella Netto
adhemerval.zanella@linaro.org
Thu Mar 5 18:21:31 GMT 2026
On 03/03/26 09:57, Wilco Dijkstra wrote:
> Hi Adhemerval,
>
>> I am not sure how common is the Ampere eMAG, but even though what the real gain
>> about dropping these specific routines? They do not really add much maintainance
>> (besides adding some extra runtime on string tests).
>
> It's that time again for my yearly spring cleanup. A few years ago we removed Falkor and
> ThunderX ifuncs. EMAG is from the same era (2018), though its microarchitecture is based
> on the X-Gene which was first announced in 2011...
>
> As you can see it's quite a lot of code, and at least for memchr the generic version was
> significantly improved and should give equivalent performance. However someone needs
> to do that kind of benchmarking regularly so that we use the latest optimized ifuncs rather
> than one that was written many years ago and never touched since. This is hard as older
> machines get retired.
>
> So in general I want to move away from having lots of different CPU-specific ifuncs and
> just provide ifuncs for major architecture features. I've had requests for more SVE ifuncs
> given all recent cores support SVE2.
Fair enough, I forgot that generic memchr had some improvements which I
agree that it is inconclusive that memchr_nosimd does yield any performance
gains.
Could ou at least split the path in one for the memchr work and another for
the memset?
More information about the Libc-alpha
mailing list