Jeff Donner <jeffrey.donner@xxxxxxxxx> writes: > __sync_bool_compare_and_swap(int64_t*, int64_t, int64_t) and the > equivalent __sync_bool_compare_and_swap_8(...) work with 4.4.0 (and > trunk), > and __sync_bool_compare_and_swap_16 will /compile/ when you pass > 128-byte structs by value, strangely. However, this won't link. > Is it possible to use __sync_bool_compare_and_swap_16 from GCC 4.4.+ > at all? And if not, could it be added? I can see where the lack of any > 128-byte native type to put in the signature makes a problem. You have to write the function yourself. When a sync function is not supported natively, gcc generates a call to a support function, which you have to provide. I agree that this is not ideal. Ian