Well, when we're talking inline asms used for locking, the whole point of
using inline asm is exactly that you cannot do it with regular accesses,
and have to add architecture-specific barriers. If the user gets that
wrong, then it's a user problem, not a compiler issue.
So that's not the problem. The problem is if the compiler then does other
things wrong *despite* the inline asm being correct.
Linus
-