From: Hans-Peter Nilsson Date: Tue, 29 May 2012 01:54:09 +0000 (+0000) Subject: trap-1.c, [...]: New tests. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0de9dab58d9ea8f1464c3b47be6634f6d507c7f6;p=gcc.git trap-1.c, [...]: New tests. * gcc.target/cris/torture/trap-1.c, gcc.target/cris/torture/trap-2.c, gcc.target/cris/torture/trap-3.c, gcc.target/cris/torture/trap-v0.c, gcc.target/cris/torture/trap-v3.c: New tests. From-SVN: r187943 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fa1ef577074..b08556c348a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2012-05-29 Hans-Peter Nilsson + + * gcc.target/cris/torture/trap-1.c, + gcc.target/cris/torture/trap-2.c, + gcc.target/cris/torture/trap-3.c, + gcc.target/cris/torture/trap-v0.c, + gcc.target/cris/torture/trap-v3.c: New tests. + 2012-05-28 Paolo Carlini PR c++/25137 diff --git a/gcc/testsuite/gcc.target/cris/torture/trap-1.c b/gcc/testsuite/gcc.target/cris/torture/trap-1.c new file mode 100644 index 00000000000..48363fbb3f0 --- /dev/null +++ b/gcc/testsuite/gcc.target/cris/torture/trap-1.c @@ -0,0 +1,13 @@ +/* Check that "break 8" defaults according to CPU version. */ +/* { dg-do compile } */ +/* { dg-skip-if "" { "*-*-*" } { "-march*" } { "" } } */ +/* { dg-final { scan-assembler "break 8" { target { ! cris-*-elf } } } } */ +/* { dg-final { scan-assembler-not "bsr" { target { ! cris-*-elf } } } } */ +/* { dg-final { scan-assembler-not "jsr" { target { ! cris-*-elf } } } } */ +/* { dg-final { scan-assembler-not "break\[ \t\]" { target cris-*-elf } } } */ +/* { dg-final { scan-assembler "\[jb\]sr \[_\]\?abort" { target cris-*-elf } } } */ + +void do_trap (void) +{ + __builtin_trap (); +} diff --git a/gcc/testsuite/gcc.target/cris/torture/trap-2.c b/gcc/testsuite/gcc.target/cris/torture/trap-2.c new file mode 100644 index 00000000000..155d5fe4273 --- /dev/null +++ b/gcc/testsuite/gcc.target/cris/torture/trap-2.c @@ -0,0 +1,11 @@ +/* As trap-1.c but forcing on. */ +/* { dg-do compile } */ +/* { dg-options "-mtrap-using-break8" } */ +/* { dg-final { scan-assembler "break 8" } } */ +/* { dg-final { scan-assembler-not "bsr" } } */ +/* { dg-final { scan-assembler-not "jsr" } } */ + +void do_trap (void) +{ + __builtin_trap (); +} diff --git a/gcc/testsuite/gcc.target/cris/torture/trap-3.c b/gcc/testsuite/gcc.target/cris/torture/trap-3.c new file mode 100644 index 00000000000..dfa092445ec --- /dev/null +++ b/gcc/testsuite/gcc.target/cris/torture/trap-3.c @@ -0,0 +1,10 @@ +/* Like trap-1.c and trap-2.c but force calls to abort. */ +/* { dg-do compile } */ +/* { dg-options "-mno-trap-using-break8" } */ +/* { dg-final { scan-assembler-not "break\[ \t\]" } } */ +/* { dg-final { scan-assembler "\[jb\]sr \[_\]\?abort" } } */ + +void do_trap (void) +{ + __builtin_trap (); +} diff --git a/gcc/testsuite/gcc.target/cris/torture/trap-v0.c b/gcc/testsuite/gcc.target/cris/torture/trap-v0.c new file mode 100644 index 00000000000..084fb28d40b --- /dev/null +++ b/gcc/testsuite/gcc.target/cris/torture/trap-v0.c @@ -0,0 +1,11 @@ +/* As trap-1.c but with CPU version specified, excluding. */ +/* { dg-do compile } */ +/* { dg-skip-if "" { "*-*-*" } { "-march=*" } { "" } } */ +/* { dg-options "-march=v0" } */ +/* { dg-final { scan-assembler-not "break\[ \t\]" } } */ +/* { dg-final { scan-assembler "\[jb\]sr \[_\]\?abort" } } */ + +void do_trap (void) +{ + __builtin_trap (); +} diff --git a/gcc/testsuite/gcc.target/cris/torture/trap-v3.c b/gcc/testsuite/gcc.target/cris/torture/trap-v3.c new file mode 100644 index 00000000000..e004c5bc82b --- /dev/null +++ b/gcc/testsuite/gcc.target/cris/torture/trap-v3.c @@ -0,0 +1,12 @@ +/* As trap-1.c but with CPU version specified, including. */ +/* { dg-do compile } */ +/* { dg-skip-if "" { "*-*-*" } { "-march=*" } { "" } } */ +/* { dg-options "-march=v3" } */ +/* { dg-final { scan-assembler "break 8" } } */ +/* { dg-final { scan-assembler-not "bsr" } } */ +/* { dg-final { scan-assembler-not "jsr" } } */ + +void do_trap (void) +{ + __builtin_trap (); +}