gpt4 book ai didi

javascript - Emscripten 将 C++ 编译为 JavaScript 和 Asm.js 的错误结果

转载 作者:行者123 更新时间:2023-11-30 03:58:40 25 4
gpt4 key购买 nike

对于大学类(class),我必须演示 asm.js。我找到了一个教程 ( http://www.sitepoint.com/understanding-asm-js/ ),这正是我要找的。所以我创建了给定的 C++-File 并用 Emscripten 编译了它。结果是一个将近 10000 行的长文件。无处可找到“使用 asm”语句。与手写的 JavaScript 文件相比,它要慢得多。

我正在使用可移植的 Emscripten-SDK-package 并在使用前对其进行了更新。

如何让 Emscripten 生成好的 asm 代码?


更新:我在没有 Emscipten 的情况下为我的演示找到了一个不同的解决方案: https://gist.github.com/dherman/3d0b4733303eaf4bae5e .也许有人需要这个。

最佳答案

从我的测试来看,Emscripten 似乎只使用 asm.js,并将 "use asm"; 放入优化级别为 -O1 及以上的生成的 Javascript 中。所以在编译的时候需要将-O1(或者比1更高的级别)传递给编译器:

eemcc source.cpp -O1 -o target.js`

如果您不指定优化级别,或传递 -O0:

eemcc source.cpp -O0 -o target.js`

然后 "use asm"; 不会被放入生成的 Javascript 中。

关于javascript - Emscripten 将 C++ 编译为 JavaScript 和 Asm.js 的错误结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27316456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com