summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/m68k
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim@codesourcery.com>2010-05-12 11:05:19 +0000
committerMaxim Kuvyrkov <mkuvyrkov@gcc.gnu.org>2010-05-12 11:05:19 +0000
commit623a6941fa3db376bde6179eb7ca2f3b37b89518 (patch)
tree36f64b5002b88b0f635e32f7ffb14e7914f56ef2 /gcc/testsuite/gcc.target/m68k
parentaeecf17ca32de8fcec84ad49f7d76a582515e84b (diff)
targhooks.c (default_stack_protect_guard): Avoid sharing RTL for __stack_chk_guard.
* targhooks.c (default_stack_protect_guard): Avoid sharing RTL for __stack_chk_guard. * gcc.target/m68k/20100512-1.c: New. From-SVN: r159310
Diffstat (limited to 'gcc/testsuite/gcc.target/m68k')
-rw-r--r--gcc/testsuite/gcc.target/m68k/20100512-1.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/m68k/20100512-1.c b/gcc/testsuite/gcc.target/m68k/20100512-1.c
new file mode 100644
index 00000000000..d07bb519abc
--- /dev/null
+++ b/gcc/testsuite/gcc.target/m68k/20100512-1.c
@@ -0,0 +1,16 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fstack-protector" } */
+/* { dg-require-effective-target fstack_protector } */
+/* There should be 2 references to __stack_chk_guard in every function. */
+/* { dg-final { scan-assembler-times "__stack_chk_guard" 4 } } */
+
+#include <stdlib.h>
+#include <string.h>
+void doTest1(void) {
+ volatile char foo[10];
+ memset((void *)foo, 1, 100);
+}
+void doTest2(void) {
+ volatile char foo[10];
+ memset((void *)foo, 1, 100);
+}