Inline pg_popcount{32,64} into pg_popcount(). On some systems, calls to pg_popcount{32,64} are indirected through a function pointer. This commit converts pg_popcount() to a function pointer on those systems so that we can inline the appropriate pg_popcount{32,64} implementations into each of the pg_popcount() implementations. Since pg_popcount() may call pg_popcount{32,64} several times, this can significantly improve its performance.
Suggested-by: David Rowley Reviewed-by: David Rowley Discussion: https://postgr.es/m/CAApHDvrb7MJRB6JuKLDEY2x_LKdFHwVbogpjZBCX547i5%2BrXOQ%40mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/cc4826dd5e52c8af7069feb49ce3cd9358fa6a6e Modified Files -------------- src/include/port/pg_bitutils.h | 5 +- src/port/pg_bitutils.c | 155 +++++++++++++++++++++++++++++++---------- 2 files changed, 121 insertions(+), 39 deletions(-)