summaryrefslogtreecommitdiffstats
path: root/includes/sys
diff options
context:
space:
mode:
Diffstat (limited to 'includes/sys')
-rw-r--r--includes/sys/sdt.h32
1 files changed, 19 insertions, 13 deletions
diff --git a/includes/sys/sdt.h b/includes/sys/sdt.h
index c3fa16d9..c2242303 100644
--- a/includes/sys/sdt.h
+++ b/includes/sys/sdt.h
@@ -13,6 +13,12 @@
#include <string.h>
#include <sys/types.h>
+#ifdef __LP64__
+#define STAP_PROBE_ADDR "\t.quad "
+#else
+#define STAP_PROBE_ADDR "\t.long "
+#endif
+
#define STAP_PROBE_DATA_(probe) \
__asm__ volatile (".section .probes\n" \
"\t.align 8\n" \
@@ -20,9 +26,9 @@
"\t.align 4\n" \
"\t.int 0x31425250\n" \
"\t.align 8\n" \
- "\t.long 1b\n" \
+ STAP_PROBE_ADDR "1b\n" \
"\t.align 8\n" \
- "\t.long 2f\n" \
+ STAP_PROBE_ADDR "2f\n" \
"\t.previous\n")
#define STAP_PROBE_DATA(probe) \
@@ -56,7 +62,7 @@
do { \
STAP_PROBE_DATA(probe); \
__asm__ volatile ("2:\n" \
- "\tnop"); \
+ "\tnop 0"); \
} while (0)
#define STAP_PROBE1_(probe,label,parm1) \
@@ -67,7 +73,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 */" :: "g"(arg1)); \
+ "\tnop 0 /* %0 */" :: "g"(arg1)); \
} while (0)
#define STAP_PROBE2_(probe,label,parm1,parm2) \
@@ -79,7 +85,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 */" :: "g"(arg1), "g"(arg2)); \
+ "\tnop 0 /* %0 %1 */" :: "g"(arg1), "g"(arg2)); \
} while (0)
#define STAP_PROBE3_(probe,label,parm1,parm2,parm3) \
@@ -92,7 +98,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 */" :: "g"(arg1), "g"(arg2), "g"(arg3)); \
+ "\tnop 0 /* %0 %1 %2 */" :: "g"(arg1), "g"(arg2), "g"(arg3)); \
} while (0)
#define STAP_PROBE4_(probe,label,parm1,parm2,parm3,parm4) \
@@ -106,7 +112,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4)); \
+ "\tnop 0 /* %0 %1 %2 %3 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4)); \
} while (0)
#define STAP_PROBE5_(probe,label,parm1,parm2,parm3,parm4,parm5) \
@@ -121,7 +127,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 %4 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5)); \
+ "\tnop 0 /* %0 %1 %2 %3 %4 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5)); \
} while (0)
#define STAP_PROBE6_(probe,label,parm1,parm2,parm3,parm4,parm5,parm6) \
@@ -137,7 +143,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 %4 %5 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6)); \
+ "\tnop 0 /* %0 %1 %2 %3 %4 %5 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6)); \
} while (0)
#define STAP_PROBE7_(probe,label,parm1,parm2,parm3,parm4,parm5,parm6,parm7) \
@@ -154,7 +160,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 %4 %5 %6 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7)); \
+ "\tnop 0 /* %0 %1 %2 %3 %4 %5 %6 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7)); \
} while (0)
#define STAP_PROBE8_(probe,label,parm1,parm2,parm3,parm4,parm5,parm6,parm7,parm8) \
@@ -172,7 +178,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 %4 %5 %6 %7 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7), "g"(arg8)); \
+ "\tnop 0 /* %0 %1 %2 %3 %4 %5 %6 %7 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7), "g"(arg8)); \
} while (0)
#define STAP_PROBE9_(probe,label,parm1,parm2,parm3,parm4,parm5,parm6,parm7,parm8,parm9) \
@@ -191,7 +197,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 %4 %5 %6 %7 %8 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7), "g"(arg8), "g"(arg9)); \
+ "\tnop 0 /* %0 %1 %2 %3 %4 %5 %6 %7 %8 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7), "g"(arg8), "g"(arg9)); \
} while (0)
#define STAP_PROBE10_(probe,label,parm1,parm2,parm3,parm4,parm5,parm6,parm7,parm8,parm9,parm10) \
@@ -211,7 +217,7 @@ do { \
STAP_PROBE_DATA(probe); \
label: \
__asm__ volatile ("2:\n" \
- "\tnop /* %0 %1 %2 %3 %4 %5 %6 %7 %8 %9 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7), "g"(arg8), "g"(arg9), "g"(arg10)); \
+ "\tnop 0 /* %0 %1 %2 %3 %4 %5 %6 %7 %8 %9 */" :: "g"(arg1), "g"(arg2), "g"(arg3), "g"(arg4), "g"(arg5), "g"(arg6), "g"(arg7), "g"(arg8), "g"(arg9), "g"(arg10)); \
} while (0)
#define STAP_PROBE(provider,probe) \