Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys



David Laight wrote:
> On Thu, Feb 02, 2006 at 08:16:53AM -0800, Jeff Rizzo wrote:
>   
>> David-
>>
>> I'm not certain this is the specific commit that caused it, but amd64
>> kernels which are not optimized (like, say, GENERIC) fail to link due to
>> looking for bswap16 and bswap32.  I looked things over, but am not sure
>> of the correct way to fix this...
>>     
>
> I'm not sure where I changed the effect of building non-optimised kernels.
> I'm fairly sure the const-folding and __inline versions were both inside
> #if __OPTIMISE__. I don't think it makes any sense for it to be otherwise.
>
> libkern (or somewhere) may need to contain extern defns of bswapnn()
> anyway - for cases where the #define doesn't apply (do we allow the
> address of bswapnn() to be taken?)
>
> It is also worth noting that the libc functions are __bswap16(), __bswap32()
> and bswap64() on i386 and amd64, whereas the kernel ones never have the
> the leading underscores.
>
> I'll look at what happens to unoptimised code later.
>
>       David
>
>   

OK, I've discovered the source of this - I had COPTS+=-pipe and
CFLAGS+=-pipe in my /etc/mk.conf .  Without these, GENERIC builds at the
default -O2 level, and consequently links.  This at least explains why
nobody else saw GENERIC fail to build.

+j


Attachment: signature.asc
Description: OpenPGP digital signature



Home | Main Index | Thread Index | Old Index