Чандлер Каррут представил две функции в своем
Они используют встроенные инструкции сборки для изменения допущений оптимизатора.
Тем не менее, они используют языковые расширения, поддерживаемые в GCC и Clang. Есть ли способ иметь подобное поведение при использовании MSVC?& крестик; Чтобы понять, почему оптимизатор должен думать таким образом, представьте, был ли блок сборки циклом, добавляющим 1 к каждому байту в памяти.