Ces exemples sont en C et nécessitent une installation de Clang, LLVM et de (GNU) Make. Ils devraient fonctionner même sur des versions plutôt anciennes.
Votre machine doit également être compatible x86_64
(alias amd64
), ce qui
est extrêmement probable en 2019 :)
Il vous suffit d’exécuter la commande :
make
pour que tous les fichiers .c
présents dans le dossier soient pris en
charge. Les fichiers source C sont compilés en langage intermédiaire LLVM
via Clang (fichiers .ll
). Le langage d’assemblage résultant est produit
dans des fichiers .s
via l’utilitaire LLVM llc
(LLVM static compiler).
Pour nettoyer les fichiers générés, utiliser la commande suivante :
make clean
Par défaut, le code compile en x86
(alias i386
). Pour compiler
en 64 bits (et donc produire du langage d’assemblage 64 bits, différent de
celui vu en première année), utiliser la commande suivante :
make BITS=64
Pour chaque fichier source C, les fichiers suivants sont produits :
Fichier | Description |
---|---|
|
Fichier source en C |
|
Fichier produit en langage intermédiaire LLVM, sans optimisations. |
|
Fichier produit en langage intermédiaire LLVM, avec optimisations légères ( |
|
Fichier produit en langage intermédiaire LLVM, avec optimisations moyennes ( |
|
Fichier produit en langage intermédiaire LLVM, avec optimisations maximales ( |
|
Fichier produit en langage d’assemblage, sans optimisations. |
|
Fichier produit en langage d’assemblage, avec optimisations légères ( |
|
Fichier produit en langage d’assemblage, avec optimisations moyennes ( |
|
Fichier produit en langage d’assemblage, avec optimisations maximales ( |