[parisc-linux] Re: [patch 15/44] generic ext2_{set, clear, test, find_first_zero, find_next_zero}_bit()
Roman Zippel
zippel at linux-m68k.org
Wed Feb 1 04:27:38 MST 2006
Hi,
On Wed, 1 Feb 2006, Akinobu Mita wrote:
> +static __inline__ int generic_test_le_bit(unsigned long nr,
> + __const__ unsigned long *addr)
> +{
> + __const__ unsigned char *tmp = (__const__ unsigned char *) addr;
> + return (tmp[nr >> 3] >> (nr & 7)) & 1;
> +}
The underscores are not needed.
For the inline version I would prefer this version:
{
const unsigned char *tmp = (const unsigned char *)addr;
return (tmp[nr >> 3] & (unsigned char)(1 << (nr & 7))) != 0;
}
Although this would be a good alternative as well:
{
return (addr[nr >> 5] & (1 << ((nr ^ 24) & 31))) != 0;
}
bye, Roman
More information about the parisc-linux
mailing list