aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.target/arm/naked-1.c
blob: fefffae8123ce8f0b95bb7a14b9251b4527bf2c1 (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 usually 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" } } */