是否有 Javascript LLVM IR 位码解释器?

pat*_*lea 5 javascript interpreter llvm llvm-ir

我正在尝试在浏览器中运行现有的 C 项目,而不依赖于插件/插件/等。源是 3MB,生成的编译位代码(llvm-link)是 3.5M。

使用 lli 运​​行 bitcode 时,内存使用量约为 150MB,与编译本机 ELF 二进制文件并运行时相同。

Emscripten (-O2 --closure 0) 将位码编译为 24MB .js 文件,当使用 Node.js 运行该文件时,内存不足(顶部显示大约 2GB 的内存使用)。

正如 jslinux 演示所示,应该可以解释本机代码。可以说,以可接受的性能解释编译后的位码应该更容易。我的问题是是否有任何项目试图在 javascript 中解释 LLVM IR(而不是像 Emscripten、mandreel 和其他人那样将 IR 翻译成 javascript)。