IAR Systems introduces static code analysis in Atmel AVR32 tools
Uppsala, Sweden—April 28, 2015—IAR Systems® has made major updates to its complete embedded development toolchain IAR Embedded Workbench® for Atmel® AVR32. The new version, 4.30, introduces the add-on product C-STAT® for completely integrated static code analysis. Also added is 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 minimize 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 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. 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 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 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. More information is available at www.iar.com/iar-embedded-workbench/atmel/avr32.
About MISRA C
MISRA, The Motor Industry Software Reliability Association, is a collaboration between vehicle manufacturers, component suppliers and engineering consultancies which seeks to promote best practice in developing safety-related electronic systems in road vehicles and other embedded systems. MISRA C is a software development standard for the C programming language developed by MISRA. More information is available at www.misra.org.uk
About CERT C/C++
The CERT C/C++ Secure Coding Standards are standards published by the Computer Emergency Response Team (CERT) providing rules and recommendations for secure coding in the C/C++ programming languages. More information is available at www.cert.org
Editor's Note: IAR Systems, IAR Embedded Workbench, C-SPY, C-RUN, C-STAT, visualSTATE, Focus on Your Code, IAR KickStart Kit, IAR Experiment!, I-jet, I-jet Trace, I-scope, IAR Academy, IAR, and the logotype of IAR Systems are trademarks or registered trademarks owned by IAR Systems AB. All other products names are trademarks of their respective owners.