aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.8
diff options
context:
space:
mode:
authorChunrong Guo <B40290@freescale.com>2013-08-28 17:01:33 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-08-30 18:06:27 +0100
commita4fefac26d91bc56d5d28e1c9973a189d2509d45 (patch)
tree563dacb5db7068064cf9253d79458db91821fa71 /meta/recipes-devtools/gcc/gcc-4.8
parent5e00319ea942764ed2e7d6bc8c74e5d48166231b (diff)
downloadopenembedded-core-contrib-a4fefac26d91bc56d5d28e1c9973a189d2509d45.tar.gz
gcc-4.8: fix ICE of cross-compile for PowerPC e500v2 targets
* http://gcc.gnu.org/bugzilla//show_bug.cgi?id=57717#c7 * fix the segfault issue of dd on e500v2 targets Since double-float is disabled for e500v2 targets build due to ICE of gcc-4.8.1, accordingly %Ld format of sprintf is disabled. Address Bug 4910 - [p1022ds]urandom: segmentation fault Signed-off-by: Chunrong Guo <B40290@freescale.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.8')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.8/0045-gcc-4.8-PR57717-PowerPC-E500v2.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.8/0045-gcc-4.8-PR57717-PowerPC-E500v2.patch b/meta/recipes-devtools/gcc/gcc-4.8/0045-gcc-4.8-PR57717-PowerPC-E500v2.patch
new file mode 100644
index 0000000000..96fa1da073
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.8/0045-gcc-4.8-PR57717-PowerPC-E500v2.patch
@@ -0,0 +1,21 @@
+This backports fix from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57717
+
+Upstream-Status: Backport
+Signed-off-by: Julian Brown <Julian_Brown@mentor.com>
+
+fix for PR57717 (PowerPC E500v2)
+http://gcc.gnu.org/ml/gcc-patches/2013-08/msg00668.html
+
+--- a/gcc/config/rs6000/rs6000.c 2013-05-09 20:54:06.000000000 -0500
++++ b/gcc/config/rs6000/rs6000.c 2013-08-28 01:25:24.865218744 -0500
+@@ -6337,9 +6337,7 @@
+ && GET_CODE (XEXP (x, 1)) == CONST_INT
+ && reg_offset_p
+ && !SPE_VECTOR_MODE (mode)
+- && !(TARGET_E500_DOUBLE && (mode == DFmode || mode == TFmode
+- || mode == DDmode || mode == TDmode
+- || mode == DImode))
++ && !(TARGET_E500_DOUBLE && GET_MODE_SIZE (mode) > UNITS_PER_WORD)
+ && VECTOR_MEM_NONE_P (mode))
+ {
+ HOST_WIDE_INT val = INTVAL (XEXP (x, 1));