[PATCH] D89952: [SelectionDAG] Enable CTPOP optimization fine tuning
David Zarzycki via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 27 03:20:20 PDT 2020
davezarzycki added a comment.
Hi @spatel – We can certainly remove the code gen tests that should have been handled by earlier optimization passes. Thanks for working on those. :-)
As to the use case, I have AVX512 machines without BITALG/VPOPCNTDQ and a program that is doing hamming distance checks in critical sections. I.e. lots of low numbered "popcnt(x) < smallNumber" kind of checks that would be more efficiently implemented as a chain of legal "x & (x - 1)" instructions instead of the current/custom POPCNT emulation logic. This is especially true on my Knights Landing test box, which lacks AVX512BW and falling back to AVX2 to emulate VPOPCNTDQ is quite expensive.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D89952/new/
https://reviews.llvm.org/D89952
More information about the llvm-commits
mailing list