[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <45BA3F42.3020006@zytor.com>
Date: Fri, 26 Jan 2007 09:49:54 -0800
From: "H. Peter Anvin" <hpa@...or.com>
To: eranian@....hp.com
CC: linux-kernel@...r.kernel.org
Subject: Re: i386 and x86-64 bitops function prototypes differ
Stephane Eranian wrote:
> Hello,
>
> I ran into compiler warnings with the perfmon code when I tried
> using test() and __set_bit() on i386.
>
> For some reason, the i386 bitops functions use unsigned long * for
> the address whereas x86-64/ia64 use void *.
>
> I do not quite understand why such difference?
> Is this just for historical reasons?
>
> Thanks.
>
Arguably void * is the right thing for a littleendian architecture. For
bigendian architectures it unfortunately matters what the chunk size is,
regardless of if the chunks are numbered in bigendian (reverse) or
littleendian (forward) order.
-hpa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists