|
IAR vs AVR GCC, Непрокомпилы |
|
|
|
Jul 21 2009, 21:54
|

Частый гость
 
Группа: Свой
Сообщений: 138
Регистрация: 12-05-09
Пользователь №: 48 987

|
Профессионально пишу уже 2 года на ASMе и Cшке(AVR GCC) для AVRок. На GCC есть одна вещь которая бесит порой. Оптимизатор. Работаю на уровне Os(высший, by size). Оптимизирует нехреново. В железе работает, в отладчике на уровне переменных практически не протрассируеш. Только в дизасм смотри. Так вот этот GCC иногда считает многие участки кода не нужными.
Допустим запускаю ацп конверсию с прерыванием, в прерывании ставлю какой то флаг, и по флагу этому в цикле, я должен что то сделать. Ну да ладно подробности. Факт в том что компилятор теряет логические связи, считает участок кода не нужным. Выбрасывает его, ставит бесконечный цикл. Бороться с ним конечно всячески можно(извращениями).
Вот хотел спросить, как по части непрокомпилов(непонимании компилятора) IAR ? При максимальном уровне оптимизации. Ну и скажите свои за и против IAR. Просто думаю, стоит его осваивать взамен AVR GCC иль нет.
To Moderators, если в не тот раздел попал, просьба сильно не пинать.
|
|
|
|
|
 |
Ответов
|
Jul 21 2009, 23:29
|

Частый гость
 
Группа: Свой
Сообщений: 138
Регистрация: 12-05-09
Пользователь №: 48 987

|
Ладно. Не буду с вами "ругаться" и пытаться что доказывать что WinAVR не идеален. Было бы все идеально и безошибочно предсказуемо, IAR бы помер. HT-PIC например банки у меня путал (очень редко), пока сам не взял за правило прописывать где че будет лежать, встречались проблемы. А где разместить переменную, как и Volatile, сложно отнести к самому СИ. Это всего лишь приказ компилятору- ЭТО ТУДА, а не C.
Согласен. Грамотно применяй Volatile да будет счастье в этом мире.
Но Volatile не C, а для оптимизатора. То что любой оптимизатор будет резать че нить, что не понравится, согласен. Мне интересно сравнение с IAR. Как он понимает сложные конструкции кода
И еще могу добавить. На PIC тоже на Cшке пишу. Там при работе оптимизатора, как не странно, не разу не обрезался код, по его субъективному мнению. MPLAB C18 на мой взгляд вообще отличная вещь. Подвохов от вообще нет.
Сообщение отредактировал IXFN50N80Q2 - Jul 21 2009, 23:31
|
|
|
|
Сообщений в этой теме
IXFN50N80Q2 IAR vs AVR GCC Jul 21 2009, 21:54 aaarrr Цитата(IXFN50N80Q2 @ Jul 22 2009, 01:54) ... Jul 21 2009, 22:01 IXFN50N80Q2 Volatile Знаю. Но искать скрытые подвохи по дизасм... Jul 21 2009, 22:06 aaarrr Цитата(IXFN50N80Q2 @ Jul 22 2009, 02:06) ... Jul 21 2009, 22:13 IXFN50N80Q2 Хм. Интересна ваша логика. Виноват программист. По... Jul 21 2009, 23:06 aaarrr Цитата(IXFN50N80Q2 @ Jul 22 2009, 03:06) ... Jul 21 2009, 23:12 Qwertty Цитата(IXFN50N80Q2 @ Jul 22 2009, 03:06) ... Jul 21 2009, 23:20 MrYuran Цитата(IXFN50N80Q2 @ Jul 22 2009, 03:06) ... Jul 22 2009, 04:34 aaarrr Цитата(IXFN50N80Q2 @ Jul 22 2009, 03:21) ... Jul 21 2009, 23:36 gotty Цитата(IXFN50N80Q2 @ Jul 22 2009, 02:29)... Jul 22 2009, 06:34 tag Цитата(IXFN50N80Q2 @ Jul 22 2009, 02:29) ... Jul 22 2009, 12:26  SasaVitebsk Цитата(tag @ Jul 22 2009, 15:26) ...уверя... Jul 22 2009, 15:24 IXFN50N80Q2 Безвыходных случаев с WINAVR не было.
Всяческими с... Jul 21 2009, 23:43 zltigo Цитата(IXFN50N80Q2 @ Jul 22 2009, 00:54) ... Jul 22 2009, 04:53 haker_fox Нет ничего идеального. Все создается людьми. Друго... Jul 22 2009, 07:44 rezident Задача компилятора - перевести описание с языка, п... Jul 22 2009, 15:06 aaarrr Цитата(rezident @ Jul 22 2009, 19:06) Зад... Jul 22 2009, 15:11  rezident Цитата(aaarrr @ Jul 22 2009, 21:11) Форма... Jul 22 2009, 15:40
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|