I am using the IAR ewarm (4.42a) with freeRTOS 4.5.0 at present, and am looking into using some __inline functions.
I find that portmacro.h for the IAR compiler and at91sam7s includes #define inline in Compiler specifics, so that I still don’t get inlining even with #define __inline inline added.
If I comment out the #define in portmacros.h the compiler objects to two basic functions:vTaskSwitchContext and vTaskIncrementSwitch, both apparently because they are declared as __inline in the header file, and defined in the source file the same way, which the IAR compiler doesn’t seem able to cope with.
To keep rolling on I have commented out the __inline tags, but this doesn’t seem the correct way forward.
Do these functions need to be __inline? Is inlining significant in gaining speed of operation?
Any thoughts welcomed
Hitek Power Ltd, England