summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan S. Arnold <ryan.arnold@linaro.org>2017-02-14 23:11:05 +0000
committerRyan S. Arnold <ryan.arnold@linaro.org>2017-02-14 23:11:05 +0000
commita4a9724c6389433bf49ab06e765abbd42c10d97f (patch)
treee438522fb763c4cdbc66f7c6d22521f7049bcdd7
parent6ec4b52e966d1e85d1e00e5af8f5a20a5aed2c18 (diff)
Added NEWS items for releases/linaro-6.3-2017.02-rc2.
-rw-r--r--components/toolchain/binaries/README.textile.series37
1 files changed, 22 insertions, 15 deletions
diff --git a/components/toolchain/binaries/README.textile.series b/components/toolchain/binaries/README.textile.series
index 8ed7ecd..4396b96 100644
--- a/components/toolchain/binaries/README.textile.series
+++ b/components/toolchain/binaries/README.textile.series
@@ -75,7 +75,21 @@ Linaro GDB 7.12 (gdb-7.12-branch)
{% block news %}
{% call format("news") -%}
-A bug/regression in the compiler has been identified whereby the target function that is invoked when calling a "weak" function directly is the "strong" override, whereas when calling the function via a pointer the "weak" implementation is used. This would be noticed as inconsisent function invocation when invoking directly vs. invoking via function pointer. This issue only affected 32-bit arm targets. This regression has been fixed upstream and backported into Linaro GCC 6.3-2017.02-rc2.
+Previous versions of the Linaro GCC 6 toolchain were incorrectly generating floating-point code for soft-float Linux targets (arm-linux-gnueabi, and armeb-linux-gnueabi). This escaped detection until recently because the soft-float targeted toolchains were configured to use general-purpose registers for passing floating-point values (which is what you would expect for soft-float toolchains) and the intra-routine floating-code was not noticed.
+{% endcall %}
+
+{% call format("newscont") -%}
+The issue would only show up on targets that were run on hardware that truly didn't have floating-point hardware where the kernel did not trap and emulate floating-point routines. This has been solved in Linaro GCC 6.3-2017.02-rc2 by configuring the toolchain (using --with-float=soft) to generate code without any floating-point instructions at all (-mfloat-abi=soft).
+{% endcall %}
+
+{{ urlind(6,"https://review.linaro.org/#/c/16968/2") }}
+
+{% call format("newscont") -%}
+This change should not break compatibility between existing binaries compiled with these toolchains since the float-point parameter passing ABI is still the same.
+{% endcall %}
+
+{% call format("news") -%}
+A bug/regression in the compiler has been identified whereby the target function that is invoked when calling a "weak" function directly is the "strong" override, whereas when calling the function via a pointer the "weak" implementation is used. This would be noticed as inconsistent function invocation when invoking directly vs. invoking via function pointer. This issue only affected 32-bit arm targets. This regression has been fixed upstream and backported into Linaro GCC 6.3-2017.02-rc2.
{% endcall %}
{% call format("newscont") -%}
@@ -84,6 +98,13 @@ GCC PR target/78253: [5/6/7 Regression] [ARM] call weak function instead of stro
{{ urlind(6,"https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78253") }}
+{% call format("newscont") -%}
+Linaro bugzilla #2562:
+ARM GCC 5.2 call weak function instead of strong when called through pointer
+{% endcall %}
+
+{{ urlind(6,"https://bugs.linaro.org/show_bug.cgi?id=2562") }}
+
{% call format("news") -%}
MS Windows does not support symlinks and the MS Windows archive extractor does not properly deep copy the symlink target files/directories into the symlinked directory structure when unpacking the toolchain archive. This causes problems with missing dependencies when using the Linaro mingw toolchains, as identified in the following bugs:
{% endcall %}
@@ -98,20 +119,6 @@ This has been solved by copying files rather than using symlinks when the mingw
{{ urlind(6,"https://review.linaro.org/#/c/16415/") }}
-{% call format("news") -%}
-Previous versions of the Linaro GCC 6 toolchain were incorrectly generating floating-point code for soft-float Linux targets (arm-linux-gnueabi, and armeb-linux-gnueabi). This escaped detection until recently because the soft-float targeted toolchains were configured to use general-purpose registers for passing floating-point values (which is what you would expect for soft-float toolchains) and the intra-routine floating-code was not noticed.
-{% endcall %}
-
-{% call format("newscont") -%}
-The issue would only show up on targets that were run on hardware that truly didn't have floating-point hardware where the kernel did not trap and emulate floating-point routines. This has been solved in Linaro GCC 6.3-2017.02-rc2 by configuring the toolchain (using --with-float=soft) to generate code without any floating-point instructions at all (-mfloat-abi=soft).
-{% endcall %}
-
-{{ urlind(6,"https://review.linaro.org/#/c/16968/2") }}
-
-{% call format("newscont") -%}
-This change should not break compatibility between existing binaries compiled with these toolchains since the float-point parameter passing ABI is still the same.
-{% endcall %}
-
{% call format("news") %}
Users of Linaro's toolchain have encountered problems when building projects with Autotools (specifically libtool):
{% endcall %}