diff options
author | Samuli Piippo <samuli.piippo@theqtcompany.com> | 2015-11-19 12:05:59 +0200 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@theqtcompany.com> | 2015-11-20 08:36:40 +0000 |
commit | d9c2b811781e7e0c4cf246d21900edb0ce6eec78 (patch) | |
tree | c60ea8818c3c60b9a844cd1faaca160a5f8babb6 /recipes/gcc | |
parent | 643ee989948ab3b7667a409df47c5ba9d6b0714e (diff) | |
download | meta-boot2qt-d9c2b811781e7e0c4cf246d21900edb0ce6eec78.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
Cherry-picked from jehtro and adjusted to work from b2qt layer.
Change-Id: Id176840d37f2fe4b1f4b41b6c67ce110732b7645
Reviewed-by: Teemu Holappa <teemu.holappa@theqtcompany.com>
Diffstat (limited to 'recipes/gcc')
-rw-r--r-- | recipes/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch | 39 | ||||
-rw-r--r-- | recipes/gcc/gcc-source_4.9.bbappend | 27 |
2 files changed, 66 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch b/recipes/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch new file mode 100644 index 0000000..c0ea62f --- /dev/null +++ b/recipes/gcc/gcc-4.9/0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | From b30ffb8097749fdb55704aa7d8307ca1a58255d6 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Stefan=20M=C3=BCller-Klieser?= <s.mueller-klieser@phytec.de> | ||
3 | Date: Tue, 7 Apr 2015 16:15:11 +0200 | ||
4 | Subject: [PATCH] gcc/var-tracking.c: backport from gcc trunk r212178 | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | resolves a bug seen on cortexa8 building qt5 libraries. | ||
10 | |||
11 | 2014-06-30 Joseph Myers <joseph@codesourcery.com> | ||
12 | |||
13 | * var-tracking.c (add_stores): Return instead of asserting if old | ||
14 | and new values for conditional store are the same. | ||
15 | |||
16 | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212178 138bc75d-0d04-0410-961f-82ee72b054a4 | ||
17 | |||
18 | Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de> | ||
19 | --- | ||
20 | gcc/var-tracking.c | 3 ++- | ||
21 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
22 | |||
23 | diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c | ||
24 | index 65d8285..7c38910 100644 | ||
25 | --- a/gcc/var-tracking.c | ||
26 | +++ b/gcc/var-tracking.c | ||
27 | @@ -5997,7 +5997,8 @@ add_stores (rtx loc, const_rtx expr, void *cuip) | ||
28 | { | ||
29 | cselib_val *oval = cselib_lookup (oloc, GET_MODE (oloc), 0, VOIDmode); | ||
30 | |||
31 | - gcc_assert (oval != v); | ||
32 | + if (oval == v) | ||
33 | + return; | ||
34 | gcc_assert (REG_P (oloc) || MEM_P (oloc)); | ||
35 | |||
36 | if (oval && !cselib_preserved_value_p (oval)) | ||
37 | -- | ||
38 | 1.9.1 | ||
39 | |||
diff --git a/recipes/gcc/gcc-source_4.9.bbappend b/recipes/gcc/gcc-source_4.9.bbappend new file mode 100644 index 0000000..8702aae --- /dev/null +++ b/recipes/gcc/gcc-source_4.9.bbappend | |||
@@ -0,0 +1,27 @@ | |||
1 | ############################################################################# | ||
2 | ## | ||
3 | ## Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). | ||
4 | ## | ||
5 | ## This file is part of the Qt Enterprise Embedded Scripts of the Qt | ||
6 | ## framework. | ||
7 | ## | ||
8 | ## $QT_BEGIN_LICENSE$ | ||
9 | ## Commercial License Usage Only | ||
10 | ## Licensees holding valid commercial Qt license agreements with Digia | ||
11 | ## with an appropriate addendum covering the Qt Enterprise Embedded Scripts, | ||
12 | ## may use this file in accordance with the terms contained in said license | ||
13 | ## agreement. | ||
14 | ## | ||
15 | ## For further information use the contact form at | ||
16 | ## http://www.qt.io/contact-us. | ||
17 | ## | ||
18 | ## | ||
19 | ## $QT_END_LICENSE$ | ||
20 | ## | ||
21 | ############################################################################# | ||
22 | |||
23 | FILESEXTRAPATHS_append := "${THISDIR}/gcc-4.9:" | ||
24 | |||
25 | SRC_URI += " \ | ||
26 | file://0062-gcc-var-tracking.c-backport-from-gcc-trunk-r212178.patch \ | ||
27 | " | ||