Clang is inlining quite aggressively.
#include <dlfcn.h>
#include <errno.h>
+static void *dlsym_function(char const *name)
+#ifdef HAVE___ATTRIBUTE__
+ __attribute__((noinline))
+#endif
+;
+
/* Load the function name using dlsym() and return it. Terminate program on
* failure. Split in function and macro to reduce code inserted into the
* function using the macro. */
return 0;
}
-static int tracked_fds_find_slow(int fd);
+static int tracked_fds_find_slow(int fd) __noinline;
/*
* tracked_fds_find() is called for each hook call and should be as fast as
* possible. As most file descriptors are < TRACKFDS_STATIC_COUNT, force the