
Rene Rivera wrote:
Peter Dimov wrote:
No, because the Win32 implementation on non-MSVC/Intel makes indirect calls to the kernel Interlocked* functions. The g++ version is better.
So that brings up this question..
Would it be preferable to have CodeWarrior on Windows use an assembly implementation? That is have a sp_counted_base_cw_x86.hpp, with the same implementation as sp_counted_base_gcc_x86.hpp.
Maybe. I was trying to avoid sp_counted_base_* variations unless necessary. Since we need g++/x86 for non-Windows platforms anyway, it seems reasonable to use it on Windows, too. I wonder if CodeWarrior supports the _Interlocked* family as intrinsic functions. If it does, we'll just need to enable the appropriate path in detail/interlocked.hpp for __MWERKS__. In any event, I think that this can wait for after 1.33 is released.