Skip to content

Releases: foss-for-synopsys-dwc-arc-processors/toolchain

GNU Toolchain for ARC Processors, 2017.03 RC1

13 Apr 18:28

Choose a tag to compare

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

arc-2017.03-eng011

30 Mar 16:30

Choose a tag to compare

arc-2017.03-eng011 Pre-release
Pre-release
Create tag for arc-2017.03-eng011 release

GNU Toolchain for ARC Processors, 2016.09

08 Dec 21:19

Choose a tag to compare

This is release 2016.09 release 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.27+ (upstream commit decf5bd and ARC patches)
  • GCC 6.2.1 (upstream commit e061fbe and ARC patches)
  • GDB 7.12 (upstream commit 5f8cf6c and ARC patches)
  • newlib 2.4 (upstream commit e6413b0 and ARC patches)
  • uclibc-ng 1.0.17 (plus 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

  • Toolchain build scripts
    • Use GNU FTP server to download GMP, MPFR and MPC, update to latest
      versions of those libraries and download .tar.xz files of GMP and MPFR.
  • GCC
    • Major compiler upgrade from gcc 4.8.5 in previous release to gcc 6.2.1 in this release
    • Support for new version of Intel's QuarkSE microcontroller via new mcpu option "quarkse2_em"
    • Support -fstack-protector and -fstack-protector-all (uclibc toolchain only)
    • Support for profiling using gmon for elf32 toolchain (newlib)
    • Remove support for -mabi option. Now GCC always generates function calls
      compatible with MetaWare compiler.
    • Avoid unnecessary dependency of libgcc on newlib.
  • Binutils
    • Revamped implementation of Position Independent Code (PIC) and Position Independent Executable (PIE)
      for much improved and robust support.
    • Linux security feature: All constant value global symbols which end up as dynamic relocations are now
      placed in .data.rel.ro sections and resolved by the dynamic linker and set as read-only.
  • GDB
    • Support multi-target GDB in ARC code. GDB for baremetal targets now can
      debug Linux targets as well.
  • uClibc
    • Migrated to uClibc-ng
  • OpenOCD
    • Add support for DCCM version 4.
  • CGEN
    • Removed formal dependency on CGEN repository (no longer in use).
  • IDE
    • Migrated to use DSF instead of obsolete CDT for debugging, which brings
      in multiple usability enhancements.
    • Updated to latest version of TerminalView plugins.
    • Detect if projects has been created with an older version of IDE and show
      user a warning that there could be compatibility issues.
    • Removed support for -mabi option that has been removed from ARC GCC.

Bugs Fixed in This Release

Number Project Title
9001023599 Assembler Assembler doesn't work for no-code-density CPUs
9001029778 Assembler GNU binutils disassembler decodes ARC EM DSP instructions incorrectly
9001048162 Assembler disassembly_info.insn_type is invalid for conditional branches/jumps
9001048168 Assembler branch_delay_insns has invalid value for BRcc reg-reg instructions
9001049308 Assembler Assembler doesn't accept valid LEAVE_S mnemonic
9001056928 Assembler arc-linux-gcc fails to build libcap-ng-0.7.7 in buildroot
9001062213 Assembler disassembler doesn't display properly the FPU instructions
9001088362 Assembler [buildroot] libvncserver-0.9.10 build fails
9001037372 binutils Relocation overflow when building Qt5WebKit
9001066937 binutils busybox's nslookup segfaults with invalid read
9001067572 binutils [pie] mosh-1.2.5 build failed (ld segfault)
9001074273 binutils [buildroot] tvheadend package build fails
9000553691 binutils overlapping VMA/LMA in relocatable object file
9000587711 binutils "ELF Segment layout changes for ARC (size
9000676403 binutils safe handling of custom instruction formats
9000948062 binutils "Stack and heap are part of the ""load"" program header"
9001053749 binutils kernel stack unwinder broken with GNU 2016.03
9001066524 binutils Mistakes in relocations in GNU bintuils
9001082767 binutils perf record -e cache-misses doesn't work
9001091610 binutils objdump not recognizing LLOCKD/SCONDD
9001106732 binutils Binutils doesn't accept same --with-cpu values as GCC
ARS0098564 binutils objdump shortcomings
9001079125 binutils Disassembler has invalid order of condition code and delay slot
9001009437 Build Build script do not support uClibc-ng
9001048208 Build New binutils not compatible with C++ compiler
9001124783 Build Building of Bare metal ARC GNU tool chain 2016.09 failed on RHEL 6.6 EM9D config
9001113113 Compiler gcc 6.x triggers increased format warnings in kernel builds
9001094761 Compiler operand out of range (512 is not between -512 and 511)
9000799682 Compiler libgcc depends on libc
9000863783 Compiler ICE when __atomic_test_and_set is used but atomics are not enabled
9000962853 Compiler ICE in baremetal code with -fPIC
9001004404 Compiler ICE with --enable-checking when building linux
9001020378 Compiler Cannot build qt5webkit for arc700
9001031315 Compiler GCC compares SFP and DFP values incorrectly when -mcpu=em4 and -mnorm
9001044896 Compiler [DG] execute.exp=950915-1.c generates invalid instruction with -mcpu=em4 -O2
9001065763 Compiler ftruncate02_64 failure with GCC 6 and trunk
9001081235 Compiler [buildroot] gmp lib build failed
9001081769 Compiler GCC 6 ICE when building coreutils
9001081822 Compiler [buildroot] dmraid build failed
9001086114 Compiler "[buildroot] qt-4.8.7 build fails with ""internal compiler error"""
9001087935 Compiler "[buildroot] mesa3d-12.0.1 build fails with ""internal compiler error"""
9001090948 Compiler [buildroot] libcdio-0.93 build fails
9001092649 Compiler R25 is treated as thread pointer reg even with --disable-tls
9001107991 Compiler [buildroot][privoxy]: operand out of range
9001118116 Docs Windows 10 support
9001121311 Docs hello world example is not supported with em4_dmips, hs34 templates
9000672366 Debugger gdb.base/commands.exp: continue with watch: expected line should be updated
9000881591 Debugger Evaluate branch condition in arc_next_pc function
9001091993 Eclipse plugin Changing linker settings breaks the project build
9001119554 IDE C Hello world debug issue with ARC nSIM
9001024736 Linker Linker reports bad symbol for MWDT compiled library written in C++
9000481437 Linker linker to abort if shared lib has .relocations in text
9000629566 Linker [pie] Unresolvable relocation in uClibc toolchain with option -fPIE
9000711844 Linker "[pie] -pie --static causes ""final link failed: Bad value"""
9000921771 Linker [pie] BFD_ASSERT(sreloc->contents != 0)
9000925001 Linker [pie] ld doesn't fail if symbol is undefined
9000976236 Linker Segmentation fault during mesa3d build
9001019759 Linker "dejagnu: ""-z nocommon"" flag not supported by linker for elf32"
9001020032 Linker dejagnu ld test failure: FAIL: ld-elf/linkonce1
9001020033 Linker Dejagnu: FAIL: PR ld/19317 (2)
9001021845 Linker [pie]: dumpcap segfaults (requires PIE support)
9001027471 Linker dejagnu fails. commonpage & maxpage
9001027472 Linker dejagnu fails: ld-discard /zero-range ld-discard/zero-rel
9001053384 Linker GNU linker calculates R_ARC_SECTOFF relocation incorrectly
9001054394 Linker GNU linker does not support R_ARC_SDA_12 relocation
9001056008 Linker GNU linker calculates R_ARC_N* relocations incorrectly
9001059599 Linker Linker fails to link dejagnu tests
9001108825 Linker [buildroot][libstdc++] relocation R_ARC_32_ME against `UNKNOWN' cannot be used
ARS0100768 Linker DT_RELACOUNT not generated by ARC linker (loader optimisation)
ARS0102823 Linker linker coalescing elf segments with -z max-page-size=16384
9001068766 newlib Function strcmp for em4 big endian is not correct
9001061425 uclibc "uClibc test ""tst-tls1"" fails"
9001069232 uclibc "[tls] [uclibc] ""tst-tls3"" failed with segfault"
9000882520 uclibc tst-atomic-long - uClibc testsuite failure
9001036412 uclibc Apps dynamically linked vs uClibc built with -mlong-calls fail
9001060878 uclibc LTP fanotify build fails with uClibc-ng
9001063706 uclibc "Libcall ""clone"" generates two new process instead of one."
9001073811 uclibc [uclibc-ng] build failed
9001081724 uclibc tst-mqueue8 uclibc test fails
9001081725 uclibc tst-mqueue6 uclibc test fails
9001081727 uclibc tst-mqueue3 uclibc test fails

A list of known issues can be found here.

Please report any problems by filing an Issue in GitHub here.

MD5 sums for the release tarballs:

071699cdf89d23aeb2293e8ef6e156cc arc_gnu_2016.09_sources.tar.gz
2f30748fc54bb7ed6392fa56e8d7184f arc_gnu_2016.09_prebuilt_elf32_le_linux_install.tar.gz
d9f1abed7a77463410ee84b73de952ef arc_gnu_2016.09_prebuilt_uclibc_le_arc700_linux_install.tar.gz
1e31d79abc96298d3e42f23b6c76c411 arc_gnu_2016.09_prebuilt_uclibc_le_archs_linux_install.tar.gz
ed0db57043d1ac9bf5d044cce7c95bf6 arc_gnu_2016.09_prebuilt_elf32_be_linux_install.tar.gz
178e1f65e5ecb895bceb9a2fb1c093b8 arc_gnu_2...

Read more

GNU Toolchain for ARC Processors, 2016.09 RC2

30 Nov 22:01

Choose a tag to compare

This is the second release candidate for the 2016.09 release 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 .

NOTE for embARC OSP users: The current release of embARC OSP, 2016.05, should be used with GNU IDE 2016.03. Support for the GNU IDE 2016.09 will be added in next release of embARC OSP, planned for
January 2017.

Toolchain and IDE Components Versions

  • Binutils 2.27+ (upstream commit decf5bd and ARC patches)
  • GCC 6.2.1 (upstream commit e061fbe and ARC patches)
  • GDB 7.12 (upstream commit 5f8cf6c and ARC patches)
  • newlib 2.4 (upstream commit e6413b0 and ARC patches)
  • uclibc-ng 1.0.17 (plus 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.

Changes included in this RC:

  • Toolchain build scripts
    • 32a6ecf Properly check IS_CROSS_COMPILING variable
    • cc98dab Accept TABs in gcc/config/arc/arc-cpus.def
    • 9ef7988 Fix typo in error message
    • 21f5d3d Readme: Fix missing directory name in Linux clone
    • 41935ba Mention that toolchain will be supported in next embARC release
    • 3bf353a doc: Update Linux guide for 2016.09 release
    • d258298 Add one more entry to release notes for 2016.09
    • 31264f9 Add release notes for 2016.09 release
  • GCC
    • 11f277e [ARC] Make lp_count reg fix for ARC600.
    • 43dcdb8 [ARC] Fix LE tests for nps400 variant.
    • b04a7b5 [ARC] Make mulsi for A700 pattern commutative.
    • 97cb098 [ARC] Fix sub_n pattern.
  • Binutils
    • 3729e9f Typo fix: nps400
    • 904518c Add nps400 definition
    • 60900a7 [ARC] Add checking for LP_COUNT reg usage, improve error reporting.
    • ead0096 [ARC] Fix printing 'b' mnemonics.
  • uClibc
    • 61afc0c ARC: string: handle gcc 6.x macro changes
    • 9334a3c NPTL/ARC: provide a kernel assisted atomic cmpxchg
    • a265687 ARC: introduce explicit support for atomics
    • ad6e556 NPTL/ARC: implement __arch_exchange_32_acq using native EX
  • IDE
    • 81e2126 Replace '' in a value for "C/C++ Application:" field in "Debug configurations" window with '/'

Bugs Fixed in This RC

Number Project Title
9001124783 Build Building of Bare metal ARC GNU tool chain 2016.09 failed on RHEL 6.6 EM9D config
9001118116 Docs Windows 10 support
9001121311 Docs hello world example is not supported with em4_dmips, hs34 templates
9001119554 IDE C Hello world debug issue with ARC nSIM

A list of known issues can be found here.

Please report any problems by filing an Issue in GitHub here.

MD5 sums for the release tarballs:

dca54d03876a1028758657bff536df7d arc_gnu_2016.09-rc2_sources.tar.gz
3217c4e1db92f5fbd882e661e75795df arc_gnu_2016.09-rc2_prebuilt_elf32_le_linux_install.tar.gz
de4d304ffa4f1cc9535422012d4a0302 arc_gnu_2016.09-rc2_prebuilt_uclibc_le_arc700_linux_install.tar.gz
42b19318f677375075ba4543f1a02545 arc_gnu_2016.09-rc2_prebuilt_uclibc_le_archs_linux_install.tar.gz
33bacc0abc8dbd09a6d2560811462785 arc_gnu_2016.09-rc2_prebuilt_elf32_be_linux_install.tar.gz
26097cfb00f25aac7d046b2c6559fca2 arc_gnu_2016.09-rc2_prebuilt_uclibc_be_arc700_linux_install.tar.gz
e58acb8d99698d351521a7752d064ce2 arc_gnu_2016.09-rc2_prebuilt_uclibc_be_archs_linux_install.tar.gz
b4e7d66d49a1284bb1460ef3f9a175a5 arc_gnu_2016.09-rc2_ide_linux_install.tar.gz
8e4437ee2c9e5ba55b7e7dfb5ca1f864 arc_gnu_2016.09_ide_plugins.zip
a6bac936fd03e4b7e546f2174082b6fe arc_gnu_2016.09-rc2_prebuilt_uclibc_le_archs_native_install.tar.gz
5b6ed4a848b277b0e9e435d26dc31414 arc_gnu_2016.09-rc2_ide_win_install.exe

GNU Toolchain for ARC Processors, 2016.09 RC1

07 Nov 18:02

Choose a tag to compare

This is the first release candidate 2016.09 release 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.27+ (upstream commit decf5bd and ARC patches)
  • GCC 6.2.1 (upstream commit e061fbe and ARC patches)
  • GDB 7.12 (upstream commit 5f8cf6c and ARC patches)
  • newlib 2.4 (upstream commit e6413b0 and ARC patches)
  • uclibc-ng 1.0.17 (plus 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

  • Toolchain build scripts
    • Use GNU FTP server to download GMP, MPFR and MPC, update to latest
      versions of those libraries and download .tar.xz files of GMP and MPFR.
  • GCC
    • Major compiler upgrade from gcc 4.8.5 in previous release to gcc 6.2.1 in this release
    • Support for new version of Intel's QuarkSE microcontroller via new mcpu option "quarkse2_em"
    • Support -fstack-protector and -fstack-protector-all (uclibc toolchain only)
    • Support for profiling using gmon for elf32 toolchain (newlib)
    • Remove support for -mabi option. Now GCC always generates function calls
      compatible with MetaWare compiler.
    • Avoid unnecessary dependency of libgcc on newlib.
  • Binutils
    • Revamped implementation of Position Independent Code (PIC) and Position Independent Executable (PIE)
      for much improved and robust support.
    • Linux security feature: All constant value global symbols which end up as dynamic relocations are now
      placed in .data.rel.ro sections and resolved by the dynamic linker and set as read-only.
  • GDB
    • Support multi-target GDB in ARC code. GDB for baremetal targets now can
      debug Linux targets as well.
  • uClibc
    • Migrated to uClibc-ng
  • OpenOCD
    • Add support for DCCM version 4.
  • CGEN
    • Removed formal dependency on CGEN repository (no longer in use).
  • IDE
    • Migrated to use DSF instead of obsolete CDT for debugging, which brings
      in multiple usability enhancements.
    • Updated to latest version of TerminalView plugins.
    • Detect if projects has been created with an older version of IDE and show
      user a warning that there could be compatibility issues.
    • Removed support for -mabi option that has been removed from ARC GCC.

Bugs Fixed in This Release

Number Project Title
9001023599 Assembler Assembler doesn't work for no-code-density CPUs
9001029778 Assembler GNU binutils disassembler decodes ARC EM DSP instructions incorrectly
9001048162 Assembler disassembly_info.insn_type is invalid for conditional branches/jumps
9001048168 Assembler branch_delay_insns has invalid value for BRcc reg-reg instructions
9001049308 Assembler Assembler doesn't accept valid LEAVE_S mnemonic
9001056928 Assembler arc-linux-gcc fails to build libcap-ng-0.7.7 in buildroot
9001062213 Assembler disassembler doesn't display properly the FPU instructions
9001088362 Assembler [buildroot] libvncserver-0.9.10 build fails
9001037372 binutils Relocation overflow when building Qt5WebKit
9001066937 binutils busybox's nslookup segfaults with invalid read
9001067572 binutils [pie] mosh-1.2.5 build failed (ld segfault)
9001074273 binutils [buildroot] tvheadend package build fails
9000553691 binutils overlapping VMA/LMA in relocatable object file
9000587711 binutils "ELF Segment layout changes for ARC (size
9000676403 binutils safe handling of custom instruction formats
9000948062 binutils "Stack and heap are part of the ""load"" program header"
9001053749 binutils kernel stack unwinder broken with GNU 2016.03
9001066524 binutils Mistakes in relocations in GNU bintuils
9001082767 binutils perf record -e cache-misses doesn't work
9001091610 binutils objdump not recognizing LLOCKD/SCONDD
9001106732 binutils Binutils doesn't accept same --with-cpu values as GCC
ARS0098564 binutils objdump shortcomings
9001079125 binutils Disassembler has invalid order of condition code and delay slot
9001009437 Build Build script do not support uClibc-ng
9001048208 Build New binutils not compatible with C++ compiler
9001113113 Compiler gcc 6.x triggers increased format warnings in kernel builds
9001094761 Compiler operand out of range (512 is not between -512 and 511)
9000799682 Compiler libgcc depends on libc
9000863783 Compiler ICE when __atomic_test_and_set is used but atomics are not enabled
9000962853 Compiler ICE in baremetal code with -fPIC
9001004404 Compiler ICE with --enable-checking when building linux
9001020378 Compiler Cannot build qt5webkit for arc700
9001031315 Compiler GCC compares SFP and DFP values incorrectly when -mcpu=em4 and -mnorm
9001044896 Compiler [DG] execute.exp=950915-1.c generates invalid instruction with -mcpu=em4 -O2
9001065763 Compiler ftruncate02_64 failure with GCC 6 and trunk
9001081235 Compiler [buildroot] gmp lib build failed
9001081769 Compiler GCC 6 ICE when building coreutils
9001081822 Compiler [buildroot] dmraid build failed
9001086114 Compiler "[buildroot] qt-4.8.7 build fails with ""internal compiler error"""
9001087935 Compiler "[buildroot] mesa3d-12.0.1 build fails with ""internal compiler error"""
9001090948 Compiler [buildroot] libcdio-0.93 build fails
9001092649 Compiler R25 is treated as thread pointer reg even with --disable-tls
9001107991 Compiler [buildroot][privoxy]: operand out of range
9000672366 Debugger gdb.base/commands.exp: continue with watch: expected line should be updated
9000881591 Debugger Evaluate branch condition in arc_next_pc function
9001091993 Eclipse plugin Changing linker settings breaks the project build
9001024736 Linker Linker reports bad symbol for MWDT compiled library written in C++
9000481437 Linker linker to abort if shared lib has .relocations in text
9000629566 Linker [pie] Unresolvable relocation in uClibc toolchain with option -fPIE
9000711844 Linker "[pie] -pie --static causes ""final link failed: Bad value"""
9000921771 Linker [pie] BFD_ASSERT(sreloc->contents != 0)
9000925001 Linker [pie] ld doesn't fail if symbol is undefined
9000976236 Linker Segmentation fault during mesa3d build
9001019759 Linker "dejagnu: ""-z nocommon"" flag not supported by linker for elf32"
9001020032 Linker dejagnu ld test failure: FAIL: ld-elf/linkonce1
9001020033 Linker Dejagnu: FAIL: PR ld/19317 (2)
9001021845 Linker [pie]: dumpcap segfaults (requires PIE support)
9001027471 Linker dejagnu fails. commonpage & maxpage
9001027472 Linker dejagnu fails: ld-discard /zero-range ld-discard/zero-rel
9001053384 Linker GNU linker calculates R_ARC_SECTOFF relocation incorrectly
9001054394 Linker GNU linker does not support R_ARC_SDA_12 relocation
9001056008 Linker GNU linker calculates R_ARC_N* relocations incorrectly
9001059599 Linker Linker fails to link dejagnu tests
9001108825 Linker [buildroot][libstdc++] relocation R_ARC_32_ME against `UNKNOWN' cannot be used
ARS0100768 Linker DT_RELACOUNT not generated by ARC linker (loader optimisation)
ARS0102823 Linker linker coalescing elf segments with -z max-page-size=16384
9001068766 newlib Function strcmp for em4 big endian is not correct
9001061425 uclibc "uClibc test ""tst-tls1"" fails"
9001069232 uclibc "[tls] [uclibc] ""tst-tls3"" failed with segfault"
9000882520 uclibc tst-atomic-long - uClibc testsuite failure
9001036412 uclibc Apps dynamically linked vs uClibc built with -mlong-calls fail
9001060878 uclibc LTP fanotify build fails with uClibc-ng
9001063706 uclibc "Libcall ""clone"" generates two new process instead of one."
9001073811 uclibc [uclibc-ng] build failed
9001081724 uclibc tst-mqueue8 uclibc test fails
9001081725 uclibc tst-mqueue6 uclibc test fails
9001081727 uclibc tst-mqueue3 uclibc test fails

A list of known issues can be found here.

Please report any problems by filing an Issue in GitHub here.

MD5 sums for the release tarballs:

e87c44a38dae628905506170bff05696  arc_gnu_2016.09-rc1_sources.tar.gz
e12574c30028cd9be6a544fbb4d1db61  arc_gnu_2016.09-rc1_prebuilt_elf32_le_linux_install.tar.gz
6dcc2baeed4c4c8a1dd198313603329b  arc_gnu_2016.09-rc1_prebuilt_uclibc_le_arc700_linux_install.tar.gz
088532a12f6fc4b2f6a1b0639e72ca73  arc_gnu_2016.09-rc1_prebuilt_uclibc_le_archs_linux_install.tar.gz
ee040b90a534664a771fcef7bbec552c  arc_gnu_2016.09-rc1_prebuilt_elf32_be_linux_install.tar.gz
9f5bf31f486d4b66ffd67894ebb4966e  arc_gnu_2016.09-rc1_prebuilt_uclibc_be_arc700_linux_install.tar.gz
dfea3f2d696c185a87b7b9ee2d1e96aa  arc_gnu_2016.09-rc1_prebuilt_uclibc_be_archs_linux_install.tar.gz
2e9b3df4e166b9138ca8cf50edb82570  arc_gnu_2016.09-rc1_ide_linux_install.tar.gz
d2663ffaa0dbcc6246c7140...
Read more

GNU Toolchain for ARC Processors, 2016.03

18 May 17:37

Choose a tag to compare

This is 2016.03 release 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 v2.26+ (upstream commit id 202ac19 with additional ARC patches)
  • GCC v4.8.5
  • GDB 7.10
  • newlib v2.3
  • uclibc (upstream commit 94340ce with backported patches from uClibc-ng)
  • 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.

New Features and Enhancements

  • Binutils
    • Binutils implementation for ARC has been rewritten from the ground up for better maintainability, stability and
      functionality. The new implementation is based on upstream release 2.26.
  • GCC
    • New values for -mcpu option and new set of multilib libraries built for
      those processor configurations.
    • Support for text values of -mmpy-option, same as in hardware IP
      libraries.
    • Fixed runtime issues on 32-bit hosts.
  • Eclipse IDE
    • Support for new GCC -mcpu option values.
    • If TCF is used, options in GUI are now synchronized with it.
    • it is now possible to select current working directory when using nSIM.
  • OpenOCD
    • Added a separate configuration file for ARC EM Starter Kit v2.2, which
      requires a reduced JTAG Frequency of 5 MHz, compared to 7.5 MHz value used for versions 2.0 and 2.1.
    • NOTE: A new openOCD driver is required for Windows in this release. Please update using instructions found here
  • Toolchain build scripts
    • Option --cpu now accepts different values that are supported by GCC as
      values for -mcpu option. List of supported values is dynamic and
      evaluated based on GCC configuration.
    • Support for building of native (self-hosting) Linux/uClibc toolchain (beta)
    • New option of build-all.sh script:
    • --native - specifies whether script is building native
      (self-hosting) toolchain. That affects location of header files and
      standard library archives. It is still required to pass --host
      option to specify cross-toolchain to build native toolchain.

Bugs Fixed in This Release (Summary)

  • GCC
    • There was no multilib configuration without multiplier for ARC 700, EM
      and HS processors.
  • Newlib
    • Fixed a bug in crt0.S file that was using optional ASR a,b,u6 instruction
      without checking if barrel shifter is enabled.
  • Eclipse IDE
    • Path to standard headers was calculated improperly for big-endian
      projects.
    • Fixed an inconsistency where if toolchain is present both in the PATH and
      relatively to eclipse installation, compiler plugin would use one
      toolchain from ../bin to build project, but would use toolchain from the
      PATH to get information about standard headers.
  • OpenOCD
    • OpenOCD didn't worked with HS36 in AXS103.
  • Toolchain build scripts
    • XML files for Ashling Opella-XD GDBserver were broken for Windows systems.
    • Memory maps for AXS10x boards were broken - there was a link error when
      using them.

Complete list of STARs fixed/closed in this release:

Number Project Title
9000986193 Ashling GDB server Ashling doesn't work for EM6 core (requires Ashling release 1.0.6-D)
9000986197 Ashling GDB server Ashling doesn't work on Windows
9001025886 Ashling GDB server Ashling doesn't always work for EM6 core on AXS101
9000535888 Assembler GNU assembler failing to process expression involving . and &
9000603555 Assembler GAS: request overhaul gnu assembler for current and future ARCv2 architecture
9000668330 Assembler symbol treated as 16-bit integer
9000770706 Assembler "Gas does not abort at instructions like st r1, [r0+4]"
9000860985 Assembler GAS: bad assembly for the branch prediction Y bit
9000864217 Assembler assembler bug with address expression using labels
9000978280 Assembler "Error: junk at end of line: `,@.LANCHOR1@pcl'"
9000987160 Assembler New GAS: Add support for ARC extension instructions
9000994937 Assembler new-binutils: R_ARC_TLS_LE_32 not including offset to structures in addend
9001022467 Assembler New binutils generates unneeded AUX register names symbols
ARS0100769 Assembler Assembler needs to flag error for j@plt code
9000687750 binutils memory corruption in binutils
9000984169 binutils invalid debug info for local labels
9000985228 binutils new-binutils: Invalid debug info for local labels
9000987187 binutils new-binutils: Compress debug sections support
9000987188 binutils new-binutils: strip on STB_GNU_UNIQUE
9001001892 binutils new-binutils: Uclibc for ARC700 build complains about different architecture obj
9001009303 binutils Native linker doesn't link
9001009438 binutils Some applications do not exit
9001009439 binutils New binutils do not set valid e_flags
9001011480 binutils new-binutils: Invalid symbol index for dynamic relocs in libstdc++
9001023085 binutils [new-binutils]: Big endian linux fails to boot on HS in nightly regressions
9001027916 binutils Assembler doesn't accept sleep instruction without parameters
9000913514 Build Self hosted development on ARC Linux system
9000496174 Compiler "-fno-omit-frame-pointer broken, generates code that doesn't work"
9000838988 Compiler [multilib]:Add mtune values accordingly to the ARChitect templates
9000867475 Compiler [multilib]: add the –mno-mpy option to multilib configuration
9000931490 Compiler Fine grained handling of 64 bit operands in inline asm
9000950193 Compiler [multilib]: libgcc soft FP for HS uses MPY non-conditionally
9000958046 Compiler [multilib]: ARC 700 with -mnorm default lib doesn't make sense
9000970225 Compiler [multilib]: mmpy-option should use names instead of numbers
9000989111 Compiler Native floating point extensions support for ARC Processor on Intel QuarkSE SoC
9000994687 Compiler "junk at end of line: ,@.LANCHOR0@pcl"
9000995433 Compiler Assembler error message during ruby building
9001005005 Compiler ICE when compiling with -mcpu=hs38 -Os
9001007315 Compiler Compiler doesn't emit a warning on usage of useless -mno-mpy option
9001007567 Compiler Cannot run uBoot compiled with GCC with new mcpu options
9001011021 Compiler Native GCC on ARC 700 complains about FPU options
9001013158 Compiler libstdc++ is not being installed for default multilib
9001013191 Compiler Warning for -mno-ll64 is not consistent
9001020378 Compiler Cannot build qt5webkit for arc700
9001031257 Compiler Assembler doesn't recognize insns when EM and fpuda_all
9001031569 Compiler Error while building ARC linux image for 770D
9001033004 Compiler .long directive in arc_gnu toolchain generate the disorder data
ARS0095357 Compiler Missing entry in DWARF line number table
9000591827 Debugger "Ashling gdbserver ""monitor ashload"" doesn't work with --verify option"
9000631435 Docs Allow user to set compiler option for standard libraries
9000984210 Eclipse plugin configuring start/working directory for nsimdrv
9000984252 Eclipse plugin empty parameters are being passed to nsimdrv
9000985736 Eclipse plugin Big endian toolchains use host compiler for specs provider
9000988094 Eclipse plugin Synchronize processor options in GUI and in TCF
9000996610 Eclipse plugin Document case of using an external toolchain
9001005468 Eclipse plugin Update IDE for new GCC -mcpu values
9001027308 Eclipse plugin "ARC_GNU_2016.03: Debugging issues with IDE, nSIM"
9001027383 Eclipse plugin ARC_GNU_2016.03: GNU Toolchain for ARC HS build error
9001027655 Eclipse plugin Unable to build a project
9000996549 General DRAM origin error in memory.x
9000985691 Linker GNU ld resolves R_ARC_24 and R_ARC_32 relocations incorrectly
9000987186 Linker new-binutils: Section garbage collection
9000987687 Linker GNU ld or MetaWare resolves R_ARC_8/16/24 relocations incorrectly for big endian
9001000461 Linker ld segfaulting when running configure script in glibc
9001010109 Linker Overflow detected in relocation value error using ARC GNU 2015.12
9001021693 newlib crt0.s uses barrel-shifter unconditionally
9000837141 openOCD Move to FTDI interface on Windows
9000991729 openOCD JTAG freq for snps_em_sk_v2 needs to be lowered to 5MHz for EMSK 2.2
9000999218 openOCD OpenOCD doesn't work with AXS103/HS36
9000999246 openOCD GDB intermittently hangs or Halts for Polling while debugging it using OpenOCD.
9001025725 openOCD Problem with debugging ARC 600 project using OpenOCD
9001026917 openOCD Failing to Debug EMSK-2.1 examples on Windows-7
9000848901 uclibc Sporadic invalid read in uClibc dynamic linker
9001008203 uclibc Cannot link new binutils gas for native toolchain

A list of known issues can be found here.

Please report any problems by filing an Issue in GitHub [he...

Read more

GNU Toolchain for ARC Processors, 2016.03 RC2

05 May 12:19

Choose a tag to compare

This is the second release candidate 2016.03 release 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 v2.26+ (upstream commit id 202ac19 with additional ARC patches)
  • GCC v4.8.5
  • GDB 7.10
  • newlib v2.3
  • uclibc (upstream commit 94340ce with backported patches from uClibc-ng)
  • 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.

New Features and Enhancements

  • Binutils
    • Binutils implementation for ARC has been rewritten from the ground up for better maintainability, stability and
      functionality. The new implementation is based on upstream release 2.26.
  • GCC
    • New values for -mcpu option and new set of multilib libraries built for
      those processor configurations.
    • Support for text values of -mmpy-option, same as in hardware IP
      libraries.
    • Fixed runtime issues on 32-bit hosts.
  • Eclipse IDE
    • Support for new GCC -mcpu option values.
    • If TCF is used, options in GUI are now synchronized with it.
    • it is now possible to select current working directory when using nSIM.
  • OpenOCD
    • Added a separate configuration file for ARC EM Starter Kit v2.2, which
      requires a reduced JTAG Frequency of 5 MHz, compared to 7.5 MHz value used for versions 2.0 and 2.1.
  • Toolchain build scripts
    • Option --cpu now accepts different values that are supported by GCC as
      values for -mcpu option. List of supported values is dynamic and
      evaluated based on GCC configuration.
    • Support for building of native (self-hosting) Linux/uClibc toolchain (beta)
    • New option of build-all.sh script:
    • --native - specifies whether script is building native
      (self-hosting) toolchain. That affects location of header files and
      standard library archives. It is still required to pass --host
      option to specify cross-toolchain to build native toolchain.

Bugs Fixed in This Release (Summary)

  • GCC
    • There was no multilib configuration without multiplier for ARC 700, EM
      and HS processors.
  • Newlib
    • Fixed a bug in crt0.S file that was using optional ASR a,b,u6 instruction
      without checking if barrel shifter is enabled.
  • Eclipse IDE
    • Path to standard headers was calculated improperly for big-endian
      projects.
    • Fixed an inconsistency where if toolchain is present both in the PATH and
      relatively to eclipse installation, compiler plugin would use one
      toolchain from ../bin to build project, but would use toolchain from the
      PATH to get information about standard headers.
  • OpenOCD
    • OpenOCD didn't worked with HS36 in AXS103.
  • Toolchain build scripts
    • XML files for Ashling Opella-XD GDBserver were broken for Windows systems.
    • Memory maps for AXS10x boards were broken - there was a link error when
      using them.

Complete list of STARs fixed/closed in this release:

Number Project Title
9000986193 Ashling GDB server Ashling doesn't work for EM6 core (requires Ashling release 1.0.6-D)
9000986197 Ashling GDB server Ashling doesn't work on Windows
9001025886 Ashling GDB server Ashling doesn't always work for EM6 core on AXS101
9000535888 Assembler GNU assembler failing to process expression involving . and &
9000603555 Assembler GAS: request overhaul gnu assembler for current and future ARCv2 architecture
9000668330 Assembler symbol treated as 16-bit integer
9000770706 Assembler "Gas does not abort at instructions like st r1, [r0+4]"
9000860985 Assembler GAS: bad assembly for the branch prediction Y bit
9000864217 Assembler assembler bug with address expression using labels
9000978280 Assembler "Error: junk at end of line: `,@.LANCHOR1@pcl'"
9000987160 Assembler New GAS: Add support for ARC extension instructions
9000994937 Assembler new-binutils: R_ARC_TLS_LE_32 not including offset to structures in addend
9001022467 Assembler New binutils generates unneeded AUX register names symbols
ARS0100769 Assembler Assembler needs to flag error for j@plt code
9000687750 binutils memory corruption in binutils
9000984169 binutils invalid debug info for local labels
9000985228 binutils new-binutils: Invalid debug info for local labels
9000987187 binutils new-binutils: Compress debug sections support
9000987188 binutils new-binutils: strip on STB_GNU_UNIQUE
9001001892 binutils new-binutils: Uclibc for ARC700 build complains about different architecture obj
9001009303 binutils Native linker doesn't link
9001009438 binutils Some applications do not exit
9001009439 binutils New binutils do not set valid e_flags
9001011480 binutils new-binutils: Invalid symbol index for dynamic relocs in libstdc++
9001023085 binutils [new-binutils]: Big endian linux fails to boot on HS in nightly regressions
9001027916 binutils Assembler doesn't accept sleep instruction without parameters
9000913514 Build Self hosted development on ARC Linux system
9000496174 Compiler "-fno-omit-frame-pointer broken, generates code that doesn't work"
9000838988 Compiler [multilib]:Add mtune values accordingly to the ARChitect templates
9000867475 Compiler [multilib]: add the –mno-mpy option to multilib configuration
9000931490 Compiler Fine grained handling of 64 bit operands in inline asm
9000950193 Compiler [multilib]: libgcc soft FP for HS uses MPY non-conditionally
9000958046 Compiler [multilib]: ARC 700 with -mnorm default lib doesn't make sense
9000970225 Compiler [multilib]: mmpy-option should use names instead of numbers
9000989111 Compiler Native floating point extensions support for ARC Processor on Intel QuarkSE SoC
9000994687 Compiler "junk at end of line: ,@.LANCHOR0@pcl"
9000995433 Compiler Assembler error message during ruby building
9001005005 Compiler ICE when compiling with -mcpu=hs38 -Os
9001007315 Compiler Compiler doesn't emit a warning on usage of useless -mno-mpy option
9001007567 Compiler Cannot run uBoot compiled with GCC with new mcpu options
9001011021 Compiler Native GCC on ARC 700 complains about FPU options
9001013158 Compiler libstdc++ is not being installed for default multilib
9001013191 Compiler Warning for -mno-ll64 is not consistent
9001020378 Compiler Cannot build qt5webkit for arc700
9001031257 Compiler Assembler doesn't recognize insns when EM and fpuda_all
9001031569 Compiler Error while building ARC linux image for 770D
9001033004 Compiler .long directive in arc_gnu toolchain generate the disorder data
ARS0095357 Compiler Missing entry in DWARF line number table
9000591827 Debugger "Ashling gdbserver ""monitor ashload"" doesn't work with --verify option"
9000631435 Docs Allow user to set compiler option for standard libraries
9000984210 Eclipse plugin configuring start/working directory for nsimdrv
9000984252 Eclipse plugin empty parameters are being passed to nsimdrv
9000985736 Eclipse plugin Big endian toolchains use host compiler for specs provider
9000988094 Eclipse plugin Synchronize processor options in GUI and in TCF
9000996610 Eclipse plugin Document case of using an external toolchain
9001005468 Eclipse plugin Update IDE for new GCC -mcpu values
9001027308 Eclipse plugin "ARC_GNU_2016.03: Debugging issues with IDE, nSIM"
9001027383 Eclipse plugin ARC_GNU_2016.03: GNU Toolchain for ARC HS build error
9001027655 Eclipse plugin Unable to build a project
9000996549 General DRAM origin error in memory.x
9000985691 Linker GNU ld resolves R_ARC_24 and R_ARC_32 relocations incorrectly
9000987186 Linker new-binutils: Section garbage collection
9000987687 Linker GNU ld or MetaWare resolves R_ARC_8/16/24 relocations incorrectly for big endian
9001000461 Linker ld segfaulting when running configure script in glibc
9001010109 Linker Overflow detected in relocation value error using ARC GNU 2015.12
9001021693 newlib crt0.s uses barrel-shifter unconditionally
9000837141 openOCD Move to FTDI interface on Windows
9000991729 openOCD JTAG freq for snps_em_sk_v2 needs to be lowered to 5MHz for EMSK 2.2
9000999218 openOCD OpenOCD doesn't work with AXS103/HS36
9000999246 openOCD GDB intermittently hangs or Halts for Polling while debugging it using OpenOCD.
9001025725 openOCD Problem with debugging ARC 600 project using OpenOCD
9001026917 openOCD Failing to Debug EMSK-2.1 examples on Windows-7
9000848901 uclibc Sporadic invalid read in uClibc dynamic linker
9001008203 uclibc Cannot link new binutils gas for native toolchain

A list of known issues can be found here.

Please report any problems by filing an Issue in GitHub here.

MD5 sums for the release tarballs:

6bbff8c07374919450bf9020693d2746  arc_gnu_2016.03_sources.tar.gz
0f...
Read more

GNU Toolchain for ARC Processors, 2015.12

02 Feb 23:18

Choose a tag to compare

This is 2015.12 release 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

  • GCC v4.8.5
  • Binutils v2.23
  • newlib v2.3
  • uclibc (upstream HEAD at the moment of release)
  • GDB 7.10
  • Eclipse Mars (4.5.1) with CDT 8.8.0
  • OpenOCD 0.9+ upstream commit 30203b3d8b, with ARC support.

New Features and Enhancements

  • GCC
    • Source update to v4.8.5
    • New preprocessor defines for processor optional features, like -mnorm, -mll64, etc.
    • Fast interrupt (FIRQ) function attribute support
    • Naked function attribute support
  • GDB
    • Updated to upstream 7.10 release.
  • Pre-built binaries
    • Baremetal toolchain now contains additional set of libc/libstdc++ binaries compiled with optimization for code size. Can be selected by passing --specs=nano.specs to gcc.
    • Standard libraries in baremetal toolchain are now stripped of debug information, except for .debug_frame section.
    • Linux toolchain for ARC HS now contains sysroot for ARC 700. It is now possible to build ARC 700 application using ARC HS toolchain, by passing an option --sysroot=$INSTALLDIR/arc-snps-linux-uclibc/sysroot-arc700 to arc-linux-gcc, where $INSTALLDIR is a path to toolchain installation folder. This is implemented for both little end big endian toolchains.
    • Toolchain binaries are linked dynamically
  • Eclipse IDE
    • Removed redundant "hostname" text field from debugger configuration when locally started gdbserver are used.
    • ARC template projects have been reorganized. They are now grouped by target ARC development system.
    • Added validation for text fields in debugger configuration.
    • TCF support to build configurations
    • Debugger configuration UI now has a full support of Synopsys ARC development systems for OpenOCD
    • Reworked template projects for Synopsys ARC development systems
    • Updated processor option in compiler pluging to adhere to GCC in this release
  • Newlib
    • Updated to upstream 2.3 release
    • Added support for newlib-nano
  • OpenOCD
    • Support for the actionpoints. OpenOCD will automatically detect actions points in ARC EM and ARC HS targets. Hardware breakpoints are set via GDB command hbreak, while hardware watchpoints via GDB command watch.
  • Toolchain build scripts
    • 2-stage build process for baremetal toolchain
    • Can now build libc and libstdc++ optimized for size along the "normal" set of libraries.
    • Support for Linux toolchains with multiple sysroots. Buildscripts themselves can build a toolchain with only one sysroot, however that arc-snps-linux-uclibc/sysroot folder may be now freely used with other toolchains. That wasn't possible with previous releases, because some libraries were outside of the sysroot.
    • New options of build-all.sh script:
      • --[no-]elf32-gcc-stage1 - defines whether to build of stage 1 compiler for baremetal toolchain. Means that runnable ARC compiler should be already in the PATH to build newlib. Disable first stage compiler is needed for canadian cross builds. Default is --elf32-gcc-stage1.
      • --[no-]optsze-newlib - defines whether to build newlib optimized for code size. Default is --optsize-newlib.
      • --[no-]optsze-libstdc++ - defines whether to build libstdc++ optimized for code size. Default is --optsize-libstdc++. This is independent from newlib option, however nano.specs will be copied to target toolchain installation only when --optsize-newlib is used.
      • --[no-]elf32-strip-target-libs - defines whether to string target libraries of the debug symbols (except for .debug_frame section). Default is off --no-elf32-strip-target-libs.

Bugs Fixed in This Release (Summary)

  • Pre-built binaries
    • Fixed broken shortcut to documentation folder in installer for Windows
    • Fixed a bug where uninstaller for Windows wouldn't remove some shortcuts
  • Eclipse IDE
    • Fixed compatibility with Ashling Opella-XD gdbserver
    • Fixed an case where in C++ projects standard library functions were highlighted as unknown by Eclipse syntax checker.
    • Fix crash in IDE on Linux when connecting to target UART
    • Fixed: IDE template projects for C++ were not linking
    • Fixed: printf() is highlighted by Eclipse as an unknown function in C++ project, but projects builds without error
  • Newlib
    • Fixed an issue with string and memory routines using instructions which are not available for selected ARC processor configuration.
  • OpenOCD
    • Fixed support of EM7DFPU image in EM Starter Kit 2.1: JTAG frequency was too high.
  • Toolchain build scripts
    • Fixed an issue where custom baremetal toolchain built with -mnorm option wouldn't link C++ applications

Complete list of STARs fixed/closed in this release:

Number Project Title
9000807313 Assembler Push-n-Pop instruction are not recognized by the GAS
9000931852 Assembler assembler needs to support llockd/scondd
9000937132 Assembler internal error: fixup not contained within frag
9000978280 Assembler Error: junk at end of line: `,@.LANCHOR1@pcl'
9000878737 Build Can't find a source file at "/home/akolesov/ws/arc-2014.12/unisrc-4.8/newlib/lib
9000909931 Build multi-sysroot toolchain support
9000914808 Build Dynamic linked toolchain for Windows
9000943754 Build Toolchain built with -mnorm in target cflags doesn't build C++ apps
9000960799 Build [windows] Documentation link in Start Menu doesn't work
9000906026 Compiler gcc 4.8.x (since may 2015) spews dwarf messages
9000908736 Compiler Undefined reference to .tdata when building ncurses
9000922620 Compiler [tls] undefined reference to .tdata
9000924612 Compiler Enable section anchors for Os
9000926273 Compiler ICE in GCC with -Os -mfpu=fpus_all
9000926277 Compiler ICE with -marcem -mfpu=fpuda -Os -fno-builtin
9000927675 Compiler GCC does not emit some operand combinations for LD
9000929470 Compiler GCC generates an invalid assembly code for -O3 (operand out of range)
9000942081 Compiler ICE in GCC built with --enable-checking
9000953408 Compiler ICE when compiling libgcc file without explicit CPU option
9000958058 Compiler ARC specific preprocessor defines do not follow any naming convention
9000967406 Compiler unrecognizable insn with -mmpy-option=9
9000970221 Compiler Segfault in GCC with -Os -fsection-anchors -fPIC
9000969818 Compiler Internal compiler error during libbroadvoice build
9000857057 Compiler GCC loop skips first index or can loop indefenetely if 'continue' is used.
9000958165 Compiler ‘builtin’ instructions generated for 32 bit inst when 16-bit versions available
9000831646 Debugger debugging if fork() with GDB and NPTL
9000831647 Debugger debugging of multithreaded apps with NPTL GDB
9000921499 Debugger GDB doesn't step line properly in threaded apps
9000897852 Docs Incomplete GCC documentation for -mmpy-option
9000924631 Docs Add AXS10x specific linker scripts and CPU options to toolchain wiki
9000837862 Eclipse plugin Dropdown list to select type of FTDI device
9000849262 Eclipse plugin IDE crashes in RxTx
9000918425 Eclipse plugin Debugger plugin should detect openocd in Linux IDE setup
9000918465 Eclipse plugin Separate HS34 and HS36 empty templates are required
9000922447 Eclipse plugin C++ projects for bare metal don't build because of inappropriate crt0.S
9000922449 Eclipse plugin Error encountered while building uClibc application for ARC700 on GNU Ecllipse
9000940039 Eclipse plugin Error messages when starting ARC plugins for Eclipse
9000943601 Eclipse plugin Remove -mshift-assist option from toolchain's settings
9000946759 Eclipse plugin Eclipse highlights printf as unknown function
9000947947 Eclipse plugin Remove -matomic from EM toolchain
9000952007 Eclipse plugin Tooltips for nSIM options in Debugger plugin
9000952042 Eclipse plugin nSIM bin path should be empty if NSIM_HOME is not set
9000952043 Eclipse plugin Highligh filepath fields if empty or file doesn't exist
9000952560 Eclipse plugin Reorganize ARC template projects
9000954846 Eclipse plugin Show error message if project or program doesn't exist or specified
9000955386 Eclipse plugin Remove hostname text field for nSIM, Ashling and OpenOCD
9000963398 Eclipse plugin Ashling support needs update for GDB 7.9 with XML target descriptions
9000974600 Eclipse plugin Add --specs=nsim.specs to linker options in IDE template projects
9000986055 Eclipse plugin Debugging flags aren't passed to compiler in IDE
9000947173 Eclipse plugin ARC GNU GUI: gdb does not load library symbols for remote debug session.
9000950266 Linker Linker regression causes instruction to be removed, perf failing with illegal in
9000960795 Linker Faling ld test case for TLS
9000980148 Linker Linker error when creating shared library file
9000664832 newlib Implement function _exit in newlib
9000861703 newlib Port newlib-nano to ARC
9000950205 newlib [GNU] Incorrect default exception handlers for v2 cores
9000974569 newlib Update newlib to new GCC macros defines
9000987170 newlib Can not compile EM project with --specs=...
Read more

GNU Toolchain for ARC Processors, 2015.06

13 Jul 16:08

Choose a tag to compare

This is release 2015.06 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.

Toolchain Components

  • GCC v4.8.4
  • Binutils v2.23
  • newlib v2.0
  • uclibc (upstream HEAD at the moment of release)
  • GDB 7.9.1

A complete Eclipse IDE for GNU Toolchain for DesignWare ARC Processors can also be downloaded here

New Features and Enhancements

  • GCC: source update to v4.8.4
  • GCC: C ABI compatibility between MetaWare and GNU toolchains
  • uClibc: support for thread local storage and Native Pthread Library (NPTL) in uClibc / linux toolchain
  • GDB: updated to version 7.9.1
  • GDB/GDBserver/openOCD: Add support for standard xml target description file
  • openOCD: Allow users to configure registers without recompiling

Bugs Fixed in this Release

Number Project Title
9000919513 Ashling GDB server Missing aux-minimal.xml file for debugging Using Ashling Opella-XD
9000860981 Assembler GAS: wrong assembly of ld_s r1,[gp,36]
9000877961 Assembler Segfault in gas
9000896496 Assembler GAS chokes on mov_s r0,@_stext@sda and rsub r0,r0,@_etext@sda
ARS0100666 Backend locals access requires two relos => two 8 byte insn
9000689886 binutils programs using atexit have a zero .rela.got section
9000738234 Build GNU Build is failing while building PDF
9000917542 Build Script error encountered while building the baremetal toolchain
9000912596 Build GDB on Windows doesn't support XML
9000916745 Compiler ARC601 uses ARC600 strlen function
9000914881 Compiler ICE: unrecognizable insn for -marc600 -mmul32x16 -Os
9000911824 Compiler GCC generates invalid instruction for ARC 700 and ARC 600
9000735557 Compiler FPU: use double load and store instructions for double precision data type
9000755340 Compiler [GNU] -ffixed-rXX produces incorrect executable
9000869388 Compiler HS Linux fails to boot without HW multiplier
9000877921 Compiler BLINK register is not proper restored after millicode call
9000885056 Compiler gcc may emit conditional NOP.
9000897935 Compiler GCC accepts -mno-no-volatile-cache
9000903772 Compiler qxquerytokenizer: unaligned opcodes detected in executable segment
9000905889 Compiler A suspicious optimization is performed for global constants
9000593300 Debugger GDB sometimes skips breakpoint in baremetal application on HAPS
9000786397 Debugger GDB uses ARCompact register names for ARC v2 cores
9000870693 Debugger Register field descriptions
9000876786 Debugger GDB needs to be able to unwind call stack containing enter/leave instructions
9000897298 Debugger [tls/nptl]: gdb usage issues with linux VP
9000919529 Debugger native gdb can't debug threaded apps
9000913364 Docs The way to define stack / heap size is not documented
9000834096 Docs ARC OpenOCD lacks documentation for ARC specific features
9000874284 Docs Improve instructions to build toolchain for EM Starter Kit
9000897438 Docs Documentation for -mbarrel-shift is invalid
9000897852 Docs Incomplete GCC documentation for -mmpy-option
9000897892 Docs Incomplete GCC documentation for -mdiv-rem
9000897897 Docs Documentation for -mcode-density is not correct for ARC HS
9000897932 Docs Option -matomic is not applicable to ARC EM
9000897934 Docs Documentation for -mll64 doesn't mention it is default ON
9000897973 Docs Option -mnorm is not applicable to ARC HS
9000899152 Docs No way to select FPU with DA without FMA or DIV
9000899166 Docs A specific behavior of ".lcomm" directive for ARC assembler is not documented
9000840961 Docs Cannot build PDF documentation on RHEL7
9000753572 General [tls/nptl] Some Qt demo applications segfault
9000769545 Linker [tls/nptl] linker crashes on "tst-tls12" and "tst-tls-at-ctor" uClibc tests
9000856394 Linker linker default arch flag for empty archives
9000875669 Linker linker can't use it's own default script
9000870038 newlib Instruction norm is used unconditionally in strlen.S and memcmp.S
9000870210 newlib _stat_r and _times_r are not implemented
9000902569 newlib A function cargl does not exist in the GCC math library
9000834652 openOCD Use target_type to distinguish ARC core families
9000579074 uclibc [tls/nptl] Hackbench fails in thread mode if threads == 18
9000599571 uclibc [tls/nptl] Getting SIG32 while remotely debugging apps with pthreads
9000775336 uclibc [tls/nptl] perf segfaults in scanf
9000830286 uclibc [tls/nptl] Insn could not be fetched when hackbench -pipe 18 thread
9000830538 uclibc [tls/nptl] multibench: "4M-check.out -v0 -w2" hangs

A list of known issues can be found here.

Please report any problems by filing an Issue in github here.

MD5 sums for the release tarballs:

b1c4c87468b966cb8c505fbced517222  arc_gnu_2015.06_prebuilt_elf32_be_linux_install.tar.gz
ae05cb297f753b37cb8984d8df69c776  arc_gnu_2015.06_prebuilt_elf32_le_linux_install.tar.gz
1b6f4b33d29ea3807fe558bb7c43f7e0  arc_gnu_2015.06_prebuilt_uclibc_be_arc700_linux_install.tar.gz
8bf2abee129db03672a878af257b06c1  arc_gnu_2015.06_prebuilt_uclibc_be_archs_linux_install.tar.gz
a865bcb4edbd0cd2d03825ce042f7abb  arc_gnu_2015.06_prebuilt_uclibc_le_arc700_linux_install.tar.gz
8c132a96f8ecc83c992256aeb80c6e46  arc_gnu_2015.06_prebuilt_uclibc_le_archs_linux_install.tar.gz
246115edd18509660bc8ec2ee01857da  arc_gnu_2015.06_sources.tar.gz

GNU Toolchain for ARC Processors, 2014.12

13 Jan 17:44

Choose a tag to compare

This is the 2014.12 release 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

Toolchain Components

  • GCC v4.8.3
  • Binutils v2.23
  • newlib v2.0
  • uclibc v0.9.33.2 + mainline fixes
  • GDB 7.5

A complete Eclipse IDE for GNU Toolchain for DesignWare ARC Processors can also be downloaded here

New Features and Enhancements

  • Support for new ARC HS38, HS38x2 and HS38x4 Processors

Bugs Fixed

Number Project Title
9000839080 Compiler Cannot build bare metal HS application without LL64 instructions
9000836617 Compiler internal compiler error in gcc 2014.12-RC1
9000753685 Compiler The length of add. h,h,s3 insn is not correct in delay slot
9000735556 Compiler FPU: generate double precision fused multiply and add instruction
9000778855 Compiler [HS] syscall args discrepancy in kernel and uclibc
9000807457 Compiler GCC produce brhi with out of range limm
9000805398 Compiler operand out of range (512 is not between -512 and 511)
9000798619 Compiler busybox building fails at xfuncs.s (operand out of range)
9000714357 Compiler Incompatibility with GCC/libc for x86_64
9000751028 Compiler a2time01 of EEMBC can't run which is compiled with ARC GNU
9000796576 openOCD openOCD cannot open FTDI Device (EMSK 2.0/TE0604-02 board)
9000816717 openOCD GNU IDE OpenOCD Debug Configuration TCL Script Typo Bug
9000830582 openOCD Program need download twice to make it run rightly using openocd
9000831112 openOCD OpenOCD doesn't reset the target
9000830091 openOCD Reads from DDR memory sometimes return 0 instead of a real value
9000473006 Assembler insn encoding issue - scond with limm
9000799807 binutils Warning message when build HS Linux: unset architecture flags
9000656506 binutils binutils assertion fails in bfd/elf32-arc.c:2147
9000810197 binutils objdump attaches suffix to brhs
9000751381 binutils Support uClibc HS in Buildroot properly
9000736390 Build [matomic] Build error for pulse audio with Buildroot
9000783031 Linker TLS linker fails to proper solve relocation R_ARC_GOTPC32
9000808989 uclibc LTP: syscalls/sync_file_range01 failure on Linux for HS
9000752070 uclibc Syscall monotonic fails in busybox
9000771550 uclibc busybox linkage is broken if uClibc is built with DODEBUG=y

A list of known issues can be found here.

Please report any problems by filing an Issue in github here.

MD5 sums for the release tarballs:

839712b61481ae505e015bd70c4e5f72  arc_gnu_2014.12_prebuilt_elf32_be_linux_install.tar.gz
5490b6bbe3d612645ee5e81a8d147d91  arc_gnu_2014.12_prebuilt_elf32_le_linux_install.tar.gz
fa8f40a7cac37d0e72a1f4829f7ed6e6  arc_gnu_2014.12_prebuilt_uclibc_be_arc700_linux_install.tar.gz
4e76d8741bf964b07be64401e51a575f  arc_gnu_2014.12_prebuilt_uclibc_be_archs_linux_install.tar.gz
ad7cec8b87de30f821371007fcb086cc  arc_gnu_2014.12_prebuilt_uclibc_le_arc700_linux_install.tar.gz
86235e41147ec91ee8fb78ea6aa5af28  arc_gnu_2014.12_prebuilt_uclibc_le_archs_linux_install.tar.gz
0d0c1a2b45c69d2c7f64c0ebb02fac25  arc_gnu_2014.12_sources.tar.gz