GNU Toolchain for ARC Processors, 2017.03 RC1
Pre-release
Pre-release
·
660 commits
to arc-releases
since this release
This is the first release candidate for release 2017.03 of the GNU Toolchain for DesignWare ARC Processors.
A list of useful how-to instructions can be found on the GNU Toolchain for DesignWare ARC Processors Documentation wiki. GNU Documentation PDF files can be found in share/doc directory of installed toolchain. Eclipse IDE for GNU Toolchain for ARC Processors Documentation can be found on the GNU IDE wiki .
Toolchain and IDE Components Versions
- Binutils 2.28 with additonal ARC patches
- GCC 6.3.0 with additional ARC patches
- GDB 7.12 (upstream commit 5f8cf6c) with ARC patches
- newlib 2.4 (upstream commit e6413b0) with ARC patches
- uclibc-ng 1.0.17 with few ARC patches
- Eclipse Mars (4.5.1) with CDT 8.8.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
- Prebuilt Binaries
- ARC HS toolchain now includes sysroot for -mcpu=hs38_linux.
- Toolchain build scripts
- Added support for building the bare metal GNU Toolchain (elf32) for Mac OS X hosts
- Removed obsolete unsupported scripts.
- Toolchain documentation from wiki is now also built from Sphinx and available online.
- Added tcftool binary to toolchain for Windows and x86 Linux hosts.
- GCC
- Updated to GCC 6.3.0
- Added support for JLI instruction for ARCv2 ISA Processors
- Added support for Secureshield technology on supported ARC EM Processors (SFLAG, SJLI instructions, new "secure_call" attribute)
- Experimental support for reduced register file for ARC EM Processors via new -mRF16 option and -mcpu=em_mini choice. - **Note: this is preliminary support for experimentation. This feature has been not fully verified so bugs can be expected in this area - we are planning to fully productized in the 2017.09 release.
- Binutils
- Updated to version 2.28
- Improvement to stack unwinding functionality in linux/uclibc toolchain
- OpenOCD
- Added support for Secure MPU registers
Bugs Fixed in This Release
User reported Github issues fixed in this release.
| Number | Project | Title |
|---|---|---|
| ARS0098451 | Assembler | [ZOL]: gas should give clearer error if user tries to use lp_count as dest |
| ARS0098565 | Assembler | [ZOL]: Assembler validation of gcc insns |
| 9001082847 | binutils | Disassembler is not consistent about hex and decimal numbers |
| 9001062363 | Compiler | [dejagnu:gcc] Test failures: Exception handling not working |
| 9000847451 | Compiler | Implement support for -fsanitize=address for ARC gcc with glibc toolchain |
| 9001084709 | Compiler | gcc to provide clear_cache builtin |
| 9001107555 | Compiler | [buildroot][libcec]: operand out of range (256 is not between -256 and 255) |
| 9001148529 | Compiler | "NOP vs MOV 0 |
| ARS0102123 | Compiler | Read only PIC register |
| 9001018703 | Build | Build doesn't fail on some errors |
| 9001058808 | Build | uClibc requires source copying with --build-dir |
| 9001108592 | Build | Request to add tcftool from metaware into ARC GNU Toolchain |
| 9000886467 | Debugger | Use prologue-value.h |
| 9000925605 | Debugger | Use disassemble_info structure to disassemble code in GDB |
| 9001173195 | Eclipse plugin | Build errors while testing template projects which are shipped with Eclipse IDE |
| 9000838989 | Frontend | [TCF]: Provide sample linker scripts for nSIM TCF files |
| 9001127488 | glibc | "[GNU]: arc-linux-gcc can't find fenv.h |
| 9000925639 | Test | Add vmlinux/rootfs sizes to nightly build reports |
| 9001067535 | uclibc | OpenWRT: Input required while building uClibc |
| 9001081729 | uclibc | tst-cleanupx3 uclibc test fails with 2016.09-eng008 gcc build |
| 9001081730 | uclibc | tst-cleanupx1 uclibc test fails with 2016.09-eng008 gcc build |
| 9001081751 | uclibc | tst-cancelx4 uclibc test fails with 2016.09-eng008 gcc build (built with BR) |
| 9001081752 | uclibc | tst-cancelx10 uclibc test fails with 2016.09-eng008 gcc build |
| ARS0101861 | uclibc | uclibc math library is not IEEE 754 compliant |
| 9001161412 | uclibc | uClibc toolchain build failure on macOS |
A list of known issues can be found here.
Please report any problems by filing an Issue in GitHub here.
| Linux x86_64 | Windows x86_64 | Linux ARC HS | |
|---|---|---|---|
| Baremetal | Little endian \ Big endian | ||
| Linux/uClibc ARC700 | Little endian \ Big endian | ||
| Linux/uClibc ARC HS | Little endian \ Big endian | Little endian | |
| IDE | Download | Download |
MD5 sums for the release tarballs:
a9a1396e7fa7c8b925c4dbc78e09e555eed83d04b7d7797ad888e244934b25d2 *arc_gnu_2017.03-rc1_prebuilt_elf32_le_linux_install.tar.gz
441be0700700f8a5463181aa867ecf549693952113c54fe55302f0e6acc3c710 *arc_gnu_2017.03-rc1_sources.tar.gz
96205f22baf79bf832d1cc0942e91010ba1195ada094bfce9106099f47d0694e *arc_gnu_2017.03-rc1_prebuilt_uclibc_le_arc700_linux_install.tar.gz
67448a1dbcd0d8b6e3e4c9255ec65a3e9570271b78b5acbb30ffeefa99d7dc6f *arc_gnu_2017.03-rc1_prebuilt_uclibc_le_archs_linux_install.tar.gz
1d88836632a3e3444adf8f70fc09b45ed1f1b718a2f7cdd6325eb0c75bf28e7a *arc_gnu_2017.03-rc1_prebuilt_elf32_be_linux_install.tar.gz
9982b792cdfbc221cbc96319636c1afbd267af95626ee3bd9285d20702f97b83 *arc_gnu_2017.03-rc1_prebuilt_uclibc_be_arc700_linux_install.tar.gz
2e86b374c34621821d16eb9876dca3c4f9b1854e850392cc354068e2ead88f2e *arc_gnu_2017.03-rc1_prebuilt_uclibc_be_archs_linux_install.tar.gz
785cc616e36f9a4bee97b71ae491f0108a7e33cca70354cc185976a5f6594aa4 *arc_gnu_2017.03-rc1_ide_linux_install.tar.gz
e7e11e58a3eae24a5d668cf5c3d41f5d72f3661c7693198baa65b11bd4fcb7b0 *arc_gnu_2017.03_ide_plugins.zip
907c0420da097e719e7a8ff518d959d3e791b2fcdcddb8aad44ecbd9d504a63d *arc_gnu_2017.03-rc1_prebuilt_uclibc_le_archs_native_install.tar.gz
052deddde791f3f96f61a36ef3c7bbaf39dfd8f113bd684c6e8f91c7d8be5e1d *arc_gnu_2017.03-rc1_ide_win_install.exe