Types of stacks in a TriCore application

12-Nov-2024

Typically, a TriCore application has the following types of stacks:

  • User Stack (ustack)

The user stack demand for a single function is calculated by the C compiler. Furthermore, the C compiler generates information for the call graph generation. The call graph is generated by the linker and shows the stack usage for each function and the stack usage of all callees of that function. When recursive functions are used, the stack demand of the application can be higher than the calculated one. This is because the linker cannot determine any details about the maximum number of recursive function calls.

  • Interrupt stack (istack)

The interrupt stack is used similarly to the user stack when an interrupt service routine is active.

For more information, see the section 7.9.12. Stack Size Estimation in the TriCore user guide.


More resources

Was this answer helpful?