https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59448
--- Comment #15 from Andrew Macleod <amacleod at redhat dot com> --- Created attachment 33831 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33831&action=edit promote memory order consume to acquire So have we concluded that we should promote memory_order_consume to memory_order_acquire for now? That change should be fairly trivial. builtins.c::get_memmodel would simply change any consumes to acquire. All consumes would then be promoted to acquire. I don't know if libatomic does much with consume, but once compiled with this patch in the compiler, it will also generate acquire code for consumes. Here's an untested patch provided if someone wants to experiment.