
On Wed, Oct 24, 2012 at 00:22:01 +0300, Peter Dimov wrote:
Steven Watanabe wrote:
Seriously, if the compiler is set to compile for an architecture that doesn't support cmpxchg8b, then Boost.Atomic should not generate this instruction.
It's very, very rare for a user to willingly target 386/486 (these processors are all but extinct, not to mention that modern Windows versions simply don't run on them.)
They are extinct in desktop. Not necessarily true of embedded systems.
A GCC target of i386 in practice simply means that a target hasn't been set, not that the user explicitly wanted to target i386. Nobody wants to target i386.
gcc target i486-linux-gnu means somebody explicitly configured that target. Since that's how it is configured in both Debian and Ubutnu, it's set in stone at least until April 2017 (Precise end-of-life). Note though, that there is no longer any supported version not shipping gcc with __sync_* support. -- Jan 'Bulb' Hudec <bulb@ucw.cz>