tools: disable LTO for "v8_cppgc_shared" target
"PushAllRegistersAndIterateStack" is implemented in assembly and called from "stack.cc" via 'extern "C"'. [1] However, LTO does not work well with symbol usage from assembly. [2] This change workarounds the issue by disabling LTO for the target. With GCC 10 and "./configure --enable-lto", compilation succeeds after this change. [1] v8/v8@c10863153 [2] https://gcc.gnu.org/wiki/LinkTimeOptimizationFAQ#Symbol_usage_from_assembly_language Refs: #35957 Refs: #38335 Signed-off-by:Jesse Chan <jc@linux.com> PR-URL: https://github.com/nodejs/node/pull/38346 Refs: https://github.com/nodejs/node/issues/35957 Refs: https://github.com/nodejs/node/issues/38335 Reviewed-By:
Khaidi Chu <i@2333.moe> Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Jiawen Geng <technicalcute@gmail.com>
parent
32ade699
Please register or sign in to comment