IAR Systems introduces static code analysis in Atmel AVR32 tools

The latest version of IAR Systems’ toolchain integrates C-STAT as well as stack usage analysis and parallel build.

IAR Systems, a leading provider of software tools for embedded systems, has revealed several major updates to its complete embedded development toolchain IAR Embedded Workbench for Atmel AVR32. The latest version, 4.30, introduces the add-on product C-STAT for completely integrated static code analysis, as well as stack usage analysis and shortened build times through parallel build.


Static analysis finds potential issues in code by delving deeper on the source code level, given that errors such as memory leaks, access violations, arithmetic errors and array and string overruns can cause security issues and affect the overall performance and quality of a product. By using static analysis, developers can identify these errors early on, and ultimately, minimize their impact on the finished product and the project timeline. Aside from improving the code quality, the analysis can assist in aligning with industry coding standards. C-STAT is a powerful static analysis tool that checks compliance with rules as defined by the coding standards MISRA C:2004, MISRA C++:2008 and MISRA C:2012, as well as hundreds of rules based on for example CWE (the Common Weakness Enumeration) and CERT C/C++. Users can easily select which rule-set and which individual rules to check the code against, and the analysis results are provided directly in the IAR Embedded Workbench IDE.


The new version also adds stack usage analysis. The stack is a fundamental property of an embedded system and a proper setup of the stack is essential to system stability and reliability. However, calculating the stack space is notoriously hard, making worst case maximum stack depth very useful information as it greatly simplifies estimates of how much stack an application will require. With stack usage analysis enabled in IAR Embedded Workbench, a stack usage section will be added to the linker map file with listings of the maximum stack depth for each call graph root. The analysis process can be customized to take into account such constructs as calls via function pointers and recursion. The output can optionally be generated in XML format for post processing.


In the compiler, parallel build has been introduced to help accelerate project times. The user can easily set the compiler to run in several parallel processes and make better use of the available processor cores in the PC. This feature can have a major impact on reducing the build times of the compiler.

As many of you are well aware, IAR Systems provides a plethora of powerful development tools for Atmel 8-bit and 32-bit families. And, IAR Embedded Workbench for AVR32 is a complete C/C++ compiler and debugger toolchain that creates the fastest, most compact code in the industry. Interested? Head over to its official page here to learn more.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s