diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/attr-isr-trapa.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/attr-isr-trapa.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/attr-isr-trapa.c b/gcc/testsuite/gcc.dg/attr-isr-trapa.c new file mode 100644 index 000000000..47caf2112 --- /dev/null +++ b/gcc/testsuite/gcc.dg/attr-isr-trapa.c @@ -0,0 +1,17 @@ +/* { dg-do compile { target { { sh-*-* sh[1234ble]*-*-* } && nonpic } } } */ +/* { dg-options "-O" } */ +extern void foo (); + +void +(__attribute__ ((trapa_handler)) isr) () +{ + foo (); +} + +/* { dg-final { scan-assembler-times "rte" 1} } */ +/* No interrupt-specific saves should be needed. / +/* { dg-final { scan-assembler-not "\[^f\]r\[0-7\]\[ \t,\]\[^\n\]*r15" } } */ +/* { dg-final { scan-assembler-not "@r15\[^\n\]*\[^f\]r\[0-7\]\n" } } */ +/* { dg-final { scan-assembler-not "\[^f\]r\[8-9\]" } } */ +/* { dg-final { scan-assembler-not "\[^f\]r1\[,0-3\]" } } */ +/* { dg-final { scan-assembler-not "macl" } } */ |