Add support for including GNU Gold linker's section ordering
GNU Gold linker will be auto-detected on Linux systems. If available the pre-generated section ordering file will be used while linking the node binary. The most frequently used functions in the node+deps runtime will be packed together as the gold linker will re-order the text sections based on the input. This will help improve performance of production workloads through reduction of iTLB misses.
The benchmark used for training is nodejs-ghost-bench https://github.com/sathvikl/ghostjs-benchmark
Checklist
- [ x ]
make -j4 test
(UNIX), orvcbuild test
(Windows) passes - [ x ] tests and/or benchmarks are included
-
documentation is changed or added - [x ] commit message follows commit guidelines
Affected core subsystem(s)
Build