The first two patches are not strictly required, but they were useful in tracking down the root problem here.
I understand the logic behind the clang-12 warning, but I think it's a clear mistake that it should be enabled by default for a target where alignment is not enforced by default. I found over a dozen places where we would have to manually add QEMU_ALIGNED(8) to uint64_t declarations in order to suppress all of the instances. IMO there's no point fighting this. r~ Richard Henderson (3): qemu/atomic: Remove pre-C11 atomic fallbacks qemu/atomic: Use macros for CONFIG_ATOMIC64 configure: Conditionally disable clang-12 -Watomic-alignment configure | 23 +++-- include/qemu/atomic.h | 229 +++--------------------------------------- 2 files changed, 31 insertions(+), 221 deletions(-) -- 2.25.1