/* Diagnostic only: the same exp, log and pow on every glibc, computed in x87 extended precision and
 * rounded to double. If two systems print the same numbers with this preloaded and different numbers
 * without it, the difference comes from these three functions. It is not a fix: its results differ from
 * every stock glibc.
 *
 *   gcc -O2 -shared -fPIC -fno-builtin -o shim.so shim.c -lm
 *   LD_PRELOAD=$PWD/shim.so python ql_last_digits.py > with-shim.txt
 */
#include <math.h>
double exp(double x) { return (double)expl((long double)x); }
double log(double x) { return (double)logl((long double)x); }
double pow(double x, double y) { return (double)powl((long double)x, (long double)y); }
