• [^] # Re: Traçage et performances

    Posté par . En réponse à la dépêche Sortie de la version 2.6.37 du noyau Linux. Évalué à 7.

    > car, pour ce que j'en comprend, le branchement prédictif se fait sur
    > si (condition)
    > alors ...
    > Le code présenté serait donc optimisé pour le cas où le tracing est activé.

    En fait, c'est le but de la macro unlikely(). Elle indique au compilateur que la condition est peu probable, et donc qu'il doit optimiser en conséquence. Du coup, gcc considère que la branche par défaut est le 'else', et la branche d'exception est le if() lui-même (si je puis dire).