Chiedi il codice assembly al tuo compilatore GNU GCC:
gcc nomeprogramma.c -save-temps -O2 -s
Le ultime 2 opzioni sono facoltative.
Esempio:
codice:
#include <stdio.h>
int main(void){
puts("CIAO!");
return 0;
}
codice:
.file "test.c"
.def ___main; .scl 2; .type 32; .endef
.section .rdata,"dr"
LC0:
.ascii "CIAO!\0"
.text
.p2align 4,,15
.globl _main
.def _main; .scl 2; .type 32; .endef
_main:
leal 4(%esp), %ecx
andl $-16, %esp
pushl -4(%ecx)
pushl %ebp
movl %esp, %ebp
pushl %ecx
subl $4, %esp
call ___main
movl $LC0, (%esp)
call _puts
addl $4, %esp
xorl %eax, %eax
popl %ecx
popl %ebp
leal -4(%ecx), %esp
ret
.def _puts; .scl 2; .type 32; .endef
Ovviamente puoi assemblare il sorgente Assembly con i programmi della toolchain GNU.