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

 
 
> WinAVR-20070122 еще сырой?, ошибки оптимизации
Jat
сообщение Feb 17 2007, 04:29
Сообщение #1





Группа: Участник
Сообщений: 8
Регистрация: 6-03-06
Из: Новосибирск
Пользователь №: 15 027



Вот пример генерации кода. опции -Os

---------------------------------------------------------

int g;

int func(void)
{
int res;
{
uint8_t _SReg;
asm volatile("in %0,__SREG__\n\tcli" : "=r" (_SReg));

res = g;

asm volatile( "out __SREG__,%0" :: "r" (_SReg));
}
return res;
}

--------------------------------------------------------
WinAVR 20060421 (правильно)

28 0000 2FB7 in r18,__SREG__
29 0002 F894 cli
32 0004 8091 0000 lds r24,g
33 0008 9091 0000 lds r25,(g)+1
36 000c 2FBF out __SREG__,r18
40 000e 0895 ret

---------------------------------------------------------
WinAVR 20070122 (неправильно)

32 0006 8FB7 in r24,__SREG__
33 0008 F894 cli
37 000a 8FBF out __SREG__,r24
40 000c 8091 0000 lds r24,g
41 0010 9091 0000 lds r25,(g)+1
46 0014 0895 ret

---------------------------------------------------------
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
gormih
сообщение Feb 23 2007, 23:51
Сообщение #2


nofb
***

Группа: Свой
Сообщений: 430
Регистрация: 18-05-06
Из: Москва, Зеленоград
Пользователь №: 17 218



WinAVR еще долго будет сырым по определению.

Все таки продукт не коммерческий...

Хотите получить оптимизаию - пользуйте IAR или на худой конец CodeVision


--------------------
Это не то что вы подумали ...

Go to the top of the page
 
+Quote Post
aesok
сообщение Feb 23 2007, 23:58
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(gormih @ Feb 23 2007, 23:51) *
WinAVR еще долго будет сырым по определению.

Все таки продукт не коммерческий...

Хотите получить оптимизаию - пользуйте IAR или на худой конец CodeVision


Уважаемый gormih, этот топик о проблеммах в WinAVR. Если Вы хотите пообсуждать какой компилятор лучше, пожалуйста начните новую тему.

Анатолий.
Go to the top of the page
 
+Quote Post
gormih
сообщение Feb 24 2007, 00:34
Сообщение #4


nofb
***

Группа: Свой
Сообщений: 430
Регистрация: 18-05-06
Из: Москва, Зеленоград
Пользователь №: 17 218



Цитата(aesok @ Feb 23 2007, 23:58) *
Уважаемый gormih, этот топик о проблеммах в WinAVR. Если Вы хотите пообсуждать какой компилятор лучше, пожалуйста начните новую тему.
Анатолий.


Уважаемый Анатолий!

Я понимаю Вашу озабоченность по поводу того, что здесь может начаться дискуссия по поводу сравнения характеристик того или иного компилятора, однако смею Вас уверить, что мой пост имеет прямое отношение к проблеме оптимизации, как ни крути. Однако, если Вам не нравится перспектива обсуждать данную тему - то по моему ее можно просто закрыть - было сказано, что проблема будет решена в следующих версиях... возможно лет через 10...


--------------------
Это не то что вы подумали ...

Go to the top of the page
 
+Quote Post
aesok
сообщение Feb 24 2007, 00:43
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(gormih @ Feb 24 2007, 00:34) *
Цитата(aesok @ Feb 23 2007, 23:58) *

Уважаемый gormih, этот топик о проблеммах в WinAVR. Если Вы хотите пообсуждать какой компилятор лучше, пожалуйста начните новую тему.
Анатолий.


Уважаемый Анатолий!

Я понимаю Вашу озабоченность по поводу того, что здесь может начаться дискуссия по поводу сравнения характеристик того или иного компилятора, однако смею Вас уверить, что мой пост имеет прямое отношение к проблеме оптимизации, как ни крути. Однако, если Вам не нравится перспектива обсуждать данную тему - то по моему ее можно просто закрыть - было сказано, что проблема будет решена в следующих версиях... возможно лет через 10...


Патчи для решения проблеммы с размером main() уже подготовленны.

Анатолий.
Go to the top of the page
 
+Quote Post
ahulap
сообщение Feb 24 2007, 13:12
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 22-06-06
Из: Kharkiv, UA
Пользователь №: 18 284



Цитата(aesok @ Feb 23 2007, 23:43) *
Патчи для решения проблеммы с размером main() уже подготовленны.

Когда эти патчи будут доступны? (и где?)
И, как вы считаете, все-таки какую версию WinAVR стоит сейчас использовать?
Спасибо за Ваши ответы!
Go to the top of the page
 
+Quote Post
aesok
сообщение Feb 24 2007, 13:32
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(ahulap @ Feb 24 2007, 13:12) *
Цитата(aesok @ Feb 23 2007, 23:43) *

Патчи для решения проблеммы с размером main() уже подготовленны.

Когда эти патчи будут доступны? (и где?)
И, как вы считаете, все-таки какую версию WinAVR стоит сейчас использовать?
Спасибо за Ваши ответы!


В WinAVR-20070122 есть два существенных изменения:
1. Добавленна поддержка 256КВ-ных мег.
2. WinAVR-2006... + AVRStudio 4.12 позволяет коректно отлаживать не более 64КВ кода. В WinAVR-20070122 + AVRStudio 4.13 эта проблема решена.

Если вы используете 128-е или 256-е меги и ваш проект больше 64КВ то лучше WinAVR-20070122 + AVRStudio 4.13, если нет то на ваш выбор.

Анатолий.

Сообщение отредактировал aesok - Feb 24 2007, 13:33
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jat   WinAVR-20070122 еще сырой?   Feb 17 2007, 04:29
- - beer_warrior   Вчера был на avrfreaks. Там много таких вопросов. ...   Feb 17 2007, 12:32
- - aesok   К сожалению это не компилятор сырой, а ваш код. Пр...   Feb 17 2007, 14:10
- - ahulap   Заметил, что по сравнению с WinAVR 20060125 код ст...   Feb 17 2007, 15:31
|- - aesok   Цитата(ahulap @ Feb 17 2007, 15:31) Замет...   Feb 17 2007, 16:44
|- - ahulap   [/quote] Если у вас есть локальные переменные в ...   Feb 17 2007, 19:00
|- - defunct   Цитата(aesok @ Feb 17 2007, 15:44) Если у...   Feb 23 2007, 16:23
- - ahulap   Провел эксперименты, вот что получил: unsigned in...   Feb 18 2007, 00:16
|- - aesok   В настоящий момент самый эффективный способ в GCC ...   Feb 18 2007, 00:43
- - ahulap   Нашел отличие: 00003900 <main>: 3900: 2f...   Feb 23 2007, 15:55
|- - aesok   Цитата(ahulap @ Feb 23 2007, 15:55) Нашел...   Feb 23 2007, 23:43
- - Abakt   Он же не пишет - "лучше-хуже" он именно ...   Feb 24 2007, 00:42
- - singlskv   Цитата(gormih @ Feb 23 2007, 23:51) WinAV...   Feb 24 2007, 12:38
|- - gormih   Цитата(singlskv @ Feb 24 2007, 12:38) Хот...   Feb 26 2007, 22:55
|- - singlskv   Цитата(gormih @ Feb 26 2007, 22:55) Не со...   Feb 26 2007, 23:28
|- - gormih   Цитата(singlskv @ Feb 26 2007, 23:28) А н...   Feb 27 2007, 12:52
- - beer_warrior   ЦитатаДа и не собираюсь думать, чего он там сделае...   Feb 27 2007, 14:52
|- - gormih   Цитата(beer_warrior @ Feb 27 2007, 14:52)...   Feb 27 2007, 14:57
- - beer_warrior   ЦитатаА Ваше высказывания кроме того, что Вы хам -...   Feb 27 2007, 15:08
|- - gormih   Цитата(beer_warrior @ Feb 27 2007, 15:08)...   Feb 27 2007, 16:03
- - beer_warrior   Цитатаа GNU GPL же тренируются молодые перспективн...   Feb 27 2007, 16:32
|- - gormih   Цитата(beer_warrior @ Feb 27 2007, 16:32)...   Feb 27 2007, 16:42
- - gormih   на сколько понимаю на этом всё   Mar 1 2007, 23:53
- - ahulap   Вот еще что обнаружил: есть маленнькая функция st...   Mar 5 2007, 16:19
|- - aesok   Цитата(ahulap @ Mar 5 2007, 16:19) Вот ещ...   Mar 5 2007, 18:11
|- - ahulap   Цитата(aesok @ Mar 5 2007, 17:11) Цитата(...   Mar 5 2007, 18:57
- - beer_warrior   Цитатана сколько понимаю на этом всё Я просил плат...   Mar 5 2007, 17:22
|- - gormih   Цитата(beer_warrior @ Mar 5 2007, 17:22) ...   Mar 6 2007, 01:12
- - IgorKossak   Поумерьте свой пыд, господа. Тема уже давно себя и...   Mar 6 2007, 10:46
- - IgorKossak   gormin довыступался до предупреждения из-за грубос...   Mar 7 2007, 18:15


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

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 17:21
Рейтинг@Mail.ru


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