Skip to content

Commit

Permalink
Remove H5TRACE macros from H5private.h
Browse files Browse the repository at this point in the history
  • Loading branch information
derobins committed Apr 7, 2024
1 parent 742ce91 commit 6f2c822
Showing 1 changed file with 4 additions and 78 deletions.
82 changes: 4 additions & 78 deletions src/H5private.h
Original file line number Diff line number Diff line change
Expand Up @@ -1147,91 +1147,17 @@ extern H5_debug_t H5_debug_g;
extern const char H5build_settings[];

/*-------------------------------------------------------------------------
* Purpose: These macros are inserted automatically just after the
* FUNC_ENTER() macro of API functions and are used to trace
* application program execution. Unless H5_DEBUG_API has been
* defined they are no-ops.
* Purpose: These macros are inserted automatically in H5ES_insert() calls
* and are intended for use with debugging failed events in event
* sets
*
* Arguments: R - Return type encoded as a string
* Arguments: C - Caller (__func__ when inserted)
* T - Argument types encoded as a string
* A0-An - Arguments. The number at the end of the macro name
* indicates the number of arguments.
*
*-------------------------------------------------------------------------
*/
#ifdef H5_DEBUG_API

#define H5TRACE_DECL \
const char *RTYPE = NULL; \
double CALLTIME;

#define H5TRACE0(R, T) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T)
#define H5TRACE1(R, T, A0) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0)
#define H5TRACE2(R, T, A0, A1) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1)
#define H5TRACE3(R, T, A0, A1, A2) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2)
#define H5TRACE4(R, T, A0, A1, A2, A3) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3)
#define H5TRACE5(R, T, A0, A1, A2, A3, A4) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4)
#define H5TRACE6(R, T, A0, A1, A2, A3, A4, A5) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5)
#define H5TRACE7(R, T, A0, A1, A2, A3, A4, A5, A6) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5, #A6, A6)
#define H5TRACE8(R, T, A0, A1, A2, A3, A4, A5, A6, A7) \
RTYPE = R; \
CALLTIME = \
H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5, #A6, A6, #A7, A7)
#define H5TRACE9(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5, #A6, A6, \
#A7, A7, #A8, A8)
#define H5TRACE10(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5, #A6, A6, \
#A7, A7, #A8, A8, #A9, A9)
#define H5TRACE11(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5, #A6, A6, \
#A7, A7, #A8, A8, #A9, A9, #A10, A10)
#define H5TRACE12(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) \
RTYPE = R; \
CALLTIME = H5_trace(NULL, __func__, T, #A0, A0, #A1, A1, #A2, A2, #A3, A3, #A4, A4, #A5, A5, #A6, A6, \
#A7, A7, #A8, A8, #A9, A9, #A10, A10, #A11, A11)

#define H5TRACE_RETURN(V) \
if (RTYPE) { \
H5_trace(&CALLTIME, __func__, RTYPE, NULL, V); \
RTYPE = NULL; \
}
#else
#define H5TRACE_DECL /*void*/
#define H5TRACE0(R, T) /*void*/
#define H5TRACE1(R, T, A0) /*void*/
#define H5TRACE2(R, T, A0, A1) /*void*/
#define H5TRACE3(R, T, A0, A1, A2) /*void*/
#define H5TRACE4(R, T, A0, A1, A2, A3) /*void*/
#define H5TRACE5(R, T, A0, A1, A2, A3, A4) /*void*/
#define H5TRACE6(R, T, A0, A1, A2, A3, A4, A5) /*void*/
#define H5TRACE7(R, T, A0, A1, A2, A3, A4, A5, A6) /*void*/
#define H5TRACE8(R, T, A0, A1, A2, A3, A4, A5, A6, A7) /*void*/
#define H5TRACE9(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8) /*void*/
#define H5TRACE10(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9) /*void*/
#define H5TRACE11(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) /*void*/
#define H5TRACE12(R, T, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) /*void*/
#define H5TRACE_RETURN(V) /*void*/
#endif /* H5_DEBUG_API */

/* Argument tracing macros (defined all the time) */
#define H5ARG_TRACE0(C, T) C, T
Expand Down

0 comments on commit 6f2c822

Please sign in to comment.