]> git.ipfire.org Git - thirdparty/glibc.git/commit
x86: Optimize memchr-evex.S
authorNoah Goldstein <goldstein.w.n@gmail.com>
Mon, 3 May 2021 07:03:19 +0000 (03:03 -0400)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 27 Jan 2022 22:43:09 +0000 (14:43 -0800)
commitae98c17a1dffc9353771d5c1d4fcead35617efc4
tree3d2f5db04c59edb07e5bf51ad4d18cdf850883c4
parent72c07875610c5129b4de33143e865eefe9b9d3bd
x86: Optimize memchr-evex.S

No bug. This commit optimizes memchr-evex.S. The optimizations include
replacing some branches with cmovcc, avoiding some branches entirely
in the less_4x_vec case, making the page cross logic less strict,
saving some ALU in the alignment process, and most importantly
increasing ILP in the 4x loop. test-memchr, test-rawmemchr, and
test-wmemchr are all passing.

Signed-off-by: Noah Goldstein <goldstein.w.n@gmail.com>
Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
(cherry picked from commit 2a76821c3081d2c0231ecd2618f52662cb48fccd)
sysdeps/x86_64/multiarch/memchr-evex.S