Use isinf builtin for clang, for performance. When compiling with clang glibc's definition of isinf() ends up leading to and external libc function call. That's because there was a bug in the builtin in an old gcc version, and clang claims compatibility with an older version. That causes clang to be measurably slower for floating point heavy workloads than gcc.
To fix simply redirect isinf when using clang and clang confirms it has __builtin_isinf(). Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/8a934d6778331f2ac04a40f4f22178a56a232315 Modified Files -------------- src/include/port.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-)