IAR Systems provides Stack Usage Analysis
Uppsala, Sweden—October 26, 2011—IAR Systems® today announced stack usage analysis functionality in its popular product IAR Embedded Workbench® for ARM®. The stack is a fundamental property of an embedded system. A proper setup of the stack is essential to system stability and reliability. Incorrectly used it may cause your system to wreak havoc in the strangest ways. Calculating the stack space is notoriously hard for all but the smallest embedded systems. Worst case maximum stack depth is very useful information in most embedded projects, as it greatly simplifies estimates of how much stack an application will need.
With stack usage analysis enabled, the linker will accurately calculate the maximum stack usage for each call graph root. A stack usage section will be added to the linker map file, with listings of the particular call chain that results in the maximum stack depth for each call graph root. The tool can also produce this information in XML format for post-processing activities. The compiler will generate this information for each separate C function. If there are indirect calls in your application, you can supply a list of the functions that are possible to call from each indirect call. If the application uses recursion, and for functions in modules that do not have stack usage information, you need to provide this information to the linker. This can be done by using a stack usage control file.
Stack usage analysis is available in IAR Embedded Workbench for ARM v 6.30 and beyond. Evaluation versions of IAR Embedded Workbench for ARM v. 6.30 are available at www.iar.com/downloads
Editor's Note: IAR Systems, IAR Embedded Workbench, C-SPY, visualSTATE, The Code to Success, IAR KickStart Kit, IAR and the logotype of IAR Systems are trademarks or registered trademarks owned by IAR Systems AB. J-Link and J-Trace are trademarks licensed to IAR Systems AB. All other products are trademarks of their respective owners.