реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Настройки MFile в WinAVR
MaxiMuz
сообщение Jul 5 2011, 12:42
Сообщение #1


Местный
***

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



В WinAVR-20080610 в сборщике MFile имеются следущие настройки:
Код
C standard level:
c89
gnu89
c99
gnu99

Кто может разьяснить что это и влияет както это на сформированный код программы ?
Go to the top of the page
 
+Quote Post
XVR
сообщение Jul 6 2011, 08:40
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(MaxiMuz @ Jul 5 2011, 16:42) *
Кто может разьяснить что это
Это управление диалектом языка С, который будет понимать компилятор. Ставьте gnu99 - это максимум, будет понимать все rolleyes.gif
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Jul 6 2011, 09:31
Сообщение #3


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Я бы на с99 всё же остановился.

Цитата(MaxiMuz @ Jul 5 2011, 16:42) *
влияет как-то это на сформированный код программы?
никак не влияет, если компилируется без ошибок.
Цитата
WinAVR-20080610
обновитесь уже наконецsm.gif За три года avr-gcc сильно шагнул вперёд.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jul 6 2011, 09:49
Сообщение #4


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (demiurg_spb @ Jul 6 2011, 18:31) *
За три года avr-gcc сильно шагнул вперёд.

Стыдно признаться, но я до сих пор использую WinAVR-20071221 crying.gif


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jul 6 2011, 10:04
Сообщение #5


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(haker_fox @ Jul 6 2011, 13:49) *
Стыдно признаться, но я до сих пор использую WinAVR-20071221 crying.gif

Действительно, зачем менять то, что работает (предсказуемо)


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jul 6 2011, 10:58
Сообщение #6


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (MrYuran @ Jul 6 2011, 19:04) *
Действительно, зачем менять то, что работает (предсказуемо)

Да нет, скорее связано с проблемами, которые ощутил в далеком 2008 году при испытании версии 20080601 вроде бы. Программа, великолепно работающая после упомянутого компилятора от 2007 года, перестала работать на новом. С тех пор как-то не думал об upgrade rolleyes.gif Хотя 2010 версию можно и испытать. Сравнить.
Кстати, я ошибаюсь, или после 2010 года новых версий не появлялось?


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
MaxiMuz
сообщение Jul 6 2011, 12:31
Сообщение #7


Местный
***

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



Т.е. как я понял эти настройки не должны влиять на включение в код лишних команд , к примеру которые сохраняют неиспользуемые вообще в программе регистры при вызове функций и обработчиков прерываний ..
Go to the top of the page
 
+Quote Post
-SANYCH-
сообщение Jul 6 2011, 12:59
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 289
Регистрация: 6-12-05
Пользователь №: 11 864



Цитата
Да нет, скорее связано с проблемами, которые ощутил в далеком 2008 году при испытании версии 20080601 вроде бы. Программа, великолепно работающая после упомянутого компилятора от 2007 года, перестала работать на новом.


Я тоже столкнулся с анологичной проблемой. Причем еще новые компиляторы делали код по размеру больше sad.gif
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jul 6 2011, 13:01
Сообщение #9


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(MaxiMuz @ Jul 6 2011, 16:31) *
Т.е. как я понял эти настройки не должны влиять на включение в код лишних команд , к примеру которые сохраняют неиспользуемые вообще в программе регистры при вызове функций и обработчиков прерываний ..

Конкретно указанные - нет.
Они влияют только на допустимость синтаксических конструкций.
Например, объявление переменной внутри скобок for() в изначальном стандарте си не предусмотрено. Как и некоторые другие моменты.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Jul 7 2011, 05:19
Сообщение #10


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(haker_fox @ Jul 6 2011, 14:58) *
Да нет, скорее связано с проблемами, которые ощутил в далеком 2008 году при испытании версии 20080601 вроде бы. Программа, великолепно работающая после упомянутого компилятора от 2007 года, перестала работать на новом. С тех пор как-то не думал об upgrade rolleyes.gif Хотя 2010 версию можно и испытать. Сравнить.
Кстати, я ошибаюсь, или после 2010 года новых версий не появлялось?
Да WinAVR как-то заглох. На 2010 (в нём avr-gcc-4.3.3) точно всё работает (более чем на 10 проектах разной степени сложности).
А вообще сейчас сижу на avr-gcc 4.4.3 из атмеловкого тулчейна (правда я заменил в нём coreutils на более свежий, т.к. идущий с ним древний до ужаса).
Сижу громко сказано, с атмелом практически завязал, arm-cm3 рулит.

Цитата(-SANYCH- @ Jul 6 2011, 16:59) *
Я тоже столкнулся с аналогичной проблемой. Причем еще новые компиляторы делали код по размеру больше sad.gif
Неправда ваша. Вы просто не включаете новые способы оптимизации.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
-SANYCH-
сообщение Jul 7 2011, 08:18
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 289
Регистрация: 6-12-05
Пользователь №: 11 864



Цитата
Неправда ваша. Вы просто не включаете новые способы оптимизации.


Приведите пример как их включить.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jul 7 2011, 08:32
Сообщение #12


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(-SANYCH- @ Jul 7 2011, 12:18) *
Приведите пример как их включить.

Не помню, где взял, скорее всего на родине...
Прикрепленный файл  gcc.pdf ( 2.11 мегабайт ) Кол-во скачиваний: 640

3 GCC Command Options
Ну и вообще много интересного.
CODE
See Section 3.10 [Options that Control Optimization], page 65.
-falign-functions=n -falign-jumps=n
-falign-labels=n -falign-loops=n
-fbounds-check -fmudflap -fmudflapth -fmudflapir
-fbranch-probabilities -fprofile-values -fvpt -fbranch-target-load-optimize
-fbranch-target-load-optimize2 -fbtr-bb-exclusive
-fcaller-saves -fcprop-registers -fcse-follow-jumps
-fcse-skip-blocks -fcx-limited-range -fdata-sections
-fdelayed-branch -fdelete-null-pointer-checks -fearly-inlining
-fexpensive-optimizations -ffast-math -ffloat-store
-fforce-addr -ffunction-sections
-fgcse -fgcse-lm -fgcse-sm -fgcse-las -fgcse-after-reload
-floop-optimize -fcrossjumping -fif-conversion -fif-conversion2
-finline-functions -finline-functions-called-once
-finline-limit=n -fkeep-inline-functions
-fkeep-static-consts -fmerge-constants -fmerge-all-constants
-fmodulo-sched -fno-branch-count-reg
-fno-default-inline -fno-defer-pop -floop-optimize2 -fmove-loop-invariants
-fno-function-cse -fno-guess-branch-probability
-fno-inline -fno-math-errno -fno-peephole -fno-peephole2
-funsafe-math-optimizations -funsafe-loop-optimizations -ffinite-math-only
-fno-trapping-math -fno-zero-initialized-in-bss
-fomit-frame-pointer -foptimize-register-move
-foptimize-sibling-calls -fprefetch-loop-arrays
-fprofile-generate -fprofile-use
-fregmove -frename-registers
-freorder-blocks -freorder-blocks-and-partition -freorder-functions
-frerun-cse-after-loop -frerun-loop-opt
-frounding-math -fschedule-insns -fschedule-insns2
-fno-sched-interblock -fno-sched-spec -fsched-spec-load
-fsched-spec-load-dangerous
-fsched-stalled-insns=n -fsched-stalled-insns-dep=n
-fsched2-use-superblocks
-fsched2-use-traces -freschedule-modulo-scheduled-loops
-fsignaling-nans -fsingle-precision-constant
-fstack-protector -fstack-protector-all
-fstrength-reduce -fstrict-aliasing -ftracer -fthread-jumps
-funroll-all-loops -funroll-loops -fpeel-loops
-fsplit-ivs-in-unroller -funswitch-loops
-fvariable-expansion-in-unroller
-ftree-pre -ftree-ccp -ftree-dce -ftree-loop-optimize
-ftree-loop-linear -ftree-loop-im -ftree-loop-ivcanon -fivopts
-ftree-dominator-opts -ftree-dse -ftree-copyrename -ftree-sink
-ftree-ch -ftree-sra -ftree-ter -ftree-lrs -ftree-fre -ftree-vectorize
-ftree-vect-loop-version -ftree-salias -fweb
-ftree-copy-prop -ftree-store-ccp -ftree-store-copy-prop -fwhole-program
--param name=value -O -O0 -O1 -O2 -O3 -Os


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
MaxiMuz
сообщение Jul 7 2011, 14:31
Сообщение #13


Местный
***

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



MrYuran полезный документ!
а подскажете ключик который отключает Statrup ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 7 2011, 17:00
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (MaxiMuz @ Jul 7 2011, 17:31) *
а подскажете ключик который отключает Statrup ?

А подумать и понять, что:
-startup к процессу компиляции каких-либо файлов отношения не имеет и не может иметь. Посему таких ключиков у компилятора не может быть даже теоретически.
-без какого либо startup нельзя получить что-либо исполняемое, только объектники/библиотеки.
-не нужен startup, так не линкуйте его.

Вы теперь в каждой теме http://electronix.ru/forum/index.php?showtopic=91858&hl= будете это спрашивать и НЕ читать ответы, например, XVR?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jul 8 2011, 03:10
Сообщение #15


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(MrYuran @ Jul 7 2011, 11:32) *
Не помню, где взял, скорее всего на родине...

Родина типа "широка страна моя родная..." sm.gif
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01441 секунд с 7
ELECTRONIX ©2004-2016