GNU Toolchain for ARC Processors, 2019.09-rc3
Pre-releaseThis is the third release candidate of 2019.09 version of the GNU Toolchain for DesignWare ARC Processors.
NOTE: A first release candidate (RC1) was tagged but never published due to issue discovered late in the cycle.
GNU Documentation PDF files can be found in share/doc
directory of installed toolchain, as well as online at embarc.org.
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.33.1 with ARC patches
- GCC 9.2.1 with ARC patches
- GDB 8.3.1 with ARC patches
- newlib newlib-snapshot-20180831 with ARC patches
- uClibc-ng v1.0.31
- glibc 2.30 with ARC patches
- Eclipse 2018-12 4.10.0 with CDT 9.6.0
- OpenOCD 0.9+ upstream commit 30203b3d8b, with ARC support.
This release of GNU toolchain and IDE 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 16.04.x, 18.04.x, CentOS/RHEL 7.x
- NOTE: this version of the toolchain is no longer compatible with CentOS/RHEL 6.x due to GDB 8.3 requirement for C++11 support in the compiler. It is however possible for users to build elf32 & uClibc toolchains without GDB on CentOS/RHEL 6.x.
-
Toolchain Build Scripts
- Documentation update
-
GCC
- Update to GCC 9.2.1, see upstream release notes for more details: https://gcc.gnu.org/gcc-9/changes.html
- Refurbished interrupt handling code
- Use of GP & FP registers as general-purpose registers
- Bug fixes
-
Binutils
- Updated to Binutils 2.33, see upstream release notes for more details: https://lists.gnu.org/archive/html/info-gnu/2019-10/msg00006.html
- Implemented relaxation from BL to BL_S instruction
- Bug fixes
-
glibc
- Updated to upstream 2.30, see upstream release notes for more details: https://sourceware.org/ml/libc-alpha/2019-08/msg00029.html
- ARC patches submitted for upstream submission as of Jan 2019
- MMU page size gets detected automatically in run-time via getpagesize()
- Enabled big-endian ARC support
-
Eclipse plugins
- Supports AXS 103 with ARC HS48x2 & ARC HS47D
- Bug fixes
-
OpenOCD
- Supports AXS 103 with ARC HS48x2 & ARC HS47D
- Bug fixes
Fixes and improvements in Release Candidate 3
-
Fixed compilation for
-mcpu=em_mini
Reported: #216
Fixes in GCC (foss-for-synopsys-dwc-arc-processors/gcc@719202d) & newlib (foss-for-synopsys-dwc-arc-processors/newlib@637f118) -
Added support of AXS103 HS47D and HS48 in ARC GNU IDE
Reported: https://jira.internal.synopsys.com/browse/P10019563-38816
Fixed: foss-for-synopsys-dwc-arc-processors/arc_gnu_eclipse@db6190f -
Added support of AXS103 HS47D and HS48 in OpenOCD
Reported: https://jira.internal.synopsys.com/browse/P10019563-38749
Fixed: AXS103 with HS48x2 (foss-for-synopsys-dwc-arc-processors/openocd@697d231) & AXS 103 with HS47D (foss-for-synopsys-dwc-arc-processors/openocd@84efdd4)
Bugs Fixed in this Release
User reported Github issues fixed in this release can be found here:
- Toolchain: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/milestone/6?closed=1
- GCC: https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/milestone/4?closed=1
Known issues
-
CenOS 6.x hosts are not supported any longer for both running prebuilt tools as well as for building tools, see #202.
-
Elf32 toolchain fails to build on Ubuntu 18.04 due to misbehaving of cross-assembler, see #197.
-
GDB compilation may intermittently fail due to unwanted regenerating intl/plural.c, see #212.
Please report any problems by filing an Issue in GitHub here.
Note: The toolchain is only supported for 64-bit versions of linux hosts. 32-bit linux hosts are not supported.
Linux x86_64 | Windows x86_64 | Linux ARC HS | macOS x86_64 | |
---|---|---|---|---|
Baremetal | Little endian \ Big endian | Little endian \ Big endian | ||
Linux/uClibc ARC700 | Little endian \ Big endian | |||
Linux/uClibc ARC HS | Little endian \ Big endian | Little endian | ||
Linux/glibc ARC HS | Little endian \ Big endian | |||
IDE | Download | Download | Download |
898cf5b42ee00f8999ae3fafa3176b6ad6133627b74997c321c459281c669143 *arc_gnu_2019.09-rc3_prebuilt_elf32_le_linux_install.tar.gz
8622dba56d4a85ea7e5ac0f0d079d51c07a53caaae17be191a24260c1e9beaa1 *arc_gnu_2019.09-rc3_sources.tar.gz
1a623732a725c443b22e03930b6a4294ccf35a3b6366ade2bc21daf30ea572f9 *arc_gnu_2019.09-rc3_prebuilt_uclibc_le_arc700_linux_install.tar.gz
63c9c60cd2de856bc88c8d2241a04d04a129cd8c0de10a6738d1b24eb220d202 *arc_gnu_2019.09-rc3_prebuilt_uclibc_le_archs_linux_install.tar.gz
719dcda84109500dda2a63d9db88b99c5e2b2af83d3794d15648828717dbec20 *arc_gnu_2019.09-rc3_prebuilt_elf32_be_linux_install.tar.gz
84b0ef8408234b8a5e7e9cef262cc2231e739fd752a117c456b60d157c1a27a4 *arc_gnu_2019.09-rc3_prebuilt_uclibc_be_arc700_linux_install.tar.gz
e09ea651950e05f12f72d6c17af48557731579596888dca2766b9f4f1ffb69ad *arc_gnu_2019.09-rc3_prebuilt_uclibc_be_archs_linux_install.tar.gz
2bb5b8a7390f4f8c2fcfa2978e4ba3c0db1697cb431f483b805d3317bb301e01 *arc_gnu_2019.09-rc3_prebuilt_glibc_le_archs_linux_install.tar.gz
e05e74580b1ad35c850043d6e0a3d5c495b1d4db7e89e0c21bb21b3d5714d510 *arc_gnu_2019.09-rc3_prebuilt_glibc_be_archs_linux_install.tar.gz
d4850a02980be250e4f8b0e6d5023d262bf4ef684f6f0558675b4dcdce26a2aa *arc_gnu_2019.09-rc3_ide_linux_install.tar.gz
2a6845536739cbed29ebedac489bef382342be63abd4b69b10e4ec2b33587570 *arc_gnu_2019.09-rc3_ide_plugins.zip
123035439a8dc91636fa58563f2f5c017159bc618a8c572b131bb7efcbf56305 *arc_gnu_2019.09-rc3_prebuilt_uclibc_le_archs_native_install.tar.gz
bda7b00893297873fb77d6984158662ce3a2933126d0cb9df0685b9548a80e1d *arc_gnu_2019.09-rc3_ide_win_install.exe
95ec201e953a43d48f01e64c04aa037d259bf1156f05da2785729ed087af8028 *arc_gnu_2019.09-rc3_prebuilt_elf32_le_macos_install.tar.gz
c75ec0a0fb64aa258d7449540095655ce098484d5254e85b4508665cb16fd764 *arc_gnu_2019.09-rc3_prebuilt_elf32_be_macos_install.tar.gz
255288cf366f47c18049fd11c1cb1c9ca4a7b227383535cab0e041e4fa6e15b2 *arc_gnu_2019.09-rc3_ide_macos_install.tar.gz