]> git.ipfire.org Git - thirdparty/glibc.git/commit
x86-64: Require BMI2 for AVX2 str(n)casecmp implementations
authorAurelien Jarno <aurelien@aurel32.net>
Mon, 3 Oct 2022 21:16:46 +0000 (23:16 +0200)
committerAurelien Jarno <aurelien@aurel32.net>
Mon, 3 Oct 2022 21:52:50 +0000 (23:52 +0200)
commit0161ebf15ba5bd98cf1b47d53c079540cd7871d8
tree115a7d072f51d9c85d189548a0b9786c112d33da
parent97ff96b0e12975ebb409f1668559651f30d13041
x86-64: Require BMI2 for AVX2 str(n)casecmp implementations

The AVX2 str(n)casecmp implementations use the 'bzhi' instruction, which
belongs to the BMI2 CPU feature.

NB: It also uses the 'tzcnt' BMI1 instruction, but it is executed as BSF
as BSF if the CPU doesn't support TZCNT, and produces the same result
for non-zero input.

Partially fixes: b77b06e0e296 ("x86: Optimize strcmp-avx2.S")
Partially resolves: BZ #29611

Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
(cherry picked from commit 10f79d3670b036925da63dc532b122d27ce65ff8)
sysdeps/x86_64/multiarch/ifunc-impl-list.c
sysdeps/x86_64/multiarch/ifunc-strcasecmp.h