我們試圖實現一個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的人不是。 –