IAR Systems today announced the availability of a new version of IAR Embedded Workbench for ARM. The new version adds significant speed optimizations and several new attractive features, making it even more powerful. Optimizations are targeted for the ARM CMSIS DSP library and for general speed improvements when generating code for Cortex-M processors.
One of the new powerful features that have been added is stack usage analysis. With stack usage analysis enabled, IAR Embedded Workbench for ARM produces a stack usage report with listings of the maximum stack depth for each call graph root. This is very useful information in most embedded projects, as it greatly simplifies estimates of stack usage. With the latest version comes also a vastly improved inline assembler. Thanks to a new way of handling inlined assembler statements, the user can now place pieces of assembly code right where it is needed in the high-level code, with access to the surrounding C variables. The inlined assembler code can safely reserve private storage.
The Timeline window has been enhanced with a useful graphical event log for Cortex-M3/M4 users. When analyzing the timing behavior, you will be able to place certain macros in the code, and when these points are reached during execution, event messages will be sent and appear in the Timeline window. This is very useful as the time elapsed between two points in the code can be determined. The new Timeline feature can also provide support for creating a stack usage profile over time of an application.
The function profiling window has also been enhanced, using a function hide mechanism. This feature greatly simplifies the task of getting an overall profiling picture of your application, as you can filter out functions that are not of interest. This is very useful when working with an RTOS, as you can hide everything related to the RTOS kernel, and thereby extract a focused picture of where the execution time is spent in a running application.
Signum JTAGjet, an advanced, real-time, in-circuit debugger for high-end applications, is now integrated in IAR Embedded Workbench for ARM, making it possible to take full advantage of the trace capabilities on Cortex-A and Cortex-R devices when debugging complex systems.