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

 
 
> 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

Сообщений в этой теме
- 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
- - gormih   WinAVR еще долго будет сырым по определению. Все...   Feb 23 2007, 23:51
|- - aesok   Цитата(gormih @ Feb 23 2007, 23:51) WinAV...   Feb 23 2007, 23:58
|- - gormih   Цитата(aesok @ Feb 23 2007, 23:58) Уважае...   Feb 24 2007, 00:34
|- - aesok   Цитата(gormih @ Feb 24 2007, 00:34) Цитат...   Feb 24 2007, 00:43
|- - ahulap   Цитата(aesok @ Feb 23 2007, 23:43) Патчи ...   Feb 24 2007, 13:12
|- - aesok   Цитата(ahulap @ Feb 24 2007, 13:12) Цитат...   Feb 24 2007, 13:32
- - 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 - 09:09
Рейтинг@Mail.ru


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