aboutsummaryrefslogtreecommitdiff
path: root/support/tst-support-open-dev-null-range.c
diff options
context:
space:
mode:
authorNoah Goldstein <goldstein.w.n@gmail.com>2023-09-21 09:38:37 -0500
committerNoah Goldstein <goldstein.w.n@gmail.com>2023-10-06 00:18:55 -0500
commita3c50bf46a1ca6d9d2b7d879176d345abf95a9de (patch)
treed4663b76ebca54bf5c40e5015464c556e91cfb7f /support/tst-support-open-dev-null-range.c
parent5a4b6f8e4b7e2a76c71b713200a80181d745c93d (diff)
downloadglibc-a3c50bf46a1ca6d9d2b7d879176d345abf95a9de.tar
glibc-a3c50bf46a1ca6d9d2b7d879176d345abf95a9de.tar.gz
glibc-a3c50bf46a1ca6d9d2b7d879176d345abf95a9de.tar.bz2
glibc-a3c50bf46a1ca6d9d2b7d879176d345abf95a9de.zip
x86: Prepare `strrchr-evex` and `strrchr-evex512` for AVX10
This commit refactors `strrchr-evex` and `strrchr-evex512` to use a common implementation: `strrchr-evex-base.S`. The motivation is `strrchr-evex` needed to be refactored to not use 64-bit masked registers in preperation for AVX10. Once vec-width masked register combining was removed, the EVEX and EVEX512 implementations can easily be implemented in the same file without any major overhead. The net result is performance improvements (measured on TGL) for both `strrchr-evex` and `strrchr-evex512`. Although, note there are some regressions in the test suite and it may be many of the cases that make the total-geomean of improvement/regression across bench-strrchr are cold. The point of the performance measurement is to show there are no major regressions, but the primary motivation is preperation for AVX10. Benchmarks where taken on TGL: https://www.intel.com/content/www/us/en/products/sku/213799/intel-core-i711850h-processor-24m-cache-up-to-4-80-ghz/specifications.html EVEX geometric_mean(N=5) of all benchmarks New / Original : 0.74 EVEX512 geometric_mean(N=5) of all benchmarks New / Original: 0.87 Full check passes on x86.
Diffstat (limited to 'support/tst-support-open-dev-null-range.c')
0 files changed, 0 insertions, 0 deletions