|
@@ -289,6 +289,61 @@ do { \
|
|
|
} while (0);
|
|
|
#endif
|
|
|
|
|
|
+#ifdef FUT_DO_PROBE6STR
|
|
|
+#define _STARPU_FUT_DO_PROBE6STR(CODE, P1, P2, P3, P4, P5, P6, str) FUT_DO_PROBE6STR(CODE, P1, P2, P3, P4, P5, P6, str)
|
|
|
+#else
|
|
|
+#define _STARPU_FUT_DO_PROBE5STR(CODE, P1, P2, P3, P4, P5, P6, str) \
|
|
|
+do { \
|
|
|
+ if(fut_active) { \
|
|
|
+ /* No more than FXT_MAX_PARAMS args are allowed */ \
|
|
|
+ /* we add a \0 just in case ... */ \
|
|
|
+ size_t len = STARPU_MIN(strlen(str)+1, (FXT_MAX_PARAMS - 6)*sizeof(unsigned long));\
|
|
|
+ unsigned nbargs_str = (len + sizeof(unsigned long) - 1)/(sizeof(unsigned long));\
|
|
|
+ unsigned nbargs = 6 + nbargs_str; \
|
|
|
+ size_t total_len = FUT_SIZE(nbargs); \
|
|
|
+ unsigned long *futargs = \
|
|
|
+ fut_getstampedbuffer(FUT_CODE(CODE, nbargs), total_len);\
|
|
|
+ *(futargs++) = (unsigned long)(P1); \
|
|
|
+ *(futargs++) = (unsigned long)(P2); \
|
|
|
+ *(futargs++) = (unsigned long)(P3); \
|
|
|
+ *(futargs++) = (unsigned long)(P4); \
|
|
|
+ *(futargs++) = (unsigned long)(P5); \
|
|
|
+ *(futargs++) = (unsigned long)(P6); \
|
|
|
+ snprintf((char *)futargs, len, "%s", str); \
|
|
|
+ ((char *)futargs)[len - 1] = '\0'; \
|
|
|
+ _STARPU_FUT_COMMIT(total_len); \
|
|
|
+ } \
|
|
|
+} while (0);
|
|
|
+#endif
|
|
|
+
|
|
|
+#ifdef FUT_DO_PROBE7STR
|
|
|
+#define _STARPU_FUT_DO_PROBE7STR(CODE, P1, P2, P3, P4, P5, P6, P7, str) FUT_DO_PROBE7STR(CODE, P1, P2, P3, P4, P5, P6, P7, str)
|
|
|
+#else
|
|
|
+#define _STARPU_FUT_DO_PROBE6STR(CODE, P1, P2, P3, P4, P5, P6, P7, str) \
|
|
|
+do { \
|
|
|
+ if(fut_active) { \
|
|
|
+ /* No more than FXT_MAX_PARAMS args are allowed */ \
|
|
|
+ /* we add a \0 just in case ... */ \
|
|
|
+ size_t len = STARPU_MIN(strlen(str)+1, (FXT_MAX_PARAMS - 7)*sizeof(unsigned long));\
|
|
|
+ unsigned nbargs_str = (len + sizeof(unsigned long) - 1)/(sizeof(unsigned long));\
|
|
|
+ unsigned nbargs = 7 + nbargs_str; \
|
|
|
+ size_t total_len = FUT_SIZE(nbargs); \
|
|
|
+ unsigned long *futargs = \
|
|
|
+ fut_getstampedbuffer(FUT_CODE(CODE, nbargs), total_len);\
|
|
|
+ *(futargs++) = (unsigned long)(P1); \
|
|
|
+ *(futargs++) = (unsigned long)(P2); \
|
|
|
+ *(futargs++) = (unsigned long)(P3); \
|
|
|
+ *(futargs++) = (unsigned long)(P4); \
|
|
|
+ *(futargs++) = (unsigned long)(P5); \
|
|
|
+ *(futargs++) = (unsigned long)(P6); \
|
|
|
+ *(futargs++) = (unsigned long)(P7); \
|
|
|
+ snprintf((char *)futargs, len, "%s", str); \
|
|
|
+ ((char *)futargs)[len - 1] = '\0'; \
|
|
|
+ _STARPU_FUT_COMMIT(total_len); \
|
|
|
+ } \
|
|
|
+} while (0);
|
|
|
+#endif
|
|
|
+
|
|
|
#ifndef FUT_RAW_PROBE7
|
|
|
#define FUT_RAW_PROBE7(CODE,P1,P2,P3,P4,P5,P6,P7) do { \
|
|
|
if(fut_active) { \
|