Improvements: * floating point operations are approx 4x's faster * Now write quiet NaN's * all read/write on floating point now done in C, so no more need for lib/buffer_ieee754.js * float values have more accurate min/max value checks * add additional benchmarks for buffers read/write * created benchmark/_bench_timer.js which is a simple library that can be included into any benchmark and provides an intelligent tracker for sync and async tests * add benchmarks for DataView set methods * add checks and tests to make sure offset is greater than 0
* Moved generated files to a clearer directory. * Improved detection logic for ctrpp.exe tool. Closes #4482
When building custom `node` versions (e.g., floating features/fixes from different versions) it's often useful to specify a custom tag which easily identifies build when invoking `node -v`. Introduce a way to specify this tag in `node_version.h` file or by running `./configure --tag="<tag>"`. Insert it right after the patch version (and before `-pre`, if build is not a release). Closes #4452.
This reverts commit 02dffb0. DEAD_CODE_STRIPPING is stripping out CRYPTO_set_add_lock_callback symbol on which some addons are relying.
The gyp target node_etw didn't list its output dependencies. This was causing virgin builds to fail with a "failed to open file for write" error. With this corrected outputs list, gyp reliably pre-creates required output directories.
gyp sets it to "solaris" by default, but versions of node v0.6.x and older would report "sunos". Let's keep things consistent. Fixes #3944.
The system linker on SunOS doesn't understand --export-dynamic.
Link with -Wl,--export-dynamic, makes symbols from the node binary visible to binary add-ons. Fixes "undefined symbol: _ZN2v811HandleScopeC1Ev" errors when loading add-ons on FreeBSD and likely other BSDs. Fixes #3623.
This commit enables ETW events to be fired on Windows for existing DTrace probes. ETW instrumentation is enabled by default. It is possible to build node.exe without ETW instrumentation by using --without-etw option with configure script.
tools/msvs/res is not an appropriate place.
* process._getActiveHandles() returns a list containing all active handles (timers, sockets, etc.) that have not been unref'd. * process._getActiveRequests() returns a list of active requests (in-flight actions like connecting to a remote host, writing data to a socket, etc.).
This is a squashed commit of the main work done on the domains-wip branch. The original commit messages are preserved for posterity: * Implicitly add EventEmitters to active domain * Implicitly add timers to active domain * domain: add members, remove ctor cb * Don't hijack bound callbacks for Domain error events * Add dispose method * Add domain.remove(ee) method * A test of multiple domains in process at once * Put the active domain on the process object * Only intercept error arg if explicitly requested * Typo * Don't auto-add new domains to the current domain While an automatic parent/child relationship is sort of neat, and leads to some nice error-bubbling characteristics, it also results in keeping a reference to every EE and timer created, unless domains are explicitly disposed of. * Explicitly adding one domain to another is still fine, of course. * Don't allow circular domain->domain memberships * Disposing of a domain removes it from its parent * Domain disposal turns functions into no-ops * More documentation of domains * More thorough dispose() semantics * An example using domains in an HTTP server * Don't handle errors on a disposed domain * Need to push, even if the same domain is entered multiple times * Array.push is too slow for the EE Ctor * lint domain * domain: docs * Also call abort and destroySoon to clean up event emitters * domain: Wrap destroy methods in a try/catch * Attach tick callbacks to active domain * domain: Only implicitly bind timers, not explicitly * domain: Don't fire timers when disposed. * domain: Simplify naming so that MakeCallback works on Timers * Add setInterval and nextTick to domain test * domain: Make stack private
* fixes #2110 * includes V8 postmortem metadata in Solaris builds * adds GYP support for DTrace probes and ustack helper * ustack helper derives constants dynamically from libv8_base.a * build with DTrace support by default on SunOS