На тему оптимизации и вообще даже IOS vs Android можем обсудить

В общем в этот раз лень мне с ним спорить сильно и я решил сразу коллективный разум подключить, чтоб было убедительнее..
Ну и для поиска истины, конечно же.
Его идея состоит в том, что на XMEGA регистров аж 32шт и около 16ти из них
вполне допустимо забиндить сразу напеременные чтобы(цитирую)"не было задержек при обращении к памяти".
Переменные эти у него глобальные, часто такие, которые используются одновременно и в прерыванииях и за их пределами.
Т.е. это такая своеобразная альтернатива volatile получается..
Я же утверждаю, что подобное "уменьшение задержек при обращении к памяти" чревато тем, что в других местах оптимизатор, с подрезанными на 16 регистров крыльями, будет выкручиваться как придется, генеря не самый оптимальный код.
Отметим, что разрабатывает он не супер-пупер риалтаймовую систему, а вполне себе многофункциональный прибор с граф.дисплеем, кнопочками, радиомодулями и прочими далекими от риалтайма или интенсивных вычислений фичами...
Как вы считаете, стоит ему научитсья к месту применить volatile?
В своих проектах часто ли вы объявляете регистровые переменные?
Я, например, ни разу не прибегал к такому. Нет, пробовал конечно, но так чтобы вот действительно была в этом необходимость - не было случаев пока.
Кажется регистровые переменные это чуть ли не отголосок прошлого, когда Си компиляторы почти не умели оптимизировать и приходилось как-то выкручиваться....