summaryrefslogtreecommitdiff
path: root/debian/patches/testsuite-hardening-updates.diff
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/testsuite-hardening-updates.diff')
-rw-r--r--debian/patches/testsuite-hardening-updates.diff143
1 files changed, 143 insertions, 0 deletions
diff --git a/debian/patches/testsuite-hardening-updates.diff b/debian/patches/testsuite-hardening-updates.diff
new file mode 100644
index 0000000..0f3f7e7
--- /dev/null
+++ b/debian/patches/testsuite-hardening-updates.diff
@@ -0,0 +1,143 @@
+# DP: Fix some gcc and g++ testcases to pass with hardening defaults
+
+---
+ src/gcc/testsuite/c-c++-common/asan/strncpy-overflow-1.c | 2 +-
+ src/gcc/testsuite/c-c++-common/cilk-plus/CK/spawnee_inline.c | 2 +-
+ src/gcc/testsuite/g++.dg/asan/asan_test.C | 2 +-
+ src/gcc/testsuite/g++.dg/asan/interception-malloc-test-1.C | 2 +-
+ src/gcc/testsuite/g++.dg/fstack-protector-strong.C | 2 +-
+ src/gcc/testsuite/gcc.c-torture/execute/memset-1.c | 1 -
+ src/gcc/testsuite/gcc.c-torture/execute/memset-1.x | 5 +++++
+ src/gcc/testsuite/gcc.dg/fstack-protector-strong.c | 2 +-
+ src/gcc/testsuite/gcc.dg/stack-usage-1.c | 2 +-
+ src/gcc/testsuite/gcc.dg/superblock.c | 2 +-
+ src/gcc/testsuite/gcc.target/i386/sw-1.c | 2 +-
+ 11 files changed, 14 insertions(+), 10 deletions(-)
+
+Index: b/src/gcc/testsuite/g++.dg/asan/asan_test.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 "-std=c++11 -fsanitize=address -fno-builtin -Wall -Wno-format -Werror -g -DASAN_UAR=0 -DASAN_HAS_EXCEPTIONS=1 -DASAN_HAS_BLACKLIST=0 -DSANITIZER_USE_DEJAGNU_GTEST=1 -lasan -lpthread -ldl" }
++// { dg-options "-std=c++11 -fsanitize=address -fno-builtin -Wall -Wno-format -Wno-unused-result -Werror -g -DASAN_UAR=0 -DASAN_HAS_EXCEPTIONS=1 -DASAN_HAS_BLACKLIST=0 -DSANITIZER_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 } } }
+Index: b/src/gcc/testsuite/g++.dg/asan/interception-malloc-test-1.C
+===================================================================
+--- a/src/gcc/testsuite/g++.dg/asan/interception-malloc-test-1.C
++++ b/src/gcc/testsuite/g++.dg/asan/interception-malloc-test-1.C
+@@ -1,7 +1,7 @@
+ // ASan interceptor can be accessed with __interceptor_ prefix.
+
+ // { dg-do run { target *-*-linux* } }
+-// { dg-options "-fno-builtin-free" }
++// { dg-options "-fno-builtin-free -Wno-unused-result" }
+ // { dg-additional-options "-D__NO_INLINE__" { target { *-*-linux-gnu } } }
+ // { dg-shouldfail "asan" }
+
+Index: b/src/gcc/testsuite/gcc.c-torture/execute/memset-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.c-torture/execute/memset-1.c
++++ b/src/gcc/testsuite/gcc.c-torture/execute/memset-1.c
+@@ -1,3 +1,5 @@
++/* { dg-prune-output ".*warning: memset used with constant zero length parameter.*" } */
++
+ /* Copyright (C) 2002 Free Software Foundation.
+
+ Test memset with various combinations of pointer alignments and lengths to
+Index: b/src/gcc/testsuite/c-c++-common/asan/strncpy-overflow-1.c
+===================================================================
+--- a/src/gcc/testsuite/c-c++-common/asan/strncpy-overflow-1.c
++++ b/src/gcc/testsuite/c-c++-common/asan/strncpy-overflow-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do run } */
+-/* { dg-options "-fno-builtin-malloc -fno-builtin-strncpy" } */
++/* { dg-options "-fno-builtin-malloc -fno-builtin-strncpy -U_FORTIFY_SOURCE" } */
+ /* { dg-shouldfail "asan" } */
+
+ #include <string.h>
+Index: b/src/gcc/testsuite/gcc.dg/superblock.c
+===================================================================
+--- 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" } */
+ /* { dg-require-effective-target scheduling } */
+
+ typedef int aligned __attribute__ ((aligned (64)));
+Index: b/src/gcc/testsuite/gcc.dg/stack-usage-1.c
+===================================================================
+--- 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" } */
+ /* nvptx doesn't have a reg allocator, and hence no stack usage data. */
+ /* { dg-skip-if "" { nvptx-*-* } { "*" } { "" } } */
+
+Index: b/src/gcc/testsuite/gcc.target/i386/sw-1.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/i386/sw-1.c
++++ b/src/gcc/testsuite/gcc.target/i386/sw-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mtune=generic -fshrink-wrap -fdump-rtl-pro_and_epilogue" } */
++/* { dg-options "-O2 -mtune=generic -fshrink-wrap -fdump-rtl-pro_and_epilogue -fno-stack-protector" } */
+ /* { dg-skip-if "No shrink-wrapping preformed" { x86_64-*-mingw* } { "*" } { "" } } */
+
+ #include <string.h>
+Index: b/src/gcc/testsuite/c-c++-common/cilk-plus/CK/spawnee_inline.c
+===================================================================
+--- a/src/gcc/testsuite/c-c++-common/cilk-plus/CK/spawnee_inline.c
++++ b/src/gcc/testsuite/c-c++-common/cilk-plus/CK/spawnee_inline.c
+@@ -1,5 +1,5 @@
+ /* { dg-do run { target { i?86-*-* x86_64-*-* } } } */
+-/* { dg-options "-fcilkplus -w" } */
++/* { dg-options "-fcilkplus -w -U_FORTIFY_SOURCE" } */
+ /* { dg-additional-options "-lcilkrts" { target { i?86-*-* x86_64-*-* } } } */
+
+ #include <stdio.h>
+Index: b/src/gcc/testsuite/gcc.dg/fstack-protector-strong.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.dg/fstack-protector-strong.c
++++ b/src/gcc/testsuite/gcc.dg/fstack-protector-strong.c
+@@ -1,7 +1,7 @@
+ /* Test that stack protection is done on chosen functions. */
+
+ /* { dg-do compile { target i?86-*-* x86_64-*-* rs6000-*-* s390x-*-* } } */
+-/* { dg-options "-O2 -fstack-protector-strong" } */
++/* { dg-options "-O2 -fstack-protector-strong -U_FORTIFY_SOURCE" } */
+
+ /* This test checks the presence of __stack_chk_fail function in assembler.
+ * Compiler generates _stack_chk_fail_local (wrapper) calls instead for PIC.
+Index: b/src/gcc/testsuite/g++.dg/fstack-protector-strong.C
+===================================================================
+--- a/src/gcc/testsuite/g++.dg/fstack-protector-strong.C
++++ b/src/gcc/testsuite/g++.dg/fstack-protector-strong.C
+@@ -1,7 +1,7 @@
+ /* Test that stack protection is done on chosen functions. */
+
+ /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
+-/* { dg-options "-O2 -fstack-protector-strong" } */
++/* { dg-options "-O2 -fstack-protector-strong -U_FORTIFY_SOURCE" } */
+
+ /* This test checks the presence of __stack_chk_fail function in assembler.
+ * Compiler generates _stack_chk_fail_local (wrapper) calls instead for PIC.
+Index: b/src/gcc/testsuite/gcc.c-torture/execute/memset-1.x
+===================================================================
+--- /dev/null
++++ b/src/gcc/testsuite/gcc.c-torture/execute/memset-1.x
+@@ -0,0 +1,5 @@
++# Implement "/* { dg-options "-U_FORITFY_SOURCE" } */", due to
++# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20567
++
++set additional_flags "-U_FORTIFY_SOURCE"
++return 0