Génération de la sortie de l'assembleur à partir de la source C/C dans GCC
Pour analyser le processus de compilation, obtenir le code d'assemblage émis à partir de la source C/C peut être inestimable. GCC propose deux méthodes pour y parvenir : en utilisant l'option -S et en utilisant objdump.
Utilisation de l'option -S :
L'option -S demande à GCC d'exécuter le préprocesseur et effectuer la compilation initiale, mais s'arrêter avant l'exécution de l'assembleur. Par défaut, la sortie est stockée dans un fichier avec l'extension .s. Pour spécifier un fichier de sortie personnalisé, utilisez l'option -o.
gcc -S helloworld.c
Utilisation d'objdump :
Si vous ne disposez que du fichier objet résultant, vous pouvez utiliser objdump avec l'option --disassemble (-d pour une version plus courte) pour démonter le code :
objdump -S --disassemble helloworld > helloworld.dump
Options supplémentaires :
Exemple :
Pour obtenir un assembleur détaillé sortie avec la syntaxe Intel à partir d'un fichier .o pouvant contenir des espaces réservés pour les références de symboles, utilisez :
objdump -drwC -Mintel -S foo.o | less
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!