IAR Product Updates

Versions

Product:IAR Build Tools for RISC-V
Version:3.40
Release date:June 10, 2025

Install CXRISCV 3.40.2

Published October 22, 2025.

Highlights

  • Error corrections
    See the compiler, linker, debugger, and C-STAT release notes for more details.

New Devices

  • Codasip
    L730, L735, L739

  • SiFive
    E7-A, S7-A

  • Silergy
    SA32D408

  • Synopsys
    RHX-115-FS

CXRISCV 3.40.1 standard library patch for sin, cos, and tan

Published June 18, 2025.

This update improves performance of the sin(), cos(), and tan() library functions.

Install CXRISCV 3.40.1

Published June 10, 2025.

Highlights

  • Command line debug capability for CI/CD activities and debugging using VS Code on Linux
    The C-SPY command line utility (cspybat) is now available on Linux for running applications in the Simulator, or on hardware using the I-jet and I-jet Trace debug probes. Debugging is also available on Linux when using the Visual Studio Code IAR C-SPY Debug Extension. Debugging on Linux is only available for IAR Build Tools for RISC-V.

  • 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.

  • C-STAT support for MISRA C++:2023
    Support for MISRA C++ 2023 rules has been added. This includes all rules in chapters 4.0 - 4.7 and all additional rules that overlap with rules in the already supported MISRA rule sets. In some cases, rules in the old rule set have been slightly revised to the more modern standard when the newer rule is either clearer or adapted to a more modern way of software development.

  • Additional support for GNU extensions
    The new --language compiler option adds support for enabling GNU C/C++ language extensions.

    • 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:

      • Additional support for __builtin function calls. If supported by the target core, these calls result in code generation using native instructions; if not, they are transformed into library function calls.

      • The attribute visibility is now supported in C.

      • Support for arithmetics on void and function pointers (requires IAR language extensions).

      • The __attribute__((__packed__)) construct can now be placed at the end of enum declarations

      • Structures with no members: struct Empty {}

      • Empty initializer: struct Color color = {};

    • Support for additional GCC relaxations to ISO C
      The following GCC C language extensions are now supported by the compiler:

      • 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.

  • Support for several versions of the P extension
    The compiler can now be configured to support the P extension in either version 0.5.4, 0.9.6, or 0.9.11.

  • Experimental support for SARIF output
    The SARIF output format is supported by the compiler, linker, assembler, and C-STAT command line tools.

  • Debugger enhancements

    • The flashloader's built-in checksum verification speed has been improved for srec and hex files

    • SWD, Serial Wire Debug interface support

    • RISC-V Semihosting specification support

    • cJTAG improvements

New Devices

  • Altera
    Nios V/g, Nios V/m

  • Analog Devices
    MAX32690

  • Andes
    N225, D23, D23-SE, D45-SE

  • ChipEXT
    CX3288AE

  • Codasip
    L110, L31AS

  • Espressif
    ESP32-C6

  • GigaDevice
    GD32VW553xI, GD32VW553xM

  • HPMicro
    HPM5E11, HPM5E31, HPM6E8Y, HPM6E50, HPM6E60, HPM6E70, HPM6E80, HPM6E84, HPM6P31, HPM6P41, HPM6P81, HPM6454, HPM6830, HPM6850, HPM6880

  • Nordic Semiconductor
    nRF54L05, nRF54L10, nRF54L15

  • Nuclei
    N100, NX600, NX1000, UX1000

  • Raspberry Pi
    RP2350

  • Renesas
    R9A02G021

  • Silergy
    SA32D610

  • Synopsys
    RHX-100, RHX-110-FS, RMX-100, RMX-110-FS, RMX-510-FS

  • UCAS-ANSILIC
    AS32I601

  • XuanTie
    C906, C907, C908, C910, C920, E902, R908, R910