閱讀gcc的手冊,我看到一個-ftree-***
系列優化選項。這些選項的目的是什麼?這些「樹」是什麼?GCC優化選項的「tree - ***」系列的目的是什麼?
回答
它們是在編譯器內部(SSA)樹上工作的優化器通道,而不是RTL(寄存器傳輸語言)級別。
有關概述這是怎麼回事,看到海合會內部文檔:http://gcc.gnu.org/onlinedocs/gccint/
有關SSA的介紹,請參閱http://en.wikipedia.org/wiki/Static_single_assignment_form
謝謝。我有一種感覺,我在這裏打開了一堆蠕蟲(我不是一個編譯器人員),但是你能詳細說明一下這些SSA樹嗎? 「編譯器內部」和「RTL級別」之間有什麼區別? – ysap 2012-02-29 22:49:03
@ysap:見http://www.redhat.com/magazine/002dec04/features/gcc/figs/tree-ssa-phases.png from http://www.redhat.com/magazine/002dec04/features/gcc /關於gcc編譯步驟的概述 – Christoph 2012-02-29 22:56:00
@ysap:這是一個很大的話題。除了Christoph發佈的友好鏈接之外,請參閱我在編輯中添加的鏈接。 – janneb 2012-02-29 23:03:27
- 1. GCC優化選項
- 2. 什麼是GCC昂貴的優化?
- 3. gcc優化:-O0做什麼?
- 4. gcc中的ffreestanding選項是什麼?
- 5. gcc中的-o選項是什麼?
- 6. 特定體系結構的默認GCC優化選項
- 7. NetBeans IDE gcc編譯器優化選項
- 8. T-tree優於B +/-樹的優點是什麼?
- 9. 爲什麼GCC優化這個增量?
- 10. GCC中的-c選項做什麼
- 11. AIX的XL編譯器的-qfuncsect選項的gcc等效選項是什麼?
- 12. gcc的優化的說明
- 13. GCC printf優化
- 14. GCC和Clang優化選項之間的區別
- 15. gcc和arm-linux-gcc之間的關係是什麼
- 16. 優化項目的反轉
- 17. Angular.JS項目的SEO優化
- 18. 什麼是gcc序列?
- 19. 瞭解gcc的優化
- 20. 在GCC 4.1.1的文件中優化單個函數的方法是什麼?
- 21. 模擬Microsoft C編譯器行爲的GCC選項是什麼?
- 22. GlusterFS服務器選項cluster.readdir優化控件是什麼?
- 23. 什麼是/優化C#編譯器密鑰的目的?
- 24. 在VC是什麼的#pragma當量/ O2編譯選項的(優化速度)
- 25. gcc:爲什麼文字的轉換不被優化?
- 26. 有11名選手的Min Loser Tree是什麼樣的?
- 27. GCC優化步驟
- 28. D上的優化級別是什麼?
- 29. R-Tree中的粉絲是什麼?
- 30. GCC堆棧優化
我想,是指抽象語法樹,代表你的程序。 – 2012-02-29 22:40:36