Static code analysis enhances Atmel AVR32 toolchain
Now incorporating the C-STAT add-on for integrated static code analysis, IAR Systems has made major updates to its complete embedded development toolchain IAR Embedded Workbench for Atmel AVR32. Version 4.30 also adds stack usage analysis and shortened build times through parallel build.
Static analysis finds potential issues in code by doing an analysis on the source code level. Such errors as memory leaks, access violations, arithmetic errors and array and string overruns can cause security issues and affect the performance and quality of a product. By using static analysis, developers can identify these errors early and minimise their impact on the finished product and the project timeline. In addition to raising the code quality, the analysis can aid alignment 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, the Common Weakness Enumeration (CWE) 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. C-STAT is available as an add-on product.
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 need. 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 customised 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 speed up build 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.
IAR Systems provides powerful development tools for all Atmel AVR 8-bit and 32-bit families. IAR Embedded Workbench for AVR32 is a complete C/C++ compiler and debugger toolchain that creates the fastest, most compact code in the industry.