The CMOV define should probably be dependent on what CPU the kernel
is tuned for. It was originally written for when x86-64 was only
K8 which has fast CMOV, but e.g. on P4 CMOV is actually deprecated
over jumps.
It is very unlikely a generic one will ever be able to compete
with a single instruction.
It depends on the CPU, but it can be probably safely set on pretty much
all modern x86 cores.
It's generic and could really live in linux/bitops.h
-Andi
--