| |
1043 |
1043 |
nonnull(1) nonnull(2); |
| |
1044 |
1044 |
EXTERN void NsfProfileInit(Tcl_Interp *interp) nonnull(1); |
| |
1045 |
1045 |
EXTERN void NsfProfileFree(Tcl_Interp *interp) nonnull(1); |
| |
1046 |
1046 |
EXTERN void NsfProfileClearData(Tcl_Interp *interp) nonnull(1); |
| |
1047 |
1047 |
EXTERN void NsfProfileGetData(Tcl_Interp *interp) nonnull(1); |
| |
1048 |
1048 |
EXTERN int NsfProfileTrace(Tcl_Interp *interp, int withEnable, int withVerbose, int withInmemory, Tcl_Obj *builtins); |
| |
1049 |
1049 |
|
| |
1050 |
1050 |
EXTERN void NsfProfileTraceCall(Tcl_Interp *interp, NsfObject *object, NsfClass *cl, const char *methodName) |
| |
1051 |
1051 |
nonnull(1) nonnull(2) nonnull(4); |
| |
1052 |
1052 |
EXTERN void NsfProfileTraceExit(Tcl_Interp *interp, NsfObject *object, NsfClass *cl, const char *methodName, struct Tcl_Time *trt) |
| |
1053 |
1053 |
nonnull(1) nonnull(2) nonnull(4) nonnull(5); |
| |
1054 |
1054 |
EXTERN void NsfProfileTraceCallAppend(Tcl_Interp *interp, const char *label) |
| |
1055 |
1055 |
nonnull(1) nonnull(2); |
| |
1056 |
1056 |
EXTERN void NsfProfileTraceExitAppend(Tcl_Interp *interp, const char *label, double duration) |
| |
1057 |
1057 |
nonnull(1) nonnull(2); |
| |
1058 |
1058 |
|
| |
1059 |
1059 |
EXTERN NsfCallStackContent *NsfCallStackGetTopFrame(const Tcl_Interp *interp, Tcl_CallFrame **framePtrPtr) |
| |
1060 |
1060 |
nonnull(1); |
| |
1061 |
1061 |
#endif |
| |
1062 |
1062 |
|
| |
1063 |
|
|
| |
1064 |
1063 |
|
| |
1065 |
1064 |
|
| |
1066 |
1065 |
|
| |
1067 |
1066 |
#ifdef NSF_MEM_COUNT |
| |
1068 |
1067 |
void NsfMemCountAlloc(char *id, void *); |
| |
1069 |
1068 |
void NsfMemCountFree(char *id, void *); |
| |
1070 |
1069 |
void NsfMemCountInit(void); |
| |
1071 |
1070 |
void NsfMemCountRelease(void); |
| |
1072 |
1071 |
#endif /* NSF_MEM_COUNT */ |
| |
1073 |
1072 |
|
| |
1074 |
1073 |
|
| |
1075 |
1074 |
|
| |
1076 |
1075 |
|
| |
1077 |
1076 |
#if defined(TCL_STACK_ALLOC_TRACE) |
| |
1078 |
1077 |
# define NsfTclStackFree(interp,ptr,msg) \ |
| |
1079 |
1078 |
fprintf(stderr, "---- TclStackFree %p %s\n", ptr, msg);\ |
| |
1080 |
1079 |
TclStackFree(interp,ptr) |
| |
1081 |
1080 |
|
| |
1082 |
1081 |
static char * |
| |
1083 |
1082 |
NsfTclStackAlloc(Tcl_Interp *interp, size_t size, char *msg) { |