[an error occurred while processing this directive]
|
Другое дело, что может можно сказать компилятору что не надо трогать такие-то регистры. Как это сделать я не знаю (не работал я с IAR).
А вообще, в ОПЕРАЦИОНКЕ, по моему мнению, надо сохранять все. Пользователю Вашей операционки может захотеться написать кусочек, например, на ассемблере с использыванием любых регистров - даже тех,
которые C компилятор не трогает.
И еще. Не сохраняя все регистры Вы можете чуть-чуть выиграть (например, если компилятор в регистре всегда держит константу (R0=0)).
Т.е. виигрыш будет 1 - 2 команды сохранения/восстановления. Вииграть много не удастся, так как для этого надо, чтобы не использовалось много регистров (например не использовать 16 регистров) - а это будет значительно худший код. Так что я не понимаю зачем вообще думать над этим вопросом - сохранять все и никаких проблем.
E-mail: info@telesys.ru