(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
sh/
attr-isr.c
       1  /* The call will clobber r0..r7, which will need not be saved/restored, but
       2     not the call-saved registers r8..r14.  Check this by counting the register
       3     push insns.  */
       4  /* { dg-do compile { target { { ! sh2a } && nonpic } } } */
       5  /* { dg-options "-O" } */
       6  /* { dg-final { scan-assembler-times "rte" 1} } */
       7  /* { dg-final { scan-assembler-times "mov.l\tr\[0-7\],@-r15" 8 } }  */
       8  /* { dg-final { scan-assembler-not "mov.l\tr\[89\],@-r15" } }  */
       9  /* { dg-final { scan-assembler-not "mov.l\tr1\[0-4\],@-r15" } }  */
      10  
      11  extern void foo ();
      12  
      13  void
      14  (__attribute ((interrupt_handler)) isr)()
      15  {
      16    foo ();
      17  }