notes on current atomics config and usage
Paolo Carlini
pcarlini@suse.de
Thu Jul 13 21:18:00 GMT 2006
Paolo Carlini wrote:
>> I agree ;) The main problem is:
> 1- We don't want to build two times the packages of our distributions.
> 2 (secondary) - We have an ABI and compulsory exports.
>
> Otherwise, AFAICT, we could inline smartly (we almost did that,
> without the builtins, back in 3.2 times or so...)
>
> Thus, I think we have to live with exported atomics, no inlines for
> i386/1686. However, when we build the library I think it's ok to
> exploit the underlying builtins, if available: that means query the
> target, the triple, or, as Mark pointed out, the actual -march=,
> passed in CXXFLAGS.
To complete my reasoning, for the latter point a different default
-march would help. Because i486 as default would imply that a library
built without passing any special option would export efficient atomics,
exploiting the builtins internally. Otherwise, if we are going to trust
-march only (not the triple as I was suggesting ealrier today) we end up
with atomics using internally *mutexes* and this is an unacceptable
(silly, I'm thinking) default these days. At minimum we would be forced
to add a flashing disclaimer to the release notes ;) ;)
Paolo.
More information about the Libstdc++
mailing list