Optimisation (Delphi)
Remonter à Liste des directives de compilation Delphi - Index
Type |
Commutateur |
Syntaxe |
{$O+} ou {$O-} {$OPTIMIZATION ON} ou {$OPTIMIZATION OFF} |
Par défaut |
{$O+} {$OPTIMIZATION ON} |
Portée |
Locale (sauf pour le compilateur DCCIOSARM64 qui a une portée globale) |
La directive $O contrôle l'optimisation de code. En mode {$O+}, le compilateur effectue un nombre d'optimisations de code, tels que le placement de variables dans des registres CPU, en éliminant des sous-expressions communes et en générant des variables d'induction. En mode {$O-}, toutes ces optimisations sont désactivées.
Il ne sera jamais nécessaire de désactiver les optimisations sauf pour certaines situations de débogage. Toutes les optimisations effectuées par le compilateur Delphi n'altéreront pas la signification d'un programme. En d'autres termes, le compilateur n'effectue aucune optimisation "non sécurisée" nécessitant une connaissance spéciale du programmeur.
- La directive $O permet d'activer ou de désactiver l'optimisation pour une procédure ou une fonction entière. Vous ne pouvez pas activer ou désactiver l'optimisation pour une seule ligne, ni pour un groupe de lignes au sein d'une routine.
- Pour les applications iOS ciblant les périphériques iOS 64 bits (et par conséquent utilisant le compilateur DCCIOSARM64), la directive $O a une portée globale. Le compilateur ne génère pas d'avertissement ni de conseil, mais l'optimiseur utilise le dernier paramètre si plusieurs options $O existent dans un seul fichier de code source.