Cepгeй Бopщ (30.04.2010 18:51, просмотров: 66) ответил Vladimir Ljaschko на Судя по тому, что размер кода не меняется, это правда. Осталось понять почему.
Потому что в данном конкретном случае компилятор не смог заоптимизировать ваш расчет так, чтобы закешировать переменную в регистре и исключить обращение к памяти. В следующей версии он может стать умнее и без volatile программа перестанет работать.