IAR Information Center for Arm (original) (raw)
Release notes
for IAR Embedded Workbench for Arm version 9.60.3
Read about the latest features, new device support, and program corrections in the release notes.
- Highlights
- Important information
- Release notes for individual components
- Product packages
- Installation and license activation
Highlights
- CMake support
CMake files can now be directly read by the IAR Embedded Workbench IDE to populate the project manager view, allowing the flexibility of CMake to be mirrored in IAR Embedded Workbench and empowering the user with the IAR C-SPY debug experience as well as building. Enables support for importing, building, and debugging projects based on CMake in IAR Embedded Workbench. - Cortex-M52 support
Support for the new Cortex-M52 core based on the ARMv8.1-M architecture with features such as Helium MVE (M-profile Vector Extension) and Low Overhead loops. - C-STAT support for MISRA C:2023
MISRA C:2023, also known as MISRA C Third Edition, Second Revision, is now supported. It incorporates MISRA C:2012 amendments 2 (AMD2), 3 (AMD3) and 4 (AMD4), plus technical corrigendum 2 (TC2). MISRA C:2023 incorporates support for C11 and C18 language features. - New and updated support for GCC’s "Extensions to the C Programming Language"
The following GCC C language extensions are now supported by the compiler (requires IAR language extensions to be enabled):- Additional support for __builtin function calls. If supported by the target core, these calls result in code generation using native instructions; else, they are transformed into library function calls.
- The attribute visibility is now supported in C.
- Support for arithmetic on void and function pointers (requires IAR language extensions).
- The __attribute__((__packed__)) construct can now be placed at the end of enum declarations
- Support for additional GCC relaxations to ISO C
The following GCC C language extensions are now supported by the compiler (requires IAR language extensions to be enabled):- In a function that has the return type void, a return statement can return a void expression. For example return (void)expr; (requires IAR language extensions).
- The error Pe042 ("operand types are incompatible") is now a soft error in more language constructs. By reducing the severity of this error and the errors Pe144 and Pe513, an application can mix void * and function pointers.
- Cortex-R52 single precision only mode
The compiler can now be configured to only support Cortex-R52 single precision mode. - J-Link: command line debug capability for CI/CD activities and debugging using VS Code on Linux and Windows
The Segger J-Link debug probe has been added to the C-SPY command line utility (cspybat) and the Runtime Analysis tool (C-RUN) on booth Linux and Windows. - Cortex-M55 and Cortex-M85 ETM trace
The debugger trace decoder now supports full instruction trace on the latest Arm Cortex-M cores. - SDM Debug Authentication
The C-SPY debugger now supports the Arm SDM (Secure Debug Manager) debug authentication method on I-jet, CMSIS-DAP and ST-LINK. - Experimental support for Sys V shared objects
Shared objects is a new type of output from the linker. It allows creation of shared libraries that can be dynamically loaded by an application. Use of shared objects requires the use of a dynamic loader/linker or something that can act like a dynamic linker. A dynamic linker can load shared objects into available memory and resolve references to and from them. Dynamic linkers are typically part of an operating system.
See IAR C/C++ Development Guide for more information. An example can be found in arm\src\sharedobjects. - Experimental support for SARIF output
The SARIF output format is supported by the compiler, linker, assembler and C-STAT command line tools.
Device support
- New device support
AutoChips AC7801LxCEAAC7801LxDEAAC78036xDLAAC78036xELAAC78058xDLAAC78058xDQAAC78058xELAAC78058xEQAAC78406xFLAAC78408xFLAAC78408xGLAAC78428xGLAAC78428xHLAAC78428xILAAC78438xILAAC78438xJLAAC78438xKLAAC7870xLBAAC7870xMBAAC7870xPBA Cmsemicon BAT32A255BAT32A257BAT32A259BAT32A499BAT32G129BAT32G135CMS32C030CMS32C040CMS32F103CMS32F407 Infineon XMC5100-F64K576AAXMC5100-F100K576AAXMC5200-F64K1088AAXMC5200-F100K1088AAXMC5200-F144K1088AAXMC5200-F144K1088AAXMC5300-F100K2112AAXMC5300-F144K2112AA Infineon-Cypress CY8C4024LQA-S413CY8C4024LQA-S413CY8C4024LQS-S413CY8C4024LQS-S413CY8C4025FNI-T442CY8C4025FNI-T452CY8C4025LQA-S413CY8C4025LQI-T441CY8C4025LQI-T442CY8C4025LQI-T451CY8C4025LQI-T452CY8C4025LQS-S413CY8C4026FNI-T442CY8C4026LQI-T441CY8C4026LQI-T442CY8C4045FNI-T442CY8C4045FNI-T452CY8C4045LQA-S413CY8C4045LQI-T441CY8C4045LQI-T442CY8C4045LQI-T451CY8C4045LQI-T452CY8C4045LQS-S413CY8C4046FNI-T442CY8C4046LQI-T441CY8C4046LQI-T442CY8C4126LDA-S453CY8C4126LDE-S453CY8C4126LDS-S453CY8C4127LDA-S443CY8C4127LDA-S453CY8C4127LDE-S443CY8C4127LDE-S453CY8C4127LDS-S443CY8C4127LDS-S453CY8C4146LDA-S243CY8C4146LDA-S253CY8C4146LDA-S263CY8C4146LDA-S273CY8C4146LDA-S453CY8C4146LDE-S243CY8C4146LDE-S253CY8C4146LDE-S263CY8C4146LDE-S273CY8C4146LDE-S453CY8C4146LDS-S243CY8C4146LDS-S253CY8C4146LDS-S263CY8C4146LDS-S273CY8C4146LDS-S453CY8C4147LDA-S243CY8C4147LDA-S253CY8C4147LDA-S263CY8C4147LDA-S273CY8C4147LDA-S283CY8C4147LDA-S293CY8C4147LDA-S443CY8C4147LDA-S453CY8C4147LDA-S463CY8C4147LDA-S473CY8C4147LDE-HV504CY8C4147LDE-HV534CY8C4147LDE-HV604CY8C4147LDE-HV634CY8C4147LDE-HV704CY8C4147LDE-HV734CY8C4147LDE-S243CY8C4147LDE-S253CY8C4147LDE-S263CY8C4147LDE-S273CY8C4147LDE-S283CY8C4147LDE-S293CY8C4147LDE-S443CY8C4147LDE-S453CY8C4147LDE-S463CY8C4147LDE-S473CY8C4147LDS-S243CY8C4147LDS-S253CY8C4147LDS-S263CY8C4147LDS-S273CY8C4147LDS-S283CY8C4147LDS-S293CY8C4147LDS-S443CY8C4147LDS-S453CY8C4147LDS-S463CY8C4147LDS-S473CYPD7173-39BFXQCYPD7193-39BFXSCYPD6129-52LQXICYPD6129-52LQXITCYPD6229-52LQXICYPD6229-52LQXITCYPD8129-52LQXITCYPD8229-52LQXITCYW20829B0010CYW20829B0021CYW89829B0022CYW89829B0232 Nuvoton M463K2GCACM463KGCAEM463L2GCACM463LGCAEM463S2GCACM463SGCAEM463YGCAEM467H2JHAEM467HJHANM467J2JHAEM467JJHANM467K2JHAEM467KJHANM467S2JHAEM467SJHAN NXP MIMX9101MIMX9111MIMX9131MIMXRT735SMIMXRT758SMIMXRT798SKW47B42ZB7MCXA132MCXA133MCXC041MCXC141MCXC142MCXC143MCXC144MCXC242MCXC243MCXC244MCXC443MCXC444MCXW716AMCXW716CMCXW727C Renesas R7FA8E1AFR7FA8E2AFR9A07G075M29 Silergy SA32B12SA32B14 SiliconLabs EFM32PG26B100F512IL136EFM32PG26B300F1024IL136EFM32PG26B300F1024IM68EFM32PG26B300F2048IL136EFM32PG26B300F2048IM68EFR32BG26B310F1024IL136EFR32BG26B310F1024IM68EFR32BG26B310F2048IL136EFR32BG26B310F2048IM48EFR32BG26B310F2048IM68EFR32BG26B320F1024IM68EFR32BG26B320F2048IM48EFR32BG26B320F2048IM68EFR32MG26B210F2048IM68EFR32MG26B210F3200IM48EFR32MG26B220F2048IM68EFR32MG26B220F3200IM48EFR32MG26B310F3200IL136EFR32MG26B410F3200IM48EFR32MG26B410F3200IM68EFR32MG26B420F3200IM48EFR32MG26B420F3200IM68EFR32MG26B510F3200IL136EFR32MG26B510F3200IM48EFR32MG26B510F3200IM68EFR32MG26B520F3200IM48EFR32MG26B520F3200IM68EFR32MG26B610F3200IM48 STMicroelectronics STM32C051C6STM32C051C8STM32C051D6STM32C051D8STM32C051F6STM32C051F8STM32C051G6STM32C051G8STM32C051K6STM32C051K8STM32C091CBSTM32C091CCSTM32C091ECSTM32C091FBSTM32C091FCSTM32C091GBSTM32C091GCSTM32C091KBSTM32C091KCSTM32C091RBSTM32C091RCSTM32C092CBSTM32C092CCSTM32C092ECSTM32C092FBSTM32C092FCSTM32C092GBSTM32C092GCSTM32C092KBSTM32C092KCSTM32C092RBSTM32C092RCSTM32N645A0STM32N645B0STM32N645I0STM32N645L0STM32N645X0STM32N645Z0STM32N647A0STM32N647B0STM32N647I0STM32N647L0STM32N647X0STM32N647Z0STM32N655A0STM32N655B0STM32N655I0STM32N655L0STM32N655X0STM32N655Z0STM32N6570-DKSTM32N6570-NUCLEOSTM32N657A0STM32N657B0STM32N657I0STM32N657L0STM32N657X0STM32N657Z0STM32U375CESTM32U375CGSTM32U375KESTM32U375KGSTM32U375RESTM32U375RGSTM32U375VESTM32U375VGSTM32U385CGSTM32U385KGSTM32U385RGSTM32U385VGSTM32WL33C8STM32WL33CBSTM32WL33CCSTM32WL33K8STM32WL33KBSTM32WL33KC TexasInstruments MSPM0G1518MSPM0G1519MSPM0G3518MSPM0G3519MSPM0H3215MSPM0H3216MSPM0L1116MSPM0L1117 TMC THA6206 YTMicro YTM32B1LE14YTM32B1LE15YTM32B1ME14YTM32B1ME15YTM32Z1LS06 - Device support
- Example projects
Over 9500 example projects for various evaluation boards are included in the product installation. See the Information Center.
Important information
- Upgrade information
- Before you install
To avoid any problems, do not install this release in a directory where you have previously installed any older version of IAR Embedded Workbench. It is recommended that you either uninstall an earlier product, or install this release in a separate directory. As before, however, it is possible to install different products, all using the same version of the main application, in the same root directory. - License renewal
The upgrade to this version requires a license renewal. This can be performed by starting the IAR License Manager and selecting License→Check for License Renewal, or by using the Light License Manager with the commandLightLicenseManager renew YOUR_PROD.EW.
- Before you install
- Microsoft SCC interface no longer supported
Microsoft SCC-compatible version control systems are no longer supported by IAR Embedded Workbench. - Microsoft Windows
Windows operating systems have a security mechanism called UAC (User Access Control). Disabling UAC will automatically grant you permission when a task requires administrative rights but this is not recommended because it will reduce the security of the computer. It is not necessary to run the IAR Embedded Workbench IDE as an administrator. However, if you are not, modifications to the installed product tree in C:\Program Files\IAR Systems might not work as intended and could give unexpected results.
To avoid this, the preferred way is to copy the examples to a location outside Program Files, either manually or automatically by opening them via the IAR Information Center. - EWARM 9.60 versions
EWARM 9.60.1 was never publically released. EWARM 9.60.2 is the first public release in the 9.60 series. - Changed default installation path
The suggested default installation path has changed from C:\Program Files\IAR Systems to C:\iar. - Network licenses
For network licenses, IAR Embedded Workbench for Arm version 9.20.1 and later require IAR License Server Tools version 2.18.2 or later. For more information, see technical note TN21842. The latest IAR License Server Tools are backward compatible with previous IAR Embedded Workbench versions.
Note: If you are running older versions of the product, the number of users displayed in the Network Licenses window might be too large. This is cosmetic and does not affect the use of your network license. The problem has been corrected in v2.17.2 of the IAR License Server Tools and the IAR License Manager. - Mobile licenses
If you will be using a mobile license, you need to select the option to install dongle drivers during installation. The latest dongle drivers are also available in the product installation under \common\drivers\dongle. - IAR data type qualifiers
IAR data type qualifiers in C++ (e.g., __packed) are now correctly mangled when occurring in a function parameter below the top-level. This is a breaking change of the ABI. - Windows 7 not supported
Windows 7 is no longer supported as the host OS. - Access to Device memory
There are a number of restrictions regarding access to Device memory. This can be important if your target system boots into a state where the MMU is disabled, because then all accesses are treated as Device.
See the Arm architecture reference manuals for detailed information.
Restrictions for Device memory in AArch64 are, for example:- Unaligned accesses to regions marked as Device always fault.
- If a multiple-register load/store instruction is interrupted, it can result in repeated accesses.
- Prefetch instructions to Device memory are not allowed.
Note that for normal C/C++ functions, LDP and STP are used to set up and tear down the stack frame, so if a function is interrupted when the stack is in Device memory, this can lead to unexpected behavior.
The compiler option --no_unaligned_access can be used to avoid unaligned accesses to Device memory.
For AArch64 this means that: - startup code must be built with --no_unaligned_access
- the MMU must be active and the stack must be in Normal memory before interrupts are activated.
See also Arm Application Note 527, Bare-metal Boot Code for ARMv8-A Processors.
- Object format
The object format used in the compiler, assembler, linker, and debugger is based on the ARM ABI standard version 2.10 with ELF/DWARF 4.
Trademarks
IAR Systems, IAR Embedded Workbench, IAR Embedded Trust, IAR Connect, IAR C-SPY, IAR C-RUN, IAR C-STAT, IAR Visual State, IAR KickStart Kit, IAR I-jet, IAR I-jet Trace, IAR Academy, IAR, and the logotype of IAR Systems are trademarks or registered trademarks owned by IAR Systems AB.
Microsoft and Windows are registered trademarks of Microsoft Corporation. Adobe and Acrobat Reader are registered trademarks of Adobe Systems Incorporated. CodeWright is a registered trademark of Starbase Corporation. All other product names are trademarks or registered trademarks of their respective owners.
Copyright © 1996-2024 IAR Systems AB.