On 02/08/2010 01:28 AM, Borislav Petkov wrote:
Well, in the second version I did replace a 'call _hweightXX' with the actual popcnt opcode so the alternatives is only needed to do the replacement during boot. We might just as well do if (X86_FEATURE_POPCNT) __hw_popcnt() else __software_hweight() The only advantage of the alternatives is that it would save us the if-else test above each time we do cpumask_weight. However, the if-else approach is much more readable and obviates the need for all that macro magic and taking special care of calling c function from within asm. And since we do not call cpumask_weight all that often I'll honestly opt for alternative-less solution...
The highest performance will be gotten by alternatives, but it only make sense if they are inlined at the point of use... otherwise it's basically pointless.
-hpa -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html