summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordoko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>2014-05-18 21:28:13 +0000
committerdoko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>2014-05-18 21:28:13 +0000
commit273571fc2ba61df3c6b4426decc17d95a84750bd (patch)
tree25245f2a36e9f311f6f6e70c3f277d7fd77c38d2
parentf8d72132405cbeaf2917a81991ad350e86e48a5a (diff)
downloadgcc-48-273571fc2ba61df3c6b4426decc17d95a84750bd.tar.gz
* Apply the proposed patch for PR c/57653. Closes: #734345.
* Run some test cases explicity with -fno-stack-protector which fail with -fstack-protector. git-svn-id: svn://svn.debian.org/svn/gcccvs/branches/sid/gcc-4.8@7386 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
-rw-r--r--debian/changelog5
-rw-r--r--debian/patches/pr57653.diff17
-rw-r--r--debian/patches/testsuite-hardening-ssp.diff31
-rw-r--r--debian/rules.patch2
4 files changed, 54 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog
index e6ba153..2e700aa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,8 +5,11 @@ gcc-4.8 (4.8.2-23) unstable; urgency=medium
* Apply the proposed patch for PR driver/61126.
* Update the libstdc++v-python3 patch. Closes: #748317.
* Update the gcc-default-format-security patch (Steve Beattie). LP: #1317305.
+ * Apply the proposed patch for PR c/57653. Closes: #734345.
+ * Run some test cases explicity with -fno-stack-protector which fail
+ with -fstack-protector.
- -- Matthias Klose <doko@debian.org> Sun, 18 May 2014 13:50:27 +0200
+ -- Matthias Klose <doko@debian.org> Sun, 18 May 2014 17:48:38 +0200
gcc-4.8 (4.8.2-22) unstable; urgency=medium
diff --git a/debian/patches/pr57653.diff b/debian/patches/pr57653.diff
new file mode 100644
index 0000000..0d368f4
--- /dev/null
+++ b/debian/patches/pr57653.diff
@@ -0,0 +1,17 @@
+# DP: Proposed patch for PR c/57653.
+
+Index: b/src/gcc/c-family/c-opts.c
+===================================================================
+--- a/src/gcc/c-family/c-opts.c
++++ b/src/gcc/c-family/c-opts.c
+@@ -1347,6 +1347,10 @@
+ static void
+ push_command_line_include (void)
+ {
++ // This can happen if disabled by -imacros for example.
++ if (include_cursor > deferred_count)
++ return;
++
+ if (!done_preinclude)
+ {
+ done_preinclude = true;
diff --git a/debian/patches/testsuite-hardening-ssp.diff b/debian/patches/testsuite-hardening-ssp.diff
new file mode 100644
index 0000000..491f636
--- /dev/null
+++ b/debian/patches/testsuite-hardening-ssp.diff
@@ -0,0 +1,31 @@
+# DP: Build some test cases with -fno-stack-protector, which fail with stack protector enabled.
+
+--- a/src/gcc/testsuite/gcc.dg/superblock.c
++++ b/src/gcc/testsuite/gcc.dg/superblock.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -fno-asynchronous-unwind-tables -fsched2-use-superblocks -fdump-rtl-sched2 -fdump-rtl-bbro" } */
++/* { dg-options "-O2 -fno-asynchronous-unwind-tables -fsched2-use-superblocks -fdump-rtl-sched2 -fdump-rtl-bbro -fno-stack-protector" } */
+
+ typedef int aligned __attribute__ ((aligned (64)));
+ extern void abort (void);
+--- a/src/gcc/testsuite/gcc.dg/stack-usage-1.c
++++ b/src/gcc/testsuite/gcc.dg/stack-usage-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-fstack-usage" } */
++/* { dg-options "-fstack-usage -fno-stack-protector" } */
+
+ /* This is aimed at testing basic support for -fstack-usage in the back-ends.
+ See the SPARC back-end for example (grep flag_stack_usage_info in sparc.c).
+--- a/src/gcc/testsuite/g++.dg/asan/asan_test.C
++++ b/src/gcc/testsuite/g++.dg/asan/asan_test.C
+@@ -2,7 +2,7 @@
+ // { dg-skip-if "" { *-*-* } { "*" } { "-O2" } }
+ // { dg-skip-if "" { *-*-* } { "-flto" } { "" } }
+ // { dg-additional-sources "asan_globals_test-wrapper.cc" }
+-// { dg-options "-fsanitize=address -fno-builtin -Wall -Wno-format -Werror -g -DASAN_UAR=0 -DASAN_HAS_EXCEPTIONS=1 -DASAN_HAS_BLACKLIST=0 -DASAN_USE_DEJAGNU_GTEST=1 -lasan -lpthread -ldl" }
++// { dg-options "-fsanitize=address -fno-stack-protector -fno-builtin -Wall -Wno-format -Werror -g -DASAN_UAR=0 -DASAN_HAS_EXCEPTIONS=1 -DASAN_HAS_BLACKLIST=0 -DASAN_USE_DEJAGNU_GTEST=1 -lasan -lpthread -ldl" }
+ // { dg-additional-options "-DASAN_NEEDS_SEGV=1" { target { ! arm*-*-* } } }
+ // { dg-additional-options "-DASAN_LOW_MEMORY=1 -DASAN_NEEDS_SEGV=0" { target arm*-*-* } }
+ // { dg-additional-options "-DASAN_AVOID_EXPENSIVE_TESTS=1" { target { ! run_expensive_tests } } }
diff --git a/debian/rules.patch b/debian/rules.patch
index cf0b1b1..3cd2d44 100644
--- a/debian/rules.patch
+++ b/debian/rules.patch
@@ -92,6 +92,8 @@ debian_patches += \
$(if $(with_linaro_branch),pr60034) \
pr61106 \
pr61126 \
+ pr57653 \
+ testsuite-hardening-ssp \
# FIXME: still necessary for cross building the native compiler?
# gcc-auto-build \