如何用LLVM替换浏览器JavaScript引擎?

| 作为概念验证,我希望获得一个能够运行LLVM IR的浏览器。基本思想是,任何使用LLVM编译器的语言都将能够作为网络上的一等公民。 (这就是为什么我不想使用LLVM IR-> JS路由而不使用“后备”的原因) LLVM代码应该能够具有相同的限制而具有所有相同的功能(例如DOM)。我正在寻找入门指南,最好的去处是(我有C / C ++经验),最简单的浏览器将要扩展。 理想情况下,我正在寻找一种非常模块化的东西,因此这就像JavaScript引擎一样,是另一个\“脚本引擎\\”,以及将来的任何其他引擎(例如,直接python引擎) 非常感谢     
已邀请:
        Emscripten是针对asm.js的LLVM后端,可以在所有主要浏览器上执行。该项目可以追溯到2010年。这可以为您将IR转换为asm.js。理想情况下,您应该能够扩展项目以支持其他语言,而不仅仅是C / C ++。或作为启动垫,以便根据所需的浏览器界面为执行环境编写绑定之前,将其他组件放置在适当的位置。 asm.js已用于运行Unreal引擎,并已将DosBox移植到Archive.org的游戏存档中。     

要回复问题请先登录注册