aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Müller-Klieser <s.mueller-klieser@phytec.de>2015-04-21 10:23:47 +0200
committerJoshua Lock <joshua.lock@collabora.co.uk>2015-12-18 12:54:36 +0000
commit91a001fc74dd13ea9e5249aa624ad360ce807349 (patch)
treecec7bab9a1f0851c0465f29fa291f7e18de48359
parent17b3112a3d6fc4c777429f8b5965206889c55cc3 (diff)
downloadopenembedded-core-91a001fc74dd13ea9e5249aa624ad360ce807349.tar.gz
gcc-4.9: backport from gcc trunk r212178
When compiling meta-toolchain-qt5 on cortexa8, the compiler throws an internal compiler error: ... qttools-opensource-src-5.3.2/src/linguist/shared/po.cpp: In function 'bool loadPO(Translator&, QIODevice&, ConversionData&)': qttools-opensource-src-5.3.2/src/linguist/shared/po.cpp:717:1: internal compiler error: in add_stores, at var-tracking.c:6000 ... Tracking this down led to https://bugs.linaro.org/show_bug.cgi?id=534 It seems the bug is well know and fixed upstream. So backporting from trunk seems to be the right solution. This fixes the compiler problem on cortexa8 and does not seem to be very invasive. The original commit can be found at: git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212178 138bc75d-0d04-0410-961f-82ee72b054a4 (From OE-Core master rev: 6751ef78694783fb86e55c77afefae750ab1b610) Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.9.inc1
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch39
2 files changed, 40 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.9.inc b/meta/recipes-devtools/gcc/gcc-4.9.inc
index 3af87d1cc6..ee31f0b620 100644
--- a/meta/recipes-devtools/gcc/gcc-4.9.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.9.inc
@@ -77,6 +77,7 @@ SRC_URI = "\
file://0059-gcc-PR-rtl-optimization-63348.patch \
file://0060-Only-allow-e500-double-in-SPE_SIMD_REGNO_P-registers.patch \
file://0061-target-gcc-includedir.patch \
+ file://0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch \
"
SRC_URI[md5sum] = "4df8ee253b7f3863ad0b86359cd39c43"
SRC_URI[sha256sum] = "2020c98295856aa13fda0f2f3a4794490757fc24bcca918d52cc8b4917b972dd"
diff --git a/meta/recipes-devtools/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch b/meta/recipes-devtools/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch
new file mode 100644
index 0000000000..c0ea62f0ef
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch
@@ -0,0 +1,39 @@
+From b30ffb8097749fdb55704aa7d8307ca1a58255d6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Stefan=20M=C3=BCller-Klieser?= <s.mueller-klieser@phytec.de>
+Date: Tue, 7 Apr 2015 16:15:11 +0200
+Subject: [PATCH] gcc/var-tracking.c: backport from gcc trunk r212178
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+resolves a bug seen on cortexa8 building qt5 libraries.
+
+2014-06-30 Joseph Myers <joseph@codesourcery.com>
+
+ * var-tracking.c (add_stores): Return instead of asserting if old
+ and new values for conditional store are the same.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212178 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de>
+---
+ gcc/var-tracking.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
+index 65d8285..7c38910 100644
+--- a/gcc/var-tracking.c
++++ b/gcc/var-tracking.c
+@@ -5997,7 +5997,8 @@ add_stores (rtx loc, const_rtx expr, void *cuip)
+ {
+ cselib_val *oval = cselib_lookup (oloc, GET_MODE (oloc), 0, VOIDmode);
+
+- gcc_assert (oval != v);
++ if (oval == v)
++ return;
+ gcc_assert (REG_P (oloc) || MEM_P (oloc));
+
+ if (oval && !cselib_preserved_value_p (oval))
+--
+1.9.1
+