2013-12-19 50 views
2

是否可以修改和彙編可由英特爾C編譯器生成的.s文件? 我知道這是可能用gcc通過:修改並彙編.s文件

  1. gcc -S file.c
  2. 修改file.s
  3. as file.s -o file.o

但是,如果我嘗試正好與Intel的ICC一樣會導致一些錯誤和警告。我在這裏錯過了什麼?謝謝。

+0

首先生成彙編與Intel語法從源代碼開始,讓我們知道您正在修改的代碼示例? – Chinna

+0

正如(2)所述,我正在修改生成的程序集文件。假設我正在改變兩條獨立指令的順序。 – user1829358

+1

錯誤是什麼?如何知道錯誤而不知道錯誤? –

回答

2

彙編語言的問題在於沒有標準語法,用於編寫彙編的最流行的2語法是T和Intel。

猜測默認情況下gcc使用哪一個,英特爾使用哪一個。

我建議在gcc下也使用英特爾語法,因此您只能使用1種語法。

如何在C

gcc -S -masm=intel source.c 
+0

謝謝。我的問題是我通過以下方式生成.s文件:icc -S -c file.c -masm = intel。然而,第二步(即(2)icc file.s -o file.o)失敗。從(1)中刪除-masm = intel解決了這個問題。有沒有一種方法可以使用icc生成使用intel語法的.s文件,並將該.s文件組裝成.o文件? – user1829358

+0

@ user1829358看到這個http://stackoverflow.com/questions/5367858/integrating-intels-icc-with-gcc – user2485710