lttng: update flags for gc tracing
PR-URL: https://github.com/nodejs/node/pull/3388 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
This commit is contained in:
parent
adfd20b6fd
commit
9adc6a6bd0
@ -7,6 +7,17 @@
|
||||
|
||||
namespace node {
|
||||
|
||||
#define FOR_ALL_GC_TYPES(APPLY) \
|
||||
APPLY(kGCTypeScavenge) \
|
||||
APPLY(kGCTypeMarkSweepCompact) \
|
||||
APPLY(kGCTypeAll)
|
||||
|
||||
#define FOR_ALL_GC_CALLBACK_FLAGS(APPLY) \
|
||||
APPLY(kNoGCCallbackFlags) \
|
||||
APPLY(kGCCallbackFlagConstructRetainedObjectInfos) \
|
||||
APPLY(kGCCallbackFlagForced) \
|
||||
APPLY(kGCCallbackFlagSynchronousPhantomCallbackProcessing)
|
||||
|
||||
void NODE_HTTP_SERVER_REQUEST(node_lttng_http_server_request_t* req,
|
||||
node_lttng_connection_t* conn,
|
||||
const char *remote, int port,
|
||||
@ -48,42 +59,33 @@ void NODE_NET_STREAM_END(node_lttng_connection_t* conn,
|
||||
void NODE_GC_START(v8::GCType type,
|
||||
v8::GCCallbackFlags flags,
|
||||
v8::Isolate* isolate) {
|
||||
const char* typeStr = "";
|
||||
const char* flagsStr = "";
|
||||
if (type == v8::GCType::kGCTypeScavenge) {
|
||||
typeStr = "kGCTypeScavenge";
|
||||
} else if (type == v8::GCType::kGCTypeMarkSweepCompact) {
|
||||
typeStr = "kGCTypeMarkSweepCompact";
|
||||
} else if (type == v8::GCType::kGCTypeAll) {
|
||||
typeStr = "kGCTypeAll";
|
||||
}
|
||||
if (flags == v8::GCCallbackFlags::kNoGCCallbackFlags) {
|
||||
flagsStr = "kNoGCCallbackFlags";
|
||||
} else if (flags == v8::GCCallbackFlags::kGCCallbackFlagCompacted) {
|
||||
flagsStr = "kGCCallbackFlagCompacted";
|
||||
}
|
||||
const char* typeStr = "Unkown GC Type";
|
||||
const char* flagsStr = "Unknown GC Flag";
|
||||
|
||||
#define BUILD_IF(f) if (type == v8::GCType::f) { typeStr = #f; }
|
||||
FOR_ALL_GC_TYPES(BUILD_IF);
|
||||
#undef BUILD_IF
|
||||
|
||||
#define BUILD_IF(f) if (flags == v8::GCCallbackFlags::f) { flagsStr = #f; }
|
||||
FOR_ALL_GC_CALLBACK_FLAGS(BUILD_IF);
|
||||
#undef BUILD_IF
|
||||
|
||||
tracepoint(node, gc_start, typeStr, flagsStr);
|
||||
}
|
||||
|
||||
|
||||
void NODE_GC_DONE(v8::GCType type,
|
||||
v8::GCCallbackFlags flags,
|
||||
v8::Isolate* isolate) {
|
||||
const char* typeStr = "";
|
||||
const char* flagsStr = "";
|
||||
if (type == v8::GCType::kGCTypeScavenge) {
|
||||
typeStr = "kGCTypeScavenge";
|
||||
} else if (type == v8::GCType::kGCTypeMarkSweepCompact) {
|
||||
typeStr = "kGCTypeMarkSweepCompact";
|
||||
} else if (type == v8::GCType::kGCTypeAll) {
|
||||
typeStr = "kGCTypeAll";
|
||||
}
|
||||
if (flags == v8::GCCallbackFlags::kNoGCCallbackFlags) {
|
||||
flagsStr = "kNoGCCallbackFlags";
|
||||
} else if (flags == v8::GCCallbackFlags::kGCCallbackFlagCompacted) {
|
||||
flagsStr = "kGCCallbackFlagCompacted";
|
||||
}
|
||||
const char* typeStr = "Unkown GC Type";
|
||||
const char* flagsStr = "Unknown GC Flag";
|
||||
|
||||
#define BUILD_IF(f) if (type == v8::GCType::f) { typeStr = #f; }
|
||||
FOR_ALL_GC_TYPES(BUILD_IF);
|
||||
#undef BUILD_IF
|
||||
|
||||
#define BUILD_IF(f) if (flags == v8::GCCallbackFlags::f) { flagsStr = #f; }
|
||||
FOR_ALL_GC_CALLBACK_FLAGS(BUILD_IF);
|
||||
#undef BUILD_IF
|
||||
|
||||
tracepoint(node, gc_done, typeStr, flagsStr);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user