GNU Toolchain for ARC Processors, 2023.03-rc1
Pre-releaseThis is the first release candidate of 2023.03 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/toolchain.
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 2.40 with ARC patches
- GCC 12.2 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.37 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.03-rc1
- Uses upstream 12.2 release, see release announcement https://gcc.gnu.org/pipermail/gcc-announce/2022/000174.html & complete list of changes https://gcc.gnu.org/gcc-12/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.03-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.03-rc1
- Updated to the upstream 2.40 release.
- Improved stability when linking (see #533, #524 & #523)
- Added color output for disassembler.
- Assembler: fix encoding for neg.f 0,Rb, see #531
-
glibc
- Sources used for the release are available here: https://github.com/foss-for-synopsys-dwc-arc-processors/glibc/releases/tag/arc-2023.03-rc1
- Updated to the upstream 2.37 release. For more details see release announcement https://sourceware.org/pipermail/libc-alpha/2023-February/145190.html & release notes https://sourceware.org/glibc/wiki/Release/2.37.
- 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.03
- 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.03-rc1
- Updated to the upstream 4.3.0 release with ARC patches applied on top of it.
- Update spec files to work with
libnano
. - Added optimized string routines for ARC64.
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.03+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.
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
Please report any problems by filing an Issue in GitHub here.
Linux x86_64 | Windows x86_64 | Linux ARC HS | macOS x86_64 | |
---|---|---|---|---|
Baremetal | Little endian \ Big endian | |||
Linux/uClibc ARC700 | Little endian \ Big endian | |||
Linux/uClibc ARC HS | Little endian \ Big endian | |||
Linux/glibc ARC HS | Little endian \ Big endian | Little endian | ||
IDE | Download | Download | ||
Baremetal ARCv3 | Little endian | |||
Linux/glibc ARC HS68 | Little endian | Little endian | ||
Linux/uClibc ARC HS58 | Little endian | Little endian |
f93a9128d84710e1d067d6487c6f9ca8fcc018621f2472749b34683b547b89f7 *arc_gnu_2023.03-rc1_prebuilt_elf32_le_linux_install.tar.gz
85b25333c4048946f94d5d58a34691d4f9c601b2139ee9202f1b115319c3162e *arc_gnu_2023.03-rc1_prebuilt_elf32_be_linux_install.tar.gz
da06e561582a05f2079cd86a7f5e4b78b1a707b727b5c4039a6a10da1dbc3eea *arc_gnu_2023.03-rc1_prebuilt_uclibc_le_arc700_linux_install.tar.gz
944036c20888450bb4a5a6827209948c55c571b14112ff6521b509f7d3225e90 *arc_gnu_2023.03-rc1_prebuilt_uclibc_le_archs_linux_install.tar.gz
6fee10e80222d8f7d8dee543e8d851344714653a098d1e7eaef964c9f256a3e0 *arc_gnu_2023.03-rc1_prebuilt_uclibc_be_arc700_linux_install.tar.gz
fb6b1fcb89e7e5392de611c8c4892f84902421ba13004b5ad4a258cc417255cd *arc_gnu_2023.03-rc1_prebuilt_uclibc_be_archs_linux_install.tar.gz
dd41b12335bfd9106101a8469b8abe5e5fdf7005860d1774f6f5b073f826698d *arc_gnu_2023.03-rc1_prebuilt_arc32_uclibc_linux_install.tar.gz
701d3383e06e0f40b8a61ec556a808fd9d532d086f3277f2b8a14a324ad525ed *arc_gnu_2023.03-rc1_prebuilt_glibc_le_archs_linux_install.tar.gz
23fcfcdefc1ec15f1690d016e4f950d56280f514925d907f8330f94d798e2100 *arc_gnu_2023.03-rc1_prebuilt_glibc_be_archs_linux_install.tar.gz
6f91c7720dbbe00aa4a7f9221c9ef2b869201c18651d1669a142115b24b25d11 *arc_gnu_2023.03-rc1_prebuilt_arc64_elf_linux_install.tar.gz
5dc93a29583e5601722e380bb9ee3d13ca1e69065cf368ad7b78f92caa3eee16 *arc_gnu_2023.03-rc1_prebuilt_arc64_glibc_linux_install.tar.gz
e33036c9f9683775cabc5ffa45bbbd29ed5114ec16a926ac352013430f716d04 *arc_gnu_2023.03-rc1_ide_linux_install.tar.gz
04363fe50ee293651d6937234632319ffea3a9b882404e802ad5385c6d254869 *arc_gnu_2023.03-rc1_ide_plugins.zip
1c91e4143cde09643db1c9960450989444cd09286bf3a0e8d600d91c24754c3a *arc_gnu_2023.03-rc1_prebuilt_glibc_le_archs_native_install.tar.gz
85fb36b49a929c0b7cee6c578d964e0afdbb98a920f54b4ac9a6b1dc8939da83 *arc_gnu_2023.03-rc1_prebuilt_arc64_glibc_native_install.tar.gz
5ef388fe9e6f8b7ce8cd9bb9cd07399c47a063780f1b3b9ffd1bd8de4f69a271 *arc_gnu_2023.03-rc1_prebuilt_arc32_uclibc_native_install.tar.gz
9d5614070408914a1c4478519003ad7c4e9595c26702548265348a4fe493d7de *arc_gnu_2023.03-rc1_ide_win_install.exe