diff options
author | David Zarzycki <dave@znu.io> | 2019-10-17 12:38:15 +0300 |
---|---|---|
committer | David Zarzycki <dave@znu.io> | 2019-10-26 21:14:57 +0300 |
commit | 11c920207afa92ad13fdf72daba14c9af336293a (patch) | |
tree | 2b671d2e7bf21a89616cd8a78603d3b1fd46be53 /llvm/lib/Support/APInt.cpp | |
parent | 0d0509384f054cb4f13260786ee48163ac94d123 (diff) | |
download | llvm-11c920207afa92ad13fdf72daba14c9af336293a.zip llvm-11c920207afa92ad13fdf72daba14c9af336293a.tar.gz llvm-11c920207afa92ad13fdf72daba14c9af336293a.tar.bz2 |
[X86] Prefer KORTEST on Knights Landing or later for memcmp()
PTEST and especially the MOVMSK instructions are slow on Knights Landing
or later. As a bonus, this patch increases instruction parallelism by
emitting:
KORTEST(PCMPNEQ(a, b), PCMPNEQ(c, d)) == 0
Instead of:
KORTEST(AND(PCMPEQ(a, b), PCMPEQ(c, d))) == ~0
https://reviews.llvm.org/D69157
Diffstat (limited to 'llvm/lib/Support/APInt.cpp')
0 files changed, 0 insertions, 0 deletions