GNU Toolchain for ARC Processors, arc-2023.09-rc2
Pre-releaseThis is the second release candidate of 2023.09 version of the GNU Toolchain for DesignWare ARC 600, ARC 700, EM, HS3x/4x, HS5x & HS6x processors. This is a maintenance release which brings incremental improvements for major toolchain components such as GCC, Binutils & GDB for ARC processors.
GNU Documentation can be found online here https://foss-for-synopsys-dwc-arc-processors.github.io/documentation/2023.09/.
A list of useful how-to instructions can also be found on the GNU Toolchain for DesignWare ARC Processors Documentation wiki.
Toolchain and IDE Components Versions
- Binutils pre-2.41 with ARC patches
- GCC 13.1 with ARC patches
- GDB pre-14.1 with ARC patches
- newlib 4.3.0 with ARC patches
- uClibc-ng v1.0.43 with ARC patches
- glibc 2.38 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
-
Binary distribution
- Supported host operating systems: Windows 10 64-bit, Ubuntu 18.04.x, 20.04.x, CentOS/RHEL 7.x
-
GCC
- Sources used for the release are available here: https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/releases/tag/arc-2023.09-rc1
- Uses upstream 13.1 release, see release announcement https://gcc.gnu.org/pipermail/gcc/2023-April/241196.html & complete list of changes https://gcc.gnu.org/gcc-13/changes.html
- No major updates compared to the previous release.
-
GDB
- Sources used for the release are available here: https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2023.09-rc1
- Updated to the upstream sources of what eventually will become v14.1 release.
- Fixes and improvements for all generations of ARC processors.
-
Binutils
- Sources used for the release are available here: https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2023.09-rc1
- Updated to the upstream sources of what eventually will become 2.41 release.
- Fixes and improvements for all generations of ARC processors.
-
glibc
- Sources used for the release are available here: https://github.com/foss-for-synopsys-dwc-arc-processors/glibc/releases/tag/arc-2023.09-rc1
- Updated to the upstream 2.37 release. For more details see release announcement https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00010.html & release notes https://sourceware.org/glibc/wiki/Release/2.38.
- Support for ARCv3 processors is implemented with changes on top of the upstream release.
-
uClibc-ng
- Sources used for the release are avaialble here: https://github.com/foss-for-synopsys-dwc-arc-processors/uClibc/tree/arc-2023.09
- Updated to the latest upstream version v1.0.43, see https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/tag/?h=v1.0.43
- ARCv3 32-bit processors support is now in the upstream project, with only a few minor changes applied on top of the upstream release.
-
Newlib
- Sources used for the release are avaialble here: https://github.com/foss-for-synopsys-dwc-arc-processors/newlib/releases/tag/arc-2023.09-rc1
- Updated to the upstream 4.3.0 release with ARC patches applied on top of it.
Also, here is the list of GitHub issues addressed in this release: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/issues?q=is%3Aissue+milestone%3A2023.09+is%3Aclosed+
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 inthe corresponding bug-tracking system.
Fixes and improvements in the final release compared to Release Candidate 1
- Resolved an issue (P10019563-65093) with creating a project in ARC GNU IDE in a new workspace.
- OpenOCD JTAG probe could be used now with EM SDP in ARC GNU IDE.
Known issues
-
CenOS 6.x hosts are not supported any longer for both running prebuilt tools as well as for building tools, see #202.
-
GDB compilation may intermittently fail due to unwanted regenerating intl/plural.c, see #212.
-
[Jira P10019563-38842] Ashling Opella-XD drivers of version 1.2.6 and above to work with ARC GNU IDE required to run the Ashling GDB server separately and select "Connect to a running GDB server" in the Debug Launch.
To run the Ashling GDB server use the following from a command prompt:
C:\AshlingOpellaXDforARC> ash-arc-gdb-server.exe --device arc-em
Other supported devices are arc-hs, arc-600 and arc-700.
See section "3.2 Configuring the Ashling GDB Server" in the Ashling Opella-XD ARC User manual for more details.
-
Newlib's libgloss doesn't support RF16 configuration of ARC cores when building for nSIM with "GNU Hostlink", see #231. But with use of "MetaWare Hostlink" RF16 configuration might be used now, see https://github.com/foss-for-synopsys-dwc-arc-processors/newlib/blob/arc-2021.03/libgloss/arc/readme-hostlink.md for more details.
-
Non-multilib toolchain built for ARC EM doesn't contain
libdw_uart.a
for EMSK, see #262 -
macOS cross-toolchains are not being distributed in this release
-
libcrypt.so.1
is not included in the toolchain (starting from glibc 2.38libcrypt.so.1
is not built by default and will be removed from glibc in the future), please uselibcrypt
implemented by external libraries such as libxcrypt instead of relying on Glibc internal implementation.
Please report any problems by filing an Issue in GitHub here.
Linux x86_64 | Linux ARC HS | Windows x86_64 | macOS x86_64 | |
---|---|---|---|---|
Baremetal | Little endian / Big endian | Little endian / Big 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 | ||
Baremetal ARCv3 | Little endian | |||
Linux/glibc ARC HS68 | Little endian | Little endian | ||
Linux/uClibc ARC HS58 | Little endian | Little endian | ||
IDE | Download | Download |
ff5603af93d0cbaa15a30917c352fc85410a990313d8b4db31ddbcf6a3490eac *arc_gnu_2023.09-rc2_prebuilt_arc32_uclibc_linux_install.tar.bz2
897740e5f15d69ee0bda0294fc296688d75e0ef719ab0c7675d871c2e9d43608 *arc_gnu_2023.09-rc2_prebuilt_arc32_uclibc_native_install.tar.bz2
4f144a15635881995757f6f4c319fa4abcf98d24dfedde6c630b76cc1471c8b4 *arc_gnu_2023.09-rc2_prebuilt_arc64_glibc_linux_install.tar.bz2
1a233297fe3bbc42474e8c6c2b0bbf8a8d15b3a8aed96d9c3641301cd4a19dda *arc_gnu_2023.09-rc2_prebuilt_arc64_glibc_native_install.tar.bz2
7564d3cffd0f8a4e0daef75cb14a4a709358d25c3658e99c609ab69e65a37692 *arc_gnu_2023.09-rc2_prebuilt_arc64_elf_linux_install.tar.bz2
3a87f3d84c3003097f56745a789204ec7b4453270a2f9576ee233fb970707dfb *arc_gnu_2023.09-rc2_prebuilt_uclibc_le_arc700_linux_install.tar.bz2
3a0a3ffcfadd3596827d408a9faa39ac9ed364040e3dbcae52c73c06a680893a *arc_gnu_2023.09-rc2_prebuilt_glibc_le_archs_linux_install.tar.bz2
6eda751e15dc5806955f5d7393d57953ae2486dd4096fcc207d46f2bdac1e2c1 *arc_gnu_2023.09-rc2_prebuilt_uclibc_le_archs_linux_install.tar.bz2
9ee7436ff39af9d272ed0a96e45014c15e82cce72ccc1348b1f66eabff89bea2 *arc_gnu_2023.09-rc2_prebuilt_glibc_le_archs_native_install.tar.bz2
0a2e86848ee417f7163239136a6681e79c5f6435a843b3e079a90d31b46b0ee6 *arc_gnu_2023.09-rc2_prebuilt_uclibc_be_arc700_linux_install.tar.bz2
357683a02c374fa96223bb82251536218187750499f686c7bd05255e50676fb7 *arc_gnu_2023.09-rc2_prebuilt_glibc_be_archs_linux_install.tar.bz2
046314e518420f3901872ef246b3c295a89d0c932d0e5dbd2acd14cadcaa3d0b *arc_gnu_2023.09-rc2_prebuilt_uclibc_be_archs_linux_install.tar.bz2
d4b87103bb3e8ee90c4f290a3403d979207b27dcbe54624cff836230305ae29d *arc_gnu_2023.09-rc2_prebuilt_elf32_be_win_install.tar.bz2
73cfd4b2b53c936f5b7a5b94263f821e06167a10b47e94fc767cf98e420a5488 *arc_gnu_2023.09-rc2_prebuilt_elf32_be_linux_install.tar.bz2
5bc498a72f2afe654028a3a6435aff9ddb9daf671fef174b59524c4f8152874b *arc_gnu_2023.09-rc2_prebuilt_elf32_le_win_install.tar.bz2
02f094aafc7c5bf7776a5989c8cbbced86658b720565a19fee404e4e23761ecf *arc_gnu_2023.09-rc2_prebuilt_elf32_le_linux_install.tar.bz2
c738ce87c70f162744d168f4bfc5cb37515ff3867bbf90d8332578ab5f15ae08 *arc_gnu_2023.09-rc2_ide_linux_install.tar.bz2
c66e847e6d28fd5ee5f286526e8f6c03b9c9093c2d50648f766c8c5bd6c77d28 *arc_gnu_2023.09-rc2_ide_win_install.exe
6a66bee9931b9741a3427d6dc0734e76f77a13552a46c9c57aaf9640e4f59f6f *arc_gnu_2023.09-rc2_sources.tar.bz2