Дык в этом весь смысл и есть - отключается оптимизация обращения к данным помеченным как volatile, если же к ним обращения нет, то код вполне может выпиливаться.
Это моё личное предвзятое мнение. Любое совпадение с реальностью является случайным и непреднамеренным.