GNU/IAR portmacro.h

joel_winarske wrote on Wednesday, September 19, 2007:

The GNU version implements:
#define portENTER_SWITCHING_ISR()
#define portEXIT_SWITCHING_ISR( SwitchRequired )

What are the IAR equivalents for these?

Thanks,
Joel

joel_winarske wrote on Wednesday, September 19, 2007:

I have some thick blinders on at the moment, please disregard the above.

Is there a benefit code/speed wise in how the IAR ports are implemented over the GCC?

For example the use of intrinsics.

Has someone done any cycle measurements between the two?

I like the generic implementation of the GCC port, I would just like to be sure I’m not giving myself a performance hit.

Thanks,
Joel

rtel wrote on Wednesday, September 19, 2007:

Are the two not nearly the same?  The GCC version is slightly different as interrupt routines are defined completely within C files, and therefore the context is saved/restored in the macro.  The IAR inline assembler is not as powerful and requires an asm wrapper to save and restore the context.

Regards.

joel_winarske wrote on Wednesday, September 19, 2007:

I’m tasked to merge the two (GCC/IAR) into a single port.  Just looking for insight beyond the obvious.

Joel