История изменений
Исправление dimgel, (текущая версия) :
Да, это тоже уже нашёл, в каком-то из ответов на SO была ссылка на сравнение поведений (gcc vs clang, __sync vs __atomic): https://godbolt.org/z/4bbfm6
Но эти __sync – вроде как уже deprecated в пользу __atomic, которые почему-то всегда завёрнуты в вызов libatomic (см. цитату и ссылку в моём 2м каменте). Что им мешает заинлайнить инструкцию – хз. :/
Исправление dimgel, :
Да, это тоже уже нашёл, в каком-то из ответов на SO была ссылка на сравнение поведений (gcc vs clang, __sync vs __atomic): https://godbolt.org/z/4bbfm6
Но эти __sync – вроде как уже deprecated в пользу __atomic, которые почему-то всегда завёрнуты в вызов libatomic (см. ссылку в моём 2м каменте). Что им мешает заинлайнить инструкцию – хз. :/
Исходная версия dimgel, :
Да, это тоже уже нашёл, в каком-то из ответов на SO была ссылка на сравнение поведений: https://godbolt.org/z/4bbfm6
Но эти __sync – вроде как уже deprecated в пользу __atomic, которые почему-то всегда завёрнуты в вызов libatomic (см. ссылку в моём 2м каменте). Что им мешает заинлайнить инструкцию – хз. :/