我们试图实现一个jit编译器,其性能应该与使用clang -o4时的性能相同。有没有一个地方,我可以很容易地获得铛用-o4指定的优化传递列表?在叮当声中为-O4做了哪些优化传递?
4
A
回答
8
就我所知,-O4与启用了-O3 +的LTO(链接时间优化)具有相同的含义。 见folloing代码片段:
- Tools.cpp
// Manually translate -O to -O2 and -O4 to -O3;
- Driver.cpp
// Check for -O4.
另见here:
可以产生位码使用-emit-LLVM或铛文件 - flto或与-O3 -flto同义的-O4标志。
对于与-O3标志一起使用的优化,请参见PassManagerBuilder.cpp文件(查找OptLevel变量 - 它的值为3)。
7
请注意,从LLVM版本5.1 -O4不再意味着链接时间优化。如果你想要,你需要通过-flto。见Xcode 5 Release Notes。
+6
在讨论LLVM时,请使用LLVM版本,而不是Apple LLVM版本 - LLVM当前为3.5,因此5.1不存在。 – Griwes
相关问题
- 1. LLVM - 前端做了哪些优化
- 2. g ++用-Ofast做了哪些额外的优化?
- 3. 哪些更优化?
- 4. 如何查看LLVM选项使用哪些优化传递?
- 5. 为叮当声工具启用RTTI?
- 6. 叮当声问题 - 分析
- 7. Mahout为非结构化数据带来了哪些优势?
- 8. 我对这个函数做了哪些改变来优化执行时间?
- 9. LLVM进行哪些优化以及前端必须实现哪些优化?
- 10. iOS叮当声:错误Xcode 7.3.1
- 11. Windows 10:叮当声,“stdio.h”未找到
- 12. 当MVC验证触发时,对DOM做了哪些更改?
- 13. 线程化二叉树结构在Haskell中提供了哪些优势?
- 14. np.power做了哪些额外的工作?
- 15. 传递参数或在课堂优化
- 16. 在Visual Studio中启用C++ 14叮当声
- 17. 你想解决哪些优化问题?
- 18. Android UI优化有哪些选项?
- 19. 优化SVG有哪些选择?
- 20. 哪些类型按引用传递,哪些类型按值传递?
- 21. 吱吱声/ pharo中存在哪些高级网络对象传递设施?
- 22. 为什么当photoURI传递onActivity()时表示为空?我做错了什么
- 23. 为带有叮当声的文件创建调用图
- 24. c#优化了一些日志语句
- 25. 在C++中优化递归
- 26. Windows Embedded Enterprise为您提供了哪些优势?
- 27. 在java 7中使用线程做了哪些增强?
- 28. C#编译器 - 在优化代码标志打开的情况下执行了哪些优化?
- 29. 我在PHP中声明了哪些静态方法/变量?
- 30. 了解RL中的近端策略优化算法有哪些方法?
注意:这不再正确。该手册现在明确指出“-O4及更高:目前等同于-O3”。使用O4并认为他们在做LTO的人不是。 –