14 lines
464 B
C
14 lines
464 B
C
/* { 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" } } */
|