53 lines
2.4 KiB
Diff
53 lines
2.4 KiB
Diff
diff --git a/gcc/testsuite/gcc.target/i386/stack-check-17.c b/gcc/testsuite/gcc.target/i386/stack-check-17.c
|
|
index d2ef83b..dcd2930 100644
|
|
--- a/gcc/testsuite/gcc.target/i386/stack-check-17.c
|
|
+++ b/gcc/testsuite/gcc.target/i386/stack-check-17.c
|
|
@@ -29,9 +29,11 @@ f3 (void)
|
|
into either a stack slot or callee saved register. The former
|
|
would be rather dumb. So assume it does not happen.
|
|
|
|
- So search for two/four pushes for the callee register saves/argument
|
|
- pushes and no pops (since the function has no reachable epilogue). */
|
|
-/* { dg-final { scan-assembler-times "push\[ql\]" 2 { target { ! ia32 } } } } */
|
|
-/* { dg-final { scan-assembler-times "push\[ql\]" 4 { target { ia32 } } } } */
|
|
+ So search for two pushes for the callee register saves pushes
|
|
+ and no pops (since the function has no reachable epilogue).
|
|
+
|
|
+ This is slightly different than upstream because the code we
|
|
+ generate for argument setup is slightly different. */
|
|
+/* { dg-final { scan-assembler-times "push\[ql\]" 2 } } */
|
|
/* { dg-final { scan-assembler-not "pop" } } */
|
|
|
|
diff --git a/gcc/testsuite/gcc.target/i386/stack-check-18.c b/gcc/testsuite/gcc.target/i386/stack-check-18.c
|
|
index 6dbff44..1638f77 100644
|
|
--- a/gcc/testsuite/gcc.target/i386/stack-check-18.c
|
|
+++ b/gcc/testsuite/gcc.target/i386/stack-check-18.c
|
|
@@ -1,6 +1,7 @@
|
|
/* { dg-do compile } */
|
|
/* { dg-options "-O2 -fstack-clash-protection -mtune=generic -fdump-rtl-expand" } */
|
|
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
+/* { dg-skip-if "" { *-*-* } { "-fstack-protector" } { "" } } */
|
|
|
|
int f1 (char *);
|
|
|
|
diff --git a/gcc/testsuite/gcc.target/i386/stack-check-19.c b/gcc/testsuite/gcc.target/i386/stack-check-19.c
|
|
index b92c126..c341801 100644
|
|
--- a/gcc/testsuite/gcc.target/i386/stack-check-19.c
|
|
+++ b/gcc/testsuite/gcc.target/i386/stack-check-19.c
|
|
@@ -1,6 +1,7 @@
|
|
/* { dg-do compile } */
|
|
/* { dg-options "-O2 -fstack-clash-protection -mtune=generic -fdump-rtl-expand" } */
|
|
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
+/* { dg-skip-if "" { *-*-* } { "-fstack-protector" } { "" } } */
|
|
|
|
int f1 (char *);
|
|
|
|
@@ -24,6 +25,6 @@ f2 (const int size)
|
|
in the probe loop and one that bypasses the residual probe.
|
|
|
|
These will all be equality tests. */
|
|
-/* { dg-final { scan-assembler-times "(\?:je|jne)" 3 } } */
|
|
+/* { dg-final { scan-assembler-times "(\?:jmp|je|jne)" 3 } } */
|
|
|
|
|