Rester statique pour devenir plus rapide, plus précis et plus mince - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Communication Dans Un Congrès Année : 2015

Rester statique pour devenir plus rapide, plus précis et plus mince

Résumé

E-ACSL est un greffon de Frama-C, une plateforme d'analyse de codes C qui est développée en OCaml. Son but est de transformer un programme C formellement annoté dans le langage de spécification éponyme E-ACSL en un autre programme C dont le comportement à l'exécution est équivalent si toutes les spécifications sont dynamiquement vérifiées et qui échoue sur la première spécification fausse sinon.Cet article présente deux analyses statiques qui améliorent grandement la précision de cette transformation de programme en réduisant l'instrumentation effectuée. Ainsi, le code généré est plus rapide et consomme moins de mémoire lors de son exécution. La première analyse est un système de types permettant de distinguer les entiers (mathématiques) pouvant être convertis en des expressions C de type <> de ceux devant être traduits vers des entiers en précision arbitraire. La seconde analyse est une analyse flot de données arrière paramétrée par une analyse d'alias. Elle permet de limiter l'instrumentation des opérations sur la mémoire à celles ayant un impact potentiel sur la validité d'une annotation formelle.
Fichier principal
Vignette du fichier
jfla15_submission_1.pdf (332.03 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01096352 , version 1 (17-12-2014)

Identifiants

  • HAL Id : hal-01096352 , version 1

Citer

Arvid Jakobsson, Nikolai Kosmatov, Julien Signoles. Rester statique pour devenir plus rapide, plus précis et plus mince. Vingt-sixièmes journées francophones des langages applicatifs, Jan 2015, Le Val d'Ajol, France. ⟨hal-01096352⟩
150 Consultations
136 Téléchargements

Partager

Gmail Facebook X LinkedIn More