Si tu n'utilise pas de flag d'optimisation, je vois pas pourquoi tu reproche à gcc de ne pas optimiser.
Et par défaut si tu n'utilise pas static sur ta fonction, cela veut dire que la fonction doit être exportée, donc qu'elle doit pouvoir être appelée par du code externe. donc elle existera forcément, et du coup le compilateur aura moins envie de l'inliner. Du coup gcc n'inline qu'en -O2, et la fonction est encore présente, même en -O3. Il faut du -fwhole-program pour s'en débarrasser.
[^] # Re: Tu utilises un tableau
Posté par Batchyx . En réponse au message Coût d'un accès mémoire.. Évalué à 3.
Si tu n'utilise pas de flag d'optimisation, je vois pas pourquoi tu reproche à gcc de ne pas optimiser.
Et par défaut si tu n'utilise pas
staticsur ta fonction, cela veut dire que la fonction doit être exportée, donc qu'elle doit pouvoir être appelée par du code externe. donc elle existera forcément, et du coup le compilateur aura moins envie de l'inliner. Du coup gcc n'inline qu'en-O2, et la fonction est encore présente, même en-O3. Il faut du-fwhole-programpour s'en débarrasser.