Цитата(Evgeny_CD @ Jul 29 2005, 13:47)

И понял, что альтернативы GNU / GCC нет - ибо, например, покупку IAR, считаю бессмысленной.Но вот для AVR (иногда надо делать "контроллеры светодиодов" за 1.5$) никогда не пробовал subj. Каково мнение народа?
Тут все просто - если памяти программ в избытке, и можно поступиться быстродействием, то GCC это
хороший выбор. ИАР выигрывает у GCC по всяким мелким оптимизациям (исключение лиших загрузок
регистров, использование X и Z регистров для доступа к памяти даже без явного описания указателей
в программе) и наличием cross-call оптимизации.
В в свое время написал довольно объемный набор макросов который нивелирует различия в синтаксисе
обоих компиляторов и с тех пор использую оба в зависимости от требований и наличия внешних
библиотек (которые править не желательно).
BTW, я также отказался от использования make и перешел на
jam. С использванием средств jam'a можно писать
такие вещи:
Код
rule target_gcc161 {
tool_gcc;
MCU_FULL = atmega161;
MCU_PROGR = Mega161;
MCU_SHORT = m161;
CCOPT_TYPE = speed;
CCOPT_LEVEL = 2;
....
}
rule target_iar161 {
tool_iar;
MCU_FULL = AT90Mega161;
MCU_PROGR = Mega161;
MCU_SHORT = m161;
CCOPT_TYPE = speed;
CCOPT_LEVEL = 9;
CCFLAGS += --do_cross_call --cross_call_passes=5;
}
А затем просто указывать "jam iar161" или "jam gcc161".