ВходНаше всё Теги codebook PARTS Поиск Опросы Закон Воскресенье
17 января
/1042933
Топик полностью
SciFi (09.10.2020 10:26, просмотров: 119) в ответ на Чего? Вы видели определение регистров процессора в заголовочных фалах? Там стоит __IO aka volatile. И ни один компилятор не имеет права выкинуть/оптимизировать доступ к этим регистрам на любом уровне оптимизации. Мои примеры скомпилированы на максимальной оптимизации в IAR. Ну это же азы эмбеддерства, даже удивительно, что такие вещи объяснять надо. - автор: VladislavS.
Имею интересные впечатления от компилятора cosmic для stm8. Он просто не обращает внимания на volatile. Это логично, учитывая, что код генерит на манер "что вижу, то и пишу", хитрых оптимизаций нет. Но на код "var += 2;" выдаёт "INC mem INC mem", например. Зануды скажут "какой же это volatile!", а я скажу "ну и что, зато код компактный получается"... 
ส็็็็็็็็็็็็็็็็็็็็็็็็็༼ ຈل͜ຈ༽ส้้้้้้้้้้้้้้้้้้้้้้้
Ответить
Ответы