Sun*_*day 10 compiler-construction llvm llvm-gcc ios
LLVM GCC 4.2和Apple LLVM编译器3.1之间的主要区别是什么?
我对编译器很新,所以任何帮助都表示赞赏.此外,我对这两个编译器如何影响游戏性能特别感兴趣.
不同之处在于技术和速度.
当苹果公司开始从GCC的编译器和工具链过渡时,CLANG仍然年轻且有缺陷,因此LLVM被建立为GCC的后端,以促进其最终的替换.因此,代码进入并由GCC编译成某种中间形式,但被发送到LLVM以提供最终的机器代码和包装.
最终,LLVM,特别是CLANG已经足够成熟,可以直接取代GCC,这为编译和机器代码输出质量提供了惊人的速度提升(尽管许多人认为GCC仍然以牺牲速度为代价生成质量更好的代码) .
但是要解决您对游戏性能的担忧:虽然CLANG可能提供"更好"的编译体验,但性能不是编译器的工作.虽然优化和简化是编译过程的一部分,但人们仍然编写滞后游戏或产生无限循环而浪费到堆栈的事实表明性能是你的工作.编译器只能做这么多,其余的由你决定.编译器的类型或供应商也不会影响或破坏您的游戏或影响帧速率或可用性.您应该阅读有关ARM体系结构的低级优化的信息.关于NEON和乐器的一些文章比学习"优化编译器"更有益处.
归档时间: |
|
查看次数: |
7385 次 |
最近记录: |