Re: [PATCH] Add "is_power_of_2" checking to log2.h.

From: Tim Schmielau
Date: Thu Feb 01 2007 - 16:56:10 EST


On Thu, 1 Feb 2007, Valdis.Kletnieks@xxxxxx wrote:

> On Thu, 01 Feb 2007 13:39:15 +0100, Tim Schmielau said:
> > #define is_power_of_4(x) (is_power_of_2_or_zero(x) \
> > && (x & ((typeof(x))0x55555555)))
>
> Those 5's are going to need more magic if x is a 64-bit typeof?

Yeah, I can't count. Make that

#define is_power_of_2_or_zero(x) ((x & (x-1))==0)
#define is_power_of_4(x) (is_power_of_2_or_zero(x) \
&& (x & ((typeof(x))0x5555555555555555ull)))

of course.

Thanks,
Tim
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/