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

 
 
> Не инлайнится функция
Dog Pawlowa
сообщение Sep 5 2009, 18:19
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



IAR MSP430 4.10
Функция вот такая (сорри за синтаксис - выдернуто после препроцессора)

Код
#pragma inline
unsigned int Sensor(unsigned char sensor_num)
{ switch (sensor_num) {
case HighInputPressure: return (sensors & bHighInputPressure);
case CanFull: return (sensors & bCanFull);
case CanShorted: return (sensors & bCanShorted);
case WaterCounter: return (sensors & bWaterCounter);
case LeakageOn: return (sensors & bLeakageOn);
case LowPower: return (sensors & bLowPower);
case ConcCounter: return (sensors & bConcCounter);
case LowOutputPressure: return (sensors & bLowOutputPressure);
case HighOutputPressure: return (sensors & bHighOutputPressure);
case MaxOutputPressure: return (sensors & bMaxOutputPressure);
case ExtraOutputPressure: return (sensors & bExtraOutputPressure);
} return 0;}


В качестве параметра функции параметр enum - то есть известен на этапе компиляции.

В похожей ситуации ситуации IAR AVR 5.11 все разруливал.
Оптимизация максимальная по скорости со всеми галками.
Есть шанс как-то подтолкнуть компилятор, или ?


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 28th June 2025 - 00:02
Рейтинг@Mail.ru


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