cproc - un nouveau compilateur compact pour le langage C

Michael Forney, développeur du serveur composite swc basé sur le protocole Wayland, développe un nouveau compilateur cproc prenant en charge le standard C11 et certaines extensions GNU. Pour générer des fichiers exécutables optimisés, le compilateur utilise le projet QBE comme backend. Le code du compilateur est écrit en C et est distribué sous la licence gratuite ISC.

Le développement n'est pas encore terminé, mais au stade actuel, la prise en charge de la plupart des spécifications C11 a été implémentée. Parmi les fonctionnalités actuellement non prises en charge figurent les tableaux de longueur variable, un préprocesseur, la génération de fichiers exécutables et de bibliothèques partagées PIE (code indépendant de la position), l'assembleur en ligne, le type « long double », le spécificateur _Thread_local, les types volatiles, les chaînes littérales avec un préfixe. (L"..." ).

Dans le même temps, les capacités de cproc sont déjà suffisantes pour se construire lui-même, mcpp, gcc 4.7, binutils et d'autres applications de base. La principale différence par rapport aux autres compilateurs réside dans l’accent mis sur la création d’une implémentation compacte et simple. Par exemple, le backend vous permet de générer du code qui démontre 70 % des performances des compilateurs avancés, mais la fonctionnalité proposée se situe dans les 10 % des grands compilateurs. Prend en charge la création d'architectures x86_64 et aarch64 sur les plates-formes Linux et FreeBSD avec les bibliothèques Glibc, bsd libc et Musl.

Source: opennet.ru

Ajouter un commentaire