Tested on x86_64-linux (m32/m64), x86_64, i686-darwin, pushed to trunk,
thanks
Iain.
--- 8< ---
These tests curently fail everywhere on Darwin since they do not account
for differences between ELF and Mach-O. Mach-O does not emit anything
additional markup for a tentative symbol (either for m32 or m64) and the
PIC code uses different mechanisms on m32.
gcc/testsuite/ChangeLog:
* g++.target/i386/ssp-global-hidden-1.C: Port to Mach-O.
* g++.target/i386/ssp-global-hidden-2.C: Likewise.
* g++.target/i386/ssp-global-hidden-3.C: Likewise.
* gcc.target/i386/ssp-global-hidden-1.c: Likewise.
* gcc.target/i386/ssp-global-hidden-2.c: Likewise.
* gcc.target/i386/ssp-global-hidden-3.c: Likewise.
Signed-off-by: Iain Sandoe <[email protected]>
---
gcc/testsuite/g++.target/i386/ssp-global-hidden-1.C | 8 +++++---
gcc/testsuite/g++.target/i386/ssp-global-hidden-2.C | 6 ++++--
gcc/testsuite/g++.target/i386/ssp-global-hidden-3.C | 8 +++++---
gcc/testsuite/gcc.target/i386/ssp-global-hidden-1.c | 7 ++++---
gcc/testsuite/gcc.target/i386/ssp-global-hidden-2.c | 5 +++--
gcc/testsuite/gcc.target/i386/ssp-global-hidden-3.c | 7 ++++---
6 files changed, 25 insertions(+), 16 deletions(-)
diff --git a/gcc/testsuite/g++.target/i386/ssp-global-hidden-1.C
b/gcc/testsuite/g++.target/i386/ssp-global-hidden-1.C
index dbb5732352c..0b3851f9b85 100644
--- a/gcc/testsuite/g++.target/i386/ssp-global-hidden-1.C
+++ b/gcc/testsuite/g++.target/i386/ssp-global-hidden-1.C
@@ -39,7 +39,9 @@ main (void)
/* { dg-final { scan-hidden "__stack_chk_guard" } } */
/* { dg-final { scan-assembler "__stack_chk_guard\\(%rip\\)" { target { ! ia32
} } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOTPCREL" { target { !
ia32 } } } } */
- /* { dg-final { scan-assembler ".quad 3280087301477736604" { target {
lp64 } } } } */
-/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target ia32 } } }
*/
+/* { dg-final { scan-assembler ".quad 3280087301477736604" { target { lp64 }
} } } */
+/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target { ia32 && {
! *-*-darwin* } } } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOT\\(" { target ia32 }
} } */
- /* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 }
} } } */
+/* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 } } } } */
+/* { dg-final { scan-assembler {___stack_chk_guard-L.\$pb} { target { ia32 &&
*-*-darwin* } } } } */
+
diff --git a/gcc/testsuite/g++.target/i386/ssp-global-hidden-2.C
b/gcc/testsuite/g++.target/i386/ssp-global-hidden-2.C
index 9fd3b1d00d4..e7f38d65c32 100644
--- a/gcc/testsuite/g++.target/i386/ssp-global-hidden-2.C
+++ b/gcc/testsuite/g++.target/i386/ssp-global-hidden-2.C
@@ -13,8 +13,10 @@ smash (char *p, int i)
p[i] = 42;
}
-/* { dg-final { scan-hidden "__stack_chk_guard" } } */
+/* { dg-final { scan-hidden "__stack_chk_guard" { target { ! *-*-darwin* } } }
} */
/* { dg-final { scan-assembler "__stack_chk_guard\\(%rip\\)" { target { ! ia32
} } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOTPCREL" { target { !
ia32 } } } } */
-/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target ia32 } } }
*/
+/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target { ia32 && {
! *-*-darwin* } } } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOT\\(" { target ia32 }
} } */
+/* { dg-final { scan-assembler {L___stack_chk_guard\$non_lazy_ptr-L.\$pb} {
target { ia32 && *-*-darwin* } } } } */
+
diff --git a/gcc/testsuite/g++.target/i386/ssp-global-hidden-3.C
b/gcc/testsuite/g++.target/i386/ssp-global-hidden-3.C
index e7b297f21ad..e84eef5edcd 100644
--- a/gcc/testsuite/g++.target/i386/ssp-global-hidden-3.C
+++ b/gcc/testsuite/g++.target/i386/ssp-global-hidden-3.C
@@ -40,7 +40,9 @@ main (void)
/* { dg-final { scan-hidden "__stack_chk_guard" } } */
/* { dg-final { scan-assembler "__stack_chk_guard\\(%rip\\)" { target { ! ia32
} } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOTPCREL" { target { !
ia32 } } } } */
- /* { dg-final { scan-assembler ".quad 3280087301477736604" { target {
lp64 } } } } */
-/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target ia32 } } }
*/
+/* { dg-final { scan-assembler ".quad 3280087301477736604" { target { lp64 }
} } } */
+/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target { ia32 && {
! *-*-darwin* } } } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOT\\(" { target ia32 }
} } */
- /* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 }
} } } */
+/* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 } } } } */
+/* { dg-final { scan-assembler {___stack_chk_guard-L.\$pb} { target { ia32 &&
*-*-darwin* } } } } */
+
diff --git a/gcc/testsuite/gcc.target/i386/ssp-global-hidden-1.c
b/gcc/testsuite/gcc.target/i386/ssp-global-hidden-1.c
index dbccfb11311..aa5e4c4939f 100644
--- a/gcc/testsuite/gcc.target/i386/ssp-global-hidden-1.c
+++ b/gcc/testsuite/gcc.target/i386/ssp-global-hidden-1.c
@@ -39,7 +39,8 @@ main (void)
/* { dg-final { scan-hidden "__stack_chk_guard" } } */
/* { dg-final { scan-assembler "__stack_chk_guard\\(%rip\\)" { target { ! ia32
} } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOTPCREL" { target { !
ia32 } } } } */
- /* { dg-final { scan-assembler ".quad 3280087301477736604" { target {
lp64 } } } } */
-/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target ia32 } } }
*/
+/* { dg-final { scan-assembler ".quad 3280087301477736604" { target { lp64 }
} } } */
+/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target { ia32 && {
! *-*-darwin* } } } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOT\\(" { target ia32 }
} } */
- /* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 }
} } } */
+/* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 } } } } */
+/* { dg-final { scan-assembler {___stack_chk_guard-L.\$pb} { target { ia32 &&
*-*-darwin* } } } } */
diff --git a/gcc/testsuite/gcc.target/i386/ssp-global-hidden-2.c
b/gcc/testsuite/gcc.target/i386/ssp-global-hidden-2.c
index 9fd3b1d00d4..b637bac4b2f 100644
--- a/gcc/testsuite/gcc.target/i386/ssp-global-hidden-2.c
+++ b/gcc/testsuite/gcc.target/i386/ssp-global-hidden-2.c
@@ -13,8 +13,9 @@ smash (char *p, int i)
p[i] = 42;
}
-/* { dg-final { scan-hidden "__stack_chk_guard" } } */
+/* { dg-final { scan-hidden "__stack_chk_guard" { target { ! *-*-darwin* } } }
} */
/* { dg-final { scan-assembler "__stack_chk_guard\\(%rip\\)" { target { ! ia32
} } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOTPCREL" { target { !
ia32 } } } } */
-/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target ia32 } } }
*/
+/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target { ia32 && {
! *-*-darwin* } } } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOT\\(" { target ia32 }
} } */
+/* { dg-final { scan-assembler {L___stack_chk_guard\$non_lazy_ptr-L.\$pb} {
target { ia32 && *-*-darwin* } } } } */
diff --git a/gcc/testsuite/gcc.target/i386/ssp-global-hidden-3.c
b/gcc/testsuite/gcc.target/i386/ssp-global-hidden-3.c
index d7ff2a252e1..f804f465680 100644
--- a/gcc/testsuite/gcc.target/i386/ssp-global-hidden-3.c
+++ b/gcc/testsuite/gcc.target/i386/ssp-global-hidden-3.c
@@ -40,7 +40,8 @@ main (void)
/* { dg-final { scan-hidden "__stack_chk_guard" } } */
/* { dg-final { scan-assembler "__stack_chk_guard\\(%rip\\)" { target { ! ia32
} } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOTPCREL" { target { !
ia32 } } } } */
- /* { dg-final { scan-assembler ".quad 3280087301477736604" { target {
lp64 } } } } */
-/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target ia32 } } }
*/
+/* { dg-final { scan-assembler ".quad 3280087301477736604" { target { lp64 }
} } } */
+/* { dg-final { scan-assembler "__stack_chk_guard@GOTOFF" { target { ia32 && {
! *-*-darwin* } } } } } */
/* { dg-final { scan-assembler-not "__stack_chk_guard@GOT\\(" { target ia32 }
} } */
- /* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 }
} } } */
+/* { dg-final { scan-assembler ".long -584267481" { target { ! lp64 } } } } */
+/* { dg-final { scan-assembler {___stack_chk_guard-L.\$pb} { target { ia32 &&
*-*-darwin* } } } } */
--
2.50.1 (Apple Git-155)