Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Clang et LLDB Discussion :

Sortie de LLVM et Clang 9.0


Sujet :

Clang et LLDB

  1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    août 2008
    Messages
    24 911
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 24 911
    Points : 169 896
    Points
    169 896
    Par défaut Sortie de LLVM et Clang 9.0
    La nouvelle version de LLVM et de Clang est sortie. Alors que LLVM fournit l'infrastructure générique d'un compilateur, Clang fait l'interface avec du code C, C++ et Objective-C. Cette version apporte notamment une implémentation finalisée de la génération de code pour RISC-V, l'architecture libre de processeurauparavant, elle était marquée comme expérimentale. LLVM étant très utilisé pour développer des interpréteurs et compilateurs pour des langages divers et variés (comme Julia), le projet se doit d'avoir une excellente interface de programmation : outre deux nouveaux points d'extension pour l'optimisation du code lors de l'édition des liens (LTO), l'interface ORCJIT a été révisée. La version actuelle reste disponible, mais son emploi est découragé, au profit de la nouvelle version, largement améliorée pour une utilisation parallèle.

    Au niveau des plateformes, le code assembleur peut désormais directement accéder à de nombreuses instructions ARM supplémentaires : SVE2 (scalable vector extension) et MVE (M-profile vector extension) pour l'exécution en simultané d'une même instruction sur plusieurs données, MTE (memory tagging extension) pour indiquer quelles parties de la mémoire peuvent être écrites et ainsi limiter les risques de sécurité. LLVM intègre aussi un modèle plus complet du processeur Cortex-M4, pour générer du code plus performant.

    Au niveau des langages, Clang s'ouvre aux versions futures de C et de C++, avec l'inclusion d'un mode C2x ; le mode C++2a active par défaut les modules. Côté OpenCL, on peut désormais utiliser toutes les fonctionnalités de C++17 en conjonction avec OpenCL 2.0, grâce à des améliorations au niveau des attributs concernant l'espace d'adressage. Cette implémentation est cependant toujours expérimentale.

    Le point mineur le plus important est cependant l'implémentation des instructions ASM GOTO. Ce petit détail a toute son importance, puisque désormais Clang peut compiler avec succès le noyau Linux pour des processeurs x86_64, après des années de travail acharné pour y arriver (Clang 4 arrivait déjà à compiler Linux pour un certain nombre d'architectures, comme ARM ou PowrePC). Android et ChromeOS sont déjà en train d'effectuer la transition depuis GCC.

    Sources : notes de version de LLVM et Clang.
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions), HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre extrêmement actif

    Homme Profil pro
    Écrivain public, Économiste et Programmeur Free Pascal
    Inscrit en
    août 2005
    Messages
    295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Écrivain public, Économiste et Programmeur Free Pascal
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2005
    Messages : 295
    Points : 1 082
    Points
    1 082
    Billets dans le blog
    40
    Par défaut 32 64
    Un processeur 32 et 64 bits n'a aucun intérêt. L'intérêt du partage de ces sources est surtout qu'on peut enfin créer une compatibilité avec ce processeur.

    Comprendre un processeur c'est surtout comprendre comment les produire en série.

    Le partage des microcodes Intel et AMD est bien plus intéressant. Ces processeurs sont bien plus puissants mais CISC effectivement.

    Il est plus difficile de sécuriser quelque chose de complexe. C'est une raison pour ne pas utiliser cette architecture.

    L'intérêt réel pourrait être la faible consommation d'énergie, ce qui est inatteignable avec du 32/64.

  3. #3
    Membre averti Avatar de Andarus
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2008
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : novembre 2008
    Messages : 126
    Points : 382
    Points
    382
    Par défaut
    Citation Envoyé par matthius Voir le message
    Un processeur 32 et 64 bits n'a aucun intérêt.
    Je ne comprend pas cette phrase 🤔

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    janvier 2014
    Messages
    743
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : janvier 2014
    Messages : 743
    Points : 1 712
    Points
    1 712
    Par défaut
    Le problème c'est que l'emploi de dénomination non standardisé tel que "x86_64" introduit des doubles sens. Quand moi je lis "un processeur 64 bit (capable de faire tourner un programme 32bit)", d'autres lisent "un processeur capable d'interpréter des instructions 64bit et 32bit".
    C'est bien ça matthius ?

    "Il est plus difficile de sécuriser quelque chose de complexe. C'est une raison pour ne pas utiliser cette architecture."
    +1 ...c'est, il me semble, un point que beaucoup perdent de vue quand ça commence à parler nouveaux CPU et évolutions techniques.
    Pensez à utiliser les pouces d’appréciation, pour participer à la visibilité de l'apport d'un propos, ou l'intérêt que vous y prêtez... qu'il soit positif ou négatif.

  5. #5
    Membre extrêmement actif

    Homme Profil pro
    Écrivain public, Économiste et Programmeur Free Pascal
    Inscrit en
    août 2005
    Messages
    295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Écrivain public, Économiste et Programmeur Free Pascal
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2005
    Messages : 295
    Points : 1 082
    Points
    1 082
    Billets dans le blog
    40
    Par défaut
    Citation Envoyé par Andarus Voir le message
    Je ne comprend pas cette phrase 🤔
    Il y a des processeurs dans les processeurs. Les processeurs dans les processeurs nous incitent maintenant à en mettre dans les câbles et les écrans, alors qu'un simple partage d'instructions donc de processeurs permettrait plus de vitesse.

    Ce partage est intéressant. Il montre qu'il n'y a plus besoin d'en chercher de cachés. En effet, du 32 bits reste rapide s'il n'est pas changé. Je doute qu'un processeur soit rapide et simple donc efficace autrement. Le 32 bits dans un processeur peut être logiciel, donc aucune raison d'en mettre en hardware dans un processeur. Donc l'inutilité de ce partage montre qu'on ne sait plus quoi trouver pour nous occuper.

    Je pense que certains partages libres d'instructions Nvidia ou ATI permettaient à la communauté libriste de croire à du nouveau, alors qu'il ne s'agissait que de comprendre pourquoi ils le faisaient.

    Ce partage d'instructions peut servir à des pays qui n'ont pas de processeur RISC, pas à la France qui en a des meilleurs ou peut en créer en 64 bits uniquement.

  6. #6
    Membre expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2017
    Messages
    789
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : avril 2017
    Messages : 789
    Points : 3 475
    Points
    3 475
    Par défaut
    Citation Envoyé par matthius Voir le message
    Il y a des processeurs dans les processeurs. Les processeurs dans les processeurs nous incitent maintenant à en mettre dans les câbles et les écrans, alors qu'un simple partage d'instructions donc de processeurs permettrait plus de vitesse.

    Ce partage est intéressant. Il montre qu'il n'y a plus besoin d'en chercher de cachés. En effet, du 32 bits reste rapide s'il n'est pas changé. Je doute qu'un processeur soit rapide et simple donc efficace autrement. Le 32 bits dans un processeur peut être logiciel, donc aucune raison d'en mettre en hardware dans un processeur. Donc l'inutilité de ce partage montre qu'on ne sait plus quoi trouver pour nous occuper.

    Je pense que certains partages libres d'instructions Nvidia ou ATI permettaient à la communauté libriste de croire à du nouveau, alors qu'il ne s'agissait que de comprendre pourquoi ils le faisaient.

    Ce partage d'instructions peut servir à des pays qui n'ont pas de processeur RISC, pas à la France qui en a des meilleurs ou peut en créer en 64 bits uniquement.
    Soit j'ai rien compris, soit ton message n'a aucun sens ni aucun rapport avec la news.

Discussions similaires

  1. Sortie de LLVM 8.0 et Clang 8.0
    Par dourouc05 dans le forum Clang et LLDB
    Réponses: 0
    Dernier message: 25/03/2019, 03h07
  2. Sortie de LLVM et Clang 5.0
    Par dourouc05 dans le forum Clang et LLDB
    Réponses: 1
    Dernier message: 12/09/2017, 14h33
  3. Sortie de LLVM et Clang 4.0
    Par dourouc05 dans le forum Clang et LLDB
    Réponses: 0
    Dernier message: 13/03/2017, 20h54
  4. Sortie de LLVM 3.9 et Clang 3.9
    Par dourouc05 dans le forum Clang et LLDB
    Réponses: 0
    Dernier message: 26/09/2016, 00h18
  5. Sortie de LLVM 3.8 et Clang 3.8
    Par dourouc05 dans le forum Clang et LLDB
    Réponses: 0
    Dernier message: 12/03/2016, 18h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo