This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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]

[Bug libstdc++/51798] [4.7 regression] libstdc++ atomicity performance regression due to __sync_fetch_and_add


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51798

--- Comment #20 from David Edelsohn <dje at gcc dot gnu.org> 2012-01-27 14:27:25 UTC ---
Jonathan,

Your explanation in comment #16 does not fully explain the design of
libstdc++-v3.  If the __sync_* intrinsics provide the complete abstraction for
CAS, what is the purpose of the custom implementations of atomicity.h in
libstdc++-v3/config/{cpu,os}/* ?  One should not need those overrides if
__sync_* provides sufficient abstraction.

Jakub,

The patch is incomplete because it should update
src/libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h as well.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]