Set Worst Stack Size Options

Enable Worst Stack Size
  • In the Project Explorer, right-click on the project and click Properties. Alternatively, you can select the project, and then click the settings icon settings button on the toolbar.
  • In the Properties window, click C C++ Build > Settings.
  • In the Build Settings tab, click Settings > General > Selective instrumentation.
  • In the right pane, click the Value field in Build options and click ... to open the Build options window.
  • In the Build options list, click Application Profiling to enable the Worst Stack Size feature.

Multi-thread option

  • In the Project Explorer, right-click on the project and click Properties.
  • In the Properties window, click C C++ Build > Settings.
  • In the Build Settings tab, click Settings > General > Multi-thread options.
  • In the right pane, click the ... in the value field of the Entry points option to open the Entry points editor.
  • In the Entry points editor, enter the list of entry points for each thread and click OK.

Worst Stack Size options

In the Project Explorer, right-click on the project and click Properties, then click C C++ Build > Settings. In the Build Settings tab, under the Application Profiling menu, select Stack Size.

In the setting page, you can change the following options:
  • Trace file name (.tzf): set the name of the trace file dedicated to worst stack size. By default this name is the base name of the test with the extension .tzf.
  • Report Template: change the template of the report generator. By default this template is wssreport.template.
  • Generate raw data in JSON : Select Yes if you want to generate the worst stack size raw data in a JSON file, Yes, in compressed mode if you want to compress this file, No if you do not need this JSON file. The name of this file is the same as the name of the HTML report file where .html is replaced by .json
  • External functions stack size: This is a file that contains the stack size of the external functions (generally functions that are in libraries and used by your application). The format of this file should be in Json, with the extension .tzfe, as follows:
    [
    	     {"name":"printf", "stacksize":4},
    	     {"name":"sin", "stacksize":4},
    	     {"name":"cos", "stacksize":4},
    	     {"name":"tan", "stacksize":4}
    ]
    
  • Maximum Stack Size (byte): Enter the maximum stack size in bytes that the application should not exceed.
  • Percentage of available Stack Size for security: Enter a percentage of available Stack Size for security.

    If you provide the maximum Stack Size allowed and a percentage of available Stack Size for security, the report displays the total Stack Size and verify if this size does not go over the available Stack Size.