X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Feventlog%2FEventLog.h;h=e2b8043f7e508d5427ee2433faaa5f2119ca6e62;hb=6cf8982ac30be6836a0cdd8be5a6ac1a1a144213;hp=c2511b986bdb3e165a14d4ac8ce37291e21de7cc;hpb=c29305dadcb245bb080f65d946d92d0035243b6c;p=ghc-hetmet.git diff --git a/rts/eventlog/EventLog.h b/rts/eventlog/EventLog.h index c2511b9..e2b8043 100644 --- a/rts/eventlog/EventLog.h +++ b/rts/eventlog/EventLog.h @@ -9,10 +9,12 @@ #ifndef EVENTLOG_H #define EVENTLOG_H +#include "rts/EventLogFormat.h" #include "Capability.h" -#include "EventLogFormat.h" -#ifdef EVENTLOG +BEGIN_RTS_PRIVATE + +#ifdef TRACING /* * Descriptions of EventTags for events. @@ -23,30 +25,47 @@ void initEventLogging(void); void endEventLogging(void); void freeEventLogging(void); -void postEvent_(Capability *cap, EventTypeNum tag, StgThreadID id, StgWord64 other); - /* - * Post an event to the capability's event buffer. + * Post a scheduler event to the capability's event buffer (an event + * that has an associated thread). + */ +void postSchedEvent(Capability *cap, EventTypeNum tag, + StgThreadID id, StgWord64 other); + +/* + * Post a nullary event. */ -INLINE_HEADER void postEvent(Capability *cap, EventTypeNum tag, StgThreadID id, StgWord64 other) -{ - if (RtsFlags.EventLogFlags.doEventLogging) { - postEvent_(cap, tag, id, other); - } -} +void postEvent(Capability *cap, EventTypeNum tag); + +void postMsg(char *msg, va_list ap); -void printAndClearEventLog(Capability *cap); +void postUserMsg(Capability *cap, char *msg); -#else /* !EVENTLOG */ +void postCapMsg(Capability *cap, char *msg, va_list ap); -INLINE_HEADER void postEvent(Capability *cap STG_UNUSED, - EventTypeNum tag STG_UNUSED, - StgThreadID id STG_UNUSED, - StgWord64 other STG_UNUSED) -{ - /* nothing */ -} +#else /* !TRACING */ + +INLINE_HEADER void postSchedEvent (Capability *cap STG_UNUSED, + EventTypeNum tag STG_UNUSED, + StgThreadID id STG_UNUSED, + StgWord64 other STG_UNUSED) +{ /* nothing */ } + +INLINE_HEADER void postEvent (Capability *cap STG_UNUSED, + EventTypeNum tag STG_UNUSED) +{ /* nothing */ } + +INLINE_HEADER void postMsg (char *msg STG_UNUSED, + va_list ap STG_UNUSED) +{ /* nothing */ } + +INLINE_HEADER void postCapMsg (Capability *cap, + char *msg STG_UNUSED, + va_list ap STG_UNUSED) +{ /* nothing */ } #endif -#endif /* EVENTLOG_H */ +END_RTS_PRIVATE + +#endif /* TRACING_H */