diff options
author | Richard Sandiford <richard@codesourcery.com> | 2008-07-04 07:18:47 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2008-07-04 07:18:47 +0000 |
commit | 9a0f2a1b986bfd0e0ba96a74af32631ffecb9e73 (patch) | |
tree | 77a733e1fa36f625d2b80a79a0b593d186a1d363 /gcc/testsuite/gcc.target/m68k | |
parent | bf8e9c49172fe4c3b92d670bebf1d407cdc7a6e1 (diff) |
interrupt-2.c: New file.
* gcc.target/m68k/interrupt-2.c: New file.
* gcc.dg/tree-ssa/20040204-1.c: Don't XFAIL for m68k*-*-*.
From-SVN: r137451
Diffstat (limited to 'gcc/testsuite/gcc.target/m68k')
-rw-r--r-- | gcc/testsuite/gcc.target/m68k/interrupt-2.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/m68k/interrupt-2.c b/gcc/testsuite/gcc.target/m68k/interrupt-2.c new file mode 100644 index 00000000000..7d4cb68c121 --- /dev/null +++ b/gcc/testsuite/gcc.target/m68k/interrupt-2.c @@ -0,0 +1,22 @@ +/* { dg-do compile } */ +int x; +volatile unsigned int y; + +#define REPEAT10(X, Y) \ + X(Y##0); X(Y##1); X(Y##2); X(Y##3); X(Y##4); \ + X(Y##5); X(Y##6); X(Y##7); X(Y##8); X(Y##9) + +#define REPEAT30(X) REPEAT10 (X, 0); REPEAT10 (X, 1); REPEAT10 (X, 2) +#define IN(X) unsigned int x##X = y +#define OUT(X) y = x##X + +void __attribute__ ((interrupt_handler)) f1 (void) +{ + x = y + 11; +} + +void __attribute__ ((interrupt_handler)) f2 (void) +{ + REPEAT30 (IN); + REPEAT30 (OUT); +} |