|
WinAVR, Вопрос по оптимизации |
|
|
|
 |
Ответов
|
Jul 3 2008, 07:01
|
Знающий
   
Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484

|
Цитата(BigBolt @ Jul 3 2008, 10:58)  Жаль. Придётся на асме отдельный кусок лепить... А может вначале расказать в чем проблемма, может Вам подскажут более простое решение? Анатолий.
|
|
|
|
|
Jul 3 2008, 08:41
|
Местный
  
Группа: Участник
Сообщений: 424
Регистрация: 6-03-06
Из: Н.Новгород
Пользователь №: 14 997

|
Цитата(aesok @ Jul 3 2008, 11:01)  А может вначале расказать в чем проблемма, может Вам подскажут более простое решение? Анатолий. При оптимизации -0s функция компилится не так как бы этого хотелось. Переменная которая изменяется в прерывании в данной функции не обновляется даже с использованием volatile. Если компилить при опции -О0 то всё нормально...
|
|
|
|
|
Jul 3 2008, 09:04
|
Местный
  
Группа: Участник
Сообщений: 424
Регистрация: 6-03-06
Из: Н.Новгород
Пользователь №: 14 997

|
Цитата(Сергей Борщ @ Jul 3 2008, 12:49)  Раз код настолько секретный, что даже кусочек его показать нельзя, рискну телепатировать, что переменная - указатель. И объявлена как-то вроде volatile char * Variable. Угадал? Да нет не секретный, уже всё переделал. Структура, доступ к которой происходит через указатель. В цикле проверки обращениее к ней происходит один раз, при входе в цикл ожидания. А потом проверяется одно и тоже значение. Естественно сообщение о том что произошло некое событие не фиксируется.
|
|
|
|
|
Jul 17 2008, 15:50
|

Группа: Участник
Сообщений: 13
Регистрация: 20-10-07
Пользователь №: 31 533

|
Цитата(Сергей Борщ @ Jul 3 2008, 14:07)  Ну так покажите. На словах тяжело воспринимается. У вас скорее всего как volatile был объявлен сам указатель, а не то, на что он указывет. Или наоборот. Отсюда и проблемы. может покажите как правильно объявлять указатель на volatile, а как указатель с квалификатором volatile. Недавно столкнулся с этим вопросом, ничего толкового не нашел ((
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|