aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@redhat.com>2014-11-20 11:42:00 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2014-11-24 11:41:42 +0530
commit279bc5b3c384c09746fbadb2b68c6db9e833c064 (patch)
treee0f6a347b712368adaef58c3befa459d6c262117 /include
parente0cfa51064489fdff85953bad1e0f3c42e093662 (diff)
downloadglibc-279bc5b3c384c09746fbadb2b68c6db9e833c064.zip
glibc-279bc5b3c384c09746fbadb2b68c6db9e833c064.tar.gz
glibc-279bc5b3c384c09746fbadb2b68c6db9e833c064.tar.bz2
Use MODULE_NAME in stap-probe instead of IN_LIB
Define MODULE_NAME in the build command and define IN_MODULE using MODULE_NAME. Verified that the generated code is unchanged on x86_64. * Makeconfig (module-cppflags-real): Define MODULE_NAME instead of IN_MODULE. * include/libc-symbols.h (IN_MODULE): Define using MODULE_NAME. (PASTE_NAME, PASTE_NAME1): New macros. * include/stap-probe.h (LIBC_PROBE_1): Use MODULE_NAME instead of IN_LIB. (STAP_PROBE_ASM): Likewise.
Diffstat (limited to 'include')
-rw-r--r--include/libc-symbols.h4
-rw-r--r--include/stap-probe.h6
2 files changed, 7 insertions, 3 deletions
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 9c5c9bb..5cbf473 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -20,8 +20,12 @@
#ifndef _LIBC_SYMBOLS_H
#define _LIBC_SYMBOLS_H 1
+#define IN_MODULE PASTE_NAME (MODULE_, MODULE_NAME)
#define IS_IN(lib) (IN_MODULE == MODULE_##lib)
+#define PASTE_NAME(a,b) PASTE_NAME1 (a,b)
+#define PASTE_NAME1(a,b) a##b
+
/* This file's macros are included implicitly in the compilation of every
file in the C library by -imacros.
diff --git a/include/stap-probe.h b/include/stap-probe.h
index 688646c..150fc1e 100644
--- a/include/stap-probe.h
+++ b/include/stap-probe.h
@@ -30,7 +30,7 @@
Systemtap's header defines the macros STAP_PROBE (provider, name) and
STAP_PROBEn (provider, name, arg1, ..., argn). For "provider" we paste
- in the IN_LIB name (libc, libpthread, etc.) automagically.
+ in MODULE_NAME (libc, libpthread, etc.) automagically.
The format of the arg parameters is discussed here:
@@ -53,7 +53,7 @@
# endif
# define LIBC_PROBE(name, n, ...) \
- LIBC_PROBE_1 (IN_LIB, name, n, ## __VA_ARGS__)
+ LIBC_PROBE_1 (MODULE_NAME, name, n, ## __VA_ARGS__)
# define LIBC_PROBE_1(lib, name, n, ...) \
STAP_PROBE##n (lib, name, ## __VA_ARGS__)
@@ -61,7 +61,7 @@
# define STAP_PROBE0 STAP_PROBE
# define LIBC_PROBE_ASM(name, template) \
- STAP_PROBE_ASM (IN_LIB, name, template)
+ STAP_PROBE_ASM (MODULE_NAME, name, template)
# define LIBC_PROBE_ASM_OPERANDS STAP_PROBE_ASM_OPERANDS