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

 
 
> __swap_nibbles() удален из оптимизатора
Student2
сообщение Aug 13 2009, 10:27
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 83
Регистрация: 4-08-09
Из: Болгария / София
Пользователь №: 51 737



Имею код:


CODE
uint8_t resultFast ;
......

if (mainFlags & FLAGS_USE_HIGH_NIBBLE)
{
__swap_nibbles(resultFast); /* we need high nibble */
}

resultFast &= 0x0F; /* remove the nibble we don't need */
.....


После компиляции __swap_nibbles просто нет в коде (optimization = max speed, IAR 5.30). Чтобы вернуть функциональность нужно написать:

CODE
if (mainFlags & FLAGS_USE_HIGH_NIBBLE)
{
resultFast >>= 4; /* сейчас код больше */
}


Вопрос - как сказать компилятору не удалять __swap_nibbles() при оптимизации?
Go to the top of the page
 
+Quote Post



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

 


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


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