Skip to content

GNU Toolchain for ARC Processors, 2018.09

Compare
Choose a tag to compare
@anthony-kolesov anthony-kolesov released this 21 Nov 21:15
· 419 commits to arc-releases since this release

This is release 2018.09 of the GNU Toolchain for DesignWare ARC Processors

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.

Note: The toolchain is only supported for 64-bit versions of linux hosts. 32-bit linux hosts are not supported.

Toolchain and IDE Components Versions

  • Binutils 2.31.51 with ARC patches
  • GCC 8.2.1 with ARC patches
  • GDB 8.0.50 with ARC patches
  • newlib newlib-snapshot-20170922 with ARC patches
  • uclibc-ng v1.0.29
  • Eclipse Oxygen 4.7.1 with CDT 9.3.2
  • 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

  • Toolchain Build Scripts

    • Documentation update.
  • GCC

    • Update to GCC 8.2.1
    • Use BI/BIH instruction to implement casesi pattern.
    • Add support for profiling for glibc
    • Code size improvements
  • Binutils

    • Update to binutils 2.31.51
  • OpenOCD

    • cJTAG support
    • L2 cache flush/invalidate support
    • Support for ARC HSDK board
  • uClibc-ng

    • Update to uClibc-ng 1.0.29.
  • Eclipse plugins

    • Add support for --specs= options of ARC GCC.
    • Add Support import of C_defines from TCF.
    • Update template projects for EM Starter Kit to use new --specs values.
    • Fix errors in template projects where -mcpu wasn't set correctly.
    • Fix crash in uClibc plugin when building an application.
    • Fix -mmpy-option not being updated properly when -mcpu was changed.

Bugs Fixed in this Release

User reported Github issues fixed in this release can be found here . In addition, the list below represents bugs fixed from Synopsys's internal bug tracking system.

Number Project Title
9001107490 binutils Options -static and -E are incompatible
9001251569 binutils Exceptions are broken with -static-libstdc++
9001422575 Build Not able to Build Linux from buildroot using GNU toolchain
9000764229 Compiler Need to improve code size for minimal ARC EM configuration
9001059634 Compiler [dejagnu:gcc] Unknown failure of gcc.dg/tree-ssa/ssa-store-ccp-2.c test
9001090942 Compiler [buildroot] trousers-0.3.13 build fails (ARC700 ONLY)
9001152065 Compiler Big endian ABI test fails9000906119
9001296668 Compiler [arc-gcc]: -mlong-calls millicode calls are short
9001406198 Compiler [linux] Access key retention support broken for ARC
ARS0095281 Compiler Incorrect DWARF for K&R-style function parameters
9001364730 Debugger [glibc] native GDB segfaults on any operation
9001322425 Debugger [glibc] gdbserver: Segmentation fault during the running "Hello world"
9001181861 Docs Make GCC and binutils documentation available online in HTML
9001351774 Docs gcc manual shows wrong argument order arc builtins
9001422502 Docs GNU Wiki page - update the doc and memory map file for HSDK
9000975053 Eclipse plugin Dropdown list to select GCC specs file
9000988097 Eclipse plugin [TCF]: Include C defines from TCF file
9001203558 Eclipse plugin Switch to using Eclipse dropins instead of installing plugin
9001422318 Eclipse plugin GNU IDE - No output on console for hello_world example with EM core
9001424106 Eclipse plugin GNU IDE - Debugger GUI option for EMSKv2.3, IOTDK and HSDK boards
9001194950 glibc [glibc]: systemd crashes on boot
9001342765 glibc [glibc] Linux build failed with libc: glibc, gcc: 7.3.0, binutils: 2.30
9001001307 Linker BFD_ASSERT (off != (bfd_vma) -1)
9001178908 Linker LD with "--dynamic-list=X -static" creates wrong static binaries
9001274678 Linker ARC HS38: libstdc++ fails to build with -mlong-calls, segfault in ld

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 MacOS
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
IDE Download Download Download
bfa05b208f3ce6878cc63d9821e84d1f3da6e260d0af86f70bf11d548e75373d *arc_gnu_2018.09_prebuilt_elf32_le_linux_install.tar.gz
bde3f687fcfddee531b7560b5d9f8f598de2661ddfd93293d0c00664319a4761 *arc_gnu_2018.09_sources.tar.gz
324b422eec3b9b36ea64c9e13167a4467fc13ab230eff34f2fa785039b460c16 *arc_gnu_2018.09_prebuilt_uclibc_le_arc700_linux_install.tar.gz
d1a4c039416b3da4d94ea066f861cc96ec60afec9c2bab1b2e937555b5e05238 *arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz
32242d51f4306306d5464858e0b749fe209c2a07d236add408c4438f58a28301 *arc_gnu_2018.09_prebuilt_elf32_be_linux_install.tar.gz
b0299ad9be0c300237789e5bf8e45d72bf040aab00c3718fbdb4160b75d2ed8f *arc_gnu_2018.09_prebuilt_uclibc_be_arc700_linux_install.tar.gz
a519ed3686dc8e3c5f86646988d38647aa039f4af3204d9b7e84efa26cd37221 *arc_gnu_2018.09_prebuilt_uclibc_be_archs_linux_install.tar.gz
dcd1327f761de07d8fa324ee00f4c3d24e043ac6956df596fdabc3af0d599818 *arc_gnu_2018.09_prebuilt_glibc_le_archs_linux_install.tar.gz
0124076d631d3ffb854b38d15c74777df363b3f06a8219015c97ac6a48b42f11 *arc_gnu_2018.09_ide_linux_install.tar.gz
8d0ad23823118279b013340f363c8e27bf3798f42e458378de289e5026724cc7 *arc_gnu_2018.09_ide_plugins.zip
394ce9aa21526a20a41bcff63fde323e154b743c5b78d9b8d8c1030e0e2a93b7 *arc_gnu_2018.09_prebuilt_uclibc_le_archs_native_install.tar.gz
3d37ece4a7f76e04eb1f952c4e53a135e698fe9fc59450a3a7b88360e0dfff73 *arc_gnu_2018.09_ide_win_install.exe