Pular para o conteúdo principal
Knowledgebase
Home
Renesas Brasil - Knowledgebase

Checking Stack Usage in CS+

Last Updated:03/20/2018

Question:

I am using RX Compiler CC-RX.
I used "Call Walker", a tool to estimate the stack in HEW, but I cannot find an equivalent function in CS+.

Answer:

To use a stack usage tracer in CS+, follow the procedure below.

  1. In [Others] on the [Link Options] tab in the Property panel for CC-RX (Build Tool), set [Outputs a stack use information file] to "Yes", and then execute a build.
     
  2. From the [Tool] menu of CS+, open the [Additional Function] tab in [Plug-in Setting...], and then confirm that [Estimate the Stack Capacity] is checked.
     
  3. From the CS+ menu, select [Tool] -> [Startup Stack Usage Tracer] to start Call Walker, and check the stack usage.
     
  4. If there is a possibility of stack overflow, confirm whether the maximum value of the stack usage does not exceed the size of the stack area.
     
  5. In Call Walker, interrupt functions are not added to the maximum stack usage. The stack usage to be used by each interrupt function is displayed individually. Therefore, when allocating the stack area, you must manually add the stack usage used by each interrupt function to the entire stack usage.

In addition, you can see the added value by selecting the interrupt function on the tool (left window) of Call Walker and moving it by dragging and dropping. However, the value differs depending on when the interrupt function is called. We think that the most reliable method is to add the stack usage of the interrupt function to the maximum value of the displayed stack usage. The value to be added is the maximum usage or the usage with consideration given to multiple interrupts rather than the stack usage of all interrupt functions.
 

Suitable Products
CS+ (formerly CubeSuite+)
C/C++ Compiler Package for RX Family
  • Este artigo foi útil?