Club robotique de Sophia-Antipolis

Accueil > ... > Forum 108

Simulations Coupe 2006

21 mars 2006, 10:32, par Eric

à tester la place que ça prend sur une CNP, voire à utiliser des inline pour économiser le code

Non, un inline ne va pas te faire gagner de la place, au contraire, puisque tu vas développer le code à chaque endroit où il est appelé. Le seul cas de figure où tu gagnes de la place en "inlinant" est si le code de la fonction est plus court que le call assembleur pour l’appeler, et la transmission des paramètres et la récupération des résultats. Mais en général, comme on utilise le moins possible ce mécanisme de communication dans du code µC et qu’on travaille plutôt par variables globales (cf ce que nous a dit Gilles il y a quelques réunions), le gain va donc être quasi nul, voire négatif.

L’inline ne fait gagner qu’une seule chose à coup sûr : du temps d’exécution. En effet, il supprime l’overhead du call, du prologue et de l’épilogue.

2 conclusions donc :
- il faut contrôler cela sur le listing assembleur généré par le compilo avant de décider.
- il faut oublier les principes méthodologiques utilisés habituellement en développement sur machine "confortable" 🙂

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.