如何检查Firefox是否使用asm.js代码

How can I check if Firefox uses asm.js code?

本文关键字:asm js 代码 是否 Firefox 何检查 检查      更新时间:2023-09-26

那么,我如何检查它是像普通Javascript一样通过例如谷歌的V8引擎执行的,还是使用汇编以接近本机的性能执行的?

如果你只看控制台,Firefox就会告诉你你的asm.js是否经过验证。在上面粘贴的脚本的情况下,我得到:

TypeError: asm.js type error: non-expression-statement call must be coerced test.html:23

这表明并非如此。在这种情况下,第23行是:

                return +sqrt(square(x) + square(y));

如果我用这个替换那行:

                return +sqrt(+square(x) + +square(y));

然后错误控制台显示:

Error: successfully compiled asm.js code (total compilation time 0ms)

这意味着一切都很好("错误"只是JS引擎在这种情况下报告成功的一个虚假的怪癖;我提交了https://bugzilla.mozilla.org/show_bug.cgi?id=950527修复)。