Bon bah j'avais tout faux: sur x86 BSR trouve l'index du bit (en partant des poids forts) a 1, donc en faisant un not d'abord cela revient a 'count-leading-1'.
Donc la formule peut valoir le cout sur x86, chouette!
Reste a trouver une maniere efficace de traiter le cas particulier de 0xfe, 0xff, quelqu'un a une idée?
(x >= 0xfe) || (__builtin_clz(~(0xffffff80 | x)) - 24)
ou
(__builtin_clz(~(0xffffff81 | x)) - 24) % 7
ou ...
[^] # Re: Bravo mais..
Posté par reno . En réponse à la dépêche La quintessence des algorithmes bit à bit. Évalué à 2.
Donc la formule peut valoir le cout sur x86, chouette!
Reste a trouver une maniere efficace de traiter le cas particulier de 0xfe, 0xff, quelqu'un a une idée?
(x >= 0xfe) || (__builtin_clz(~(0xffffff80 | x)) - 24)
ou
(__builtin_clz(~(0xffffff81 | x)) - 24) % 7
ou ...