Skip to content

GNU Toolchain for ARC Processors, arc-2025.09-rc1

Pre-release
Pre-release

Choose a tag to compare

@synopsys-arc-automation-bot synopsys-arc-automation-bot released this 02 Oct 14:49
· 4 commits to arc-releases since this release

This is the first release candidate of 2025.09 version of the GNU Toolchain for DesignWare ARC 600, ARC 700, EM, HS3x/4x, HS5x, HS6x and ARC-V processors.

More information about ARC-V processors can be found on Synopsys website here Power-Efficient RISC-V Processors for Embedded Applications and here Maximum Performance Efficiency for Real-time Applications.

arc-v-hero-aem

Toolchain and IDE Components Versions

  • GCC 15.2 with ARC patches
  • Binutils 2.43 with ARC patches
  • GDB 15.2 with ARC patches
  • Newlib 4.5.0 with ARC patches
  • Picolibc 1.8.10 with ARC patches
  • uClibc-ng v1.0.51 with ARC patches
  • glibc 2.40 with ARC patches

This release of GNU toolchain is supported by CGEN IPlib (TCF generator) version 1.0.53 and later.

New Features and Enhancements

Most new features and enhancements are related to ARC-V targets:

  • Introduced support of -mtune=arc-v-rpx-100-series option for GCC for RPX-100 targets. It allows tuning a schedular for 64-bit ARC-V targets.
  • Added support for the ARC-V DSP extensions.
  • Added support of APEX - custom extensions for ARC-V.
  • The toolchain for ARC-V is distributed in 2 variants with different standard libraries: Newlib and Picolibc.

Binary distribution

  • Supported host operating systems: Windows 11 64-bit, Ubuntu 22.04, RHEL/AlmaLinux 8.x
    • RHEL/CentOS 7.x are not supported anymore since they are EOL.
  • Prebuilt bare-metal toolchains for 64-bit Windows & Linux hosts, see table with references and list of artifacts below.

Toolchain Components

For this release binary distributions of ARC GNU tools for all supported processor families (both ARC Classic and ARC-V) are produced from the same sources of corresponding tools.

Here is a list of GitHub issues addressed in this release: GitHub issues for 2025.09. Note, though, this list only contains issues filed against ARC GNU toolchain. Bugs and enhancements made in upstream open-source projects of each toolchain component could be found in the corresponding bug-tracking system.

Known issues

ARC Classic

  1. Newlib's libgloss doesn't support RF16 configuration of ARC cores when building for nSIM with -specs=nsim.specs, see #231. Use -specs=hl.specs instead for RF 16 configurations.

  2. Non-multilib toolchain doesn't contain libgloss libraries for nSIM and development boards, see #262.

  3. libcrypt.so.1 is not included in the toolchain (starting from glibc 2.38 libcrypt.so.1 is not built by default and will be removed from glibc in the future), please use libcrypt implemented by external libraries such as libxcrypt instead of relying on Glibc internal implementation.

  4. Eclipse IDE for ARCompact does not support selecting -specs= options in project's configuration menu. Consider passing this options (e.g., -specs=nsim.specs for nSIM) in "ARC GNU Linker" field of projects configuration dialog (C/C++ Build -> Settings -> Top Settings -> ARC GNU Linker).

ARC-V

  1. Some complex combinations of -march= and -mabi= options may lead to unpredictable errors during compilation. Such issues are related to general support of RISC-V extensions in GCC. Refer #610 for details.

  2. Newlib. The size-optimized Newlib Nano configuration (used when -specs=nano.specs is passed to GCC) does not support printf() for float and double by default. Nano printf() is size-optimized and does not include support of float and double. If you need that feature, pass -u _printf_float to GCC when you compile your applications. This option picks up support of float and double for size optimized printf() on demand.

  3. Using selective scheduler with a specific set of options may lead to incorrect code generation. Refer Bug 118153 for details.

  4. APEX is currently not supported with LTO (Link-Time Optimization).

Documentation and Getting help

Toolchains

Linux x86_64 Windows x86_64 Linux ARC HS
Baremetal ARC Classic (ARC 600/700, EM, HS3x, HS4x) Little endian / Big endian Little endian / Big endian
Baremetal ARC-V [Newlib] Little endian Little endian
Baremetal ARC-V [Picolibc] Little endian Little endian
Baremetal ARCv3 (ARC HS5x/6x) Little endian
Linux/uClibc ARC 700 Little endian / Big endian
Linux/uClibc ARC HS Little endian / Big endian
Linux/glibc ARC HS Little endian / Big endian Little endian
Linux/glibc ARC HS68 Little endian Little endian
Linux/uClibc ARC HS58 Little endian Little endian
Linux/glibc ARC HS58 Little endian Little endian
ARC GNU IDE (ARC 600/700, EM, HS3x, HS4x) Download Download
dc8b434195c2b7fbce8bdb1af9976bdd82667a2a5053cf8a363199e72cd1d454 *arc_gnu_2025.09-rc1_prebuilt_arc32_glibc_linux_install.tar.xz
ec93c997a50b56bf5875bc8b22b742111def24ea51520210e46b4948a12b455b *arc_gnu_2025.09-rc1_prebuilt_arc32_uclibc_linux_install.tar.xz
6794d7aab0943cfa8eed01a181ac5323ef4811bb9734e11e52cf8230b95fef3a *arc_gnu_2025.09-rc1_prebuilt_arc32_uclibc_native_install.tar.xz
2e4ee7301fa121a555301d84e6572b5e08736e00ea6383334b0116632628781d *arc_gnu_2025.09-rc1_prebuilt_arc64_elf_linux_install.tar.xz
bab3a2e51fdb67d162fa004e37557ee0409e94e14c076d933ad8be6fe5ffd7be *arc_gnu_2025.09-rc1_prebuilt_arc64_glibc_linux_install.tar.xz
d8fc1dd7de78aea5907e84b9a7b588c6184c945ed0bf01473c3f0c9b54769376 *arc_gnu_2025.09-rc1_prebuilt_arc64_glibc_native_install.tar.xz
5aba9225118d7453497721231db4cac01891c90dd8c894e519e9796aff4d4c50 *arc_gnu_2025.09-rc1_prebuilt_elf32_be_linux_install.tar.xz
dcef3c59c708ab0d8dbc31544e576811e3764998ff2fab1931409ed8e9383d6d *arc_gnu_2025.09-rc1_prebuilt_elf32_be_win_install.tar.xz
9d43e098fb4c020a4667c902e6613f905044bf702197029bc2c02aac68fc8895 *arc_gnu_2025.09-rc1_prebuilt_elf32_le_linux_install.tar.xz
3217fee266136092aab0821884fc3a041d6d9bac7a7fde3baa0d277f6ae95d20 *arc_gnu_2025.09-rc1_prebuilt_elf32_le_win_install.tar.xz
d39063152427df76b394fc4c32ec7a07205bb018f28d3072b8ff43431ed6ff93 *arc_gnu_2025.09-rc1_prebuilt_glibc_be_archs_linux_install.tar.xz
939775c3db35a56889bc6d45d62ae069deaf5be4165e8b5a28c3c808b28949b9 *arc_gnu_2025.09-rc1_prebuilt_glibc_le_archs_linux_install.tar.xz
0ee099e271eec7fba5f9b8da30f2a6ac40a95c0bfa62ef96de6d116557fbc13b *arc_gnu_2025.09-rc1_prebuilt_glibc_le_archs_native_install.tar.xz
16d7c1d1b6be5932ad939e70683a25b46120d1216d19c04e8b5b7da6e43ed106 *arc_gnu_2025.09-rc1_prebuilt_riscv64_elf_le_linux_install.tar.xz
e4517691f3fa0bd5b7aaa6c561760642b965bff6e2b92cd85508b6352d7acd2d *arc_gnu_2025.09-rc1_prebuilt_riscv64_elf_le_win_install.tar.xz
157d6d1ff4b43b947795c1fbd7e6c7d7855e550b39313310bee6cc1310eafa5f *arc_gnu_2025.09-rc1_prebuilt_riscv64_elf_picolibc_le_linux_install.tar.xz
53ca1f00f21479083fe1c9da64bb36c713c2a975265b744e757a1277d7907a2b *arc_gnu_2025.09-rc1_prebuilt_riscv64_elf_picolibc_le_win_install.tar.xz
63cd790e746c16b49970723f78bde57f571cab39731e28b0c1ef7d7e133f92cb *arc_gnu_2025.09-rc1_prebuilt_uclibc_be_arc700_linux_install.tar.xz
f012cabf7e9ea0e1f4329dbf97dcc1c5def83de0463cee6974629ac8aaf3ffec *arc_gnu_2025.09-rc1_prebuilt_uclibc_be_archs_linux_install.tar.xz
47f72a967e9641a8f1276a01ed63160a58aeaf87a6a95cb8843ff567de0ddcba *arc_gnu_2025.09-rc1_prebuilt_uclibc_le_arc700_linux_install.tar.xz
170120d1cbbd465e37fff3aec03d59cc23fedaf3abf0f4d27275a04ac3a1989c *arc_gnu_2025.09-rc1_prebuilt_uclibc_le_archs_linux_install.tar.xz
2192ca818773dee82e7ca9b39e94c7066cb3d2695bf49fbb7e1e1c02aa62929a *arc_gnu_2025.09-rc1_ide_linux_install.tar.xz
932db0517b06f780a26e12a8fd7014b65d40fc3e1d72057e2c66dc69709f540d *arc_gnu_2025.09-rc1_ide_win_install.exe
a01c1823b0c28cec46acf7a4a0ab84f2a0e4f05b51227ea9d80d44c940ea44d6 *arc_gnu_2025.09-rc1_sources.tar.xz