GNU ARM Embedded Toolchain 4.9-2015-q3-update
Update 4.9 in Q3 2015
- Assigned to you:
- No blueprints or bugs assigned to you.
- 1 Thomas Preud'homme
- No blueprints are targeted to this milestone.
- 1 Fix Released
Download files for this release
Release notes for
GNU Tools for ARM Embedded Processors 4.9
This release includes the following items:
* Bare metal EABI pre-built binaries for running on a Windows host
* Bare metal EABI pre-built binaries for running on a Linux host
* Bare metal EABI pre-built binaries for running on a Mac OS X host
* Source code package (together with build scripts and instructions to setup
build environment), composed of:
* gcc : ARM/embedded-
* binutils : 2.24 with mainline backports
* newlib and newlib-nano :
* gdb : 7.8 with mainline backport/without target sim support
* cloog 0.18.0 :
* libelf 0.8.13 : http://
* libiconv 1.14 :
* mpfr 2.4.2 : ftp://gcc.
* isl 0.11.1 : ftp://gcc.
* Windows 7 32/64 bits (with installer and alternative zip package)
* Linux 32/64 bits
- Ubuntu 8.x or later (tarball)
- Ubuntu LTS 10.04 and later (PPA)
- RHEL 4/5/6 (tarball)
* Mac OS X 10.7.3 and newer 64 bits (tarball)
Supported target OS:
* Bare metal EABI only
* All GCC 4.9 features, plus latest mainline features
- Cortex-M7 support
- Small multiply support with options:
* Dedicated multilib for Cortex-M7
* Define aeabi_memcpy and aeabi_memcpy4 routines in newlib.
* Define aeabi_memmove, aeabi_memset and aeabi_memclr routines in newlib.
* Thumb-1 library optimizations.
* Additional code size optimizations.
* Add gdb python build (arm-none-
* Object file without attribute section can be linked with any
* The options -mapcs, -mapcs-frame, -mtpcs-frame and -mtpcs-leaf-frame
will be deprecated in gcc 5.0, hence recommend to avoid them.
* Tested on a variety of Cortex-
* Tested on Qemu
Important bugs fixed in 4.9 update 3 release:
* Newlib format specifier mismatch fix.
* Newlib macro mismatch fix.
* Assembler encoding bug fix.
Important bugs fixed in 4.9 update 2 release:
* Updated some inline assembly code in Newlib to work with old targets
* Avoid wastage caused by section size promotion
* Local register variables don't work correctly with inline asm operands
Important bugs fixed in 4.9 update 1 release:
* LD backport to keep zero length section in final axf file
* Fix GDB crash caused by discarding the grouped debug sections
* Add a Thumb1 insn pattern to legalize the instruction that
moves pc to low register
* Update GCC to generate Tag_ABI_HardFP_use per the latest EABI doc
* Live high register not saved in function prolog with -Os
Important bugs fixed in 4.9 major release:
* LTO ignores -fno-short-enums
* Incorrect folding of bitfield in a union on big endian targets
* newlib-nano printf("%.*s",moo) walks off the end of string
* We now use a gcc pass to implement the function of the plugin mentioned in
Such pass only exists in embedded-4_9-branch branch and not in upstream
mainline. A new option -ftree-
this pass. By default it is off.
* Thumb1 code size regression due to new register allocation:
A workaround is to disable it by option -mno-lra.
This release does not have a changelog.
0 blueprints and 1 bug targeted
|1465186||#1465186||How to build toolchain confusion||5 Low||Thomas Preud'homme||10 Fix Released|