|
|
  |
WinAVR: Ручное изменение флагов оптимизации |
|
|
|
Mar 27 2012, 16:12
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 15-04-10
Из: Волгоград
Пользователь №: 56 658

|
Где и как правильно можно включить или выключить тот или иной флаг ( -fauto-inc-dec, -fcprop-registers, -fif-conversion, -finline-small-functions, -fipa-pure-const, -fipa-reference, -fmerge-constants и др..) для каждого из режимов : -О0, -О1, -О2, -О3, -Оs ?
|
|
|
|
|
Mar 27 2012, 16:21
|
Гуру
     
Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322

|
Цитата(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 - то его и править надо.
|
|
|
|
|
Mar 27 2012, 19:38
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 15-04-10
Из: Волгоград
Пользователь №: 56 658

|
Цитата(Сергей Борщ @ 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 в котором описываются эти ключи. Но мой уровень английского не позволяет бегло найти то место где говориться о их местораспположении, а может и вовсе там этого нет. Вот хотелбы узнать может кто пробывал изменять параметры оптимизации ?
|
|
|
|
|
Mar 27 2012, 20:38
|
Гуру
     
Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322

|
Цитата(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.
|
|
|
|
|
Mar 30 2012, 09:48
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
Цитата(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- перед флагом отключает его.
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|