diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/powerpc/darwin-save-world-1.c')
-rw-r--r-- | gcc/testsuite/gcc.target/powerpc/darwin-save-world-1.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/powerpc/darwin-save-world-1.c b/gcc/testsuite/gcc.target/powerpc/darwin-save-world-1.c new file mode 100644 index 000000000..c45a90f0f --- /dev/null +++ b/gcc/testsuite/gcc.target/powerpc/darwin-save-world-1.c @@ -0,0 +1,19 @@ +/* { dg-do run { target powerpc*-*-* } } */ +/* { dg-require-effective-target powerpc_altivec_ok } */ +/* { dg-skip-if "need to be able to execute AltiVec" { ! { powerpc_altivec_ok && vmx_hw } } } */ +/* { dg-options "-maltivec" } */ + +/* With altivec turned on, Darwin wants to save the world but we did not mark lr as being saved any more + as saving the lr is not needed for saving altivec registers. */ + +int main (void) +{ + __label__ l1; + void __attribute__((used)) q(void) + { + goto l1; + } + + l1:; + return 0; +} |