I was investigating perf in node-chakracore, and I noticed that there were a lot of calls to IsExternal. I was surprised to find that it was essentially due to this line: https://github.com/nodejs/node/blob/master/src/env-inl.h#L275
According to https://github.com/nodejs/node/blob/master/src/util.h#L130 ASSERT is enabled unless NDEBUG is defined and I don't see anywhere in the build that sets that. Is this intentional? There is also a CHECK macro which doesn't have the same off switch, so it does seem like asserts are intended to be disabled in release builds.