[lkml]   [2009]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] x86: do not expose CONFIG_BSWAP to userspace
Ben Pfaff wrote:
> Harvey Harrison <> writes:
>> Is there a byteswap builtin in gcc? At least AVR32
>> seems to use it, but perhaps it's not generally exposed...perhaps we
>> could ask the gcc-folk?
> Yes, GCC has byteswap builtins on x86 documented as follows:
> -- Built-in Function: int32_t __builtin_bswap32 (int32_t x)
> Returns X with the order of the bytes reversed; for example,
> `0xaabbccdd' becomes `0xddccbbaa'. Byte here always means exactly
> 8 bits.
> -- Built-in Function: int64_t __builtin_bswap64 (int64_t x)
> Similar to `__builtin_bswap32', except the argument and return
> types are 64-bit.
> These were only added as of GCC 4.3 though.

It would make sense to use them if gcc >= 4.3 (both for userspace and
kernel space.) IMO, for older compilers we can just punt on the
enhancement for userspace and fall back to the i386 code.


H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.

 \ /
  Last update: 2009-01-30 19:23    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean