vpv.vpv (25.04.2025 07:45, просмотров: 60) ответил Nikolay_Po на Я мечтаю, что сохраняет только используемые. Вроде, при обсуждении
аппаратного механизма, проскакивало, что для маленьких
обработчиков, где затрагивается мало регистров, программное
сохранение контекста может выиграть, но только если делать пролог и
эпилог вручную. Компилятор не оптимизирует количество сохраняемых
регистров.
Что ж, неважнецкий какой-то компилятор, значит. )) IAR AVR чётко
сохраняет только те, которые меняются. Но! Стоит внутри П/П сделать
ещё один вызов - всё. IAR сохраняет все регистры. Хотя вызов (я
делал косвенные, т.е. через указатели) очень простой. Вот там я
применял "__raw", т.е. указание IAR'у не сохранять ничего. Я сам
сохранял что нужно (особенно эффективна пересылка пары регистров в
другую пару за 1 такт), отчего реакция и отработка П/П
увеличивалась в разы.