1

我想用 gcc 创建一些汇编代码。当我使用时,gcc -masm=intel -S test.c我得到了满满的汇编代码.def.cfi无法组装的标签。有没有办法在没有这个标签的情况下创建汇编代码?

例如:一个简单的 c 代码,如:

int main() {
    return 0;
}

编译为:

.file   "test.c"
.intel_syntax noprefix
.def    ___main;    .scl    2;  .type   32; .endef
.text
.globl  _main
.def    _main;  .scl    2;  .type   32; .endef
_main:
LFB0:
.cfi_startproc
push    ebp
.cfi_def_cfa_offset 8
.cfi_offset 5, -8
mov ebp, esp
.cfi_def_cfa_register 5
and esp, -16
call    ___main
mov eax, 0
leave
.cfi_restore 5
.cfi_def_cfa 4, 4
ret
.cfi_endproc
LFE0:

但我想要的是这样的:

_main:
    push    ebp
    mov ebp, esp
    and esp, -16
    call    ___main
    mov eax, 0
    leave
    ret

我希望有办法做到这一点。先谢谢了。

4

0 回答 0