c – 使用LLVM(低级虚拟机)可以为哪个平台编译二进制文件?

前端之家收集整理的这篇文章主要介绍了c – 使用LLVM(低级虚拟机)可以为哪个平台编译二进制文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对使用LLVM的Clang编译器感兴趣. LLVM声称是跨平台的,但不清楚哪些平台可以作为目标.我已经做了很多关于这个的谷歌搜索,但似乎没有关于LLVM支持的平台的太多信息.我找到的唯一一件事是 “this”,这有点令人困惑.我不确定这是否意味着我可以使用LLVM为这些平台编译二进制文件,或者它是否只在这些平台(或两者)上运行.有更多关于LLVM / Clang编译器的人能告诉我哪些平台可以使用Clang或任何其他LLVM前端?我想要特定的信息(例如“它支持Windows 32位,Windows 64位,Linux 32位,Linux 64位等).谢谢!

编辑:

好吧,我想我对LLVM究竟是什么感到困惑.从我刚刚想到的结果来看,LLVM只是一个字节码解释器.由于LLVM被解释为与可执行二进制文件相比,LLVM二进制文件的速度有多慢?那么如果性能很重要LLVM不是正确的选择吗? “Here”我找到了它支持的架构,但没有说它支持哪些操作系统.如果我避免使用与平台相关的代码,它是否可以在所有操作系如果我能找到任何文章,我会更详细地查找解释LLVM的文章.

解决方法

我这里只回答编辑的问题(提出一个新问题可能更合适).

This是LLVM的一个很好的架构概述. This page还包含大量有关LLVM各方面的文档.

简短版本是LLVM是传统编译器的优化器和后端.它在字节码上运行,字节码本质上是代码的中间表示,用于优化和生成最终二进制. LLVM前端是独立的,并使用自己的内部AST来最终生成字节码.

当您想要生成最终二进制文件时,LLVM实际上非常灵活.您可以立即执行此操作,也可以将其延迟直到安装程序.我相信你甚至可以使用它的JIT在执行期间生成最终的二进制文件(不是100%肯定这一点).像这样延迟的主要优点是它可以应用特定于其正在执行的环境的优化.

猜你在找的C&C++相关文章