diff mbox

[04/19] Use MODULE_NAME in stap-probe instead of IN_LIB

Message ID 1408618663-2281-5-git-send-email-siddhesh@redhat.com
State New
Headers show

Commit Message

Siddhesh Poyarekar Aug. 21, 2014, 10:57 a.m. UTC
Verified that the generated code is unchanged on x86_64.

	* scripts/gen-libc-modules.awk (END): Generate defines for
	MODULE_NAME.
	* include/stap-probe.h (LIBC_PROBE_1): Use MODULE_NAME instead
	of IN_LIB.
	(STAP_PROBE_ASM): Likewise.
---
 include/stap-probe.h         | 6 +++---
 scripts/gen-libc-modules.awk | 9 ++++++++-
 2 files changed, 11 insertions(+), 4 deletions(-)
diff mbox

Patch

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
 
diff --git a/scripts/gen-libc-modules.awk b/scripts/gen-libc-modules.awk
index d3382b6..1ae4af3 100644
--- a/scripts/gen-libc-modules.awk
+++ b/scripts/gen-libc-modules.awk
@@ -32,9 +32,16 @@  match (FILENAME, ".*soversions.i") {
 
 # Finally, print out the header file.
 END {
-  printf ("/* AUTOGENERATED BY gen-libc-modules.awk, DO NOT EDIT.  */\n\n")
+  printf ("/* AUTOGENERATED BY gen-libc-modules.awk, DO NOT EDIT.  */\n")
   i = 1
+  print ("\n/* Allowed values for IN_MODULE.  */")
   for (l in libs) {
     printf ("#define MODULE_%s %d\n", l, libs[l])
   }
+  print ("\n/* Module names, used in stap-probe.h */")
+  for (l in libs) {
+    printf ("#if IN_MODULE == MODULE_%s\n", l)
+    printf ("# define MODULE_NAME %s\n", l)
+    printf ("#endif\n")
+  }
 }