我們的編譯器課程特性練習要求我們比較使用-O和-O3 gcc選項構建的代碼。我的機器生成的代碼與課程中的代碼不一樣。是否有方法來確定課程中使用的優化選項,以便在我的機器上獲得相同的代碼並進行更有意義的觀察?特定體系結構的默認GCC優化選項
我發現如何讓我的機器上的優化選項:
$ gcc -O3 -Q --help=optimizer
但是,有沒有辦法來推斷這些教授的機器上,除了通過嘗試所有這些,一個改變他們一個(。 ident「GCC:(Debian 4.3.2-1.1)4.3.2」)?
感謝您的關注。
編輯: 我注意到在我的機器上生成的代碼缺乏在我的教授生成的序幕和尾聲。有沒有強制開啓序幕的選項(谷歌似乎沒有帶來太多)?
幾個發行版*補丁* GCC的FSF源代碼。所以Debian GCC可能與CentOS不同,即使版本號相同!或者你可以編譯FSF源代碼。 – 2014-10-26 15:45:37
Hehe嘗試所有選項,直到獲得相同的代碼可能會更快:D – pouzzler 2014-10-26 15:49:41
-Ox中包含的某些優化不能單獨選擇(不存在此類開關)。詳情請見:https://gcc.gnu。組織/ onlinedocs/GCC-4.9.1/GCC /優化,Options.html#優化選項 – dbrank0 2014-10-26 16:53:22