Prevent inlining for more functions.

Clang is inlining quite aggressively.
This commit is contained in:
Simon Ruderich
2013-06-10 14:11:04 +02:00
parent 428e15bf68
commit 488159627f
2 changed files with 7 additions and 1 deletions

View File

@@ -30,6 +30,12 @@
#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. */

View File

@@ -300,7 +300,7 @@ static int tracked_fds_remove(int fd) {
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