summaryrefslogtreecommitdiff
path: root/components/toolchain/binaries/README.textile.series
blob: 190a9035194472c2956c7b870625e9556d201aa9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
{# This document uses jinja2 templating markup.  Please refer to the Jinja2
   template documentation for further information.

   http://jinja.pocoo.org/docs/dev/templates/

   This is an example of a child template that describes the specific
   information unique to a series.  The common parts of the release notes are
   pulled in from the parent template in README.textile.

   Pull in the macros that differentiate between textile and no-txt -#}

{%- from "components/toolchain/binaries/macros" import header with context -%}
{% from "components/toolchain/binaries/macros" import url with context -%}
{% from "components/toolchain/binaries/macros" import urlind with context -%}
{% from "components/toolchain/binaries/macros" import email with context -%}
{% from "components/toolchain/binaries/macros" import format with context -%}
{%- extends "components/toolchain/binaries/README.textile"-%}

{# Information important for the series goes into this block.
   It is added right after the release announce in the README. #}
{% block important %}
{% if major|int == 7 -%}
        {%- call format("para") %}
*Notice*: GCC 7.1 ABI change for arm*-*-* targets, and note for aarch64*-*-* targets

From GCC 7.1 release notes:

On ARM targets (arm*-*-*), a bug introduced in GCC 5 that affects conformance to the procedure call standard (AAPCS) has been fixed. The bug affects some C++ code where class objects are passed by value to functions and could result in incorrect or inconsistent code being generated. This is an ABI change. If the option -Wpsabi is enabled (on by default) the compiler will emit a diagnostic note for code that might be affected.
        {%- endcall %}

{{ urlind(8,"https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728") }}
        {% call format("para") %}
GCC 5 and GCC 6 releases will continue to be affected by the ABI bug, since changing ABI in these releases is not practical.  A warning enabled by -Wpsabi option was added to GCC 5 and GCC 6 toolchains to diagnose codebases that might be affected by the ABI bug.

Additionally, this same bug was present in AArch64 backend in development versions of GCC 7.  There was no releases of GCC with this bug present in AArch64 backend, therefore the release notes does not mention this.  However, be advised that any code bases built with development versions of GCC 7 need to be recompiled with released version of GCC 7 to conform to ABI.

For an explanation of GCC 7 series changes please see the following website:
        {% endcall %}

{{ urlind(8,"https://gcc.gnu.org/gcc-7/changes.html") }}
        {% call format("para") %}
For help in porting to GCC 7 please see the following explanation:
        {% endcall %}

{{ urlind(8,"https://gcc.gnu.org/gcc-7/porting_to.html") }}
{% elif major|int == 6 -%}
        {%- call format("para") %}
The GCC 6 Release series has significant changes from the GCC 5 release series.  For an explanation of the changes please see the following website:
        {%- endcall %}

{{ urlind(8,"https://gcc.gnu.org/gcc-6/changes.html") }}
        {% call format("para") %}
For help in porting to GCC 6 please see the following explanation:
        {% endcall %}

{{ urlind(8,"https://gcc.gnu.org/gcc-6/porting_to.html") }}
{% else -%}
        {%- call format("para") -%}
Notice: All Linaro GCC {{ major }} series toolchain users should migrate to the latest version of the Linaro GCC {{ major }} toolchain in order to mitigate potential security exposure to CVE-2015-7547.  See the NEWS section below for details.
        {%- endcall %}
{% endif -%}
{% endblock %}

{% block gcc_version_block %}
{{ linaro_gcc_version }}

{{ urlind(8,srcurl) }}
{% endblock %}

{% block glibc_version_block %}
FSF glibc 2.25 (release/2.25)

{{ urlind(8,"https://lists.gnu.org/archive/html/info-gnu/2017-02/msg00002.html") }}
{% endblock %}

{% block newlib_version_block %}
Newlib 2.5 (newlib-2_5_0 tag)

{{ urlind(8,"https://sourceware.org/ml/newlib/2016/msg01191.html") }}
{% endblock %}

{% block binutils_version_block %}
GNU Binutils 2.28 (users/linaro/binutils-2_28-branch)

{{ urlind(8,"https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=binutils/NEWS;hb=refs/tags/binutils-2_28") }}
{% endblock %}

{% block gdb_version_block %}
FSF GDB 8.1 (gdb-8.1-branch)

{{ urlind(8,"https://lists.gnu.org/archive/html/info-gnu/2018-01/msg00016.html") }}
{% endblock %}

# This is the start of the NEWS block in the release-notes.  Use the jinja2
# macro 'format("news")' for new bulleted paragraphs.  Use 'format("newscont")'
# for continuation lines that are not bulletted.
{% block news %}

{% call format("news") -%}
Runtest and gdbserver are no longer installed in the toolchain bin/ directory.  Binary releases no longer include runtest at all, and gdbserver is a target tool; it is now shipped in the sysroot package under usr/bin/.

Tools needed by the host are shipped in a new 'hosttools' directory, located next to 'destdir'. These packages are gmp, mpc, mpfr and dejagnu.
{% endcall %}

{% call format("news") -%}
Gdbserver is no longer linked statically, because dlopen(3) requires runtime access to the same shared libraries as the glibc used to link it.
{% endcall %}

{% call format("news") -%}
The Linaro GCC 7.2-2017.09 snapshot added float and integer moves improvement for AArch64 targets.
{% endcall %}

{% call format("news") -%}
The Linaro GCC 7.1-2017.07 snapshot added prefetching configuration improvement for AArch64 targets and laid groundwork to enabling prefetching in more cases.
{% endcall %}

{% call format("news") -%}
Previous MinGW hosted version of Linaro GCC C preprocessor failed to convert character set used for string, character constants, etc.  This is fixed in this release.
{% endcall %}

{% call format("newscont") -%}
Linaro bugzilla #3040 : CC1 and cc1plus cannot convert UTF-8.
{% endcall %}

{{ urlind(6,"https://bugs.linaro.org/show_bug.cgi?id=3040") }}

{% call format("news") -%}
Performance related backports from the following snapshots have been included: Linaro GCC 7.1-2017.05, Linaro GCC 7.1-2017.06, Linaro GCC 7.1-2017.07, Linaro GCC 7.2-2017.08, Linaro GCC 7.2-2017.09, Linaro GCC 7.2-2017.10 and Linaro GCC 7.2-2018.04.

See the following Linaro GCC snapshots:
{% endcall %}

{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.05/") }}
{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.06/") }}
{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.1-2017.07/") }}
{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.2-2017.08/") }}
{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.2-2017.09/") }}
{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.2-2017.10/") }}
{{ urlind(6,"http://snapshots.linaro.org/components/toolchain/gcc-linaro/7.2-2018.04/") }}

{% endblock %}