This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
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 ;) ;)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.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |