用调试版本替换 Chrome 的 V8 版本
Replacing V8 version of Chrome with a Debug Build
我想看看 v8 嵌入 chrome 时生成的汇编代码和字节代码。 d8 的独立版本没有 DOM 支持,因此在这种情况下还不够。
运行 './chrome --js-flags="--help"' 显示此 v8 版本支持“--print-bytecode”选项,但是“- -打印代码”不是。
更准确地说,我想 运行 chrome 这样:
'./chrome -js-flags="--print-code"'
如何用支持“--print-code”的调试版本替换google-chrome中的v8版本?
我使用的是 64 位 linux os.
谢谢。
Google Chrome 构建是 link 静态编辑的,这意味着您不能轻易替换 V8 或任何其他组件。
一种选择是从头开始编译 Chromium(这需要几个小时)。当您这样做时,只需将 v8_enable_disassembler = true
添加到您的 GN args 以启用 V8 中的反汇编程序支持(包括 --print-code
支持)。请参阅 https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instructions.md.
中的说明
另一种选择是从持续集成基础设施下载 Chromium 的调试版本(默认支持反汇编程序)。这不受官方支持,但有可能:转到 https://ci.chromium.org/p/chromium/g/main/console,单击 chromium.linux > debug > builder > 64 列中最新的绿色框,向下滚动到 "package build" 步骤,然后单击 "download" link.
警告:这两种方法的共同点是生成的构建可能有很多错误,它们不会自动更新,并且沙箱可能无法正常工作的盒子。您应该只将这些版本用于有针对性的测试,而不是用于常规浏览。
我想看看 v8 嵌入 chrome 时生成的汇编代码和字节代码。 d8 的独立版本没有 DOM 支持,因此在这种情况下还不够。
运行 './chrome --js-flags="--help"' 显示此 v8 版本支持“--print-bytecode”选项,但是“- -打印代码”不是。 更准确地说,我想 运行 chrome 这样:
'./chrome -js-flags="--print-code"'
如何用支持“--print-code”的调试版本替换google-chrome中的v8版本? 我使用的是 64 位 linux os.
谢谢。
Google Chrome 构建是 link 静态编辑的,这意味着您不能轻易替换 V8 或任何其他组件。
一种选择是从头开始编译 Chromium(这需要几个小时)。当您这样做时,只需将 v8_enable_disassembler = true
添加到您的 GN args 以启用 V8 中的反汇编程序支持(包括 --print-code
支持)。请参阅 https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instructions.md.
另一种选择是从持续集成基础设施下载 Chromium 的调试版本(默认支持反汇编程序)。这不受官方支持,但有可能:转到 https://ci.chromium.org/p/chromium/g/main/console,单击 chromium.linux > debug > builder > 64 列中最新的绿色框,向下滚动到 "package build" 步骤,然后单击 "download" link.
警告:这两种方法的共同点是生成的构建可能有很多错误,它们不会自动更新,并且沙箱可能无法正常工作的盒子。您应该只将这些版本用于有针对性的测试,而不是用于常规浏览。