33 lines
418 B
C
33 lines
418 B
C
/* { dg-do run } */
|
|
/* { dg-options "-O2" } */
|
|
|
|
static inline void __attribute__((always_inline))
|
|
f1 (void)
|
|
{
|
|
long unused;
|
|
asm volatile ("" : "=es" (unused) :: "memory");
|
|
}
|
|
|
|
static void __attribute__((noinline))
|
|
f2 (long *val)
|
|
{
|
|
*val = 0x1234;
|
|
}
|
|
|
|
static long __attribute__((noinline))
|
|
test (void)
|
|
{
|
|
f1 ();
|
|
{
|
|
long val;
|
|
f2 (&val);
|
|
return val;
|
|
}
|
|
}
|
|
|
|
int
|
|
main (void)
|
|
{
|
|
return test () != 0x1234;
|
|
}
|