2013-12-19 46 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