summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/arm/naked-1.c
blob: 8f9ff711a5eee381618b34adbe5a1caa222d814e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
/* { dg-do compile } */
/* { dg-options "-O0" } */
/* Check that function arguments aren't assigned and copied to stack slots
   in naked functions.  This ususally happens at -O0 (presumably for
   better debugging), but is highly undesirable if we haven't created
   a stack frame.  */
void __attribute__((naked))
foo(int n)
{
  __asm__ volatile ("frob r0\n");
}
/* { dg-final { scan-assembler "\tfrob r0" } } */
/* { dg-final { scan-assembler-not "\tstr" } } */