aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt7
1 files changed, 7 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b45002d8..3b616b5c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1082,6 +1082,13 @@ if(USE_ATTR_IFUNC STREQUAL "auto")
#endif
static void func(void) { return; }
+
+ /*
+ * The attribute __no_profile_instrument_function__ is
+ * needed with GCC to prevent improper instrumentation in
+ * the ifunc resolver.
+ */
+ __attribute__((__no_profile_instrument_function__))
static void (*resolve_func(void)) (void) { return func; }
void func_ifunc(void)
__attribute__((__ifunc__(\"resolve_func\")));