node/lib/internal
Fedor Indutny 54c38eb22e tickprocessor: apply c++filt manually on mac
`/bin/sh -c` trick wasn't working for several reasons:

* `/bin/sh -c "..."` expects the first argument after `"..."` to be a
  `$0`, not a `$1`. Previously `-n` wasn't passed to `nm` because of
  this, and many symbols were ordered improperly
* `c++filt` was applied not only to the names of the functions but to
  their `nm` prefixes like `t` and `a` (`t xxx` turns into
  `unsigned char xxx`).

Instead of applying `c++filt` wide and using `sh -c`, execute `nm` as
requested by `deps/v8/tools/tickprocessor.js` and apply `c++filt` to all
matching entries manually.

Included test demonstrates where previous approach failed: all builtins
were merged into `v8::internal::Builtins::~Builtins`, because they were
prefixed by `t` in `nm` output.

PR-URL: https://github.com/nodejs/node/pull/8480
Reviewed-By: Matthew Loring <mattloring@google.com>
2016-11-22 17:38:09 +08:00
..
streams
child_process.js child_process: workaround fd passing issue on OS X 2016-10-26 14:09:13 -04:00
cluster.js
freelist.js lib: freelist: use .pop() for allocation 2016-03-21 12:57:52 -07:00
module.js
net.js
readme.md
repl.js repl: create history file with mode 0600 2016-06-23 16:59:38 -07:00
socket_list.js child_process: refactor self=this in socket_list 2016-04-08 17:34:18 -04:00
util.js
v8_prof_polyfill.js tickprocessor: apply c++filt manually on mac 2016-11-22 17:38:09 +08:00
v8_prof_processor.js tickprocessor: apply c++filt manually on mac 2016-11-22 17:38:09 +08:00

Internal Modules

The modules in lib/internal are intended for internal use in Node.js core only, and are not accessible with require() from user modules. These are subject to change at any time. Reliance on these modules outside of core is not supported in any way.