Try to detect runtime unavailability of __builtin_mul_overflow(int64).

Andres Freund <andres@anarazel.de>

Commit: c04d35f442a8c4fd5a20103b31839ec52fce3046
Author: Andres Freund <andres@anarazel.de>
Date: 2017-12-16T20:49:41Z
Releases: 11.0
Try to detect runtime unavailability of __builtin_mul_overflow(int64).

On some systems the results of 64 bit __builtin_mul_overflow()
operations can be computed at compile time, but not at runtime. The
known cases are arm buildfar animals using clang where the runtime
operation is implemented in a unavailable function.

Try to avoid compile-time computation by using volatile arguments to
__builtin_mul_overflow(). In that case we hopefully will get a link
error when unavailable, similar to what buildfarm animals dangomushi
and gull are reporting.

Author: Andres Freund
Discussion: https://postgr.es/m/20171213213754.pydkyjs6bt2hvsdb@alap3.anarazel.de

Files

PathChange+/−
config/c-compiler.m4 modified +8 −4
configure modified +3 −1

Discussion