Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Jan 2006 08:46:57 +0000
From:      Brian Candler <B.Candler@pobox.com>
To:        Aluminium Oxide <orac000@internet-mail.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: /usr/src/lib/libc/net/res_debug.c: compile problem fixed
Message-ID:  <20060130084657.GA70583@uk.tiscali.com>
In-Reply-To: <1138573200.6772.253038464@webmail.messagingengine.com>
References:  <1136167766.17477.250884723@webmail.messagingengine.com> <20060103153312.GB11044@uk.tiscali.com> <1138522806.15997.253010448@webmail.messagingengine.com> <20060129101434.GA67244@uk.tiscali.com> <1138573200.6772.253038464@webmail.messagingengine.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jan 30, 2006 at 08:50:00AM +1030, Aluminium Oxide wrote:
> Awwww...
> 
> You're right, but there's only a handlful of these that stop buildworld
> with -O3....

I think the issue is that although you may be able to get FreeBSD to *build*
using -O3, it's quite unlikely that it will *work* properly.

If I understand correctly, gcc -O3 makes a lot of assumptions about when
it's OK to keep values around in registers, which may not be valid when
there are interrupts or other threads modifying memory. I think it's
possible to make the code -O3 safe, e.g. by putting loads of 'volatile'
declarations in, but catching every single case where this is required is
extremely different.

This may be more of a problem with the kernel than with userland though.

Regards,

Brian.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060130084657.GA70583>