summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2010-11-10 22:43:46 +0100
committerMarc Kleine-Budde <mkl@pengutronix.de>2010-11-10 22:43:46 +0100
commitf77a1c4eb77bca403de9fe4961cd598aa3b11324 (patch)
tree866d12d1c6698edb651a125754fa7df20433ff0e
parent94f55e49c52015bc8a363365d98323accbc58d38 (diff)
downloadOSELAS.Toolchain-f77a1c4eb77bca403de9fe4961cd598aa3b11324.tar.gz
gcc: pr35965: fix -fstack-protector-all on ARM
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-rw-r--r--patches/gcc-4.3.2/generic/gcc-43-pr35965.diff47
-rw-r--r--patches/gcc-4.3.2/generic/series5
2 files changed, 50 insertions, 2 deletions
diff --git a/patches/gcc-4.3.2/generic/gcc-43-pr35965.diff b/patches/gcc-4.3.2/generic/gcc-43-pr35965.diff
new file mode 100644
index 0000000..414525c
--- /dev/null
+++ b/patches/gcc-4.3.2/generic/gcc-43-pr35965.diff
@@ -0,0 +1,47 @@
+From ad5429399a8332dff822d07476286e3662fb26b9 Mon Sep 17 00:00:00 2001
+From: Julian Brown <julian@codesourcery.com>
+Date: Wed, 10 Nov 2010 22:35:50 +0100
+Subject: [PATCH] gcc-43-pr35965: This patch enables -fstack-protector-all on ARM.
+
+See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35965
+
+This patch enables -fstack-protector-all on ARM.
+
+2009-02-24 Julian Brown <julian@codesourcery.com>
+
+ PR target/35965
+ * config/arm/arm.c (require_pic_register): Only set
+ cfun->machine->pic_reg once per function.
+
+ Patch commited by Doug Kwan <dougkwan@google.com>
+---
+ gcc/config/arm/arm.c | 6 ++++--
+ 1 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
+index 217cc7e..8b3b9c6 100644
+--- a/gcc/config/arm/arm.c
++++ b/gcc/config/arm/arm.c
+@@ -3372,7 +3372,8 @@ require_pic_register (void)
+ gcc_assert (can_create_pseudo_p ());
+ if (arm_pic_register != INVALID_REGNUM)
+ {
+- cfun->machine->pic_reg = gen_rtx_REG (Pmode, arm_pic_register);
++ if (!cfun->machine->pic_reg)
++ cfun->machine->pic_reg = gen_rtx_REG (Pmode, arm_pic_register);
+
+ /* Play games to avoid marking the function as needing pic
+ if we are being called as part of the cost-estimation
+@@ -3384,7 +3385,8 @@ require_pic_register (void)
+ {
+ rtx seq;
+
+- cfun->machine->pic_reg = gen_reg_rtx (Pmode);
++ if (!cfun->machine->pic_reg)
++ cfun->machine->pic_reg = gen_reg_rtx (Pmode);
+
+ /* Play games to avoid marking the function as needing pic
+ if we are being called as part of the cost-estimation
+--
+1.7.2.3
+
diff --git a/patches/gcc-4.3.2/generic/series b/patches/gcc-4.3.2/generic/series
index 8f86ef5..3f18384 100644
--- a/patches/gcc-4.3.2/generic/series
+++ b/patches/gcc-4.3.2/generic/series
@@ -7,6 +7,9 @@ arm-softfloat.diff
# bugfixes
gcc-43-pr32044.diff
gcc-43-pr37220.diff
+gcc-43-pr39429.diff
+PR-bootstrap-41180.patch
+gcc-43-pr35965.diff
# from uclibc
uclibc/100-uclibc-conf.patch
@@ -32,5 +35,3 @@ gentoo/61_all_gcc4-ia64-noteGNUstack.patch
gentoo/64_all_gcc43-pr34571.patch
gentoo/66_all_gcc43-pr25343.patch
gentoo/74_all_sh-pr24836.patch
-gcc-43-pr39429.diff
-PR-bootstrap-41180.patch