https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96159

--- Comment #9 from Martin Uecker <muecker at gwdg dot de> ---


Yes the clang behavior is useful. 

If we get the optimal code for types with sufficient alignment, then I do not
think a separate set of functions would be required.  A programmer simply can
use the _Atomic(T) types which have optimal alignment to get fastest code 
possible and somebody who needs these functions on existing data structures
could get the safe access by default (and maybe a warning it alignment is not
optimal).  This would appear to be the ideal design.

Even if we document the alignment requirement, it is still very dangerous to
use because alignment requirement may not be identical for all architectures.

Reply via email to