Push task stack content when task exit from run mode

michaeln32 wrote on Tuesday, January 16, 2018:

Hi,

When task is exiting from run mode, It’s stack filled up with run time envierment registers.

Can you please tell me or give me a reference on what is the content and type of registers that are pushed in stack and the order they filled in.

I’m using MISP processor with freeRTOS kernel.

rtel wrote on Tuesday, January 16, 2018:

Do you mean MIPS? Rather than MISP?

Any processor register that is essential to the execution path of the
task is saved - both general purpose and special purpose registers.
Rather than go and look at the source files myself and list the
registers here I will just post a link to the source file so you can
look yourself - remember FreeRTOS is open source you can just read the
source files:

https://sourceforge.net/p/freertos/code/HEAD/tree/trunk/FreeRTOS/Source/portable/MPLAB/PIC32MX/port.c
(look at vPortInitialiseStack())

https://sourceforge.net/p/freertos/code/HEAD/tree/trunk/FreeRTOS/Source/portable/MPLAB/PIC32MX/ISR_Support.h
(look at portSAVE_CONTEXT())

michaeln32 wrote on Tuesday, January 16, 2018:

Thank you Richard !

Yes, I’m using MIPS.

Are the links above are representing MIPS processor ?