Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: WinAVR: Ручное изменение флагов оптимизации
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
MaxiMuz
Где и как правильно можно включить или выключить тот или иной флаг ( -fauto-inc-dec, -fcprop-registers, -fif-conversion, -finline-small-functions, -fipa-pure-const, -fipa-reference, -fmerge-constants и др..) для каждого из режимов : -О0, -О1, -О2, -О3, -Оs ?
_Артём_
Цитата(MaxiMuz @ Mar 27 2012, 19:12) *
Где и как правильно можно включить или выключить тот или иной флаг ( -fauto-inc-dec, -fcprop-registers, -fif-conversion, -finline-small-functions, -fipa-pure-const, -fipa-reference, -fmerge-constants и др..) для каждого из режимов : -О0, -О1, -О2, -О3, -Оs ?

Смотря что используете: если AVRStudio то в свойствах проекта, если есть makefile - то его и править надо.
MaxiMuz
Использую makefile. В каком именно месте его править ?
Сергей Борщ
QUOTE (MaxiMuz @ Mar 27 2012, 21:28) *
Использую makefile. В каком именно месте его править ?
В строках CFLAGS = и CFLAGS +=
MaxiMuz
Цитата(Сергей Борщ @ Mar 27 2012, 22:07) *
В строках CFLAGS = и CFLAGS +=

видимо я неправильно обьяснил. В CFLAGS задаются опции компилятору, среди которых есть: CFLAGS += -O$(OPT) , которая задает режим оптимизации. Как я это понимаю, каждому режиму оптимизации -O1, 2,3 или s соответствуют определенные ключи. В доках (C:\WinAVR-20100110\doc\gcc\HTML\gcc-4.3.2\gcc\) есть раздел 3.10 Options That Control Optimization в котором описываются эти ключи. Но мой уровень английского не позволяет бегло найти то место где говориться о их местораспположении, а может и вовсе там этого нет.
Вот хотелбы узнать может кто пробывал изменять параметры оптимизации ?
_Артём_
Цитата(MaxiMuz @ Mar 27 2012, 22:38) *
видимо я неправильно обьяснил. В CFLAGS задаются опции компилятору, среди которых есть: CFLAGS += -O$(OPT) , которая задает режим оптимизации. Как я это понимаю, каждому режиму оптимизации -O1, 2,3 или s соответствуют определенные ключи. В доках (C:\WinAVR-20100110\doc\gcc\HTML\gcc-4.3.2\gcc\) есть раздел 3.10 Options That Control Optimization в котором описываются эти ключи. Но мой уровень английского не позволяет бегло найти то место где говориться о их местораспположении, а может и вовсе там этого нет.
Вот хотелбы узнать может кто пробывал изменять параметры оптимизации ?


Там должна быть строчка вида

Цитата
OPT=1

Её и нужно менять на 2-3-s.
ARV
Цитата(MaxiMuz @ Mar 27 2012, 23:38) *
видимо я неправильно обьяснил. В CFLAGS задаются опции компилятору, среди которых есть: CFLAGS += -O$(OPT) , которая задает режим оптимизации. Как я это понимаю, каждому режиму оптимизации -O1, 2,3 или s соответствуют определенные ключи. В доках (C:\WinAVR-20100110\doc\gcc\HTML\gcc-4.3.2\gcc\) есть раздел 3.10 Options That Control Optimization в котором описываются эти ключи. Но мой уровень английского не позволяет бегло найти то место где говориться о их местораспположении, а может и вовсе там этого нет.
Вот хотелбы узнать может кто пробывал изменять параметры оптимизации ?

допишите ниже CFLAGS += -O$(OPT) такую строчку: CFLAGS += -fno-auto-inc-dec и у вас соответствующая опция ОТКЛЮЧИТСЯ. т.е. no- перед флагом отключает его.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.