Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3338 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [MinGW] Génération code assembleur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MinGW] Génération code assembleur

n°1757953
Jercpp
Posté le 10-07-2008 à 15:52:46  profilanswer
 

Bonjour à tous
 
Je m'amuse à étudier le code assembleur généré par MinGW (GCC porté sous Windows), afin d'en connaître plus sur l'assembleur et sur le système de compilation (effets des options sur le code, etc). Bref.
Ce qui m'ennuie, c'est que le code assembleur généré (option -S) n'indique pas les numéro de ligne et le code C associé en commentaire, tel que le fait VC.
J'ai trouvé l'option -g (et ses dérivés -g1, -g2, -g3) qui permet d'afficher plus d'info dans le fichier assembleur, mais rien de très pertinent. Sauf des LMx, etc qui semblent se rapporter à des numéros de lignes relatives, ne tenant pas compte par exemple des lignes vides dans le code C (qui permettent d'aérer le code). Pas pratique du tout donc hélas pour s'y retrouver entre les instructions C et le code assembleur associé.
 
Donc, ce que je voulais simplement savoir, c'est s'il existe une option GCC (MinGW) qui permet de générer du code assembleur avec, en commentaire, les numéros de ligne absolues (provenant du fichier source C) et l'instruction qui y est associée.
 
Exemple :

Code :
  1. Code C:
  2. (...)
  3. 15: bidulechouette++;
  4. 16: printf("%d",bidulechouette);
  5. 17:
  6. 18: fonctionbidule(bidulechouette);
  7. 19:
  8. 20: bidulechouette*=2;
  9. (...)


 

Code :
  1. Assembleur:
  2. ; (...)
  3. ; line 15 'bidulechouette++;'
  4. ; (code assembleur)
  5. ; line 16 'printf("%d",bidulechouette);'
  6. ; (code assembleur)
  7. ; line 17
  8. ; line 18 'fonctionbidule(bidulechouette);'
  9. ; (code assembleur)
  10. ; line 19
  11. ; line 20 'bidulechouette*=2;'
  12. ; (code assembleur)
  13. ; (...)


 
Merci pour vos réponses ! ;)

mood
Publicité
Posté le 10-07-2008 à 15:52:46  profilanswer
 

n°1758151
Joel F
Real men use unique_ptr
Posté le 10-07-2008 à 21:20:28  profilanswer
 

regarde du coté des sorties de -fdump-all-trees mais je crois pas que ca t'aide. Shark sur Mac OS X permets d'avoir une visualisation de ce style par contre.

n°1758193
Jercpp
Posté le 10-07-2008 à 23:42:34  profilanswer
 

Effectivement, cette option avait l'air intéressante. Mais hélas, elle ne semble pas fonctionner avec MinGW. :( Dommage qu'ils n'aient pas prévu un système plus simple et des options un peu plus portables.  :cry:

n°1758196
dap++
Script kiddie
Posté le 10-07-2008 à 23:50:38  profilanswer
 

Code :
  1. gcc -g -c fichier.c
  2. objdump -l -d -M intel fichier.o


---------------
dap.developpez.com
n°1758394
Jercpp
Posté le 11-07-2008 à 14:12:03  profilanswer
 

Ah merci ! Ca marche impec.  :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [MinGW] Génération code assembleur

 

Sujets relatifs
Impossible de lire le code VBA d'un fichier Excel avec Excel 2007Génération automatique de documents avec OpenOffice/SQL
inclure la librairie COM dans code::blocksqu'est-ce qui cloche dans mon code?
[Grand Sites Internet] Génération de pages PHP ou HTMLVBS /CopyFile permission refusé / code 800A0046
Obtenir le code langue LCID de mon utilisateurcree une relation entre deux table access en code vb6
Génération de PDF à partir de PHPProgramation de driver avec Assembleur ?
Plus de sujets relatifs à : [MinGW] Génération code assembleur


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)