具有-masm = intel的GCC生成AT&T语法

时间:2019-09-21 19:18:33

标签: gcc

下面是我用来使用-masm = intel输出到汇编语言列表的gcc命令行字符串。这两个命令行字符串都可以工作,但是它们都产生AT&T语法,而不是Intel语法。

stateful=True

但是会产生混合的Intel和AT&T语法。

gcc -S -masm=intel Svx.c

输出看起来像是经过修改的Intel语法,但是未翻译用于堆栈处理的AT&T特定的cfi指令。加上DWORD PTR -4 [rbp],1不是Intel语法。

为什么我将AT&T和Intel语法与-masm = intel混合使用?

1 个答案:

答案 0 :(得分:2)

CFI伪指令为directives for the GNU assembler。通常,此类指令(以.开头)与您选择的汇编方言无关,因此,您担心的行不是“特定于AT&T”的,甚至与AT&T。

add DWORD PTR -4[rbp],1 Intel语法。